mirror of
https://github.com/roc-lang/roc.git
synced 2024-11-11 16:51:53 +03:00
68e364d897
Please see the comment in the diff to explain the rationale of this change. Closes #4636
49 lines
1.4 KiB
Plaintext
49 lines
1.4 KiB
Plaintext
procedure Bool.2 ():
|
|
let Bool.23 : Int1 = true;
|
|
ret Bool.23;
|
|
|
|
procedure Num.19 (#Attr.2, #Attr.3):
|
|
let Num.257 : I64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
|
ret Num.257;
|
|
|
|
procedure Num.21 (#Attr.2, #Attr.3):
|
|
let Num.256 : I64 = lowlevel NumMul #Attr.2 #Attr.3;
|
|
ret Num.256;
|
|
|
|
procedure Test.6 (Test.8, #Attr.12):
|
|
let Test.4 : I64 = UnionAtIndex (Id 0) (Index 0) #Attr.12;
|
|
let Test.21 : I64 = CallByName Num.19 Test.8 Test.4;
|
|
ret Test.21;
|
|
|
|
procedure Test.7 (Test.9, #Attr.12):
|
|
let Test.5 : I64 = UnionAtIndex (Id 1) (Index 0) #Attr.12;
|
|
let Test.19 : I64 = CallByName Num.21 Test.9 Test.5;
|
|
ret Test.19;
|
|
|
|
procedure Test.0 ():
|
|
let Test.4 : I64 = 1i64;
|
|
let Test.5 : I64 = 2i64;
|
|
let Test.11 : I64 = 42i64;
|
|
joinpoint Test.18 Test.12:
|
|
let Test.13 : U8 = GetTagId Test.12;
|
|
joinpoint Test.14 Test.10:
|
|
ret Test.10;
|
|
in
|
|
switch Test.13:
|
|
case 0:
|
|
let Test.15 : I64 = CallByName Test.6 Test.11 Test.12;
|
|
jump Test.14 Test.15;
|
|
|
|
default:
|
|
let Test.16 : I64 = CallByName Test.7 Test.11 Test.12;
|
|
jump Test.14 Test.16;
|
|
|
|
in
|
|
let Test.20 : Int1 = CallByName Bool.2;
|
|
if Test.20 then
|
|
let Test.17 : [C I64, C I64] = TagId(0) Test.4;
|
|
jump Test.18 Test.17;
|
|
else
|
|
let Test.17 : [C I64, C I64] = TagId(1) Test.5;
|
|
jump Test.18 Test.17;
|