mirror of
https://github.com/roc-lang/roc.git
synced 2025-08-03 19:58:18 +00:00
update mono tests
This commit is contained in:
parent
afda757433
commit
d4b86a745b
45 changed files with 1549 additions and 1160 deletions
|
@ -2,81 +2,81 @@ procedure Bool.11 (#Attr.2, #Attr.3):
|
|||
let Bool.23 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
||||
ret Bool.23;
|
||||
|
||||
procedure List.104 (List.488, List.489, List.490):
|
||||
let List.592 : U64 = 0i64;
|
||||
let List.593 : U64 = CallByName List.6 List.488;
|
||||
let List.591 : [C U64, C U64] = CallByName List.80 List.488 List.489 List.490 List.592 List.593;
|
||||
ret List.591;
|
||||
procedure List.107 (List.536, List.537, List.538):
|
||||
let List.640 : U64 = 0i64;
|
||||
let List.641 : U64 = CallByName List.6 List.536;
|
||||
let List.639 : [C U64, C U64] = CallByName List.80 List.536 List.537 List.538 List.640 List.641;
|
||||
ret List.639;
|
||||
|
||||
procedure List.26 (List.201, List.202, List.203):
|
||||
let List.585 : [C U64, C U64] = CallByName List.104 List.201 List.202 List.203;
|
||||
let List.588 : U8 = 1i64;
|
||||
let List.589 : U8 = GetTagId List.585;
|
||||
let List.590 : Int1 = lowlevel Eq List.588 List.589;
|
||||
if List.590 then
|
||||
let List.204 : U64 = UnionAtIndex (Id 1) (Index 0) List.585;
|
||||
ret List.204;
|
||||
procedure List.26 (List.204, List.205, List.206):
|
||||
let List.633 : [C U64, C U64] = CallByName List.107 List.204 List.205 List.206;
|
||||
let List.636 : U8 = 1i64;
|
||||
let List.637 : U8 = GetTagId List.633;
|
||||
let List.638 : Int1 = lowlevel Eq List.636 List.637;
|
||||
if List.638 then
|
||||
let List.207 : U64 = UnionAtIndex (Id 1) (Index 0) List.633;
|
||||
ret List.207;
|
||||
else
|
||||
let List.205 : U64 = UnionAtIndex (Id 0) (Index 0) List.585;
|
||||
ret List.205;
|
||||
let List.208 : U64 = UnionAtIndex (Id 0) (Index 0) List.633;
|
||||
ret List.208;
|
||||
|
||||
procedure List.38 (List.344, List.345):
|
||||
let List.584 : U64 = CallByName List.6 List.344;
|
||||
let List.346 : U64 = CallByName Num.77 List.584 List.345;
|
||||
let List.574 : List U8 = CallByName List.43 List.344 List.346;
|
||||
ret List.574;
|
||||
procedure List.38 (List.392, List.393):
|
||||
let List.632 : U64 = CallByName List.6 List.392;
|
||||
let List.394 : U64 = CallByName Num.77 List.632 List.393;
|
||||
let List.622 : List U8 = CallByName List.43 List.392 List.394;
|
||||
ret List.622;
|
||||
|
||||
procedure List.43 (List.342, List.343):
|
||||
let List.582 : U64 = CallByName List.6 List.342;
|
||||
let List.581 : U64 = CallByName Num.77 List.582 List.343;
|
||||
let List.576 : {U64, U64} = Struct {List.343, List.581};
|
||||
let List.575 : List U8 = CallByName List.49 List.342 List.576;
|
||||
ret List.575;
|
||||
procedure List.43 (List.390, List.391):
|
||||
let List.630 : U64 = CallByName List.6 List.390;
|
||||
let List.629 : U64 = CallByName Num.77 List.630 List.391;
|
||||
let List.624 : {U64, U64} = Struct {List.391, List.629};
|
||||
let List.623 : List U8 = CallByName List.49 List.390 List.624;
|
||||
ret List.623;
|
||||
|
||||
procedure List.49 (List.420, List.421):
|
||||
let List.578 : U64 = StructAtIndex 1 List.421;
|
||||
let List.579 : U64 = StructAtIndex 0 List.421;
|
||||
let List.577 : List U8 = CallByName List.72 List.420 List.578 List.579;
|
||||
ret List.577;
|
||||
procedure List.49 (List.468, List.469):
|
||||
let List.626 : U64 = StructAtIndex 1 List.469;
|
||||
let List.627 : U64 = StructAtIndex 0 List.469;
|
||||
let List.625 : List U8 = CallByName List.72 List.468 List.626 List.627;
|
||||
ret List.625;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.583 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.583;
|
||||
let List.631 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.631;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.606 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.606;
|
||||
let List.654 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.654;
|
||||
|
||||
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.580 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.580;
|
||||
let List.628 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.628;
|
||||
|
||||
procedure List.80 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
|
||||
joinpoint List.594 List.491 List.492 List.493 List.494 List.495:
|
||||
let List.596 : Int1 = CallByName Num.22 List.494 List.495;
|
||||
if List.596 then
|
||||
let List.605 : U8 = CallByName List.66 List.491 List.494;
|
||||
let List.597 : [C U64, C U64] = CallByName Test.4 List.492 List.605;
|
||||
let List.602 : U8 = 1i64;
|
||||
let List.603 : U8 = GetTagId List.597;
|
||||
let List.604 : Int1 = lowlevel Eq List.602 List.603;
|
||||
if List.604 then
|
||||
let List.496 : U64 = UnionAtIndex (Id 1) (Index 0) List.597;
|
||||
let List.600 : U64 = 1i64;
|
||||
let List.599 : U64 = CallByName Num.51 List.494 List.600;
|
||||
jump List.594 List.491 List.496 List.493 List.599 List.495;
|
||||
joinpoint List.642 List.539 List.540 List.541 List.542 List.543:
|
||||
let List.644 : Int1 = CallByName Num.22 List.542 List.543;
|
||||
if List.644 then
|
||||
let List.653 : U8 = CallByName List.66 List.539 List.542;
|
||||
let List.645 : [C U64, C U64] = CallByName Test.4 List.540 List.653;
|
||||
let List.650 : U8 = 1i64;
|
||||
let List.651 : U8 = GetTagId List.645;
|
||||
let List.652 : Int1 = lowlevel Eq List.650 List.651;
|
||||
if List.652 then
|
||||
let List.544 : U64 = UnionAtIndex (Id 1) (Index 0) List.645;
|
||||
let List.648 : U64 = 1i64;
|
||||
let List.647 : U64 = CallByName Num.51 List.542 List.648;
|
||||
jump List.642 List.539 List.544 List.541 List.647 List.543;
|
||||
else
|
||||
dec List.491;
|
||||
let List.497 : U64 = UnionAtIndex (Id 0) (Index 0) List.597;
|
||||
let List.601 : [C U64, C U64] = TagId(0) List.497;
|
||||
ret List.601;
|
||||
dec List.539;
|
||||
let List.545 : U64 = UnionAtIndex (Id 0) (Index 0) List.645;
|
||||
let List.649 : [C U64, C U64] = TagId(0) List.545;
|
||||
ret List.649;
|
||||
else
|
||||
dec List.491;
|
||||
let List.595 : [C U64, C U64] = TagId(1) List.492;
|
||||
ret List.595;
|
||||
dec List.539;
|
||||
let List.643 : [C U64, C U64] = TagId(1) List.540;
|
||||
ret List.643;
|
||||
in
|
||||
inc #Derived_gen.0;
|
||||
jump List.594 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
|
||||
jump List.642 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,7 +1,59 @@
|
|||
procedure List.5 (#Attr.2, #Attr.3):
|
||||
let List.574 : List {} = lowlevel ListMap { xs: `#Attr.#arg1` } #Attr.2 Test.2 #Attr.3;
|
||||
decref #Attr.2;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.626 : U64 = 0i64;
|
||||
let List.627 : U64 = CallByName List.6 List.163;
|
||||
let List.625 : List {} = CallByName List.92 List.163 List.164 List.165 List.626 List.627;
|
||||
ret List.625;
|
||||
|
||||
procedure List.275 (List.276, List.277, List.273):
|
||||
let List.639 : {} = CallByName Test.2 List.277;
|
||||
let List.638 : List {} = CallByName List.71 List.276 List.639;
|
||||
ret List.638;
|
||||
|
||||
procedure List.5 (List.272, List.273):
|
||||
let List.274 : U64 = CallByName List.6 List.272;
|
||||
let List.623 : List {} = CallByName List.68 List.274;
|
||||
let List.622 : List {} = CallByName List.18 List.272 List.623 List.273;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.636;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.635 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.635;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.641 : List {} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.641;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.640 : List {} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.640;
|
||||
|
||||
procedure List.92 (#Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7):
|
||||
joinpoint List.628 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.630 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.630 then
|
||||
let List.634 : [] = CallByName List.66 List.166 List.169;
|
||||
let List.171 : List {} = CallByName List.275 List.167 List.634 List.168;
|
||||
let List.633 : U64 = 1i64;
|
||||
let List.632 : U64 = CallByName Num.51 List.169 List.633;
|
||||
jump List.628 List.166 List.171 List.168 List.632 List.170;
|
||||
else
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.3;
|
||||
jump List.628 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.280;
|
||||
|
||||
procedure Num.51 (#Attr.2, #Attr.3):
|
||||
let Num.279 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
||||
ret Num.279;
|
||||
|
||||
procedure Test.2 (Test.3):
|
||||
let Test.7 : {} = Struct {};
|
||||
|
@ -12,4 +64,5 @@ procedure Test.0 ():
|
|||
let Test.1 : List [] = Array [];
|
||||
let Test.5 : {} = Struct {};
|
||||
let Test.4 : List {} = CallByName List.5 Test.1 Test.5;
|
||||
dec Test.1;
|
||||
ret Test.4;
|
||||
|
|
|
@ -1,7 +1,59 @@
|
|||
procedure List.5 (#Attr.2, #Attr.3):
|
||||
let List.574 : List [] = lowlevel ListMap { xs: `#Attr.#arg1` } #Attr.2 Test.2 #Attr.3;
|
||||
decref #Attr.2;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.626 : U64 = 0i64;
|
||||
let List.627 : U64 = CallByName List.6 List.163;
|
||||
let List.625 : List [] = CallByName List.92 List.163 List.164 List.165 List.626 List.627;
|
||||
ret List.625;
|
||||
|
||||
procedure List.275 (List.276, List.277, List.273):
|
||||
let List.639 : [] = CallByName Test.2 List.277;
|
||||
let List.638 : List [] = CallByName List.71 List.276 List.639;
|
||||
ret List.638;
|
||||
|
||||
procedure List.5 (List.272, List.273):
|
||||
let List.274 : U64 = CallByName List.6 List.272;
|
||||
let List.623 : List [] = CallByName List.68 List.274;
|
||||
let List.622 : List [] = CallByName List.18 List.272 List.623 List.273;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.636;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.635 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.635;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.641 : List [] = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.641;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.640 : List [] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.640;
|
||||
|
||||
procedure List.92 (#Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7):
|
||||
joinpoint List.628 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.630 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.630 then
|
||||
let List.634 : [] = CallByName List.66 List.166 List.169;
|
||||
let List.171 : List [] = CallByName List.275 List.167 List.634 List.168;
|
||||
let List.633 : U64 = 1i64;
|
||||
let List.632 : U64 = CallByName Num.51 List.169 List.633;
|
||||
jump List.628 List.166 List.171 List.168 List.632 List.170;
|
||||
else
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.3;
|
||||
jump List.628 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.280;
|
||||
|
||||
procedure Num.51 (#Attr.2, #Attr.3):
|
||||
let Num.279 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
||||
ret Num.279;
|
||||
|
||||
procedure Test.2 (Test.3):
|
||||
let Test.7 : {} = Struct {};
|
||||
|
@ -12,4 +64,5 @@ procedure Test.0 ():
|
|||
let Test.1 : List [] = Array [];
|
||||
let Test.5 : {} = Struct {};
|
||||
let Test.4 : List [] = CallByName List.5 Test.1 Test.5;
|
||||
dec Test.1;
|
||||
ret Test.4;
|
||||
|
|
|
@ -1,32 +1,32 @@
|
|||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : [<r>C {}, C *self {{}, []}] = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : [<r>C {}, C *self {{}, []}] = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.92 (#Derived_gen.11, #Derived_gen.12, #Derived_gen.13, #Derived_gen.14, #Derived_gen.15):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : [] = CallByName List.66 List.163 List.166;
|
||||
let List.168 : [<r>C {}, C *self {{}, []}] = CallByName Test.29 List.164 List.583 List.165;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : [] = CallByName List.66 List.166 List.169;
|
||||
let List.171 : [<r>C {}, C *self {{}, []}] = CallByName Test.29 List.167 List.631 List.168;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.11;
|
||||
jump List.577 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15;
|
||||
jump List.625 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -2,51 +2,100 @@ procedure Bool.1 ():
|
|||
let Bool.24 : Int1 = false;
|
||||
ret Bool.24;
|
||||
|
||||
procedure List.2 (List.108, List.109):
|
||||
let List.588 : U64 = CallByName List.6 List.108;
|
||||
let List.584 : Int1 = CallByName Num.22 List.109 List.588;
|
||||
if List.584 then
|
||||
let List.586 : Str = CallByName List.66 List.108 List.109;
|
||||
inc List.586;
|
||||
let List.585 : [C {}, C Str] = TagId(1) List.586;
|
||||
ret List.585;
|
||||
else
|
||||
let List.583 : {} = Struct {};
|
||||
let List.582 : [C {}, C Str] = TagId(0) List.583;
|
||||
ret List.582;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.642 : U64 = 0i64;
|
||||
let List.643 : U64 = CallByName List.6 List.163;
|
||||
let List.641 : List Str = CallByName List.92 List.163 List.164 List.165 List.642 List.643;
|
||||
ret List.641;
|
||||
|
||||
procedure List.5 (#Attr.2, #Attr.3):
|
||||
let List.590 : List Str = lowlevel ListMap { xs: `#Attr.#arg1` } #Attr.2 Test.10 #Attr.3;
|
||||
decref #Attr.2;
|
||||
ret List.590;
|
||||
procedure List.2 (List.111, List.112):
|
||||
let List.636 : U64 = CallByName List.6 List.111;
|
||||
let List.632 : Int1 = CallByName Num.22 List.112 List.636;
|
||||
if List.632 then
|
||||
let List.634 : Str = CallByName List.66 List.111 List.112;
|
||||
inc List.634;
|
||||
let List.633 : [C {}, C Str] = TagId(1) List.634;
|
||||
ret List.633;
|
||||
else
|
||||
let List.631 : {} = Struct {};
|
||||
let List.630 : [C {}, C Str] = TagId(0) List.631;
|
||||
ret List.630;
|
||||
|
||||
procedure List.275 (List.276, List.277, List.273):
|
||||
let List.655 : Str = CallByName Test.10 List.277;
|
||||
let List.654 : List Str = CallByName List.71 List.276 List.655;
|
||||
ret List.654;
|
||||
|
||||
procedure List.5 (List.272, List.273):
|
||||
let List.274 : U64 = CallByName List.6 List.272;
|
||||
let List.639 : List Str = CallByName List.68 List.274;
|
||||
let List.638 : List Str = CallByName List.18 List.272 List.639 List.273;
|
||||
ret List.638;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.589 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.589;
|
||||
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.637;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.652 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.652;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.587 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.587;
|
||||
let List.635 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.635;
|
||||
|
||||
procedure List.9 (List.335):
|
||||
let List.581 : U64 = 0i64;
|
||||
let List.574 : [C {}, C Str] = CallByName List.2 List.335 List.581;
|
||||
let List.578 : U8 = 1i64;
|
||||
let List.579 : U8 = GetTagId List.574;
|
||||
let List.580 : Int1 = lowlevel Eq List.578 List.579;
|
||||
if List.580 then
|
||||
let List.336 : Str = UnionAtIndex (Id 1) (Index 0) List.574;
|
||||
let List.575 : [C {}, C Str] = TagId(1) List.336;
|
||||
ret List.575;
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.651 : [<r>C List [<r>C List *self, C *self], C [<r>C List *self, C *self]] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.651;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.657 : List Str = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.657;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.656 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.656;
|
||||
|
||||
procedure List.9 (List.383):
|
||||
let List.629 : U64 = 0i64;
|
||||
let List.622 : [C {}, C Str] = CallByName List.2 List.383 List.629;
|
||||
let List.626 : U8 = 1i64;
|
||||
let List.627 : U8 = GetTagId List.622;
|
||||
let List.628 : Int1 = lowlevel Eq List.626 List.627;
|
||||
if List.628 then
|
||||
let List.384 : Str = UnionAtIndex (Id 1) (Index 0) List.622;
|
||||
let List.623 : [C {}, C Str] = TagId(1) List.384;
|
||||
ret List.623;
|
||||
else
|
||||
dec List.574;
|
||||
let List.577 : {} = Struct {};
|
||||
let List.576 : [C {}, C Str] = TagId(0) List.577;
|
||||
ret List.576;
|
||||
dec List.622;
|
||||
let List.625 : {} = Struct {};
|
||||
let List.624 : [C {}, C Str] = TagId(0) List.625;
|
||||
ret List.624;
|
||||
|
||||
procedure List.92 (#Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7, #Derived_gen.8):
|
||||
joinpoint List.644 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.646 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.646 then
|
||||
let List.650 : [<r>C List [<r>C List *self, C *self], C [<r>C List *self, C *self]] = CallByName List.66 List.166 List.169;
|
||||
inc List.650;
|
||||
let List.171 : List Str = CallByName List.275 List.167 List.650 List.168;
|
||||
let List.649 : U64 = 1i64;
|
||||
let List.648 : U64 = CallByName Num.51 List.169 List.649;
|
||||
jump List.644 List.166 List.171 List.168 List.648 List.170;
|
||||
else
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.4;
|
||||
jump List.644 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7 #Derived_gen.8;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.279 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.279;
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.280;
|
||||
|
||||
procedure Num.51 (#Attr.2, #Attr.3):
|
||||
let Num.281 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
||||
ret Num.281;
|
||||
|
||||
procedure Result.5 (Result.10, Result.11):
|
||||
let Result.37 : U8 = 1i64;
|
||||
|
@ -76,7 +125,7 @@ procedure Test.2 (Test.6):
|
|||
let Test.31 : Int1 = lowlevel Eq Test.29 Test.30;
|
||||
if Test.31 then
|
||||
let Test.7 : [<r>C List *self, C *self] = UnionAtIndex (Id 1) (Index 0) Test.6;
|
||||
joinpoint #Derived_gen.1:
|
||||
joinpoint #Derived_gen.9:
|
||||
let Test.8 : Str = CallByName Test.2 Test.7;
|
||||
let Test.18 : Int1 = CallByName Bool.1;
|
||||
if Test.18 then
|
||||
|
@ -86,33 +135,34 @@ procedure Test.2 (Test.6):
|
|||
let Test.17 : Str = "foo";
|
||||
ret Test.17;
|
||||
in
|
||||
let #Derived_gen.2 : Int1 = lowlevel RefCountIsUnique Test.6;
|
||||
if #Derived_gen.2 then
|
||||
let #Derived_gen.10 : Int1 = lowlevel RefCountIsUnique Test.6;
|
||||
if #Derived_gen.10 then
|
||||
free Test.6;
|
||||
jump #Derived_gen.1;
|
||||
jump #Derived_gen.9;
|
||||
else
|
||||
inc Test.7;
|
||||
decref Test.6;
|
||||
jump #Derived_gen.1;
|
||||
jump #Derived_gen.9;
|
||||
else
|
||||
let Test.9 : List [<r>C List [<r>C List *self, C *self], C [<r>C List *self, C *self]] = UnionAtIndex (Id 0) (Index 0) Test.6;
|
||||
joinpoint #Derived_gen.3:
|
||||
joinpoint #Derived_gen.11:
|
||||
let Test.24 : {} = Struct {};
|
||||
let Test.23 : List Str = CallByName List.5 Test.9 Test.24;
|
||||
dec Test.9;
|
||||
let Test.21 : [C {}, C Str] = CallByName List.9 Test.23;
|
||||
dec Test.23;
|
||||
let Test.22 : Str = "foo";
|
||||
let Test.20 : Str = CallByName Result.5 Test.21 Test.22;
|
||||
ret Test.20;
|
||||
in
|
||||
let #Derived_gen.4 : Int1 = lowlevel RefCountIsUnique Test.6;
|
||||
if #Derived_gen.4 then
|
||||
let #Derived_gen.12 : Int1 = lowlevel RefCountIsUnique Test.6;
|
||||
if #Derived_gen.12 then
|
||||
free Test.6;
|
||||
jump #Derived_gen.3;
|
||||
jump #Derived_gen.11;
|
||||
else
|
||||
inc Test.9;
|
||||
decref Test.6;
|
||||
jump #Derived_gen.3;
|
||||
jump #Derived_gen.11;
|
||||
|
||||
procedure Test.0 ():
|
||||
let Test.32 : List [<r>C List [<r>C List *self, C *self], C [<r>C List *self, C *self]] = Array [];
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
procedure List.6 (#Attr.2):
|
||||
let List.574 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.574;
|
||||
let List.622 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.622;
|
||||
|
||||
procedure Test.1 (Test.5):
|
||||
let Test.2 : I64 = 41i64;
|
||||
|
|
|
@ -2,35 +2,35 @@ procedure Bool.2 ():
|
|||
let Bool.23 : Int1 = true;
|
||||
ret Bool.23;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : Int1 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : Int1 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.92 (#Derived_gen.5, #Derived_gen.6, #Derived_gen.7, #Derived_gen.8, #Derived_gen.9):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : Int1 = CallByName List.66 List.163 List.166;
|
||||
let List.168 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName Test.6 List.164 List.583 List.165;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : Int1 = CallByName List.66 List.166 List.169;
|
||||
let List.171 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName Test.6 List.167 List.631 List.168;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.5;
|
||||
jump List.577 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7 #Derived_gen.8 #Derived_gen.9;
|
||||
jump List.625 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7 #Derived_gen.8 #Derived_gen.9;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
4
crates/compiler/test_mono/generated/dict.txt
generated
4
crates/compiler/test_mono/generated/dict.txt
generated
|
@ -26,8 +26,8 @@ procedure Dict.45 ():
|
|||
ret Dict.735;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.574 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.574;
|
||||
let List.622 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.622;
|
||||
|
||||
procedure Num.75 (#Attr.2, #Attr.3):
|
||||
let Num.279 : U8 = lowlevel NumSubWrap #Attr.2 #Attr.3;
|
||||
|
|
|
@ -2,25 +2,25 @@ procedure Bool.1 ():
|
|||
let Bool.23 : Int1 = false;
|
||||
ret Bool.23;
|
||||
|
||||
procedure List.2 (List.108, List.109):
|
||||
let List.580 : U64 = CallByName List.6 List.108;
|
||||
let List.576 : Int1 = CallByName Num.22 List.109 List.580;
|
||||
if List.576 then
|
||||
let List.578 : {} = CallByName List.66 List.108 List.109;
|
||||
let List.577 : [C {}, C {}] = TagId(1) List.578;
|
||||
ret List.577;
|
||||
procedure List.2 (List.111, List.112):
|
||||
let List.628 : U64 = CallByName List.6 List.111;
|
||||
let List.624 : Int1 = CallByName Num.22 List.112 List.628;
|
||||
if List.624 then
|
||||
let List.626 : {} = CallByName List.66 List.111 List.112;
|
||||
let List.625 : [C {}, C {}] = TagId(1) List.626;
|
||||
ret List.625;
|
||||
else
|
||||
let List.575 : {} = Struct {};
|
||||
let List.574 : [C {}, C {}] = TagId(0) List.575;
|
||||
ret List.574;
|
||||
let List.623 : {} = Struct {};
|
||||
let List.622 : [C {}, C {}] = TagId(0) List.623;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.581 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.581;
|
||||
let List.629 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.629;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.579 : {} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.579;
|
||||
let List.627 : {} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.627;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.279 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
18
crates/compiler/test_mono/generated/encode.txt
generated
18
crates/compiler/test_mono/generated/encode.txt
generated
|
@ -1,16 +1,16 @@
|
|||
procedure List.4 (List.124, List.125):
|
||||
let List.577 : U64 = 1i64;
|
||||
let List.575 : List U8 = CallByName List.70 List.124 List.577;
|
||||
let List.574 : List U8 = CallByName List.71 List.575 List.125;
|
||||
ret List.574;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.625 : U64 = 1i64;
|
||||
let List.623 : List U8 = CallByName List.70 List.127 List.625;
|
||||
let List.622 : List U8 = CallByName List.71 List.623 List.128;
|
||||
ret List.622;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.578 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.578;
|
||||
let List.626 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.626;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.576 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.576;
|
||||
let List.624 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.624;
|
||||
|
||||
procedure Test.23 (Test.24, Test.35, Test.22):
|
||||
let Test.37 : List U8 = CallByName List.4 Test.24 Test.22;
|
||||
|
|
|
@ -67,85 +67,85 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
let Encode.108 : List U8 = CallByName Encode.24 Encode.109 Encode.110 Encode.106;
|
||||
ret Encode.108;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : List U8 = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : List U8 = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.601 : U64 = 0i64;
|
||||
let List.602 : U64 = CallByName List.6 List.160;
|
||||
let List.600 : List U8 = CallByName List.92 List.160 List.161 List.162 List.601 List.602;
|
||||
ret List.600;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.649 : U64 = 0i64;
|
||||
let List.650 : U64 = CallByName List.6 List.163;
|
||||
let List.648 : List U8 = CallByName List.92 List.163 List.164 List.165 List.649 List.650;
|
||||
ret List.648;
|
||||
|
||||
procedure List.4 (List.124, List.125):
|
||||
let List.622 : U64 = 1i64;
|
||||
let List.621 : List U8 = CallByName List.70 List.124 List.622;
|
||||
let List.620 : List U8 = CallByName List.71 List.621 List.125;
|
||||
ret List.620;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.670 : U64 = 1i64;
|
||||
let List.669 : List U8 = CallByName List.70 List.127 List.670;
|
||||
let List.668 : List U8 = CallByName List.71 List.669 List.128;
|
||||
ret List.668;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.599 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.599;
|
||||
let List.647 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.647;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.625 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.625;
|
||||
let List.673 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.673;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.610 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.610;
|
||||
let List.658 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.658;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.616 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.616;
|
||||
let List.664 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.664;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.614 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.614;
|
||||
let List.662 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.662;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.624 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.624;
|
||||
let List.672 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.672;
|
||||
|
||||
procedure List.92 (#Derived_gen.29, #Derived_gen.30, #Derived_gen.31, #Derived_gen.32, #Derived_gen.33):
|
||||
joinpoint List.603 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.605 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.605 then
|
||||
let List.609 : {Str, Str} = CallByName List.66 List.163 List.166;
|
||||
inc List.609;
|
||||
let List.168 : List U8 = CallByName Test.70 List.164 List.609;
|
||||
let List.608 : U64 = 1i64;
|
||||
let List.607 : U64 = CallByName Num.51 List.166 List.608;
|
||||
jump List.603 List.163 List.168 List.165 List.607 List.167;
|
||||
joinpoint List.651 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.653 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.653 then
|
||||
let List.657 : {Str, Str} = CallByName List.66 List.166 List.169;
|
||||
inc List.657;
|
||||
let List.171 : List U8 = CallByName Test.70 List.167 List.657;
|
||||
let List.656 : U64 = 1i64;
|
||||
let List.655 : U64 = CallByName Num.51 List.169 List.656;
|
||||
jump List.651 List.166 List.171 List.168 List.655 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.29;
|
||||
jump List.603 #Derived_gen.29 #Derived_gen.30 #Derived_gen.31 #Derived_gen.32 #Derived_gen.33;
|
||||
jump List.651 #Derived_gen.29 #Derived_gen.30 #Derived_gen.31 #Derived_gen.32 #Derived_gen.33;
|
||||
|
||||
procedure List.92 (#Derived_gen.37, #Derived_gen.38, #Derived_gen.39, #Derived_gen.40, #Derived_gen.41):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : {Str, Str} = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : List U8 = CallByName Test.70 List.164 List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : {Str, Str} = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : List U8 = CallByName Test.70 List.167 List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.37;
|
||||
jump List.577 #Derived_gen.37 #Derived_gen.38 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41;
|
||||
jump List.625 #Derived_gen.37 #Derived_gen.38 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.284 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -39,54 +39,54 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
let Encode.108 : List U8 = CallByName Encode.24 Encode.109 Encode.110 Encode.106;
|
||||
ret Encode.108;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : List U8 = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : List U8 = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.4 (List.124, List.125):
|
||||
let List.596 : U64 = 1i64;
|
||||
let List.595 : List U8 = CallByName List.70 List.124 List.596;
|
||||
let List.594 : List U8 = CallByName List.71 List.595 List.125;
|
||||
ret List.594;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.644 : U64 = 1i64;
|
||||
let List.643 : List U8 = CallByName List.70 List.127 List.644;
|
||||
let List.642 : List U8 = CallByName List.71 List.643 List.128;
|
||||
ret List.642;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.599 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.599;
|
||||
let List.647 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.647;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.590 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.590;
|
||||
let List.638 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.638;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.588 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.588;
|
||||
let List.636 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.636;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.598 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.598;
|
||||
let List.646 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.646;
|
||||
|
||||
procedure List.92 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : {Str, Str} = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : List U8 = CallByName Test.70 List.164 List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : {Str, Str} = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : List U8 = CallByName Test.70 List.167 List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.13;
|
||||
jump List.577 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
|
||||
jump List.625 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.280 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -46,54 +46,54 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
let Encode.108 : List U8 = CallByName Encode.24 Encode.109 Encode.110 Encode.106;
|
||||
ret Encode.108;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : List U8 = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : List U8 = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.4 (List.124, List.125):
|
||||
let List.596 : U64 = 1i64;
|
||||
let List.595 : List U8 = CallByName List.70 List.124 List.596;
|
||||
let List.594 : List U8 = CallByName List.71 List.595 List.125;
|
||||
ret List.594;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.644 : U64 = 1i64;
|
||||
let List.643 : List U8 = CallByName List.70 List.127 List.644;
|
||||
let List.642 : List U8 = CallByName List.71 List.643 List.128;
|
||||
ret List.642;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.599 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.599;
|
||||
let List.647 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.647;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.590 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.590;
|
||||
let List.638 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.638;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.588 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.588;
|
||||
let List.636 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.636;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.598 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.598;
|
||||
let List.646 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.646;
|
||||
|
||||
procedure List.92 (#Derived_gen.17, #Derived_gen.18, #Derived_gen.19, #Derived_gen.20, #Derived_gen.21):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : {Str, Str} = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : List U8 = CallByName Test.70 List.164 List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : {Str, Str} = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : List U8 = CallByName Test.70 List.167 List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.17;
|
||||
jump List.577 #Derived_gen.17 #Derived_gen.18 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21;
|
||||
jump List.625 #Derived_gen.17 #Derived_gen.18 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.280 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -11,23 +11,23 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
let Encode.108 : List U8 = CallByName Encode.24 Encode.109 Encode.110 Encode.106;
|
||||
ret Encode.108;
|
||||
|
||||
procedure List.4 (List.124, List.125):
|
||||
let List.584 : U64 = 1i64;
|
||||
let List.583 : List U8 = CallByName List.70 List.124 List.584;
|
||||
let List.582 : List U8 = CallByName List.71 List.583 List.125;
|
||||
ret List.582;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.632 : U64 = 1i64;
|
||||
let List.631 : List U8 = CallByName List.70 List.127 List.632;
|
||||
let List.630 : List U8 = CallByName List.71 List.631 List.128;
|
||||
ret List.630;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.578 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.578;
|
||||
let List.626 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.626;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.576 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.576;
|
||||
let List.624 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.624;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.586 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.586;
|
||||
let List.634 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.634;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.280 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -41,57 +41,57 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
ret Encode.108;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.600 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.600;
|
||||
let List.648 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.648;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : List U8 = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : List U8 = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.4 (List.124, List.125):
|
||||
let List.596 : U64 = 1i64;
|
||||
let List.595 : List U8 = CallByName List.70 List.124 List.596;
|
||||
let List.594 : List U8 = CallByName List.71 List.595 List.125;
|
||||
ret List.594;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.644 : U64 = 1i64;
|
||||
let List.643 : List U8 = CallByName List.70 List.127 List.644;
|
||||
let List.642 : List U8 = CallByName List.71 List.643 List.128;
|
||||
ret List.642;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.599 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.599;
|
||||
let List.647 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.647;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.590 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.590;
|
||||
let List.638 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.638;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.588 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.588;
|
||||
let List.636 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.636;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.598 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.598;
|
||||
let List.646 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.646;
|
||||
|
||||
procedure List.92 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : Str = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : List U8 = CallByName Test.63 List.164 List.583 List.165;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : Str = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : List U8 = CallByName Test.63 List.167 List.631 List.168;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.13;
|
||||
jump List.577 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
|
||||
jump List.625 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.280 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -44,57 +44,57 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
ret Encode.108;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.600 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.600;
|
||||
let List.648 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.648;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : List U8 = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : List U8 = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.4 (List.124, List.125):
|
||||
let List.596 : U64 = 1i64;
|
||||
let List.595 : List U8 = CallByName List.70 List.124 List.596;
|
||||
let List.594 : List U8 = CallByName List.71 List.595 List.125;
|
||||
ret List.594;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.644 : U64 = 1i64;
|
||||
let List.643 : List U8 = CallByName List.70 List.127 List.644;
|
||||
let List.642 : List U8 = CallByName List.71 List.643 List.128;
|
||||
ret List.642;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.599 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.599;
|
||||
let List.647 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.647;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.590 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.590;
|
||||
let List.638 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.638;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.588 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.588;
|
||||
let List.636 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.636;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.598 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.598;
|
||||
let List.646 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.646;
|
||||
|
||||
procedure List.92 (#Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17, #Derived_gen.18):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : Str = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : List U8 = CallByName Test.63 List.164 List.583 List.165;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : Str = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : List U8 = CallByName Test.63 List.167 List.631 List.168;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.14;
|
||||
jump List.577 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18;
|
||||
jump List.625 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.280 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -890,171 +890,171 @@ procedure Inspect.59 (Inspect.296, Inspect.292):
|
|||
procedure Inspect.60 (Inspect.298):
|
||||
ret Inspect.298;
|
||||
|
||||
procedure List.11 (List.138, List.139):
|
||||
let List.636 : List {U32, U32} = CallByName List.68 List.139;
|
||||
let List.635 : List {U32, U32} = CallByName List.90 List.138 List.139 List.636;
|
||||
ret List.635;
|
||||
procedure List.11 (List.141, List.142):
|
||||
let List.684 : List {U32, U32} = CallByName List.68 List.142;
|
||||
let List.683 : List {U32, U32} = CallByName List.90 List.141 List.142 List.684;
|
||||
ret List.683;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.639 : U64 = 0i64;
|
||||
let List.640 : U64 = CallByName List.6 List.160;
|
||||
let List.638 : {Str, Int1} = CallByName List.92 List.160 List.161 List.162 List.639 List.640;
|
||||
ret List.638;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.687 : U64 = 0i64;
|
||||
let List.688 : U64 = CallByName List.6 List.163;
|
||||
let List.686 : {Str, Int1} = CallByName List.92 List.163 List.164 List.165 List.687 List.688;
|
||||
ret List.686;
|
||||
|
||||
procedure List.3 (List.116, List.117, List.118):
|
||||
let List.600 : {List {U32, U32}, {U32, U32}} = CallByName List.64 List.116 List.117 List.118;
|
||||
let List.599 : List {U32, U32} = StructAtIndex 0 List.600;
|
||||
ret List.599;
|
||||
procedure List.3 (List.119, List.120, List.121):
|
||||
let List.648 : {List {U32, U32}, {U32, U32}} = CallByName List.64 List.119 List.120 List.121;
|
||||
let List.647 : List {U32, U32} = StructAtIndex 0 List.648;
|
||||
ret List.647;
|
||||
|
||||
procedure List.3 (List.116, List.117, List.118):
|
||||
let List.602 : {List {Str, I64}, {Str, I64}} = CallByName List.64 List.116 List.117 List.118;
|
||||
let List.601 : List {Str, I64} = StructAtIndex 0 List.602;
|
||||
let #Derived_gen.71 : {Str, I64} = StructAtIndex 1 List.602;
|
||||
procedure List.3 (List.119, List.120, List.121):
|
||||
let List.650 : {List {Str, I64}, {Str, I64}} = CallByName List.64 List.119 List.120 List.121;
|
||||
let List.649 : List {Str, I64} = StructAtIndex 0 List.650;
|
||||
let #Derived_gen.71 : {Str, I64} = StructAtIndex 1 List.650;
|
||||
dec #Derived_gen.71;
|
||||
ret List.601;
|
||||
|
||||
procedure List.4 (List.124, List.125):
|
||||
let List.611 : U64 = 1i64;
|
||||
let List.609 : List {Str, I64} = CallByName List.70 List.124 List.611;
|
||||
let List.608 : List {Str, I64} = CallByName List.71 List.609 List.125;
|
||||
ret List.608;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.590 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.590;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.637;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.649 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.649;
|
||||
|
||||
procedure List.64 (List.113, List.114, List.115):
|
||||
let List.598 : U64 = CallByName List.6 List.113;
|
||||
let List.595 : Int1 = CallByName Num.22 List.114 List.598;
|
||||
if List.595 then
|
||||
let List.596 : {List {U32, U32}, {U32, U32}} = CallByName List.67 List.113 List.114 List.115;
|
||||
ret List.596;
|
||||
else
|
||||
let List.594 : {List {U32, U32}, {U32, U32}} = Struct {List.113, List.115};
|
||||
ret List.594;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.659 : U64 = 1i64;
|
||||
let List.657 : List {Str, I64} = CallByName List.70 List.127 List.659;
|
||||
let List.656 : List {Str, I64} = CallByName List.71 List.657 List.128;
|
||||
ret List.656;
|
||||
|
||||
procedure List.64 (List.113, List.114, List.115):
|
||||
let List.607 : U64 = CallByName List.6 List.113;
|
||||
let List.604 : Int1 = CallByName Num.22 List.114 List.607;
|
||||
if List.604 then
|
||||
let List.605 : {List {Str, I64}, {Str, I64}} = CallByName List.67 List.113 List.114 List.115;
|
||||
ret List.605;
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.638 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.638;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.685 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.685;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.697 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.697;
|
||||
|
||||
procedure List.64 (List.116, List.117, List.118):
|
||||
let List.646 : U64 = CallByName List.6 List.116;
|
||||
let List.643 : Int1 = CallByName Num.22 List.117 List.646;
|
||||
if List.643 then
|
||||
let List.644 : {List {U32, U32}, {U32, U32}} = CallByName List.67 List.116 List.117 List.118;
|
||||
ret List.644;
|
||||
else
|
||||
let List.603 : {List {Str, I64}, {Str, I64}} = Struct {List.113, List.115};
|
||||
ret List.603;
|
||||
let List.642 : {List {U32, U32}, {U32, U32}} = Struct {List.116, List.118};
|
||||
ret List.642;
|
||||
|
||||
procedure List.64 (List.116, List.117, List.118):
|
||||
let List.655 : U64 = CallByName List.6 List.116;
|
||||
let List.652 : Int1 = CallByName Num.22 List.117 List.655;
|
||||
if List.652 then
|
||||
let List.653 : {List {Str, I64}, {Str, I64}} = CallByName List.67 List.116 List.117 List.118;
|
||||
ret List.653;
|
||||
else
|
||||
let List.651 : {List {Str, I64}, {Str, I64}} = Struct {List.116, List.118};
|
||||
ret List.651;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.648 : {Str, I64} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.648;
|
||||
let List.696 : {Str, I64} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.696;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.597 : {List {U32, U32}, {U32, U32}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.597;
|
||||
let List.645 : {List {U32, U32}, {U32, U32}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.645;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.606 : {List {Str, I64}, {Str, I64}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.606;
|
||||
let List.654 : {List {Str, I64}, {Str, I64}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.654;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.634 : List {U32, U32} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.634;
|
||||
let List.682 : List {U32, U32} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.682;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.612 : List {Str, I64} = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.612;
|
||||
let List.660 : List {Str, I64} = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.660;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.610 : List {Str, I64} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.610;
|
||||
let List.658 : List {Str, I64} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.658;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.631 : List {U32, U32} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.631;
|
||||
let List.679 : List {U32, U32} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.679;
|
||||
|
||||
procedure List.83 (List.169, List.170, List.171):
|
||||
let List.614 : U64 = 0i64;
|
||||
let List.615 : U64 = CallByName List.6 List.169;
|
||||
let List.613 : List {U32, U32} = CallByName List.93 List.169 List.170 List.171 List.614 List.615;
|
||||
ret List.613;
|
||||
procedure List.83 (List.172, List.173, List.174):
|
||||
let List.662 : U64 = 0i64;
|
||||
let List.663 : U64 = CallByName List.6 List.172;
|
||||
let List.661 : List {U32, U32} = CallByName List.93 List.172 List.173 List.174 List.662 List.663;
|
||||
ret List.661;
|
||||
|
||||
procedure List.90 (#Derived_gen.33, #Derived_gen.34, #Derived_gen.35):
|
||||
joinpoint List.625 List.140 List.141 List.142:
|
||||
let List.633 : U64 = 0i64;
|
||||
let List.627 : Int1 = CallByName Num.24 List.141 List.633;
|
||||
if List.627 then
|
||||
let List.632 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.75 List.141 List.632;
|
||||
let List.630 : List {U32, U32} = CallByName List.71 List.142 List.140;
|
||||
jump List.625 List.140 List.629 List.630;
|
||||
joinpoint List.673 List.143 List.144 List.145:
|
||||
let List.681 : U64 = 0i64;
|
||||
let List.675 : Int1 = CallByName Num.24 List.144 List.681;
|
||||
if List.675 then
|
||||
let List.680 : U64 = 1i64;
|
||||
let List.677 : U64 = CallByName Num.75 List.144 List.680;
|
||||
let List.678 : List {U32, U32} = CallByName List.71 List.145 List.143;
|
||||
jump List.673 List.143 List.677 List.678;
|
||||
else
|
||||
ret List.142;
|
||||
ret List.145;
|
||||
in
|
||||
jump List.625 #Derived_gen.33 #Derived_gen.34 #Derived_gen.35;
|
||||
jump List.673 #Derived_gen.33 #Derived_gen.34 #Derived_gen.35;
|
||||
|
||||
procedure List.92 (#Derived_gen.50, #Derived_gen.51, #Derived_gen.52, #Derived_gen.53, #Derived_gen.54):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : {Str, I64} = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName Dict.152 List.164 List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : {Str, I64} = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName Dict.152 List.167 List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.50;
|
||||
jump List.577 #Derived_gen.50 #Derived_gen.51 #Derived_gen.52 #Derived_gen.53 #Derived_gen.54;
|
||||
jump List.625 #Derived_gen.50 #Derived_gen.51 #Derived_gen.52 #Derived_gen.53 #Derived_gen.54;
|
||||
|
||||
procedure List.92 (#Derived_gen.59, #Derived_gen.60, #Derived_gen.61, #Derived_gen.62, #Derived_gen.63):
|
||||
joinpoint List.641 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.643 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.643 then
|
||||
let List.647 : {Str, I64} = CallByName List.66 List.163 List.166;
|
||||
inc List.647;
|
||||
let List.168 : {Str, Int1} = CallByName Dict.181 List.164 List.647 List.165;
|
||||
let List.646 : U64 = 1i64;
|
||||
let List.645 : U64 = CallByName Num.51 List.166 List.646;
|
||||
jump List.641 List.163 List.168 List.165 List.645 List.167;
|
||||
joinpoint List.689 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.691 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.691 then
|
||||
let List.695 : {Str, I64} = CallByName List.66 List.166 List.169;
|
||||
inc List.695;
|
||||
let List.171 : {Str, Int1} = CallByName Dict.181 List.167 List.695 List.168;
|
||||
let List.694 : U64 = 1i64;
|
||||
let List.693 : U64 = CallByName Num.51 List.169 List.694;
|
||||
jump List.689 List.166 List.171 List.168 List.693 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.59;
|
||||
jump List.641 #Derived_gen.59 #Derived_gen.60 #Derived_gen.61 #Derived_gen.62 #Derived_gen.63;
|
||||
jump List.689 #Derived_gen.59 #Derived_gen.60 #Derived_gen.61 #Derived_gen.62 #Derived_gen.63;
|
||||
|
||||
procedure List.93 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27):
|
||||
joinpoint List.616 List.172 List.173 List.174 List.175 List.176:
|
||||
let List.618 : Int1 = CallByName Num.22 List.175 List.176;
|
||||
if List.618 then
|
||||
let List.622 : {Str, I64} = CallByName List.66 List.172 List.175;
|
||||
inc List.622;
|
||||
let List.177 : List {U32, U32} = CallByName Dict.398 List.173 List.622 List.175 List.174;
|
||||
let List.621 : U64 = 1i64;
|
||||
let List.620 : U64 = CallByName Num.51 List.175 List.621;
|
||||
jump List.616 List.172 List.177 List.174 List.620 List.176;
|
||||
joinpoint List.664 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.666 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.666 then
|
||||
let List.670 : {Str, I64} = CallByName List.66 List.175 List.178;
|
||||
inc List.670;
|
||||
let List.180 : List {U32, U32} = CallByName Dict.398 List.176 List.670 List.178 List.177;
|
||||
let List.669 : U64 = 1i64;
|
||||
let List.668 : U64 = CallByName Num.51 List.178 List.669;
|
||||
jump List.664 List.175 List.180 List.177 List.668 List.179;
|
||||
else
|
||||
dec List.172;
|
||||
ret List.173;
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
in
|
||||
inc #Derived_gen.23;
|
||||
jump List.616 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
|
||||
jump List.664 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
|
||||
|
||||
procedure Num.131 (#Attr.2):
|
||||
let Num.287 : U32 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -135,35 +135,35 @@ procedure Inspect.59 (Inspect.296, Inspect.292):
|
|||
procedure Inspect.60 (Inspect.298):
|
||||
ret Inspect.298;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : {Str, Int1} = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : {Str, Int1} = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.92 (#Derived_gen.19, #Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : I64 = CallByName List.66 List.163 List.166;
|
||||
let List.168 : {Str, Int1} = CallByName Inspect.156 List.164 List.583 List.165;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : I64 = CallByName List.66 List.166 List.169;
|
||||
let List.171 : {Str, Int1} = CallByName Inspect.156 List.167 List.631 List.168;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.19;
|
||||
jump List.577 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23;
|
||||
jump List.625 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.281 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -221,67 +221,67 @@ procedure Inspect.59 (Inspect.296, Inspect.292):
|
|||
procedure Inspect.60 (Inspect.298):
|
||||
ret Inspect.298;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : {Str, Int1} = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : {Str, Int1} = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.587 : U64 = 0i64;
|
||||
let List.588 : U64 = CallByName List.6 List.160;
|
||||
let List.586 : {Str, Int1} = CallByName List.92 List.160 List.161 List.162 List.587 List.588;
|
||||
ret List.586;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.635 : U64 = 0i64;
|
||||
let List.636 : U64 = CallByName List.6 List.163;
|
||||
let List.634 : {Str, Int1} = CallByName List.92 List.163 List.164 List.165 List.635 List.636;
|
||||
ret List.634;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.597 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.597;
|
||||
let List.645 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.645;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.596 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.596;
|
||||
let List.644 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.644;
|
||||
|
||||
procedure List.92 (#Derived_gen.26, #Derived_gen.27, #Derived_gen.28, #Derived_gen.29, #Derived_gen.30):
|
||||
joinpoint List.589 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.591 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.591 then
|
||||
let List.595 : {Str, Str} = CallByName List.66 List.163 List.166;
|
||||
inc List.595;
|
||||
let List.168 : {Str, Int1} = CallByName Inspect.229 List.164 List.595;
|
||||
let List.594 : U64 = 1i64;
|
||||
let List.593 : U64 = CallByName Num.51 List.166 List.594;
|
||||
jump List.589 List.163 List.168 List.165 List.593 List.167;
|
||||
joinpoint List.637 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.639 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.639 then
|
||||
let List.643 : {Str, Str} = CallByName List.66 List.166 List.169;
|
||||
inc List.643;
|
||||
let List.171 : {Str, Int1} = CallByName Inspect.229 List.167 List.643;
|
||||
let List.642 : U64 = 1i64;
|
||||
let List.641 : U64 = CallByName Num.51 List.169 List.642;
|
||||
jump List.637 List.166 List.171 List.168 List.641 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.26;
|
||||
jump List.589 #Derived_gen.26 #Derived_gen.27 #Derived_gen.28 #Derived_gen.29 #Derived_gen.30;
|
||||
jump List.637 #Derived_gen.26 #Derived_gen.27 #Derived_gen.28 #Derived_gen.29 #Derived_gen.30;
|
||||
|
||||
procedure List.92 (#Derived_gen.39, #Derived_gen.40, #Derived_gen.41, #Derived_gen.42, #Derived_gen.43):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : {Str, Str} = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : {Str, Int1} = CallByName Inspect.229 List.164 List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : {Str, Str} = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : {Str, Int1} = CallByName Inspect.229 List.167 List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.39;
|
||||
jump List.577 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41 #Derived_gen.42 #Derived_gen.43;
|
||||
jump List.625 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41 #Derived_gen.42 #Derived_gen.43;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -161,36 +161,36 @@ procedure Inspect.59 (Inspect.296, Inspect.292):
|
|||
procedure Inspect.60 (Inspect.298):
|
||||
ret Inspect.298;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : {Str, Int1} = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : {Str, Int1} = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : {[C I64, C Decimal], Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : {[C I64, C Decimal], Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.92 (#Derived_gen.26, #Derived_gen.27, #Derived_gen.28, #Derived_gen.29, #Derived_gen.30):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : {[C I64, C Decimal], Str} = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : {Str, Int1} = CallByName Inspect.229 List.164 List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : {[C I64, C Decimal], Str} = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : {Str, Int1} = CallByName Inspect.229 List.167 List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.26;
|
||||
jump List.577 #Derived_gen.26 #Derived_gen.27 #Derived_gen.28 #Derived_gen.29 #Derived_gen.30;
|
||||
jump List.625 #Derived_gen.26 #Derived_gen.27 #Derived_gen.28 #Derived_gen.29 #Derived_gen.30;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -139,36 +139,36 @@ procedure Inspect.59 (Inspect.296, Inspect.292):
|
|||
procedure Inspect.60 (Inspect.298):
|
||||
ret Inspect.298;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : {Str, Int1} = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : {Str, Int1} = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.92 (#Derived_gen.10, #Derived_gen.11, #Derived_gen.12, #Derived_gen.13, #Derived_gen.14):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : {Str, Str} = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : {Str, Int1} = CallByName Inspect.229 List.164 List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : {Str, Str} = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : {Str, Int1} = CallByName Inspect.229 List.167 List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.10;
|
||||
jump List.577 #Derived_gen.10 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14;
|
||||
jump List.625 #Derived_gen.10 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -146,36 +146,36 @@ procedure Inspect.59 (Inspect.296, Inspect.292):
|
|||
procedure Inspect.60 (Inspect.298):
|
||||
ret Inspect.298;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : {Str, Int1} = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : {Str, Int1} = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.92 (#Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17, #Derived_gen.18):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : {Str, Str} = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : {Str, Int1} = CallByName Inspect.229 List.164 List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : {Str, Str} = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : {Str, Int1} = CallByName Inspect.229 List.167 List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.14;
|
||||
jump List.577 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18;
|
||||
jump List.625 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -132,43 +132,43 @@ procedure Inspect.59 (Inspect.296, Inspect.292):
|
|||
procedure Inspect.60 (Inspect.298):
|
||||
ret Inspect.298;
|
||||
|
||||
procedure List.1 (List.107):
|
||||
let List.587 : U64 = CallByName List.6 List.107;
|
||||
let List.588 : U64 = 0i64;
|
||||
let List.586 : Int1 = CallByName Bool.11 List.587 List.588;
|
||||
ret List.586;
|
||||
procedure List.1 (List.110):
|
||||
let List.635 : U64 = CallByName List.6 List.110;
|
||||
let List.636 : U64 = 0i64;
|
||||
let List.634 : Int1 = CallByName Bool.11 List.635 List.636;
|
||||
ret List.634;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : Str = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : Str = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.92 (#Derived_gen.10, #Derived_gen.11, #Derived_gen.12, #Derived_gen.13, #Derived_gen.14):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : Str = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : Str = CallByName Inspect.206 List.164 List.583;
|
||||
dec List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : Str = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : Str = CallByName Inspect.206 List.167 List.631;
|
||||
dec List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.10;
|
||||
jump List.577 #Derived_gen.10 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14;
|
||||
jump List.625 #Derived_gen.10 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -135,43 +135,43 @@ procedure Inspect.59 (Inspect.296, Inspect.292):
|
|||
procedure Inspect.60 (Inspect.298):
|
||||
ret Inspect.298;
|
||||
|
||||
procedure List.1 (List.107):
|
||||
let List.587 : U64 = CallByName List.6 List.107;
|
||||
let List.588 : U64 = 0i64;
|
||||
let List.586 : Int1 = CallByName Bool.11 List.587 List.588;
|
||||
ret List.586;
|
||||
procedure List.1 (List.110):
|
||||
let List.635 : U64 = CallByName List.6 List.110;
|
||||
let List.636 : U64 = 0i64;
|
||||
let List.634 : Int1 = CallByName Bool.11 List.635 List.636;
|
||||
ret List.634;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : Str = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : Str = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.92 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : Str = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : Str = CallByName Inspect.206 List.164 List.583;
|
||||
dec List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : Str = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : Str = CallByName Inspect.206 List.167 List.631;
|
||||
dec List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.13;
|
||||
jump List.577 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
|
||||
jump List.625 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
procedure List.6 (#Attr.2):
|
||||
let List.574 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.574;
|
||||
let List.622 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.622;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.281 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
|
|
|
@ -6,40 +6,40 @@ procedure Bool.2 ():
|
|||
let Bool.23 : Int1 = true;
|
||||
ret Bool.23;
|
||||
|
||||
procedure List.2 (List.108, List.109):
|
||||
let List.588 : U64 = CallByName List.6 List.108;
|
||||
let List.584 : Int1 = CallByName Num.22 List.109 List.588;
|
||||
if List.584 then
|
||||
let List.586 : I64 = CallByName List.66 List.108 List.109;
|
||||
let List.585 : [C {}, C I64] = TagId(1) List.586;
|
||||
ret List.585;
|
||||
procedure List.2 (List.111, List.112):
|
||||
let List.636 : U64 = CallByName List.6 List.111;
|
||||
let List.632 : Int1 = CallByName Num.22 List.112 List.636;
|
||||
if List.632 then
|
||||
let List.634 : I64 = CallByName List.66 List.111 List.112;
|
||||
let List.633 : [C {}, C I64] = TagId(1) List.634;
|
||||
ret List.633;
|
||||
else
|
||||
let List.583 : {} = Struct {};
|
||||
let List.582 : [C {}, C I64] = TagId(0) List.583;
|
||||
ret List.582;
|
||||
let List.631 : {} = Struct {};
|
||||
let List.630 : [C {}, C I64] = TagId(0) List.631;
|
||||
ret List.630;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.589 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.589;
|
||||
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.637;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.587 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.587;
|
||||
let List.635 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.635;
|
||||
|
||||
procedure List.9 (List.335):
|
||||
let List.581 : U64 = 0i64;
|
||||
let List.574 : [C {}, C I64] = CallByName List.2 List.335 List.581;
|
||||
let List.578 : U8 = 1i64;
|
||||
let List.579 : U8 = GetTagId List.574;
|
||||
let List.580 : Int1 = lowlevel Eq List.578 List.579;
|
||||
if List.580 then
|
||||
let List.336 : I64 = UnionAtIndex (Id 1) (Index 0) List.574;
|
||||
let List.575 : [C Int1, C I64] = TagId(1) List.336;
|
||||
ret List.575;
|
||||
procedure List.9 (List.383):
|
||||
let List.629 : U64 = 0i64;
|
||||
let List.622 : [C {}, C I64] = CallByName List.2 List.383 List.629;
|
||||
let List.626 : U8 = 1i64;
|
||||
let List.627 : U8 = GetTagId List.622;
|
||||
let List.628 : Int1 = lowlevel Eq List.626 List.627;
|
||||
if List.628 then
|
||||
let List.384 : I64 = UnionAtIndex (Id 1) (Index 0) List.622;
|
||||
let List.623 : [C Int1, C I64] = TagId(1) List.384;
|
||||
ret List.623;
|
||||
else
|
||||
let List.577 : Int1 = true;
|
||||
let List.576 : [C Int1, C I64] = TagId(0) List.577;
|
||||
ret List.576;
|
||||
let List.625 : Int1 = true;
|
||||
let List.624 : [C Int1, C I64] = TagId(0) List.625;
|
||||
ret List.624;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.279 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
193
crates/compiler/test_mono/generated/issue_4770.txt
generated
193
crates/compiler/test_mono/generated/issue_4770.txt
generated
|
@ -6,93 +6,137 @@ procedure Bool.2 ():
|
|||
let Bool.24 : Int1 = true;
|
||||
ret Bool.24;
|
||||
|
||||
procedure List.104 (List.488, List.489, List.490):
|
||||
let List.588 : U64 = 0i64;
|
||||
let List.589 : U64 = CallByName List.6 List.488;
|
||||
let List.587 : [C {}, C {}] = CallByName List.80 List.488 List.489 List.490 List.588 List.589;
|
||||
ret List.587;
|
||||
procedure List.107 (List.536, List.537, List.538):
|
||||
let List.636 : U64 = 0i64;
|
||||
let List.637 : U64 = CallByName List.6 List.536;
|
||||
let List.635 : [C {}, C {}] = CallByName List.80 List.536 List.537 List.538 List.636 List.637;
|
||||
ret List.635;
|
||||
|
||||
procedure List.23 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.609 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListMap2 { xs: `#Attr.#arg1`, ys: `#Attr.#arg2` } #Attr.2 #Attr.3 Test.15 #Attr.4;
|
||||
decref #Attr.3;
|
||||
decref #Attr.2;
|
||||
ret List.609;
|
||||
procedure List.23 (List.278, List.279, List.280):
|
||||
let List.672 : U64 = CallByName List.6 List.278;
|
||||
let List.673 : U64 = CallByName List.6 List.279;
|
||||
let List.281 : U64 = CallByName Num.148 List.672 List.673;
|
||||
let List.658 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.68 List.281;
|
||||
let List.659 : U64 = 0i64;
|
||||
let List.657 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.97 List.278 List.279 List.658 List.280 List.659 List.281;
|
||||
ret List.657;
|
||||
|
||||
procedure List.236 (List.576, List.237, List.235):
|
||||
let List.606 : Int1 = CallByName Test.1 List.237;
|
||||
if List.606 then
|
||||
let List.608 : {} = Struct {};
|
||||
let List.607 : [C {}, C {}] = TagId(1) List.608;
|
||||
ret List.607;
|
||||
procedure List.239 (List.624, List.240, List.238):
|
||||
let List.654 : Int1 = CallByName Test.1 List.240;
|
||||
if List.654 then
|
||||
let List.656 : {} = Struct {};
|
||||
let List.655 : [C {}, C {}] = TagId(1) List.656;
|
||||
ret List.655;
|
||||
else
|
||||
let List.605 : {} = Struct {};
|
||||
let List.604 : [C {}, C {}] = TagId(0) List.605;
|
||||
ret List.604;
|
||||
let List.653 : {} = Struct {};
|
||||
let List.652 : [C {}, C {}] = TagId(0) List.653;
|
||||
ret List.652;
|
||||
|
||||
procedure List.56 (List.234, List.235):
|
||||
let List.585 : {} = Struct {};
|
||||
let List.577 : [C {}, C {}] = CallByName List.104 List.234 List.585 List.235;
|
||||
let List.582 : U8 = 1i64;
|
||||
let List.583 : U8 = GetTagId List.577;
|
||||
let List.584 : Int1 = lowlevel Eq List.582 List.583;
|
||||
if List.584 then
|
||||
let List.578 : Int1 = CallByName Bool.2;
|
||||
ret List.578;
|
||||
procedure List.56 (List.237, List.238):
|
||||
let List.633 : {} = Struct {};
|
||||
let List.625 : [C {}, C {}] = CallByName List.107 List.237 List.633 List.238;
|
||||
let List.630 : U8 = 1i64;
|
||||
let List.631 : U8 = GetTagId List.625;
|
||||
let List.632 : Int1 = lowlevel Eq List.630 List.631;
|
||||
if List.632 then
|
||||
let List.626 : Int1 = CallByName Bool.2;
|
||||
ret List.626;
|
||||
else
|
||||
let List.579 : Int1 = CallByName Bool.1;
|
||||
ret List.579;
|
||||
let List.627 : Int1 = CallByName Bool.1;
|
||||
ret List.627;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.575 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.575;
|
||||
let List.623 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.623;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.603 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.603;
|
||||
let List.651 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.651;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.602 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.602;
|
||||
let List.650 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.650;
|
||||
|
||||
procedure List.80 (#Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4, #Derived_gen.5):
|
||||
joinpoint List.590 List.491 List.492 List.493 List.494 List.495:
|
||||
let List.592 : Int1 = CallByName Num.22 List.494 List.495;
|
||||
if List.592 then
|
||||
let List.601 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.66 List.491 List.494;
|
||||
inc List.601;
|
||||
let List.593 : [C {}, C {}] = CallByName List.236 List.492 List.601 List.493;
|
||||
let List.598 : U8 = 1i64;
|
||||
let List.599 : U8 = GetTagId List.593;
|
||||
let List.600 : Int1 = lowlevel Eq List.598 List.599;
|
||||
if List.600 then
|
||||
let List.496 : {} = UnionAtIndex (Id 1) (Index 0) List.593;
|
||||
let List.596 : U64 = 1i64;
|
||||
let List.595 : U64 = CallByName Num.51 List.494 List.596;
|
||||
jump List.590 List.491 List.496 List.493 List.595 List.495;
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.670 : [<r>C I64, C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.670;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.671 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.671;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.667 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.667;
|
||||
|
||||
procedure List.80 (#Derived_gen.7, #Derived_gen.8, #Derived_gen.9, #Derived_gen.10, #Derived_gen.11):
|
||||
joinpoint List.638 List.539 List.540 List.541 List.542 List.543:
|
||||
let List.640 : Int1 = CallByName Num.22 List.542 List.543;
|
||||
if List.640 then
|
||||
let List.649 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.66 List.539 List.542;
|
||||
inc List.649;
|
||||
let List.641 : [C {}, C {}] = CallByName List.239 List.540 List.649 List.541;
|
||||
let List.646 : U8 = 1i64;
|
||||
let List.647 : U8 = GetTagId List.641;
|
||||
let List.648 : Int1 = lowlevel Eq List.646 List.647;
|
||||
if List.648 then
|
||||
let List.544 : {} = UnionAtIndex (Id 1) (Index 0) List.641;
|
||||
let List.644 : U64 = 1i64;
|
||||
let List.643 : U64 = CallByName Num.51 List.542 List.644;
|
||||
jump List.638 List.539 List.544 List.541 List.643 List.543;
|
||||
else
|
||||
dec List.491;
|
||||
let List.497 : {} = UnionAtIndex (Id 0) (Index 0) List.593;
|
||||
let List.597 : [C {}, C {}] = TagId(0) List.497;
|
||||
ret List.597;
|
||||
dec List.539;
|
||||
let List.545 : {} = UnionAtIndex (Id 0) (Index 0) List.641;
|
||||
let List.645 : [C {}, C {}] = TagId(0) List.545;
|
||||
ret List.645;
|
||||
else
|
||||
dec List.491;
|
||||
let List.591 : [C {}, C {}] = TagId(1) List.492;
|
||||
ret List.591;
|
||||
dec List.539;
|
||||
let List.639 : [C {}, C {}] = TagId(1) List.540;
|
||||
ret List.639;
|
||||
in
|
||||
inc #Derived_gen.7;
|
||||
jump List.638 #Derived_gen.7 #Derived_gen.8 #Derived_gen.9 #Derived_gen.10 #Derived_gen.11;
|
||||
|
||||
procedure List.97 (#Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6):
|
||||
joinpoint List.660 List.282 List.283 List.284 List.285 List.286 List.287:
|
||||
let List.662 : Int1 = CallByName Num.22 List.286 List.287;
|
||||
if List.662 then
|
||||
let List.668 : [<r>C I64, C List *self] = CallByName List.66 List.282 List.286;
|
||||
inc List.668;
|
||||
let List.669 : [<r>C I64, C List *self] = CallByName List.66 List.283 List.286;
|
||||
inc List.669;
|
||||
let List.288 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName Test.15 List.668 List.669;
|
||||
let List.664 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.71 List.284 List.288;
|
||||
let List.666 : U64 = 1i64;
|
||||
let List.665 : U64 = CallByName Num.51 List.286 List.666;
|
||||
jump List.660 List.282 List.283 List.664 List.285 List.665 List.287;
|
||||
else
|
||||
dec List.283;
|
||||
dec List.282;
|
||||
ret List.284;
|
||||
in
|
||||
inc #Derived_gen.1;
|
||||
jump List.590 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5;
|
||||
inc #Derived_gen.2;
|
||||
jump List.660 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6;
|
||||
|
||||
procedure Num.148 (Num.223, Num.224):
|
||||
let Num.286 : Int1 = CallByName Num.22 Num.223 Num.224;
|
||||
if Num.286 then
|
||||
ret Num.223;
|
||||
else
|
||||
ret Num.224;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.279 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.279;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.282;
|
||||
let Num.284 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.284;
|
||||
|
||||
procedure Num.51 (#Attr.2, #Attr.3):
|
||||
let Num.281 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
||||
ret Num.281;
|
||||
let Num.282 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
||||
ret Num.282;
|
||||
|
||||
procedure Test.1 (#Derived_gen.0):
|
||||
joinpoint Test.26 Test.6:
|
||||
|
@ -111,17 +155,17 @@ procedure Test.1 (#Derived_gen.0):
|
|||
let Test.49 : [<r>C I64, C List *self] = StructAtIndex 1 Test.6;
|
||||
dec Test.50;
|
||||
let Test.10 : I64 = UnionAtIndex (Id 0) (Index 0) Test.49;
|
||||
joinpoint #Derived_gen.6:
|
||||
joinpoint #Derived_gen.12:
|
||||
let Test.27 : Int1 = CallByName Num.22 Test.8 Test.10;
|
||||
ret Test.27;
|
||||
in
|
||||
let #Derived_gen.7 : Int1 = lowlevel RefCountIsUnique Test.49;
|
||||
if #Derived_gen.7 then
|
||||
let #Derived_gen.13 : Int1 = lowlevel RefCountIsUnique Test.49;
|
||||
if #Derived_gen.13 then
|
||||
free Test.49;
|
||||
jump #Derived_gen.6;
|
||||
jump #Derived_gen.12;
|
||||
else
|
||||
decref Test.49;
|
||||
jump #Derived_gen.6;
|
||||
jump #Derived_gen.12;
|
||||
else
|
||||
let Test.39 : [<r>C I64, C List *self] = StructAtIndex 0 Test.6;
|
||||
let Test.42 : [<r>C I64, C List *self] = StructAtIndex 1 Test.6;
|
||||
|
@ -137,12 +181,11 @@ procedure Test.1 (#Derived_gen.0):
|
|||
if Test.64 then
|
||||
let Test.52 : [<r>C I64, C List *self] = StructAtIndex 0 Test.6;
|
||||
let Test.12 : List [<r>C I64, C List *self] = UnionAtIndex (Id 1) (Index 0) Test.52;
|
||||
inc 2 Test.12;
|
||||
inc Test.12;
|
||||
let Test.51 : [<r>C I64, C List *self] = StructAtIndex 1 Test.6;
|
||||
dec Test.52;
|
||||
let Test.14 : List [<r>C I64, C List *self] = UnionAtIndex (Id 1) (Index 0) Test.51;
|
||||
inc Test.14;
|
||||
joinpoint #Derived_gen.8:
|
||||
joinpoint #Derived_gen.14:
|
||||
let Test.35 : {} = Struct {};
|
||||
let Test.33 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.23 Test.12 Test.14 Test.35;
|
||||
let Test.34 : {} = Struct {};
|
||||
|
@ -161,14 +204,14 @@ procedure Test.1 (#Derived_gen.0):
|
|||
let Test.28 : Int1 = CallByName Bool.1;
|
||||
ret Test.28;
|
||||
in
|
||||
let #Derived_gen.9 : Int1 = lowlevel RefCountIsUnique Test.51;
|
||||
if #Derived_gen.9 then
|
||||
let #Derived_gen.15 : Int1 = lowlevel RefCountIsUnique Test.51;
|
||||
if #Derived_gen.15 then
|
||||
free Test.51;
|
||||
jump #Derived_gen.8;
|
||||
jump #Derived_gen.14;
|
||||
else
|
||||
inc Test.14;
|
||||
decref Test.51;
|
||||
jump #Derived_gen.8;
|
||||
jump #Derived_gen.14;
|
||||
else
|
||||
let Test.48 : [<r>C I64, C List *self] = StructAtIndex 0 Test.6;
|
||||
let Test.47 : List [<r>C I64, C List *self] = Array [Test.48];
|
||||
|
|
|
@ -1,33 +1,33 @@
|
|||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.585 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.585;
|
||||
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.633;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : [<rnu>C *self, <null>] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : [<rnu>C *self, <null>] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.92 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : [<rnu>C *self, <null>] = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName Test.7 List.164 List.583;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : [<rnu>C *self, <null>] = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName Test.7 List.167 List.631;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.0;
|
||||
jump List.577 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
|
||||
jump List.625 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
18
crates/compiler/test_mono/generated/list_append.txt
generated
18
crates/compiler/test_mono/generated/list_append.txt
generated
|
@ -1,16 +1,16 @@
|
|||
procedure List.4 (List.124, List.125):
|
||||
let List.577 : U64 = 1i64;
|
||||
let List.575 : List I64 = CallByName List.70 List.124 List.577;
|
||||
let List.574 : List I64 = CallByName List.71 List.575 List.125;
|
||||
ret List.574;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.625 : U64 = 1i64;
|
||||
let List.623 : List I64 = CallByName List.70 List.127 List.625;
|
||||
let List.622 : List I64 = CallByName List.71 List.623 List.128;
|
||||
ret List.622;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.578 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.578;
|
||||
let List.626 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.626;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.576 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.576;
|
||||
let List.624 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.624;
|
||||
|
||||
procedure Test.0 ():
|
||||
let Test.2 : List I64 = Array [1i64];
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
procedure List.4 (List.124, List.125):
|
||||
let List.577 : U64 = 1i64;
|
||||
let List.575 : List I64 = CallByName List.70 List.124 List.577;
|
||||
let List.574 : List I64 = CallByName List.71 List.575 List.125;
|
||||
ret List.574;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.625 : U64 = 1i64;
|
||||
let List.623 : List I64 = CallByName List.70 List.127 List.625;
|
||||
let List.622 : List I64 = CallByName List.71 List.623 List.128;
|
||||
ret List.622;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.578 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.578;
|
||||
let List.626 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.626;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.576 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.576;
|
||||
let List.624 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.624;
|
||||
|
||||
procedure Test.1 (Test.2):
|
||||
let Test.6 : I64 = 42i64;
|
||||
|
|
|
@ -1,25 +1,25 @@
|
|||
procedure List.3 (List.116, List.117, List.118):
|
||||
let List.577 : {List I64, I64} = CallByName List.64 List.116 List.117 List.118;
|
||||
let List.576 : List I64 = StructAtIndex 0 List.577;
|
||||
ret List.576;
|
||||
procedure List.3 (List.119, List.120, List.121):
|
||||
let List.625 : {List I64, I64} = CallByName List.64 List.119 List.120 List.121;
|
||||
let List.624 : List I64 = StructAtIndex 0 List.625;
|
||||
ret List.624;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.575 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.575;
|
||||
let List.623 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.623;
|
||||
|
||||
procedure List.64 (List.113, List.114, List.115):
|
||||
let List.582 : U64 = CallByName List.6 List.113;
|
||||
let List.579 : Int1 = CallByName Num.22 List.114 List.582;
|
||||
if List.579 then
|
||||
let List.580 : {List I64, I64} = CallByName List.67 List.113 List.114 List.115;
|
||||
ret List.580;
|
||||
procedure List.64 (List.116, List.117, List.118):
|
||||
let List.630 : U64 = CallByName List.6 List.116;
|
||||
let List.627 : Int1 = CallByName Num.22 List.117 List.630;
|
||||
if List.627 then
|
||||
let List.628 : {List I64, I64} = CallByName List.67 List.116 List.117 List.118;
|
||||
ret List.628;
|
||||
else
|
||||
let List.578 : {List I64, I64} = Struct {List.113, List.115};
|
||||
ret List.578;
|
||||
let List.626 : {List I64, I64} = Struct {List.116, List.118};
|
||||
ret List.626;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.581 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.581;
|
||||
let List.629 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.629;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.279 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
|
|
28
crates/compiler/test_mono/generated/list_get.txt
generated
28
crates/compiler/test_mono/generated/list_get.txt
generated
|
@ -1,22 +1,22 @@
|
|||
procedure List.2 (List.108, List.109):
|
||||
let List.580 : U64 = CallByName List.6 List.108;
|
||||
let List.576 : Int1 = CallByName Num.22 List.109 List.580;
|
||||
if List.576 then
|
||||
let List.578 : I64 = CallByName List.66 List.108 List.109;
|
||||
let List.577 : [C {}, C I64] = TagId(1) List.578;
|
||||
ret List.577;
|
||||
procedure List.2 (List.111, List.112):
|
||||
let List.628 : U64 = CallByName List.6 List.111;
|
||||
let List.624 : Int1 = CallByName Num.22 List.112 List.628;
|
||||
if List.624 then
|
||||
let List.626 : I64 = CallByName List.66 List.111 List.112;
|
||||
let List.625 : [C {}, C I64] = TagId(1) List.626;
|
||||
ret List.625;
|
||||
else
|
||||
let List.575 : {} = Struct {};
|
||||
let List.574 : [C {}, C I64] = TagId(0) List.575;
|
||||
ret List.574;
|
||||
let List.623 : {} = Struct {};
|
||||
let List.622 : [C {}, C I64] = TagId(0) List.623;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.581 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.581;
|
||||
let List.629 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.629;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.579 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.579;
|
||||
let List.627 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.627;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.279 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
8
crates/compiler/test_mono/generated/list_len.txt
generated
8
crates/compiler/test_mono/generated/list_len.txt
generated
|
@ -1,10 +1,10 @@
|
|||
procedure List.6 (#Attr.2):
|
||||
let List.574 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.574;
|
||||
let List.622 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.575 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.575;
|
||||
let List.623 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.623;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.279 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,32 +1,74 @@
|
|||
procedure List.2 (List.108, List.109):
|
||||
let List.580 : U64 = CallByName List.6 List.108;
|
||||
let List.576 : Int1 = CallByName Num.22 List.109 List.580;
|
||||
if List.576 then
|
||||
let List.578 : Str = CallByName List.66 List.108 List.109;
|
||||
inc List.578;
|
||||
let List.577 : [C {}, C Str] = TagId(1) List.578;
|
||||
ret List.577;
|
||||
else
|
||||
let List.575 : {} = Struct {};
|
||||
let List.574 : [C {}, C Str] = TagId(0) List.575;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.634 : U64 = 0i64;
|
||||
let List.635 : U64 = CallByName List.6 List.163;
|
||||
let List.633 : List Str = CallByName List.92 List.163 List.164 List.165 List.634 List.635;
|
||||
ret List.633;
|
||||
|
||||
procedure List.5 (#Attr.2, #Attr.3):
|
||||
let List.582 : List Str = lowlevel ListMap { xs: `#Attr.#arg1` } #Attr.2 Test.3 #Attr.3;
|
||||
decref #Attr.2;
|
||||
ret List.582;
|
||||
procedure List.2 (List.111, List.112):
|
||||
let List.628 : U64 = CallByName List.6 List.111;
|
||||
let List.624 : Int1 = CallByName Num.22 List.112 List.628;
|
||||
if List.624 then
|
||||
let List.626 : Str = CallByName List.66 List.111 List.112;
|
||||
inc List.626;
|
||||
let List.625 : [C {}, C Str] = TagId(1) List.626;
|
||||
ret List.625;
|
||||
else
|
||||
let List.623 : {} = Struct {};
|
||||
let List.622 : [C {}, C Str] = TagId(0) List.623;
|
||||
ret List.622;
|
||||
|
||||
procedure List.275 (List.276, List.277, List.273):
|
||||
let List.645 : Str = CallByName Test.3 List.277;
|
||||
let List.644 : List Str = CallByName List.71 List.276 List.645;
|
||||
ret List.644;
|
||||
|
||||
procedure List.5 (List.272, List.273):
|
||||
let List.274 : U64 = CallByName List.6 List.272;
|
||||
let List.631 : List Str = CallByName List.68 List.274;
|
||||
let List.630 : List Str = CallByName List.18 List.272 List.631 List.273;
|
||||
ret List.630;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.581 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.581;
|
||||
let List.629 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.629;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.579 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.579;
|
||||
let List.627 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.627;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.647 : List Str = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.647;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.646 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.646;
|
||||
|
||||
procedure List.92 (#Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7):
|
||||
joinpoint List.636 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.638 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.638 then
|
||||
let List.642 : Str = CallByName List.66 List.166 List.169;
|
||||
inc List.642;
|
||||
let List.171 : List Str = CallByName List.275 List.167 List.642 List.168;
|
||||
dec List.642;
|
||||
let List.641 : U64 = 1i64;
|
||||
let List.640 : U64 = CallByName Num.51 List.169 List.641;
|
||||
jump List.636 List.166 List.171 List.168 List.640 List.170;
|
||||
else
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.3;
|
||||
jump List.636 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.279 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.279;
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.280;
|
||||
|
||||
procedure Num.51 (#Attr.2, #Attr.3):
|
||||
let Num.281 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
||||
ret Num.281;
|
||||
|
||||
procedure Str.16 (#Attr.2, #Attr.3):
|
||||
let Str.232 : Str = lowlevel StrRepeat #Attr.2 #Attr.3;
|
||||
|
@ -48,6 +90,7 @@ procedure Test.2 ():
|
|||
let Test.15 : List Str = CallByName Test.1;
|
||||
let Test.16 : {} = Struct {};
|
||||
let Test.14 : List Str = CallByName List.5 Test.15 Test.16;
|
||||
dec Test.15;
|
||||
ret Test.14;
|
||||
|
||||
procedure Test.3 (Test.4):
|
||||
|
|
|
@ -1,32 +1,73 @@
|
|||
procedure List.2 (List.108, List.109):
|
||||
let List.580 : U64 = CallByName List.6 List.108;
|
||||
let List.576 : Int1 = CallByName Num.22 List.109 List.580;
|
||||
if List.576 then
|
||||
let List.578 : Str = CallByName List.66 List.108 List.109;
|
||||
inc List.578;
|
||||
let List.577 : [C {}, C Str] = TagId(1) List.578;
|
||||
ret List.577;
|
||||
else
|
||||
let List.575 : {} = Struct {};
|
||||
let List.574 : [C {}, C Str] = TagId(0) List.575;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.634 : U64 = 0i64;
|
||||
let List.635 : U64 = CallByName List.6 List.163;
|
||||
let List.633 : List Str = CallByName List.92 List.163 List.164 List.165 List.634 List.635;
|
||||
ret List.633;
|
||||
|
||||
procedure List.5 (#Attr.2, #Attr.3):
|
||||
let List.582 : List Str = lowlevel ListMap { xs: `#Attr.#arg1` } #Attr.2 Test.3 #Attr.3;
|
||||
decref #Attr.2;
|
||||
ret List.582;
|
||||
procedure List.2 (List.111, List.112):
|
||||
let List.628 : U64 = CallByName List.6 List.111;
|
||||
let List.624 : Int1 = CallByName Num.22 List.112 List.628;
|
||||
if List.624 then
|
||||
let List.626 : Str = CallByName List.66 List.111 List.112;
|
||||
inc List.626;
|
||||
let List.625 : [C {}, C Str] = TagId(1) List.626;
|
||||
ret List.625;
|
||||
else
|
||||
let List.623 : {} = Struct {};
|
||||
let List.622 : [C {}, C Str] = TagId(0) List.623;
|
||||
ret List.622;
|
||||
|
||||
procedure List.275 (List.276, List.277, List.273):
|
||||
let List.645 : Str = CallByName Test.3 List.277;
|
||||
let List.644 : List Str = CallByName List.71 List.276 List.645;
|
||||
ret List.644;
|
||||
|
||||
procedure List.5 (List.272, List.273):
|
||||
let List.274 : U64 = CallByName List.6 List.272;
|
||||
let List.631 : List Str = CallByName List.68 List.274;
|
||||
let List.630 : List Str = CallByName List.18 List.272 List.631 List.273;
|
||||
ret List.630;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.581 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.581;
|
||||
let List.629 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.629;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.579 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.579;
|
||||
let List.627 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.627;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.647 : List Str = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.647;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.646 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.646;
|
||||
|
||||
procedure List.92 (#Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7):
|
||||
joinpoint List.636 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.638 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.638 then
|
||||
let List.642 : Str = CallByName List.66 List.166 List.169;
|
||||
inc List.642;
|
||||
let List.171 : List Str = CallByName List.275 List.167 List.642 List.168;
|
||||
let List.641 : U64 = 1i64;
|
||||
let List.640 : U64 = CallByName Num.51 List.169 List.641;
|
||||
jump List.636 List.166 List.171 List.168 List.640 List.170;
|
||||
else
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.3;
|
||||
jump List.636 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.279 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.279;
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.280;
|
||||
|
||||
procedure Num.51 (#Attr.2, #Attr.3):
|
||||
let Num.281 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
||||
ret Num.281;
|
||||
|
||||
procedure Str.3 (#Attr.2, #Attr.3):
|
||||
let Str.233 : Str = lowlevel StrConcat #Attr.2 #Attr.3;
|
||||
|
@ -44,6 +85,7 @@ procedure Test.2 ():
|
|||
let Test.15 : List Str = CallByName Test.1;
|
||||
let Test.16 : {} = Struct {};
|
||||
let Test.14 : List Str = CallByName List.5 Test.15 Test.16;
|
||||
dec Test.15;
|
||||
ret Test.14;
|
||||
|
||||
procedure Test.3 (Test.4):
|
||||
|
|
|
@ -1,29 +1,79 @@
|
|||
procedure List.5 (#Attr.2, #Attr.3):
|
||||
let List.575 : U8 = GetTagId #Attr.3;
|
||||
joinpoint List.576 List.574:
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.626 : U64 = 0i64;
|
||||
let List.627 : U64 = CallByName List.6 List.163;
|
||||
let List.625 : List U8 = CallByName List.92 List.163 List.164 List.165 List.626 List.627;
|
||||
ret List.625;
|
||||
|
||||
procedure List.275 (List.276, List.277, List.273):
|
||||
let List.641 : U8 = GetTagId List.273;
|
||||
joinpoint List.642 List.639:
|
||||
let List.638 : List U8 = CallByName List.71 List.276 List.639;
|
||||
ret List.638;
|
||||
in
|
||||
switch List.575:
|
||||
switch List.641:
|
||||
case 0:
|
||||
let List.577 : List U8 = lowlevel ListMap { xs: `#Attr.#arg1` } #Attr.2 Test.4 #Attr.3;
|
||||
decref #Attr.2;
|
||||
jump List.576 List.577;
|
||||
let List.643 : U8 = CallByName Test.4 List.277 List.273;
|
||||
jump List.642 List.643;
|
||||
|
||||
case 1:
|
||||
let List.578 : List U8 = lowlevel ListMap { xs: `#Attr.#arg1` } #Attr.2 Test.6 #Attr.3;
|
||||
decref #Attr.2;
|
||||
jump List.576 List.578;
|
||||
let List.643 : U8 = CallByName Test.6 List.277 List.273;
|
||||
jump List.642 List.643;
|
||||
|
||||
default:
|
||||
let List.579 : List U8 = lowlevel ListMap { xs: `#Attr.#arg1` } #Attr.2 Test.8 #Attr.3;
|
||||
decref #Attr.2;
|
||||
jump List.576 List.579;
|
||||
let List.643 : U8 = CallByName Test.8 List.277;
|
||||
jump List.642 List.643;
|
||||
|
||||
|
||||
procedure List.5 (List.272, List.273):
|
||||
let List.274 : U64 = CallByName List.6 List.272;
|
||||
let List.623 : List U8 = CallByName List.68 List.274;
|
||||
let List.622 : List U8 = CallByName List.18 List.272 List.623 List.273;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.636;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.635 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.635;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.644 : List U8 = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.644;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.640 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.640;
|
||||
|
||||
procedure List.92 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
|
||||
joinpoint List.628 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.630 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.630 then
|
||||
let List.634 : U8 = CallByName List.66 List.166 List.169;
|
||||
let List.171 : List U8 = CallByName List.275 List.167 List.634 List.168;
|
||||
let List.633 : U64 = 1i64;
|
||||
let List.632 : U64 = CallByName Num.51 List.169 List.633;
|
||||
jump List.628 List.166 List.171 List.168 List.632 List.170;
|
||||
else
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.0;
|
||||
jump List.628 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.281 : U8 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
ret Num.281;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.283 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.283;
|
||||
|
||||
procedure Num.51 (#Attr.2, #Attr.3):
|
||||
let Num.282 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
||||
ret Num.282;
|
||||
|
||||
procedure Test.4 (Test.5, #Attr.12):
|
||||
let Test.16 : U8 = UnionAtIndex (Id 0) (Index 0) #Attr.12;
|
||||
let Test.15 : U8 = CallByName Num.19 Test.5 Test.16;
|
||||
|
@ -44,6 +94,7 @@ procedure Test.0 ():
|
|||
joinpoint Test.13 Test.3:
|
||||
let Test.11 : List U8 = Array [1i64, 2i64, 3i64];
|
||||
let Test.10 : List U8 = CallByName List.5 Test.11 Test.3;
|
||||
dec Test.11;
|
||||
ret Test.10;
|
||||
in
|
||||
let Test.12 : Str = "";
|
||||
|
|
|
@ -1,25 +1,25 @@
|
|||
procedure List.3 (List.116, List.117, List.118):
|
||||
let List.575 : {List I64, I64} = CallByName List.64 List.116 List.117 List.118;
|
||||
let List.574 : List I64 = StructAtIndex 0 List.575;
|
||||
ret List.574;
|
||||
procedure List.3 (List.119, List.120, List.121):
|
||||
let List.623 : {List I64, I64} = CallByName List.64 List.119 List.120 List.121;
|
||||
let List.622 : List I64 = StructAtIndex 0 List.623;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.581 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.581;
|
||||
let List.629 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.629;
|
||||
|
||||
procedure List.64 (List.113, List.114, List.115):
|
||||
let List.580 : U64 = CallByName List.6 List.113;
|
||||
let List.577 : Int1 = CallByName Num.22 List.114 List.580;
|
||||
if List.577 then
|
||||
let List.578 : {List I64, I64} = CallByName List.67 List.113 List.114 List.115;
|
||||
ret List.578;
|
||||
procedure List.64 (List.116, List.117, List.118):
|
||||
let List.628 : U64 = CallByName List.6 List.116;
|
||||
let List.625 : Int1 = CallByName Num.22 List.117 List.628;
|
||||
if List.625 then
|
||||
let List.626 : {List I64, I64} = CallByName List.67 List.116 List.117 List.118;
|
||||
ret List.626;
|
||||
else
|
||||
let List.576 : {List I64, I64} = Struct {List.113, List.115};
|
||||
ret List.576;
|
||||
let List.624 : {List I64, I64} = Struct {List.116, List.118};
|
||||
ret List.624;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.579 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.579;
|
||||
let List.627 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.627;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.279 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
procedure List.28 (#Attr.2, #Attr.3):
|
||||
let List.576 : List I64 = lowlevel ListSortWith { xs: `#Attr.#arg1` } #Attr.2 Num.46 #Attr.3;
|
||||
ret List.576;
|
||||
let List.624 : List I64 = lowlevel ListSortWith { xs: `#Attr.#arg1` } #Attr.2 Num.46 #Attr.3;
|
||||
ret List.624;
|
||||
|
||||
procedure List.59 (List.330):
|
||||
let List.575 : {} = Struct {};
|
||||
let List.574 : List I64 = CallByName List.28 List.330 List.575;
|
||||
ret List.574;
|
||||
procedure List.59 (List.378):
|
||||
let List.623 : {} = Struct {};
|
||||
let List.622 : List I64 = CallByName List.28 List.378 List.623;
|
||||
ret List.622;
|
||||
|
||||
procedure Num.46 (#Attr.2, #Attr.3):
|
||||
let Num.279 : U8 = lowlevel NumCompare #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,41 +1,41 @@
|
|||
procedure List.2 (List.108, List.109):
|
||||
let List.596 : U64 = CallByName List.6 List.108;
|
||||
let List.593 : Int1 = CallByName Num.22 List.109 List.596;
|
||||
if List.593 then
|
||||
let List.595 : I64 = CallByName List.66 List.108 List.109;
|
||||
let List.594 : [C {}, C I64] = TagId(1) List.595;
|
||||
ret List.594;
|
||||
procedure List.2 (List.111, List.112):
|
||||
let List.644 : U64 = CallByName List.6 List.111;
|
||||
let List.641 : Int1 = CallByName Num.22 List.112 List.644;
|
||||
if List.641 then
|
||||
let List.643 : I64 = CallByName List.66 List.111 List.112;
|
||||
let List.642 : [C {}, C I64] = TagId(1) List.643;
|
||||
ret List.642;
|
||||
else
|
||||
let List.592 : {} = Struct {};
|
||||
let List.591 : [C {}, C I64] = TagId(0) List.592;
|
||||
ret List.591;
|
||||
let List.640 : {} = Struct {};
|
||||
let List.639 : [C {}, C I64] = TagId(0) List.640;
|
||||
ret List.639;
|
||||
|
||||
procedure List.3 (List.116, List.117, List.118):
|
||||
let List.583 : {List I64, I64} = CallByName List.64 List.116 List.117 List.118;
|
||||
let List.582 : List I64 = StructAtIndex 0 List.583;
|
||||
ret List.582;
|
||||
procedure List.3 (List.119, List.120, List.121):
|
||||
let List.631 : {List I64, I64} = CallByName List.64 List.119 List.120 List.121;
|
||||
let List.630 : List I64 = StructAtIndex 0 List.631;
|
||||
ret List.630;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.581 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.581;
|
||||
let List.629 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.629;
|
||||
|
||||
procedure List.64 (List.113, List.114, List.115):
|
||||
let List.580 : U64 = CallByName List.6 List.113;
|
||||
let List.577 : Int1 = CallByName Num.22 List.114 List.580;
|
||||
if List.577 then
|
||||
let List.578 : {List I64, I64} = CallByName List.67 List.113 List.114 List.115;
|
||||
ret List.578;
|
||||
procedure List.64 (List.116, List.117, List.118):
|
||||
let List.628 : U64 = CallByName List.6 List.116;
|
||||
let List.625 : Int1 = CallByName Num.22 List.117 List.628;
|
||||
if List.625 then
|
||||
let List.626 : {List I64, I64} = CallByName List.67 List.116 List.117 List.118;
|
||||
ret List.626;
|
||||
else
|
||||
let List.576 : {List I64, I64} = Struct {List.113, List.115};
|
||||
ret List.576;
|
||||
let List.624 : {List I64, I64} = Struct {List.116, List.118};
|
||||
ret List.624;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.589 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.589;
|
||||
let List.637 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.637;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.579 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.579;
|
||||
let List.627 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.627;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.281 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,25 +1,25 @@
|
|||
procedure List.3 (List.116, List.117, List.118):
|
||||
let List.583 : {List U64, U64} = CallByName List.64 List.116 List.117 List.118;
|
||||
let List.582 : List U64 = StructAtIndex 0 List.583;
|
||||
ret List.582;
|
||||
procedure List.3 (List.119, List.120, List.121):
|
||||
let List.631 : {List U64, U64} = CallByName List.64 List.119 List.120 List.121;
|
||||
let List.630 : List U64 = StructAtIndex 0 List.631;
|
||||
ret List.630;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.581 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.581;
|
||||
let List.629 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.629;
|
||||
|
||||
procedure List.64 (List.113, List.114, List.115):
|
||||
let List.580 : U64 = CallByName List.6 List.113;
|
||||
let List.577 : Int1 = CallByName Num.22 List.114 List.580;
|
||||
if List.577 then
|
||||
let List.578 : {List U64, U64} = CallByName List.67 List.113 List.114 List.115;
|
||||
ret List.578;
|
||||
procedure List.64 (List.116, List.117, List.118):
|
||||
let List.628 : U64 = CallByName List.6 List.116;
|
||||
let List.625 : Int1 = CallByName Num.22 List.117 List.628;
|
||||
if List.625 then
|
||||
let List.626 : {List U64, U64} = CallByName List.67 List.116 List.117 List.118;
|
||||
ret List.626;
|
||||
else
|
||||
let List.576 : {List U64, U64} = Struct {List.113, List.115};
|
||||
ret List.576;
|
||||
let List.624 : {List U64, U64} = Struct {List.116, List.118};
|
||||
ret List.624;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.579 : {List U64, U64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.579;
|
||||
let List.627 : {List U64, U64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.627;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.279 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,15 +1,69 @@
|
|||
procedure List.5 (#Attr.2, #Attr.3):
|
||||
let List.574 : List [<rnnu>C List *self] = lowlevel ListMap { xs: `#Attr.#arg1` } #Attr.2 Test.2 #Attr.3;
|
||||
decref #Attr.2;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.626 : U64 = 0i64;
|
||||
let List.627 : U64 = CallByName List.6 List.163;
|
||||
let List.625 : List [<rnnu>C List *self] = CallByName List.92 List.163 List.164 List.165 List.626 List.627;
|
||||
ret List.625;
|
||||
|
||||
procedure List.275 (List.276, List.277, List.273):
|
||||
let List.639 : [<rnnu>C List *self] = CallByName Test.2 List.277;
|
||||
let List.638 : List [<rnnu>C List *self] = CallByName List.71 List.276 List.639;
|
||||
ret List.638;
|
||||
|
||||
procedure List.5 (List.272, List.273):
|
||||
let List.274 : U64 = CallByName List.6 List.272;
|
||||
let List.623 : List [<rnnu>C List *self] = CallByName List.68 List.274;
|
||||
let List.622 : List [<rnnu>C List *self] = CallByName List.18 List.272 List.623 List.273;
|
||||
ret List.622;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.636;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.635 : [<rnnu>C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.635;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.641 : List [<rnnu>C List *self] = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.641;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.640 : List [<rnnu>C List *self] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.640;
|
||||
|
||||
procedure List.92 (#Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7, #Derived_gen.8):
|
||||
joinpoint List.628 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.630 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.630 then
|
||||
let List.634 : [<rnnu>C List *self] = CallByName List.66 List.166 List.169;
|
||||
inc List.634;
|
||||
let List.171 : List [<rnnu>C List *self] = CallByName List.275 List.167 List.634 List.168;
|
||||
let List.633 : U64 = 1i64;
|
||||
let List.632 : U64 = CallByName Num.51 List.169 List.633;
|
||||
jump List.628 List.166 List.171 List.168 List.632 List.170;
|
||||
else
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.4;
|
||||
jump List.628 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7 #Derived_gen.8;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.280 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
ret Num.280;
|
||||
|
||||
procedure Num.51 (#Attr.2, #Attr.3):
|
||||
let Num.279 : U64 = lowlevel NumAddWrap #Attr.2 #Attr.3;
|
||||
ret Num.279;
|
||||
|
||||
procedure Test.2 (Test.5):
|
||||
let Test.6 : List [<rnnu>C List *self] = UnionAtIndex (Id 0) (Index 0) Test.5;
|
||||
inc Test.6;
|
||||
let #Derived_gen.2 : [<rnnu>C List *self] = Reset { symbol: Test.5, id: UpdateModeId { id: 1 } };
|
||||
let #Derived_gen.9 : [<rnnu>C List *self] = Reset { symbol: Test.5, id: UpdateModeId { id: 0 } };
|
||||
let Test.15 : {} = Struct {};
|
||||
let Test.7 : List [<rnnu>C List *self] = CallByName List.5 Test.6 Test.15;
|
||||
let Test.14 : [<rnnu>C List *self] = Reuse #Derived_gen.2 UpdateModeId { id: 1 } TagId(0) Test.7;
|
||||
dec Test.6;
|
||||
let Test.14 : [<rnnu>C List *self] = Reuse #Derived_gen.9 UpdateModeId { id: 0 } TagId(0) Test.7;
|
||||
ret Test.14;
|
||||
|
||||
procedure Test.0 ():
|
||||
|
|
56
crates/compiler/test_mono/generated/rigids.txt
generated
56
crates/compiler/test_mono/generated/rigids.txt
generated
|
@ -1,41 +1,41 @@
|
|||
procedure List.2 (List.108, List.109):
|
||||
let List.596 : U64 = CallByName List.6 List.108;
|
||||
let List.593 : Int1 = CallByName Num.22 List.109 List.596;
|
||||
if List.593 then
|
||||
let List.595 : I64 = CallByName List.66 List.108 List.109;
|
||||
let List.594 : [C {}, C I64] = TagId(1) List.595;
|
||||
ret List.594;
|
||||
procedure List.2 (List.111, List.112):
|
||||
let List.644 : U64 = CallByName List.6 List.111;
|
||||
let List.641 : Int1 = CallByName Num.22 List.112 List.644;
|
||||
if List.641 then
|
||||
let List.643 : I64 = CallByName List.66 List.111 List.112;
|
||||
let List.642 : [C {}, C I64] = TagId(1) List.643;
|
||||
ret List.642;
|
||||
else
|
||||
let List.592 : {} = Struct {};
|
||||
let List.591 : [C {}, C I64] = TagId(0) List.592;
|
||||
ret List.591;
|
||||
let List.640 : {} = Struct {};
|
||||
let List.639 : [C {}, C I64] = TagId(0) List.640;
|
||||
ret List.639;
|
||||
|
||||
procedure List.3 (List.116, List.117, List.118):
|
||||
let List.583 : {List I64, I64} = CallByName List.64 List.116 List.117 List.118;
|
||||
let List.582 : List I64 = StructAtIndex 0 List.583;
|
||||
ret List.582;
|
||||
procedure List.3 (List.119, List.120, List.121):
|
||||
let List.631 : {List I64, I64} = CallByName List.64 List.119 List.120 List.121;
|
||||
let List.630 : List I64 = StructAtIndex 0 List.631;
|
||||
ret List.630;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.581 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.581;
|
||||
let List.629 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.629;
|
||||
|
||||
procedure List.64 (List.113, List.114, List.115):
|
||||
let List.580 : U64 = CallByName List.6 List.113;
|
||||
let List.577 : Int1 = CallByName Num.22 List.114 List.580;
|
||||
if List.577 then
|
||||
let List.578 : {List I64, I64} = CallByName List.67 List.113 List.114 List.115;
|
||||
ret List.578;
|
||||
procedure List.64 (List.116, List.117, List.118):
|
||||
let List.628 : U64 = CallByName List.6 List.116;
|
||||
let List.625 : Int1 = CallByName Num.22 List.117 List.628;
|
||||
if List.625 then
|
||||
let List.626 : {List I64, I64} = CallByName List.67 List.116 List.117 List.118;
|
||||
ret List.626;
|
||||
else
|
||||
let List.576 : {List I64, I64} = Struct {List.113, List.115};
|
||||
ret List.576;
|
||||
let List.624 : {List I64, I64} = Struct {List.116, List.118};
|
||||
ret List.624;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.589 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.589;
|
||||
let List.637 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.637;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.579 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.579;
|
||||
let List.627 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.627;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.281 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -30,57 +30,57 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
ret Encode.108;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.600 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.600;
|
||||
let List.648 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.648;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : List U8 = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : List U8 = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.4 (List.124, List.125):
|
||||
let List.596 : U64 = 1i64;
|
||||
let List.595 : List U8 = CallByName List.70 List.124 List.596;
|
||||
let List.594 : List U8 = CallByName List.71 List.595 List.125;
|
||||
ret List.594;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.644 : U64 = 1i64;
|
||||
let List.643 : List U8 = CallByName List.70 List.127 List.644;
|
||||
let List.642 : List U8 = CallByName List.71 List.643 List.128;
|
||||
ret List.642;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.599 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.599;
|
||||
let List.647 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.647;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.590 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.590;
|
||||
let List.638 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.638;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.588 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.588;
|
||||
let List.636 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.636;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.598 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.598;
|
||||
let List.646 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.646;
|
||||
|
||||
procedure List.92 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : Str = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : List U8 = CallByName Test.66 List.164 List.583 List.165;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : Str = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : List U8 = CallByName Test.66 List.167 List.631 List.168;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.0;
|
||||
jump List.577 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
|
||||
jump List.625 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.280 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -88,92 +88,92 @@ procedure Encode.26 (Encode.105, Encode.106):
|
|||
ret Encode.108;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.600 : List [C {}, C {}, C Str] = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.600;
|
||||
let List.648 : List [C {}, C {}, C Str] = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.648;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.628 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.628;
|
||||
let List.676 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.676;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.575 : U64 = 0i64;
|
||||
let List.576 : U64 = CallByName List.6 List.160;
|
||||
let List.574 : List U8 = CallByName List.92 List.160 List.161 List.162 List.575 List.576;
|
||||
ret List.574;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.623 : U64 = 0i64;
|
||||
let List.624 : U64 = CallByName List.6 List.163;
|
||||
let List.622 : List U8 = CallByName List.92 List.163 List.164 List.165 List.623 List.624;
|
||||
ret List.622;
|
||||
|
||||
procedure List.18 (List.160, List.161, List.162):
|
||||
let List.602 : U64 = 0i64;
|
||||
let List.603 : U64 = CallByName List.6 List.160;
|
||||
let List.601 : List U8 = CallByName List.92 List.160 List.161 List.162 List.602 List.603;
|
||||
ret List.601;
|
||||
procedure List.18 (List.163, List.164, List.165):
|
||||
let List.650 : U64 = 0i64;
|
||||
let List.651 : U64 = CallByName List.6 List.163;
|
||||
let List.649 : List U8 = CallByName List.92 List.163 List.164 List.165 List.650 List.651;
|
||||
ret List.649;
|
||||
|
||||
procedure List.4 (List.124, List.125):
|
||||
let List.623 : U64 = 1i64;
|
||||
let List.622 : List U8 = CallByName List.70 List.124 List.623;
|
||||
let List.621 : List U8 = CallByName List.71 List.622 List.125;
|
||||
ret List.621;
|
||||
procedure List.4 (List.127, List.128):
|
||||
let List.671 : U64 = 1i64;
|
||||
let List.670 : List U8 = CallByName List.70 List.127 List.671;
|
||||
let List.669 : List U8 = CallByName List.71 List.670 List.128;
|
||||
ret List.669;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.599 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.599;
|
||||
let List.647 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.647;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.626 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.626;
|
||||
let List.674 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.674;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.584 : [C {}, C {}, C Str] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.584;
|
||||
let List.632 : [C {}, C {}, C Str] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.632;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.611 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.611;
|
||||
let List.659 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.659;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.617 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.617;
|
||||
let List.665 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.665;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.615 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.615;
|
||||
let List.663 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.663;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.625 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.625;
|
||||
let List.673 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.673;
|
||||
|
||||
procedure List.92 (#Derived_gen.29, #Derived_gen.30, #Derived_gen.31, #Derived_gen.32, #Derived_gen.33):
|
||||
joinpoint List.577 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.579 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.579 then
|
||||
let List.583 : [C {}, C {}, C Str] = CallByName List.66 List.163 List.166;
|
||||
inc List.583;
|
||||
let List.168 : List U8 = CallByName Test.66 List.164 List.583 List.165;
|
||||
let List.582 : U64 = 1i64;
|
||||
let List.581 : U64 = CallByName Num.51 List.166 List.582;
|
||||
jump List.577 List.163 List.168 List.165 List.581 List.167;
|
||||
joinpoint List.625 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.627 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.627 then
|
||||
let List.631 : [C {}, C {}, C Str] = CallByName List.66 List.166 List.169;
|
||||
inc List.631;
|
||||
let List.171 : List U8 = CallByName Test.66 List.167 List.631 List.168;
|
||||
let List.630 : U64 = 1i64;
|
||||
let List.629 : U64 = CallByName Num.51 List.169 List.630;
|
||||
jump List.625 List.166 List.171 List.168 List.629 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.29;
|
||||
jump List.577 #Derived_gen.29 #Derived_gen.30 #Derived_gen.31 #Derived_gen.32 #Derived_gen.33;
|
||||
jump List.625 #Derived_gen.29 #Derived_gen.30 #Derived_gen.31 #Derived_gen.32 #Derived_gen.33;
|
||||
|
||||
procedure List.92 (#Derived_gen.52, #Derived_gen.53, #Derived_gen.54, #Derived_gen.55, #Derived_gen.56):
|
||||
joinpoint List.604 List.163 List.164 List.165 List.166 List.167:
|
||||
let List.606 : Int1 = CallByName Num.22 List.166 List.167;
|
||||
if List.606 then
|
||||
let List.610 : Str = CallByName List.66 List.163 List.166;
|
||||
inc List.610;
|
||||
let List.168 : List U8 = CallByName Test.66 List.164 List.610 List.165;
|
||||
let List.609 : U64 = 1i64;
|
||||
let List.608 : U64 = CallByName Num.51 List.166 List.609;
|
||||
jump List.604 List.163 List.168 List.165 List.608 List.167;
|
||||
joinpoint List.652 List.166 List.167 List.168 List.169 List.170:
|
||||
let List.654 : Int1 = CallByName Num.22 List.169 List.170;
|
||||
if List.654 then
|
||||
let List.658 : Str = CallByName List.66 List.166 List.169;
|
||||
inc List.658;
|
||||
let List.171 : List U8 = CallByName Test.66 List.167 List.658 List.168;
|
||||
let List.657 : U64 = 1i64;
|
||||
let List.656 : U64 = CallByName Num.51 List.169 List.657;
|
||||
jump List.652 List.166 List.171 List.168 List.656 List.170;
|
||||
else
|
||||
dec List.163;
|
||||
ret List.164;
|
||||
dec List.166;
|
||||
ret List.167;
|
||||
in
|
||||
inc #Derived_gen.52;
|
||||
jump List.604 #Derived_gen.52 #Derived_gen.53 #Derived_gen.54 #Derived_gen.55 #Derived_gen.56;
|
||||
jump List.652 #Derived_gen.52 #Derived_gen.53 #Derived_gen.54 #Derived_gen.55 #Derived_gen.56;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.284 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -2,81 +2,81 @@ procedure Bool.11 (#Attr.2, #Attr.3):
|
|||
let Bool.23 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
||||
ret Bool.23;
|
||||
|
||||
procedure List.104 (List.488, List.489, List.490):
|
||||
let List.592 : U64 = 0i64;
|
||||
let List.593 : U64 = CallByName List.6 List.488;
|
||||
let List.591 : [C U64, C U64] = CallByName List.80 List.488 List.489 List.490 List.592 List.593;
|
||||
ret List.591;
|
||||
procedure List.107 (List.536, List.537, List.538):
|
||||
let List.640 : U64 = 0i64;
|
||||
let List.641 : U64 = CallByName List.6 List.536;
|
||||
let List.639 : [C U64, C U64] = CallByName List.80 List.536 List.537 List.538 List.640 List.641;
|
||||
ret List.639;
|
||||
|
||||
procedure List.26 (List.201, List.202, List.203):
|
||||
let List.585 : [C U64, C U64] = CallByName List.104 List.201 List.202 List.203;
|
||||
let List.588 : U8 = 1i64;
|
||||
let List.589 : U8 = GetTagId List.585;
|
||||
let List.590 : Int1 = lowlevel Eq List.588 List.589;
|
||||
if List.590 then
|
||||
let List.204 : U64 = UnionAtIndex (Id 1) (Index 0) List.585;
|
||||
ret List.204;
|
||||
procedure List.26 (List.204, List.205, List.206):
|
||||
let List.633 : [C U64, C U64] = CallByName List.107 List.204 List.205 List.206;
|
||||
let List.636 : U8 = 1i64;
|
||||
let List.637 : U8 = GetTagId List.633;
|
||||
let List.638 : Int1 = lowlevel Eq List.636 List.637;
|
||||
if List.638 then
|
||||
let List.207 : U64 = UnionAtIndex (Id 1) (Index 0) List.633;
|
||||
ret List.207;
|
||||
else
|
||||
let List.205 : U64 = UnionAtIndex (Id 0) (Index 0) List.585;
|
||||
ret List.205;
|
||||
let List.208 : U64 = UnionAtIndex (Id 0) (Index 0) List.633;
|
||||
ret List.208;
|
||||
|
||||
procedure List.38 (List.344, List.345):
|
||||
let List.584 : U64 = CallByName List.6 List.344;
|
||||
let List.346 : U64 = CallByName Num.77 List.584 List.345;
|
||||
let List.574 : List U8 = CallByName List.43 List.344 List.346;
|
||||
ret List.574;
|
||||
procedure List.38 (List.392, List.393):
|
||||
let List.632 : U64 = CallByName List.6 List.392;
|
||||
let List.394 : U64 = CallByName Num.77 List.632 List.393;
|
||||
let List.622 : List U8 = CallByName List.43 List.392 List.394;
|
||||
ret List.622;
|
||||
|
||||
procedure List.43 (List.342, List.343):
|
||||
let List.582 : U64 = CallByName List.6 List.342;
|
||||
let List.581 : U64 = CallByName Num.77 List.582 List.343;
|
||||
let List.576 : {U64, U64} = Struct {List.343, List.581};
|
||||
let List.575 : List U8 = CallByName List.49 List.342 List.576;
|
||||
ret List.575;
|
||||
procedure List.43 (List.390, List.391):
|
||||
let List.630 : U64 = CallByName List.6 List.390;
|
||||
let List.629 : U64 = CallByName Num.77 List.630 List.391;
|
||||
let List.624 : {U64, U64} = Struct {List.391, List.629};
|
||||
let List.623 : List U8 = CallByName List.49 List.390 List.624;
|
||||
ret List.623;
|
||||
|
||||
procedure List.49 (List.420, List.421):
|
||||
let List.578 : U64 = StructAtIndex 1 List.421;
|
||||
let List.579 : U64 = StructAtIndex 0 List.421;
|
||||
let List.577 : List U8 = CallByName List.72 List.420 List.578 List.579;
|
||||
ret List.577;
|
||||
procedure List.49 (List.468, List.469):
|
||||
let List.626 : U64 = StructAtIndex 1 List.469;
|
||||
let List.627 : U64 = StructAtIndex 0 List.469;
|
||||
let List.625 : List U8 = CallByName List.72 List.468 List.626 List.627;
|
||||
ret List.625;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.583 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.583;
|
||||
let List.631 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.631;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.606 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.606;
|
||||
let List.654 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.654;
|
||||
|
||||
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.580 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.580;
|
||||
let List.628 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.628;
|
||||
|
||||
procedure List.80 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
|
||||
joinpoint List.594 List.491 List.492 List.493 List.494 List.495:
|
||||
let List.596 : Int1 = CallByName Num.22 List.494 List.495;
|
||||
if List.596 then
|
||||
let List.605 : U8 = CallByName List.66 List.491 List.494;
|
||||
let List.597 : [C U64, C U64] = CallByName Test.3 List.492 List.605;
|
||||
let List.602 : U8 = 1i64;
|
||||
let List.603 : U8 = GetTagId List.597;
|
||||
let List.604 : Int1 = lowlevel Eq List.602 List.603;
|
||||
if List.604 then
|
||||
let List.496 : U64 = UnionAtIndex (Id 1) (Index 0) List.597;
|
||||
let List.600 : U64 = 1i64;
|
||||
let List.599 : U64 = CallByName Num.51 List.494 List.600;
|
||||
jump List.594 List.491 List.496 List.493 List.599 List.495;
|
||||
joinpoint List.642 List.539 List.540 List.541 List.542 List.543:
|
||||
let List.644 : Int1 = CallByName Num.22 List.542 List.543;
|
||||
if List.644 then
|
||||
let List.653 : U8 = CallByName List.66 List.539 List.542;
|
||||
let List.645 : [C U64, C U64] = CallByName Test.3 List.540 List.653;
|
||||
let List.650 : U8 = 1i64;
|
||||
let List.651 : U8 = GetTagId List.645;
|
||||
let List.652 : Int1 = lowlevel Eq List.650 List.651;
|
||||
if List.652 then
|
||||
let List.544 : U64 = UnionAtIndex (Id 1) (Index 0) List.645;
|
||||
let List.648 : U64 = 1i64;
|
||||
let List.647 : U64 = CallByName Num.51 List.542 List.648;
|
||||
jump List.642 List.539 List.544 List.541 List.647 List.543;
|
||||
else
|
||||
dec List.491;
|
||||
let List.497 : U64 = UnionAtIndex (Id 0) (Index 0) List.597;
|
||||
let List.601 : [C U64, C U64] = TagId(0) List.497;
|
||||
ret List.601;
|
||||
dec List.539;
|
||||
let List.545 : U64 = UnionAtIndex (Id 0) (Index 0) List.645;
|
||||
let List.649 : [C U64, C U64] = TagId(0) List.545;
|
||||
ret List.649;
|
||||
else
|
||||
dec List.491;
|
||||
let List.595 : [C U64, C U64] = TagId(1) List.492;
|
||||
ret List.595;
|
||||
dec List.539;
|
||||
let List.643 : [C U64, C U64] = TagId(1) List.540;
|
||||
ret List.643;
|
||||
in
|
||||
inc #Derived_gen.0;
|
||||
jump List.594 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
|
||||
jump List.642 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue