roc/crates/compiler/test_mono/generated/binary_tree_fbip.txt
Lars Frogner 560171c238
Add Num.[f32,f64,dec]_[to,from]_bits builtins and deprecate Num.[f32,f64]_[to,from]_parts (#7741)
* Add `Num.[f32,f64,dec]_[to,from]_bits` builtins

* Update mono tests

* Deprecate `Num.[f32,f64]_[to,from]_parts`
2025-04-18 10:10:45 +02:00

71 lines
3.4 KiB
Text
Generated

procedure Num.19 (#Attr.2, #Attr.3):
let Num.289 : I64 = lowlevel NumAdd #Attr.2 #Attr.3;
ret Num.289;
procedure Test.4 (Test.27):
let Test.39 : [<rnu>C [<rnu><null>, C *self *self] *self, <null>] = TagId(0) ;
let Test.40 : I64 = 0i64;
let Test.38 : I64 = CallByName Test.5 Test.27 Test.39 Test.40;
ret Test.38;
procedure Test.5 (Bool.21, Bool.22, Bool.23):
joinpoint Test.41 Test.29 Test.30 Test.31:
let Test.51 : U8 = 0i64;
let Test.52 : U8 = GetTagId Test.29;
let Test.53 : Int1 = lowlevel Eq Test.51 Test.52;
if Test.53 then
let Test.32 : [<rnu><null>, C *self *self] = UnionAtIndex (Id 0) (Index 0) Test.29;
let Test.33 : [<rnu><null>, C *self *self] = UnionAtIndex (Id 0) (Index 1) Test.29;
joinpoint Bool.24 Bool.27:
let Bool.28 : [<rnu>C [<rnu><null>, C *self *self] *self, <null>] = lowlevel PtrCast Bool.27;
let Test.43 : [<rnu>C [<rnu><null>, C *self *self] *self, <null>] = Reuse Bool.28 UpdateModeId { id: 1 } TagId(1) Test.33 Test.30;
let Test.45 : I64 = 1i64;
let Test.44 : I64 = CallByName Num.19 Test.31 Test.45;
jump Test.41 Test.32 Test.43 Test.44;
in
let Bool.25 : Int1 = lowlevel RefCountIsUnique Test.29;
if Bool.25 then
jump Bool.24 Test.29;
else
inc Test.32;
inc Test.33;
decref Test.29;
let Bool.29 : [<rnu><null>, C *self *self] = NullPointer;
jump Bool.24 Bool.29;
else
let Test.48 : U8 = 1i64;
let Test.49 : U8 = GetTagId Test.30;
let Test.50 : Int1 = lowlevel Eq Test.48 Test.49;
if Test.50 then
let Test.35 : [<rnu><null>, C *self *self] = UnionAtIndex (Id 1) (Index 0) Test.30;
let Test.36 : [<rnu>C [<rnu><null>, C *self *self] *self, <null>] = UnionAtIndex (Id 1) (Index 1) Test.30;
let Bool.26 : Int1 = lowlevel RefCountIsUnique Test.30;
if Bool.26 then
free Test.30;
jump Test.41 Test.35 Test.36 Test.31;
else
inc Test.35;
inc Test.36;
decref Test.30;
jump Test.41 Test.35 Test.36 Test.31;
else
ret Test.31;
in
jump Test.41 Bool.21 Bool.22 Bool.23;
procedure Test.0 ():
let Test.64 : [<rnu><null>, C *self *self] = TagId(1) ;
let Test.65 : [<rnu><null>, C *self *self] = TagId(1) ;
let Test.62 : [<rnu><null>, C *self *self] = TagId(0) Test.64 Test.65;
let Test.63 : [<rnu><null>, C *self *self] = TagId(1) ;
let Test.58 : [<rnu><null>, C *self *self] = TagId(0) Test.62 Test.63;
let Test.60 : [<rnu><null>, C *self *self] = TagId(1) ;
let Test.61 : [<rnu><null>, C *self *self] = TagId(1) ;
let Test.59 : [<rnu><null>, C *self *self] = TagId(0) Test.60 Test.61;
let Test.54 : [<rnu><null>, C *self *self] = TagId(0) Test.58 Test.59;
let Test.56 : [<rnu><null>, C *self *self] = TagId(1) ;
let Test.57 : [<rnu><null>, C *self *self] = TagId(1) ;
let Test.55 : [<rnu><null>, C *self *self] = TagId(0) Test.56 Test.57;
let Test.10 : [<rnu><null>, C *self *self] = TagId(0) Test.54 Test.55;
let Test.37 : I64 = CallByName Test.4 Test.10;
ret Test.37;