update mono tests: ids increase because of new fx vars

This commit is contained in:
Agus Zubiaga 2024-10-24 11:45:57 -03:00
parent 5f5e123bfd
commit ca7697db91
No known key found for this signature in database
45 changed files with 1418 additions and 1418 deletions

View file

@ -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.110 (List.539, List.540, List.541):
let List.643 : U64 = 0i64;
let List.644 : U64 = CallByName List.6 List.539;
let List.642 : [C U64, C U64] = CallByName List.80 List.539 List.540 List.541 List.643 List.644;
ret List.642;
procedure List.111 (List.540, List.541, List.542):
let List.644 : U64 = 0i64;
let List.645 : U64 = CallByName List.6 List.540;
let List.643 : [C U64, C U64] = CallByName List.80 List.540 List.541 List.542 List.644 List.645;
ret List.643;
procedure List.26 (List.207, List.208, List.209):
let List.636 : [C U64, C U64] = CallByName List.110 List.207 List.208 List.209;
let List.639 : U8 = 1i64;
let List.640 : U8 = GetTagId List.636;
let List.641 : Int1 = lowlevel Eq List.639 List.640;
if List.641 then
let List.210 : U64 = UnionAtIndex (Id 1) (Index 0) List.636;
ret List.210;
else
let List.211 : U64 = UnionAtIndex (Id 0) (Index 0) List.636;
procedure List.26 (List.208, List.209, List.210):
let List.637 : [C U64, C U64] = CallByName List.111 List.208 List.209 List.210;
let List.640 : U8 = 1i64;
let List.641 : U8 = GetTagId List.637;
let List.642 : Int1 = lowlevel Eq List.640 List.641;
if List.642 then
let List.211 : U64 = UnionAtIndex (Id 1) (Index 0) List.637;
ret List.211;
else
let List.212 : U64 = UnionAtIndex (Id 0) (Index 0) List.637;
ret List.212;
procedure List.38 (List.395, List.396):
let List.635 : U64 = CallByName List.6 List.395;
let List.397 : U64 = CallByName Num.77 List.635 List.396;
let List.625 : List U8 = CallByName List.43 List.395 List.397;
ret List.625;
procedure List.43 (List.393, List.394):
let List.633 : U64 = CallByName List.6 List.393;
let List.632 : U64 = CallByName Num.77 List.633 List.394;
let List.627 : {U64, U64} = Struct {List.394, List.632};
let List.626 : List U8 = CallByName List.49 List.393 List.627;
procedure List.38 (List.396, List.397):
let List.636 : U64 = CallByName List.6 List.396;
let List.398 : U64 = CallByName Num.77 List.636 List.397;
let List.626 : List U8 = CallByName List.43 List.396 List.398;
ret List.626;
procedure List.49 (List.471, List.472):
let List.629 : U64 = StructAtIndex 1 List.472;
let List.630 : U64 = StructAtIndex 0 List.472;
let List.628 : List U8 = CallByName List.72 List.471 List.629 List.630;
ret List.628;
procedure List.43 (List.394, List.395):
let List.634 : U64 = CallByName List.6 List.394;
let List.633 : U64 = CallByName Num.77 List.634 List.395;
let List.628 : {U64, U64} = Struct {List.395, List.633};
let List.627 : List U8 = CallByName List.49 List.394 List.628;
ret List.627;
procedure List.49 (List.472, List.473):
let List.630 : U64 = StructAtIndex 1 List.473;
let List.631 : U64 = StructAtIndex 0 List.473;
let List.629 : List U8 = CallByName List.72 List.472 List.630 List.631;
ret List.629;
procedure List.6 (#Attr.2):
let List.634 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.634;
let List.635 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.635;
procedure List.66 (#Attr.2, #Attr.3):
let List.657 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.657;
let List.658 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.658;
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
let List.631 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
ret List.631;
let List.632 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
ret List.632;
procedure List.80 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.645 List.542 List.543 List.544 List.545 List.546:
let List.647 : Int1 = CallByName Num.22 List.545 List.546;
if List.647 then
let List.656 : U8 = CallByName List.66 List.542 List.545;
let List.648 : [C U64, C U64] = CallByName Test.4 List.543 List.656;
let List.653 : U8 = 1i64;
let List.654 : U8 = GetTagId List.648;
let List.655 : Int1 = lowlevel Eq List.653 List.654;
if List.655 then
let List.547 : U64 = UnionAtIndex (Id 1) (Index 0) List.648;
let List.651 : U64 = 1i64;
let List.650 : U64 = CallByName Num.51 List.545 List.651;
jump List.645 List.542 List.547 List.544 List.650 List.546;
joinpoint List.646 List.543 List.544 List.545 List.546 List.547:
let List.648 : Int1 = CallByName Num.22 List.546 List.547;
if List.648 then
let List.657 : U8 = CallByName List.66 List.543 List.546;
let List.649 : [C U64, C U64] = CallByName Test.4 List.544 List.657;
let List.654 : U8 = 1i64;
let List.655 : U8 = GetTagId List.649;
let List.656 : Int1 = lowlevel Eq List.654 List.655;
if List.656 then
let List.548 : U64 = UnionAtIndex (Id 1) (Index 0) List.649;
let List.652 : U64 = 1i64;
let List.651 : U64 = CallByName Num.51 List.546 List.652;
jump List.646 List.543 List.548 List.545 List.651 List.547;
else
dec List.542;
let List.548 : U64 = UnionAtIndex (Id 0) (Index 0) List.648;
let List.652 : [C U64, C U64] = TagId(0) List.548;
ret List.652;
dec List.543;
let List.549 : U64 = UnionAtIndex (Id 0) (Index 0) List.649;
let List.653 : [C U64, C U64] = TagId(0) List.549;
ret List.653;
else
dec List.542;
let List.646 : [C U64, C U64] = TagId(1) List.543;
ret List.646;
dec List.543;
let List.647 : [C U64, C U64] = TagId(1) List.544;
ret List.647;
in
inc #Derived_gen.0;
jump List.645 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
jump List.646 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.284 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -1,51 +1,51 @@
procedure List.18 (List.166, List.167, List.168):
let List.629 : U64 = 0i64;
let List.630 : U64 = CallByName List.6 List.166;
let List.628 : List {} = CallByName List.95 List.166 List.167 List.168 List.629 List.630;
ret List.628;
procedure List.18 (List.167, List.168, List.169):
let List.630 : U64 = 0i64;
let List.631 : U64 = CallByName List.6 List.167;
let List.629 : List {} = CallByName List.96 List.167 List.168 List.169 List.630 List.631;
ret List.629;
procedure List.278 (List.279, List.280, List.276):
let List.642 : {} = CallByName Test.2 List.280;
let List.641 : List {} = CallByName List.71 List.279 List.642;
ret List.641;
procedure List.279 (List.280, List.281, List.277):
let List.643 : {} = CallByName Test.2 List.281;
let List.642 : List {} = CallByName List.71 List.280 List.643;
ret List.642;
procedure List.5 (List.275, List.276):
let List.277 : U64 = CallByName List.6 List.275;
let List.626 : List {} = CallByName List.68 List.277;
let List.625 : List {} = CallByName List.18 List.275 List.626 List.276;
ret List.625;
procedure List.5 (List.276, List.277):
let List.278 : U64 = CallByName List.6 List.276;
let List.627 : List {} = CallByName List.68 List.278;
let List.626 : List {} = CallByName List.18 List.276 List.627 List.277;
ret List.626;
procedure List.6 (#Attr.2):
let List.639 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.639;
let List.640 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.640;
procedure List.66 (#Attr.2, #Attr.3):
let List.638 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.638;
let List.639 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.639;
procedure List.68 (#Attr.2):
let List.644 : List {} = lowlevel ListWithCapacity #Attr.2;
ret List.644;
let List.645 : List {} = lowlevel ListWithCapacity #Attr.2;
ret List.645;
procedure List.71 (#Attr.2, #Attr.3):
let List.643 : List {} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.643;
let List.644 : List {} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.644;
procedure List.95 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.631 List.169 List.170 List.171 List.172 List.173:
let List.633 : Int1 = CallByName Num.22 List.172 List.173;
if List.633 then
let List.637 : [] = CallByName List.66 List.169 List.172;
let List.174 : List {} = CallByName List.278 List.170 List.637 List.171;
let List.636 : U64 = 1i64;
let List.635 : U64 = CallByName Num.51 List.172 List.636;
jump List.631 List.169 List.174 List.171 List.635 List.173;
procedure List.96 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.632 List.170 List.171 List.172 List.173 List.174:
let List.634 : Int1 = CallByName Num.22 List.173 List.174;
if List.634 then
let List.638 : [] = CallByName List.66 List.170 List.173;
let List.175 : List {} = CallByName List.279 List.171 List.638 List.172;
let List.637 : U64 = 1i64;
let List.636 : U64 = CallByName Num.51 List.173 List.637;
jump List.632 List.170 List.175 List.172 List.636 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.0;
jump List.631 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
jump List.632 #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;

View file

@ -1,51 +1,51 @@
procedure List.18 (List.166, List.167, List.168):
let List.629 : U64 = 0i64;
let List.630 : U64 = CallByName List.6 List.166;
let List.628 : List [] = CallByName List.95 List.166 List.167 List.168 List.629 List.630;
ret List.628;
procedure List.18 (List.167, List.168, List.169):
let List.630 : U64 = 0i64;
let List.631 : U64 = CallByName List.6 List.167;
let List.629 : List [] = CallByName List.96 List.167 List.168 List.169 List.630 List.631;
ret List.629;
procedure List.278 (List.279, List.280, List.276):
let List.642 : [] = CallByName Test.2 List.280;
let List.641 : List [] = CallByName List.71 List.279 List.642;
ret List.641;
procedure List.279 (List.280, List.281, List.277):
let List.643 : [] = CallByName Test.2 List.281;
let List.642 : List [] = CallByName List.71 List.280 List.643;
ret List.642;
procedure List.5 (List.275, List.276):
let List.277 : U64 = CallByName List.6 List.275;
let List.626 : List [] = CallByName List.68 List.277;
let List.625 : List [] = CallByName List.18 List.275 List.626 List.276;
ret List.625;
procedure List.5 (List.276, List.277):
let List.278 : U64 = CallByName List.6 List.276;
let List.627 : List [] = CallByName List.68 List.278;
let List.626 : List [] = CallByName List.18 List.276 List.627 List.277;
ret List.626;
procedure List.6 (#Attr.2):
let List.639 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.639;
let List.640 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.640;
procedure List.66 (#Attr.2, #Attr.3):
let List.638 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.638;
let List.639 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.639;
procedure List.68 (#Attr.2):
let List.644 : List [] = lowlevel ListWithCapacity #Attr.2;
ret List.644;
let List.645 : List [] = lowlevel ListWithCapacity #Attr.2;
ret List.645;
procedure List.71 (#Attr.2, #Attr.3):
let List.643 : List [] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.643;
let List.644 : List [] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.644;
procedure List.95 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.631 List.169 List.170 List.171 List.172 List.173:
let List.633 : Int1 = CallByName Num.22 List.172 List.173;
if List.633 then
let List.637 : [] = CallByName List.66 List.169 List.172;
let List.174 : List [] = CallByName List.278 List.170 List.637 List.171;
let List.636 : U64 = 1i64;
let List.635 : U64 = CallByName Num.51 List.172 List.636;
jump List.631 List.169 List.174 List.171 List.635 List.173;
procedure List.96 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.632 List.170 List.171 List.172 List.173 List.174:
let List.634 : Int1 = CallByName Num.22 List.173 List.174;
if List.634 then
let List.638 : [] = CallByName List.66 List.170 List.173;
let List.175 : List [] = CallByName List.279 List.171 List.638 List.172;
let List.637 : U64 = 1i64;
let List.636 : U64 = CallByName Num.51 List.173 List.637;
jump List.632 List.170 List.175 List.172 List.636 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.0;
jump List.631 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
jump List.632 #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;

View file

@ -1,32 +1,32 @@
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : [<r>C {}, C *self {{}, []}] = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : [<r>C {}, C *self {{}, []}] = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.636;
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.95 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : [] = CallByName List.66 List.169 List.172;
let List.174 : [<r>C {}, C *self {{}, []}] = CallByName Test.29 List.170 List.634 List.171;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : [] = CallByName List.66 List.170 List.173;
let List.175 : [<r>C {}, C *self {{}, []}] = CallByName Test.29 List.171 List.635 List.172;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.13;
jump List.628 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
jump List.629 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -2,92 +2,92 @@ procedure Bool.1 ():
let Bool.24 : Int1 = false;
ret Bool.24;
procedure List.18 (List.166, List.167, List.168):
let List.645 : U64 = 0i64;
let List.646 : U64 = CallByName List.6 List.166;
let List.644 : List Str = CallByName List.95 List.166 List.167 List.168 List.645 List.646;
ret List.644;
procedure List.18 (List.167, List.168, List.169):
let List.646 : U64 = 0i64;
let List.647 : U64 = CallByName List.6 List.167;
let List.645 : List Str = CallByName List.96 List.167 List.168 List.169 List.646 List.647;
ret List.645;
procedure List.2 (List.114, List.115):
let List.639 : U64 = CallByName List.6 List.114;
let List.635 : Int1 = CallByName Num.22 List.115 List.639;
if List.635 then
let List.637 : Str = CallByName List.66 List.114 List.115;
inc List.637;
let List.636 : [C {}, C Str] = TagId(1) List.637;
ret List.636;
procedure List.2 (List.115, List.116):
let List.640 : U64 = CallByName List.6 List.115;
let List.636 : Int1 = CallByName Num.22 List.116 List.640;
if List.636 then
let List.638 : Str = CallByName List.66 List.115 List.116;
inc List.638;
let List.637 : [C {}, C Str] = TagId(1) List.638;
ret List.637;
else
let List.634 : {} = Struct {};
let List.633 : [C {}, C Str] = TagId(0) List.634;
ret List.633;
let List.635 : {} = Struct {};
let List.634 : [C {}, C Str] = TagId(0) List.635;
ret List.634;
procedure List.278 (List.279, List.280, List.276):
let List.658 : Str = CallByName Test.10 List.280;
let List.657 : List Str = CallByName List.71 List.279 List.658;
ret List.657;
procedure List.279 (List.280, List.281, List.277):
let List.659 : Str = CallByName Test.10 List.281;
let List.658 : List Str = CallByName List.71 List.280 List.659;
ret List.658;
procedure List.5 (List.275, List.276):
let List.277 : U64 = CallByName List.6 List.275;
let List.642 : List Str = CallByName List.68 List.277;
let List.641 : List Str = CallByName List.18 List.275 List.642 List.276;
procedure List.5 (List.276, List.277):
let List.278 : U64 = CallByName List.6 List.276;
let List.643 : List Str = CallByName List.68 List.278;
let List.642 : List Str = CallByName List.18 List.276 List.643 List.277;
ret List.642;
procedure List.6 (#Attr.2):
let List.641 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.641;
procedure List.6 (#Attr.2):
let List.640 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.640;
let List.656 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.656;
procedure List.6 (#Attr.2):
let List.655 : U64 = lowlevel ListLenU64 #Attr.2;
procedure List.66 (#Attr.2, #Attr.3):
let List.639 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.639;
procedure List.66 (#Attr.2, #Attr.3):
let List.655 : [<r>C List [<r>C List *self, C *self], C [<r>C List *self, C *self]] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.655;
procedure List.66 (#Attr.2, #Attr.3):
let List.638 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.638;
procedure List.66 (#Attr.2, #Attr.3):
let List.654 : [<r>C List [<r>C List *self, C *self], C [<r>C List *self, C *self]] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.654;
procedure List.68 (#Attr.2):
let List.660 : List Str = lowlevel ListWithCapacity #Attr.2;
ret List.660;
let List.661 : List Str = lowlevel ListWithCapacity #Attr.2;
ret List.661;
procedure List.71 (#Attr.2, #Attr.3):
let List.659 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.659;
let List.660 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.660;
procedure List.9 (List.386):
let List.632 : U64 = 0i64;
let List.625 : [C {}, C Str] = CallByName List.2 List.386 List.632;
let List.629 : U8 = 1i64;
let List.630 : U8 = GetTagId List.625;
let List.631 : Int1 = lowlevel Eq List.629 List.630;
if List.631 then
let List.387 : Str = UnionAtIndex (Id 1) (Index 0) List.625;
let List.626 : [C {}, C Str] = TagId(1) List.387;
ret List.626;
else
dec List.625;
let List.628 : {} = Struct {};
let List.627 : [C {}, C Str] = TagId(0) List.628;
procedure List.9 (List.387):
let List.633 : U64 = 0i64;
let List.626 : [C {}, C Str] = CallByName List.2 List.387 List.633;
let List.630 : U8 = 1i64;
let List.631 : U8 = GetTagId List.626;
let List.632 : Int1 = lowlevel Eq List.630 List.631;
if List.632 then
let List.388 : Str = UnionAtIndex (Id 1) (Index 0) List.626;
let List.627 : [C {}, C Str] = TagId(1) List.388;
ret List.627;
else
dec List.626;
let List.629 : {} = Struct {};
let List.628 : [C {}, C Str] = TagId(0) List.629;
ret List.628;
procedure List.95 (#Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7, #Derived_gen.8):
joinpoint List.647 List.169 List.170 List.171 List.172 List.173:
let List.649 : Int1 = CallByName Num.22 List.172 List.173;
if List.649 then
let List.653 : [<r>C List [<r>C List *self, C *self], C [<r>C List *self, C *self]] = CallByName List.66 List.169 List.172;
inc List.653;
let List.174 : List Str = CallByName List.278 List.170 List.653 List.171;
let List.652 : U64 = 1i64;
let List.651 : U64 = CallByName Num.51 List.172 List.652;
jump List.647 List.169 List.174 List.171 List.651 List.173;
procedure List.96 (#Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7):
joinpoint List.648 List.170 List.171 List.172 List.173 List.174:
let List.650 : Int1 = CallByName Num.22 List.173 List.174;
if List.650 then
let List.654 : [<r>C List [<r>C List *self, C *self], C [<r>C List *self, C *self]] = CallByName List.66 List.170 List.173;
inc List.654;
let List.175 : List Str = CallByName List.279 List.171 List.654 List.172;
let List.653 : U64 = 1i64;
let List.652 : U64 = CallByName Num.51 List.173 List.653;
jump List.648 List.170 List.175 List.172 List.652 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.4;
jump List.647 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7 #Derived_gen.8;
inc #Derived_gen.3;
jump List.648 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -1,6 +1,6 @@
procedure List.6 (#Attr.2):
let List.625 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.625;
let List.626 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.626;
procedure Test.1 (Test.5):
let Test.2 : I64 = 41i64;

View file

@ -2,35 +2,35 @@ procedure Bool.2 ():
let Bool.23 : Int1 = true;
ret Bool.23;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.636;
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : Int1 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : Int1 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.95 (#Derived_gen.5, #Derived_gen.6, #Derived_gen.7, #Derived_gen.8, #Derived_gen.9):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : Int1 = CallByName List.66 List.169 List.172;
let List.174 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName Test.6 List.170 List.634 List.171;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.5, #Derived_gen.6, #Derived_gen.7, #Derived_gen.8, #Derived_gen.9):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : Int1 = CallByName List.66 List.170 List.173;
let List.175 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName Test.6 List.171 List.635 List.172;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.5;
jump List.628 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7 #Derived_gen.8 #Derived_gen.9;
jump List.629 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7 #Derived_gen.8 #Derived_gen.9;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -26,8 +26,8 @@ procedure Dict.52 ():
ret Dict.743;
procedure List.6 (#Attr.2):
let List.625 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.625;
let List.626 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.626;
procedure Num.75 (#Attr.2, #Attr.3):
let Num.281 : U8 = lowlevel NumSubWrap #Attr.2 #Attr.3;

View file

@ -2,25 +2,25 @@ procedure Bool.1 ():
let Bool.23 : Int1 = false;
ret Bool.23;
procedure List.2 (List.114, List.115):
let List.631 : U64 = CallByName List.6 List.114;
let List.627 : Int1 = CallByName Num.22 List.115 List.631;
if List.627 then
let List.629 : {} = CallByName List.66 List.114 List.115;
let List.628 : [C {}, C {}] = TagId(1) List.629;
ret List.628;
procedure List.2 (List.115, List.116):
let List.632 : U64 = CallByName List.6 List.115;
let List.628 : Int1 = CallByName Num.22 List.116 List.632;
if List.628 then
let List.630 : {} = CallByName List.66 List.115 List.116;
let List.629 : [C {}, C {}] = TagId(1) List.630;
ret List.629;
else
let List.626 : {} = Struct {};
let List.625 : [C {}, C {}] = TagId(0) List.626;
ret List.625;
let List.627 : {} = Struct {};
let List.626 : [C {}, C {}] = TagId(0) List.627;
ret List.626;
procedure List.6 (#Attr.2):
let List.632 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.632;
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.633;
procedure List.66 (#Attr.2, #Attr.3):
let List.630 : {} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.630;
let List.631 : {} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.631;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.281 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -1,16 +1,16 @@
procedure List.4 (List.130, List.131):
let List.628 : U64 = 1i64;
let List.626 : List U8 = CallByName List.70 List.130 List.628;
let List.625 : List U8 = CallByName List.71 List.626 List.131;
ret List.625;
procedure List.4 (List.131, List.132):
let List.629 : U64 = 1i64;
let List.627 : List U8 = CallByName List.70 List.131 List.629;
let List.626 : List U8 = CallByName List.71 List.627 List.132;
ret List.626;
procedure List.70 (#Attr.2, #Attr.3):
let List.629 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.629;
let List.630 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.630;
procedure List.71 (#Attr.2, #Attr.3):
let List.627 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.627;
let List.628 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.628;
procedure Test.23 (Test.24, Test.35, Test.22):
let Test.37 : List U8 = CallByName List.4 Test.24 Test.22;

View file

@ -67,85 +67,85 @@ procedure Encode.26 (Encode.107, Encode.108):
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
ret Encode.110;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : List U8 = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : List U8 = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.18 (List.166, List.167, List.168):
let List.652 : U64 = 0i64;
let List.653 : U64 = CallByName List.6 List.166;
let List.651 : List U8 = CallByName List.95 List.166 List.167 List.168 List.652 List.653;
procedure List.18 (List.167, List.168, List.169):
let List.653 : U64 = 0i64;
let List.654 : U64 = CallByName List.6 List.167;
let List.652 : List U8 = CallByName List.96 List.167 List.168 List.169 List.653 List.654;
ret List.652;
procedure List.4 (List.131, List.132):
let List.674 : U64 = 1i64;
let List.673 : List U8 = CallByName List.70 List.131 List.674;
let List.672 : List U8 = CallByName List.71 List.673 List.132;
ret List.672;
procedure List.6 (#Attr.2):
let List.651 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.651;
procedure List.4 (List.130, List.131):
let List.673 : U64 = 1i64;
let List.672 : List U8 = CallByName List.70 List.130 List.673;
let List.671 : List U8 = CallByName List.71 List.672 List.131;
ret List.671;
procedure List.6 (#Attr.2):
let List.650 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.650;
procedure List.6 (#Attr.2):
let List.676 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.676;
let List.677 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.677;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.66 (#Attr.2, #Attr.3):
let List.661 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.661;
let List.662 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.662;
procedure List.70 (#Attr.2, #Attr.3):
let List.667 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.667;
let List.668 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.668;
procedure List.71 (#Attr.2, #Attr.3):
let List.665 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.665;
let List.666 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.666;
procedure List.8 (#Attr.2, #Attr.3):
let List.675 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.675;
let List.676 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.676;
procedure List.95 (#Derived_gen.26, #Derived_gen.27, #Derived_gen.28, #Derived_gen.29, #Derived_gen.30):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : {Str, Str} = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : List U8 = CallByName Test.71 List.170 List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.29, #Derived_gen.30, #Derived_gen.31, #Derived_gen.32, #Derived_gen.33):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : {Str, Str} = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : List U8 = CallByName Test.71 List.171 List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.26;
jump List.628 #Derived_gen.26 #Derived_gen.27 #Derived_gen.28 #Derived_gen.29 #Derived_gen.30;
inc #Derived_gen.29;
jump List.629 #Derived_gen.29 #Derived_gen.30 #Derived_gen.31 #Derived_gen.32 #Derived_gen.33;
procedure List.95 (#Derived_gen.40, #Derived_gen.41, #Derived_gen.42, #Derived_gen.43, #Derived_gen.44):
joinpoint List.654 List.169 List.170 List.171 List.172 List.173:
let List.656 : Int1 = CallByName Num.22 List.172 List.173;
if List.656 then
let List.660 : {Str, Str} = CallByName List.66 List.169 List.172;
inc List.660;
let List.174 : List U8 = CallByName Test.71 List.170 List.660;
let List.659 : U64 = 1i64;
let List.658 : U64 = CallByName Num.51 List.172 List.659;
jump List.654 List.169 List.174 List.171 List.658 List.173;
procedure List.96 (#Derived_gen.34, #Derived_gen.35, #Derived_gen.36, #Derived_gen.37, #Derived_gen.38):
joinpoint List.655 List.170 List.171 List.172 List.173 List.174:
let List.657 : Int1 = CallByName Num.22 List.173 List.174;
if List.657 then
let List.661 : {Str, Str} = CallByName List.66 List.170 List.173;
inc List.661;
let List.175 : List U8 = CallByName Test.71 List.171 List.661;
let List.660 : U64 = 1i64;
let List.659 : U64 = CallByName Num.51 List.173 List.660;
jump List.655 List.170 List.175 List.172 List.659 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.40;
jump List.654 #Derived_gen.40 #Derived_gen.41 #Derived_gen.42 #Derived_gen.43 #Derived_gen.44;
inc #Derived_gen.34;
jump List.655 #Derived_gen.34 #Derived_gen.35 #Derived_gen.36 #Derived_gen.37 #Derived_gen.38;
procedure Num.127 (#Attr.2):
let Num.286 : U8 = lowlevel NumIntCast #Attr.2;

View file

@ -39,54 +39,54 @@ procedure Encode.26 (Encode.107, Encode.108):
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
ret Encode.110;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : List U8 = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : List U8 = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.4 (List.130, List.131):
let List.647 : U64 = 1i64;
let List.646 : List U8 = CallByName List.70 List.130 List.647;
let List.645 : List U8 = CallByName List.71 List.646 List.131;
ret List.645;
procedure List.4 (List.131, List.132):
let List.648 : U64 = 1i64;
let List.647 : List U8 = CallByName List.70 List.131 List.648;
let List.646 : List U8 = CallByName List.71 List.647 List.132;
ret List.646;
procedure List.6 (#Attr.2):
let List.650 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.650;
let List.651 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.651;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.70 (#Attr.2, #Attr.3):
let List.641 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.641;
let List.642 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.642;
procedure List.71 (#Attr.2, #Attr.3):
let List.639 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.639;
let List.640 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.640;
procedure List.8 (#Attr.2, #Attr.3):
let List.649 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.649;
let List.650 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.650;
procedure List.95 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : {Str, Str} = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : List U8 = CallByName Test.71 List.170 List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.16, #Derived_gen.17, #Derived_gen.18, #Derived_gen.19, #Derived_gen.20):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : {Str, Str} = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : List U8 = CallByName Test.71 List.171 List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.13;
jump List.628 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
inc #Derived_gen.16;
jump List.629 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18 #Derived_gen.19 #Derived_gen.20;
procedure Num.127 (#Attr.2):
let Num.282 : U8 = lowlevel NumIntCast #Attr.2;

View file

@ -46,54 +46,54 @@ procedure Encode.26 (Encode.107, Encode.108):
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
ret Encode.110;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : List U8 = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : List U8 = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.4 (List.130, List.131):
let List.647 : U64 = 1i64;
let List.646 : List U8 = CallByName List.70 List.130 List.647;
let List.645 : List U8 = CallByName List.71 List.646 List.131;
ret List.645;
procedure List.4 (List.131, List.132):
let List.648 : U64 = 1i64;
let List.647 : List U8 = CallByName List.70 List.131 List.648;
let List.646 : List U8 = CallByName List.71 List.647 List.132;
ret List.646;
procedure List.6 (#Attr.2):
let List.650 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.650;
let List.651 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.651;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.70 (#Attr.2, #Attr.3):
let List.641 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.641;
let List.642 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.642;
procedure List.71 (#Attr.2, #Attr.3):
let List.639 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.639;
let List.640 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.640;
procedure List.8 (#Attr.2, #Attr.3):
let List.649 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.649;
let List.650 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.650;
procedure List.95 (#Derived_gen.17, #Derived_gen.18, #Derived_gen.19, #Derived_gen.20, #Derived_gen.21):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : {Str, Str} = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : List U8 = CallByName Test.71 List.170 List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23, #Derived_gen.24):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : {Str, Str} = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : List U8 = CallByName Test.71 List.171 List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.17;
jump List.628 #Derived_gen.17 #Derived_gen.18 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21;
inc #Derived_gen.20;
jump List.629 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24;
procedure Num.127 (#Attr.2):
let Num.282 : U8 = lowlevel NumIntCast #Attr.2;

View file

@ -11,23 +11,23 @@ procedure Encode.26 (Encode.107, Encode.108):
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
ret Encode.110;
procedure List.4 (List.130, List.131):
let List.635 : U64 = 1i64;
let List.634 : List U8 = CallByName List.70 List.130 List.635;
let List.633 : List U8 = CallByName List.71 List.634 List.131;
ret List.633;
procedure List.4 (List.131, List.132):
let List.636 : U64 = 1i64;
let List.635 : List U8 = CallByName List.70 List.131 List.636;
let List.634 : List U8 = CallByName List.71 List.635 List.132;
ret List.634;
procedure List.70 (#Attr.2, #Attr.3):
let List.629 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.629;
let List.630 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.630;
procedure List.71 (#Attr.2, #Attr.3):
let List.627 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.627;
let List.628 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.628;
procedure List.8 (#Attr.2, #Attr.3):
let List.637 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.637;
let List.638 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.638;
procedure Num.127 (#Attr.2):
let Num.282 : U8 = lowlevel NumIntCast #Attr.2;

View file

@ -41,57 +41,57 @@ procedure Encode.26 (Encode.107, Encode.108):
ret Encode.110;
procedure List.13 (#Attr.2, #Attr.3):
let List.651 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.651;
let List.652 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.652;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : List U8 = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : List U8 = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.4 (List.130, List.131):
let List.647 : U64 = 1i64;
let List.646 : List U8 = CallByName List.70 List.130 List.647;
let List.645 : List U8 = CallByName List.71 List.646 List.131;
ret List.645;
procedure List.4 (List.131, List.132):
let List.648 : U64 = 1i64;
let List.647 : List U8 = CallByName List.70 List.131 List.648;
let List.646 : List U8 = CallByName List.71 List.647 List.132;
ret List.646;
procedure List.6 (#Attr.2):
let List.650 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.650;
let List.651 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.651;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.70 (#Attr.2, #Attr.3):
let List.641 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.641;
let List.642 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.642;
procedure List.71 (#Attr.2, #Attr.3):
let List.639 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.639;
let List.640 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.640;
procedure List.8 (#Attr.2, #Attr.3):
let List.649 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.649;
let List.650 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.650;
procedure List.95 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : Str = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : List U8 = CallByName Test.64 List.170 List.634 List.171;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : Str = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : List U8 = CallByName Test.64 List.171 List.635 List.172;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.13;
jump List.628 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
jump List.629 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
procedure Num.127 (#Attr.2):
let Num.282 : U8 = lowlevel NumIntCast #Attr.2;

View file

@ -44,57 +44,57 @@ procedure Encode.26 (Encode.107, Encode.108):
ret Encode.110;
procedure List.13 (#Attr.2, #Attr.3):
let List.651 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.651;
let List.652 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.652;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : List U8 = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : List U8 = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.4 (List.130, List.131):
let List.647 : U64 = 1i64;
let List.646 : List U8 = CallByName List.70 List.130 List.647;
let List.645 : List U8 = CallByName List.71 List.646 List.131;
ret List.645;
procedure List.4 (List.131, List.132):
let List.648 : U64 = 1i64;
let List.647 : List U8 = CallByName List.70 List.131 List.648;
let List.646 : List U8 = CallByName List.71 List.647 List.132;
ret List.646;
procedure List.6 (#Attr.2):
let List.650 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.650;
let List.651 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.651;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.70 (#Attr.2, #Attr.3):
let List.641 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.641;
let List.642 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.642;
procedure List.71 (#Attr.2, #Attr.3):
let List.639 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.639;
let List.640 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.640;
procedure List.8 (#Attr.2, #Attr.3):
let List.649 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.649;
let List.650 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.650;
procedure List.95 (#Derived_gen.11, #Derived_gen.12, #Derived_gen.13, #Derived_gen.14, #Derived_gen.15):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : Str = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : List U8 = CallByName Test.64 List.170 List.634 List.171;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : Str = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : List U8 = CallByName Test.64 List.171 List.635 List.172;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.11;
jump List.628 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15;
inc #Derived_gen.23;
jump List.629 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
procedure Num.127 (#Attr.2):
let Num.282 : U8 = lowlevel NumIntCast #Attr.2;

View file

@ -304,7 +304,7 @@ procedure Dict.72 (Dict.412, Dict.413, Dict.414):
let Dict.854 : {U64, U32} = CallByName Dict.73 Dict.412 Dict.417 Dict.416;
ret Dict.854;
procedure Dict.73 (#Derived_gen.16, #Derived_gen.17, #Derived_gen.18):
procedure Dict.73 (#Derived_gen.21, #Derived_gen.22, #Derived_gen.23):
joinpoint Dict.855 Dict.418 Dict.419 Dict.420:
let Dict.421 : {U32, U32} = CallByName Dict.22 Dict.418 Dict.419;
let Dict.862 : U32 = StructAtIndex 1 Dict.421;
@ -319,8 +319,8 @@ procedure Dict.73 (#Derived_gen.16, #Derived_gen.17, #Derived_gen.18):
let Dict.856 : {U64, U32} = Struct {Dict.419, Dict.420};
ret Dict.856;
in
inc #Derived_gen.16;
jump Dict.855 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18;
inc #Derived_gen.21;
jump Dict.855 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23;
procedure Dict.74 (#Derived_gen.51, #Derived_gen.52, #Derived_gen.53):
joinpoint Dict.761 Dict.422 Dict.423 Dict.424:
@ -890,171 +890,171 @@ procedure Inspect.63 (Inspect.300, Inspect.296):
procedure Inspect.64 (Inspect.302):
ret Inspect.302;
procedure List.11 (List.144, List.145):
let List.687 : List {U32, U32} = CallByName List.68 List.145;
let List.686 : List {U32, U32} = CallByName List.93 List.144 List.145 List.687;
ret List.686;
procedure List.11 (List.145, List.146):
let List.688 : List {U32, U32} = CallByName List.68 List.146;
let List.687 : List {U32, U32} = CallByName List.94 List.145 List.146 List.688;
ret List.687;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.18 (List.166, List.167, List.168):
let List.690 : U64 = 0i64;
let List.691 : U64 = CallByName List.6 List.166;
let List.689 : {Str, Int1} = CallByName List.95 List.166 List.167 List.168 List.690 List.691;
procedure List.18 (List.167, List.168, List.169):
let List.691 : U64 = 0i64;
let List.692 : U64 = CallByName List.6 List.167;
let List.690 : {Str, Int1} = CallByName List.96 List.167 List.168 List.169 List.691 List.692;
ret List.690;
procedure List.3 (List.123, List.124, List.125):
let List.652 : {List {U32, U32}, {U32, U32}} = CallByName List.64 List.123 List.124 List.125;
let List.651 : List {U32, U32} = StructAtIndex 0 List.652;
ret List.651;
procedure List.3 (List.123, List.124, List.125):
let List.654 : {List {Str, I64}, {Str, I64}} = CallByName List.64 List.123 List.124 List.125;
let List.653 : List {Str, I64} = StructAtIndex 0 List.654;
let #Derived_gen.71 : {Str, I64} = StructAtIndex 1 List.654;
dec #Derived_gen.71;
ret List.653;
procedure List.4 (List.131, List.132):
let List.663 : U64 = 1i64;
let List.661 : List {Str, I64} = CallByName List.70 List.131 List.663;
let List.660 : List {Str, I64} = CallByName List.71 List.661 List.132;
ret List.660;
procedure List.6 (#Attr.2):
let List.642 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.642;
procedure List.6 (#Attr.2):
let List.689 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.689;
procedure List.3 (List.122, List.123, List.124):
let List.651 : {List {U32, U32}, {U32, U32}} = CallByName List.64 List.122 List.123 List.124;
let List.650 : List {U32, U32} = StructAtIndex 0 List.651;
ret List.650;
procedure List.3 (List.122, List.123, List.124):
let List.653 : {List {Str, I64}, {Str, I64}} = CallByName List.64 List.122 List.123 List.124;
let List.652 : List {Str, I64} = StructAtIndex 0 List.653;
let #Derived_gen.71 : {Str, I64} = StructAtIndex 1 List.653;
dec #Derived_gen.71;
ret List.652;
procedure List.4 (List.130, List.131):
let List.662 : U64 = 1i64;
let List.660 : List {Str, I64} = CallByName List.70 List.130 List.662;
let List.659 : List {Str, I64} = CallByName List.71 List.660 List.131;
ret List.659;
procedure List.6 (#Attr.2):
let List.641 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.641;
let List.701 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.701;
procedure List.6 (#Attr.2):
let List.688 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.688;
procedure List.6 (#Attr.2):
let List.700 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.700;
procedure List.64 (List.119, List.120, List.121):
let List.649 : U64 = CallByName List.6 List.119;
let List.646 : Int1 = CallByName Num.22 List.120 List.649;
if List.646 then
let List.647 : {List {U32, U32}, {U32, U32}} = CallByName List.67 List.119 List.120 List.121;
ret List.647;
procedure List.64 (List.120, List.121, List.122):
let List.650 : U64 = CallByName List.6 List.120;
let List.647 : Int1 = CallByName Num.22 List.121 List.650;
if List.647 then
let List.648 : {List {U32, U32}, {U32, U32}} = CallByName List.67 List.120 List.121 List.122;
ret List.648;
else
let List.645 : {List {U32, U32}, {U32, U32}} = Struct {List.119, List.121};
ret List.645;
let List.646 : {List {U32, U32}, {U32, U32}} = Struct {List.120, List.122};
ret List.646;
procedure List.64 (List.119, List.120, List.121):
let List.658 : U64 = CallByName List.6 List.119;
let List.655 : Int1 = CallByName Num.22 List.120 List.658;
if List.655 then
let List.656 : {List {Str, I64}, {Str, I64}} = CallByName List.67 List.119 List.120 List.121;
ret List.656;
procedure List.64 (List.120, List.121, List.122):
let List.659 : U64 = CallByName List.6 List.120;
let List.656 : Int1 = CallByName Num.22 List.121 List.659;
if List.656 then
let List.657 : {List {Str, I64}, {Str, I64}} = CallByName List.67 List.120 List.121 List.122;
ret List.657;
else
let List.654 : {List {Str, I64}, {Str, I64}} = Struct {List.119, List.121};
ret List.654;
let List.655 : {List {Str, I64}, {Str, I64}} = Struct {List.120, List.122};
ret List.655;
procedure List.66 (#Attr.2, #Attr.3):
let List.699 : {Str, I64} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.699;
let List.700 : {Str, I64} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.700;
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
let List.648 : {List {U32, U32}, {U32, U32}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.648;
let List.649 : {List {U32, U32}, {U32, U32}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.649;
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
let List.657 : {List {Str, I64}, {Str, I64}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.657;
let List.658 : {List {Str, I64}, {Str, I64}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.658;
procedure List.68 (#Attr.2):
let List.685 : List {U32, U32} = lowlevel ListWithCapacity #Attr.2;
ret List.685;
let List.686 : List {U32, U32} = lowlevel ListWithCapacity #Attr.2;
ret List.686;
procedure List.70 (#Attr.2, #Attr.3):
let List.663 : List {Str, I64} = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.663;
procedure List.71 (#Attr.2, #Attr.3):
let List.661 : List {Str, I64} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.661;
procedure List.71 (#Attr.2, #Attr.3):
let List.682 : List {U32, U32} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.682;
procedure List.83 (List.175, List.176, List.177):
let List.665 : U64 = 0i64;
let List.666 : U64 = CallByName List.6 List.175;
let List.664 : List {U32, U32} = CallByName List.96 List.175 List.176 List.177 List.665 List.666;
let List.664 : List {Str, I64} = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.664;
procedure List.93 (#Derived_gen.63, #Derived_gen.64, #Derived_gen.65):
joinpoint List.676 List.146 List.147 List.148:
let List.684 : U64 = 0i64;
let List.678 : Int1 = CallByName Num.24 List.147 List.684;
if List.678 then
let List.683 : U64 = 1i64;
let List.680 : U64 = CallByName Num.75 List.147 List.683;
let List.681 : List {U32, U32} = CallByName List.71 List.148 List.146;
jump List.676 List.146 List.680 List.681;
else
ret List.148;
in
jump List.676 #Derived_gen.63 #Derived_gen.64 #Derived_gen.65;
procedure List.71 (#Attr.2, #Attr.3):
let List.662 : List {Str, I64} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.662;
procedure List.95 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27):
joinpoint List.692 List.169 List.170 List.171 List.172 List.173:
let List.694 : Int1 = CallByName Num.22 List.172 List.173;
if List.694 then
let List.698 : {Str, I64} = CallByName List.66 List.169 List.172;
inc List.698;
let List.174 : {Str, Int1} = CallByName Dict.188 List.170 List.698 List.171;
let List.697 : U64 = 1i64;
let List.696 : U64 = CallByName Num.51 List.172 List.697;
jump List.692 List.169 List.174 List.171 List.696 List.173;
else
dec List.169;
ret List.170;
in
inc #Derived_gen.23;
jump List.692 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
procedure List.71 (#Attr.2, #Attr.3):
let List.683 : List {U32, U32} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.683;
procedure List.95 (#Derived_gen.37, #Derived_gen.38, #Derived_gen.39, #Derived_gen.40, #Derived_gen.41):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : {Str, I64} = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName Dict.159 List.170 List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
else
dec List.169;
ret List.170;
in
inc #Derived_gen.37;
jump List.628 #Derived_gen.37 #Derived_gen.38 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41;
procedure List.83 (List.176, List.177, List.178):
let List.666 : U64 = 0i64;
let List.667 : U64 = CallByName List.6 List.176;
let List.665 : List {U32, U32} = CallByName List.97 List.176 List.177 List.178 List.666 List.667;
ret List.665;
procedure List.96 (#Derived_gen.56, #Derived_gen.57, #Derived_gen.58, #Derived_gen.59, #Derived_gen.60):
joinpoint List.667 List.178 List.179 List.180 List.181 List.182:
let List.669 : Int1 = CallByName Num.22 List.181 List.182;
if List.669 then
let List.673 : {Str, I64} = CallByName List.66 List.178 List.181;
inc List.673;
let List.183 : List {U32, U32} = CallByName Dict.406 List.179 List.673 List.181 List.180;
let List.672 : U64 = 1i64;
let List.671 : U64 = CallByName Num.51 List.181 List.672;
jump List.667 List.178 List.183 List.180 List.671 List.182;
procedure List.94 (#Derived_gen.54, #Derived_gen.55, #Derived_gen.56):
joinpoint List.677 List.147 List.148 List.149:
let List.685 : U64 = 0i64;
let List.679 : Int1 = CallByName Num.24 List.148 List.685;
if List.679 then
let List.684 : U64 = 1i64;
let List.681 : U64 = CallByName Num.75 List.148 List.684;
let List.682 : List {U32, U32} = CallByName List.71 List.149 List.147;
jump List.677 List.147 List.681 List.682;
else
dec List.178;
ret List.179;
ret List.149;
in
inc #Derived_gen.56;
jump List.667 #Derived_gen.56 #Derived_gen.57 #Derived_gen.58 #Derived_gen.59 #Derived_gen.60;
jump List.677 #Derived_gen.54 #Derived_gen.55 #Derived_gen.56;
procedure List.96 (#Derived_gen.12, #Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16):
joinpoint List.693 List.170 List.171 List.172 List.173 List.174:
let List.695 : Int1 = CallByName Num.22 List.173 List.174;
if List.695 then
let List.699 : {Str, I64} = CallByName List.66 List.170 List.173;
inc List.699;
let List.175 : {Str, Int1} = CallByName Dict.188 List.171 List.699 List.172;
let List.698 : U64 = 1i64;
let List.697 : U64 = CallByName Num.51 List.173 List.698;
jump List.693 List.170 List.175 List.172 List.697 List.174;
else
dec List.170;
ret List.171;
in
inc #Derived_gen.12;
jump List.693 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16;
procedure List.96 (#Derived_gen.59, #Derived_gen.60, #Derived_gen.61, #Derived_gen.62, #Derived_gen.63):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : {Str, I64} = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName Dict.159 List.171 List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.170;
ret List.171;
in
inc #Derived_gen.59;
jump List.629 #Derived_gen.59 #Derived_gen.60 #Derived_gen.61 #Derived_gen.62 #Derived_gen.63;
procedure List.97 (#Derived_gen.31, #Derived_gen.32, #Derived_gen.33, #Derived_gen.34, #Derived_gen.35):
joinpoint List.668 List.179 List.180 List.181 List.182 List.183:
let List.670 : Int1 = CallByName Num.22 List.182 List.183;
if List.670 then
let List.674 : {Str, I64} = CallByName List.66 List.179 List.182;
inc List.674;
let List.184 : List {U32, U32} = CallByName Dict.406 List.180 List.674 List.182 List.181;
let List.673 : U64 = 1i64;
let List.672 : U64 = CallByName Num.51 List.182 List.673;
jump List.668 List.179 List.184 List.181 List.672 List.183;
else
dec List.179;
ret List.180;
in
inc #Derived_gen.31;
jump List.668 #Derived_gen.31 #Derived_gen.32 #Derived_gen.33 #Derived_gen.34 #Derived_gen.35;
procedure Num.131 (#Attr.2):
let Num.289 : U32 = lowlevel NumIntCast #Attr.2;

View file

@ -135,35 +135,35 @@ procedure Inspect.63 (Inspect.300, Inspect.296):
procedure Inspect.64 (Inspect.302):
ret Inspect.302;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : {Str, Int1} = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : {Str, Int1} = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.636;
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.95 (#Derived_gen.19, #Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : I64 = CallByName List.66 List.169 List.172;
let List.174 : {Str, Int1} = CallByName Inspect.160 List.170 List.634 List.171;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.19, #Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : I64 = CallByName List.66 List.170 List.173;
let List.175 : {Str, Int1} = CallByName Inspect.160 List.171 List.635 List.172;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.19;
jump List.628 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23;
jump List.629 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.283 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -221,67 +221,67 @@ procedure Inspect.63 (Inspect.300, Inspect.296):
procedure Inspect.64 (Inspect.302):
ret Inspect.302;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : {Str, Int1} = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : {Str, Int1} = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.18 (List.166, List.167, List.168):
let List.638 : U64 = 0i64;
let List.639 : U64 = CallByName List.6 List.166;
let List.637 : {Str, Int1} = CallByName List.95 List.166 List.167 List.168 List.638 List.639;
procedure List.18 (List.167, List.168, List.169):
let List.639 : U64 = 0i64;
let List.640 : U64 = CallByName List.6 List.167;
let List.638 : {Str, Int1} = CallByName List.96 List.167 List.168 List.169 List.639 List.640;
ret List.638;
procedure List.6 (#Attr.2):
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
let List.649 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.649;
procedure List.66 (#Attr.2, #Attr.3):
let List.636 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.6 (#Attr.2):
let List.648 : U64 = lowlevel ListLenU64 #Attr.2;
procedure List.66 (#Attr.2, #Attr.3):
let List.648 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.648;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
procedure List.66 (#Attr.2, #Attr.3):
let List.647 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.647;
procedure List.95 (#Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26):
joinpoint List.640 List.169 List.170 List.171 List.172 List.173:
let List.642 : Int1 = CallByName Num.22 List.172 List.173;
if List.642 then
let List.646 : {Str, Str} = CallByName List.66 List.169 List.172;
inc List.646;
let List.174 : {Str, Int1} = CallByName Inspect.233 List.170 List.646;
let List.645 : U64 = 1i64;
let List.644 : U64 = CallByName Num.51 List.172 List.645;
jump List.640 List.169 List.174 List.171 List.644 List.173;
procedure List.96 (#Derived_gen.28, #Derived_gen.29, #Derived_gen.30, #Derived_gen.31, #Derived_gen.32):
joinpoint List.641 List.170 List.171 List.172 List.173 List.174:
let List.643 : Int1 = CallByName Num.22 List.173 List.174;
if List.643 then
let List.647 : {Str, Str} = CallByName List.66 List.170 List.173;
inc List.647;
let List.175 : {Str, Int1} = CallByName Inspect.233 List.171 List.647;
let List.646 : U64 = 1i64;
let List.645 : U64 = CallByName Num.51 List.173 List.646;
jump List.641 List.170 List.175 List.172 List.645 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.22;
jump List.640 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26;
inc #Derived_gen.28;
jump List.641 #Derived_gen.28 #Derived_gen.29 #Derived_gen.30 #Derived_gen.31 #Derived_gen.32;
procedure List.95 (#Derived_gen.43, #Derived_gen.44, #Derived_gen.45, #Derived_gen.46, #Derived_gen.47):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : {Str, Str} = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : {Str, Int1} = CallByName Inspect.233 List.170 List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.33, #Derived_gen.34, #Derived_gen.35, #Derived_gen.36, #Derived_gen.37):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : {Str, Str} = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : {Str, Int1} = CallByName Inspect.233 List.171 List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.43;
jump List.628 #Derived_gen.43 #Derived_gen.44 #Derived_gen.45 #Derived_gen.46 #Derived_gen.47;
inc #Derived_gen.33;
jump List.629 #Derived_gen.33 #Derived_gen.34 #Derived_gen.35 #Derived_gen.36 #Derived_gen.37;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.284 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -161,36 +161,36 @@ procedure Inspect.63 (Inspect.300, Inspect.296):
procedure Inspect.64 (Inspect.302):
ret Inspect.302;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : {Str, Int1} = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : {Str, Int1} = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.636;
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : {[C I64, C Decimal], Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : {[C I64, C Decimal], Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.95 (#Derived_gen.26, #Derived_gen.27, #Derived_gen.28, #Derived_gen.29, #Derived_gen.30):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : {[C I64, C Decimal], Str} = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : {Str, Int1} = CallByName Inspect.233 List.170 List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : {[C I64, C Decimal], Str} = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : {Str, Int1} = CallByName Inspect.233 List.171 List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.26;
jump List.628 #Derived_gen.26 #Derived_gen.27 #Derived_gen.28 #Derived_gen.29 #Derived_gen.30;
inc #Derived_gen.22;
jump List.629 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.284 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -139,36 +139,36 @@ procedure Inspect.63 (Inspect.300, Inspect.296):
procedure Inspect.64 (Inspect.302):
ret Inspect.302;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : {Str, Int1} = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : {Str, Int1} = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.636;
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.95 (#Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17, #Derived_gen.18):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : {Str, Str} = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : {Str, Int1} = CallByName Inspect.233 List.170 List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.16, #Derived_gen.17, #Derived_gen.18, #Derived_gen.19, #Derived_gen.20):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : {Str, Str} = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : {Str, Int1} = CallByName Inspect.233 List.171 List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.14;
jump List.628 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18;
inc #Derived_gen.16;
jump List.629 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18 #Derived_gen.19 #Derived_gen.20;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -146,36 +146,36 @@ procedure Inspect.63 (Inspect.300, Inspect.296):
procedure Inspect.64 (Inspect.302):
ret Inspect.302;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : {Str, Int1} = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : {Str, Int1} = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.636;
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.95 (#Derived_gen.18, #Derived_gen.19, #Derived_gen.20, #Derived_gen.21, #Derived_gen.22):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : {Str, Str} = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : {Str, Int1} = CallByName Inspect.233 List.170 List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23, #Derived_gen.24):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : {Str, Str} = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : {Str, Int1} = CallByName Inspect.233 List.171 List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.18;
jump List.628 #Derived_gen.18 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22;
inc #Derived_gen.20;
jump List.629 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -132,43 +132,43 @@ procedure Inspect.63 (Inspect.300, Inspect.296):
procedure Inspect.64 (Inspect.302):
ret Inspect.302;
procedure List.1 (List.113):
let List.638 : U64 = CallByName List.6 List.113;
let List.639 : U64 = 0i64;
let List.637 : Int1 = CallByName Bool.11 List.638 List.639;
ret List.637;
procedure List.1 (List.114):
let List.639 : U64 = CallByName List.6 List.114;
let List.640 : U64 = 0i64;
let List.638 : Int1 = CallByName Bool.11 List.639 List.640;
ret List.638;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : Str = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : Str = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.636;
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.95 (#Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17, #Derived_gen.18):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : Str = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : Str = CallByName Inspect.210 List.170 List.634;
dec List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23, #Derived_gen.24):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : Str = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : Str = CallByName Inspect.210 List.171 List.635;
dec List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.14;
jump List.628 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18;
inc #Derived_gen.20;
jump List.629 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -135,43 +135,43 @@ procedure Inspect.63 (Inspect.300, Inspect.296):
procedure Inspect.64 (Inspect.302):
ret Inspect.302;
procedure List.1 (List.113):
let List.638 : U64 = CallByName List.6 List.113;
let List.639 : U64 = 0i64;
let List.637 : Int1 = CallByName Bool.11 List.638 List.639;
ret List.637;
procedure List.1 (List.114):
let List.639 : U64 = CallByName List.6 List.114;
let List.640 : U64 = 0i64;
let List.638 : Int1 = CallByName Bool.11 List.639 List.640;
ret List.638;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : Str = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : Str = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.636;
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.95 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : Str = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : Str = CallByName Inspect.210 List.170 List.634;
dec List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : Str = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : Str = CallByName Inspect.210 List.171 List.635;
dec List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.13;
jump List.628 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
jump List.629 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -1,6 +1,6 @@
procedure List.6 (#Attr.2):
let List.625 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.625;
let List.626 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.626;
procedure Num.19 (#Attr.2, #Attr.3):
let Num.283 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;

View file

@ -6,40 +6,40 @@ procedure Bool.2 ():
let Bool.23 : Int1 = true;
ret Bool.23;
procedure List.2 (List.114, List.115):
let List.639 : U64 = CallByName List.6 List.114;
let List.635 : Int1 = CallByName Num.22 List.115 List.639;
if List.635 then
let List.637 : I64 = CallByName List.66 List.114 List.115;
let List.636 : [C {}, C I64] = TagId(1) List.637;
ret List.636;
procedure List.2 (List.115, List.116):
let List.640 : U64 = CallByName List.6 List.115;
let List.636 : Int1 = CallByName Num.22 List.116 List.640;
if List.636 then
let List.638 : I64 = CallByName List.66 List.115 List.116;
let List.637 : [C {}, C I64] = TagId(1) List.638;
ret List.637;
else
let List.634 : {} = Struct {};
let List.633 : [C {}, C I64] = TagId(0) List.634;
ret List.633;
let List.635 : {} = Struct {};
let List.634 : [C {}, C I64] = TagId(0) List.635;
ret List.634;
procedure List.6 (#Attr.2):
let List.640 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.640;
let List.641 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.641;
procedure List.66 (#Attr.2, #Attr.3):
let List.638 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.638;
let List.639 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.639;
procedure List.9 (List.386):
let List.632 : U64 = 0i64;
let List.625 : [C {}, C I64] = CallByName List.2 List.386 List.632;
let List.629 : U8 = 1i64;
let List.630 : U8 = GetTagId List.625;
let List.631 : Int1 = lowlevel Eq List.629 List.630;
if List.631 then
let List.387 : I64 = UnionAtIndex (Id 1) (Index 0) List.625;
let List.626 : [C Int1, C I64] = TagId(1) List.387;
ret List.626;
else
let List.628 : Int1 = true;
let List.627 : [C Int1, C I64] = TagId(0) List.628;
procedure List.9 (List.387):
let List.633 : U64 = 0i64;
let List.626 : [C {}, C I64] = CallByName List.2 List.387 List.633;
let List.630 : U8 = 1i64;
let List.631 : U8 = GetTagId List.626;
let List.632 : Int1 = lowlevel Eq List.630 List.631;
if List.632 then
let List.388 : I64 = UnionAtIndex (Id 1) (Index 0) List.626;
let List.627 : [C Int1, C I64] = TagId(1) List.388;
ret List.627;
else
let List.629 : Int1 = true;
let List.628 : [C Int1, C I64] = TagId(0) List.629;
ret List.628;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.281 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -6,118 +6,118 @@ procedure Bool.2 ():
let Bool.24 : Int1 = true;
ret Bool.24;
procedure List.100 (#Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6):
joinpoint List.663 List.285 List.286 List.287 List.288 List.289 List.290:
let List.665 : Int1 = CallByName Num.22 List.289 List.290;
if List.665 then
let List.671 : [<r>C I64, C List *self] = CallByName List.66 List.285 List.289;
inc List.671;
let List.672 : [<r>C I64, C List *self] = CallByName List.66 List.286 List.289;
procedure List.101 (#Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6):
joinpoint List.664 List.286 List.287 List.288 List.289 List.290 List.291:
let List.666 : Int1 = CallByName Num.22 List.290 List.291;
if List.666 then
let List.672 : [<r>C I64, C List *self] = CallByName List.66 List.286 List.290;
inc List.672;
let List.291 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName Test.15 List.671 List.672;
let List.667 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.71 List.287 List.291;
let List.669 : U64 = 1i64;
let List.668 : U64 = CallByName Num.51 List.289 List.669;
jump List.663 List.285 List.286 List.667 List.288 List.668 List.290;
let List.673 : [<r>C I64, C List *self] = CallByName List.66 List.287 List.290;
inc List.673;
let List.292 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName Test.15 List.672 List.673;
let List.668 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.71 List.288 List.292;
let List.670 : U64 = 1i64;
let List.669 : U64 = CallByName Num.51 List.290 List.670;
jump List.664 List.286 List.287 List.668 List.289 List.669 List.291;
else
dec List.286;
dec List.285;
ret List.287;
dec List.287;
ret List.288;
in
inc #Derived_gen.1;
inc #Derived_gen.2;
jump List.663 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6;
jump List.664 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6;
procedure List.110 (List.539, List.540, List.541):
let List.639 : U64 = 0i64;
let List.640 : U64 = CallByName List.6 List.539;
let List.638 : [C {}, C {}] = CallByName List.80 List.539 List.540 List.541 List.639 List.640;
ret List.638;
procedure List.111 (List.540, List.541, List.542):
let List.640 : U64 = 0i64;
let List.641 : U64 = CallByName List.6 List.540;
let List.639 : [C {}, C {}] = CallByName List.80 List.540 List.541 List.542 List.640 List.641;
ret List.639;
procedure List.23 (List.281, List.282, List.283):
let List.675 : U64 = CallByName List.6 List.281;
procedure List.23 (List.282, List.283, List.284):
let List.676 : U64 = CallByName List.6 List.282;
let List.284 : U64 = CallByName Num.148 List.675 List.676;
let List.661 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.68 List.284;
let List.662 : U64 = 0i64;
let List.660 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.100 List.281 List.282 List.661 List.283 List.662 List.284;
ret List.660;
let List.677 : U64 = CallByName List.6 List.283;
let List.285 : U64 = CallByName Num.148 List.676 List.677;
let List.662 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.68 List.285;
let List.663 : U64 = 0i64;
let List.661 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.101 List.282 List.283 List.662 List.284 List.663 List.285;
ret List.661;
procedure List.242 (List.627, List.243, List.241):
let List.657 : Int1 = CallByName Test.1 List.243;
if List.657 then
let List.659 : {} = Struct {};
let List.658 : [C {}, C {}] = TagId(1) List.659;
ret List.658;
procedure List.243 (List.628, List.244, List.242):
let List.658 : Int1 = CallByName Test.1 List.244;
if List.658 then
let List.660 : {} = Struct {};
let List.659 : [C {}, C {}] = TagId(1) List.660;
ret List.659;
else
let List.656 : {} = Struct {};
let List.655 : [C {}, C {}] = TagId(0) List.656;
ret List.655;
let List.657 : {} = Struct {};
let List.656 : [C {}, C {}] = TagId(0) List.657;
ret List.656;
procedure List.56 (List.240, List.241):
let List.636 : {} = Struct {};
let List.628 : [C {}, C {}] = CallByName List.110 List.240 List.636 List.241;
let List.633 : U8 = 1i64;
let List.634 : U8 = GetTagId List.628;
let List.635 : Int1 = lowlevel Eq List.633 List.634;
if List.635 then
let List.629 : Int1 = CallByName Bool.2;
ret List.629;
else
let List.630 : Int1 = CallByName Bool.1;
procedure List.56 (List.241, List.242):
let List.637 : {} = Struct {};
let List.629 : [C {}, C {}] = CallByName List.111 List.241 List.637 List.242;
let List.634 : U8 = 1i64;
let List.635 : U8 = GetTagId List.629;
let List.636 : Int1 = lowlevel Eq List.634 List.635;
if List.636 then
let List.630 : Int1 = CallByName Bool.2;
ret List.630;
else
let List.631 : Int1 = CallByName Bool.1;
ret List.631;
procedure List.6 (#Attr.2):
let List.626 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.626;
let List.627 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.627;
procedure List.6 (#Attr.2):
let List.654 : U64 = lowlevel ListLenU64 #Attr.2;
let List.655 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.655;
procedure List.66 (#Attr.2, #Attr.3):
let List.654 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.654;
procedure List.66 (#Attr.2, #Attr.3):
let List.653 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.653;
procedure List.66 (#Attr.2, #Attr.3):
let List.673 : [<r>C I64, C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.673;
procedure List.68 (#Attr.2):
let List.674 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListWithCapacity #Attr.2;
let List.674 : [<r>C I64, C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.674;
procedure List.68 (#Attr.2):
let List.675 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListWithCapacity #Attr.2;
ret List.675;
procedure List.71 (#Attr.2, #Attr.3):
let List.670 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.670;
let List.671 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.671;
procedure List.80 (#Derived_gen.7, #Derived_gen.8, #Derived_gen.9, #Derived_gen.10, #Derived_gen.11):
joinpoint List.641 List.542 List.543 List.544 List.545 List.546:
let List.643 : Int1 = CallByName Num.22 List.545 List.546;
if List.643 then
let List.652 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.66 List.542 List.545;
inc List.652;
let List.644 : [C {}, C {}] = CallByName List.242 List.543 List.652 List.544;
let List.649 : U8 = 1i64;
let List.650 : U8 = GetTagId List.644;
let List.651 : Int1 = lowlevel Eq List.649 List.650;
if List.651 then
let List.547 : {} = UnionAtIndex (Id 1) (Index 0) List.644;
let List.647 : U64 = 1i64;
let List.646 : U64 = CallByName Num.51 List.545 List.647;
jump List.641 List.542 List.547 List.544 List.646 List.546;
joinpoint List.642 List.543 List.544 List.545 List.546 List.547:
let List.644 : Int1 = CallByName Num.22 List.546 List.547;
if List.644 then
let List.653 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.66 List.543 List.546;
inc List.653;
let List.645 : [C {}, C {}] = CallByName List.243 List.544 List.653 List.545;
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.548 : {} = UnionAtIndex (Id 1) (Index 0) List.645;
let List.648 : U64 = 1i64;
let List.647 : U64 = CallByName Num.51 List.546 List.648;
jump List.642 List.543 List.548 List.545 List.647 List.547;
else
dec List.542;
let List.548 : {} = UnionAtIndex (Id 0) (Index 0) List.644;
let List.648 : [C {}, C {}] = TagId(0) List.548;
ret List.648;
dec List.543;
let List.549 : {} = UnionAtIndex (Id 0) (Index 0) List.645;
let List.649 : [C {}, C {}] = TagId(0) List.549;
ret List.649;
else
dec List.542;
let List.642 : [C {}, C {}] = TagId(1) List.543;
ret List.642;
dec List.543;
let List.643 : [C {}, C {}] = TagId(1) List.544;
ret List.643;
in
inc #Derived_gen.7;
jump List.641 #Derived_gen.7 #Derived_gen.8 #Derived_gen.9 #Derived_gen.10 #Derived_gen.11;
jump List.642 #Derived_gen.7 #Derived_gen.8 #Derived_gen.9 #Derived_gen.10 #Derived_gen.11;
procedure Num.148 (Num.225, Num.226):
let Num.288 : Int1 = CallByName Num.22 Num.225 Num.226;

View file

@ -1,33 +1,33 @@
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.6 (#Attr.2):
let List.636 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.636;
let List.637 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.637;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : [<rnu>C *self, <null>] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : [<rnu>C *self, <null>] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.95 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : [<rnu>C *self, <null>] = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName Test.7 List.170 List.634;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : [<rnu>C *self, <null>] = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName Test.7 List.171 List.635;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.0;
jump List.628 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
jump List.629 #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;

View file

@ -1,16 +1,16 @@
procedure List.4 (List.130, List.131):
let List.628 : U64 = 1i64;
let List.626 : List I64 = CallByName List.70 List.130 List.628;
let List.625 : List I64 = CallByName List.71 List.626 List.131;
ret List.625;
procedure List.4 (List.131, List.132):
let List.629 : U64 = 1i64;
let List.627 : List I64 = CallByName List.70 List.131 List.629;
let List.626 : List I64 = CallByName List.71 List.627 List.132;
ret List.626;
procedure List.70 (#Attr.2, #Attr.3):
let List.629 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.629;
let List.630 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.630;
procedure List.71 (#Attr.2, #Attr.3):
let List.627 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.627;
let List.628 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.628;
procedure Test.0 ():
let Test.2 : List I64 = Array [1i64];

View file

@ -1,16 +1,16 @@
procedure List.4 (List.130, List.131):
let List.628 : U64 = 1i64;
let List.626 : List I64 = CallByName List.70 List.130 List.628;
let List.625 : List I64 = CallByName List.71 List.626 List.131;
ret List.625;
procedure List.4 (List.131, List.132):
let List.629 : U64 = 1i64;
let List.627 : List I64 = CallByName List.70 List.131 List.629;
let List.626 : List I64 = CallByName List.71 List.627 List.132;
ret List.626;
procedure List.70 (#Attr.2, #Attr.3):
let List.629 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.629;
let List.630 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.630;
procedure List.71 (#Attr.2, #Attr.3):
let List.627 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.627;
let List.628 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.628;
procedure Test.1 (Test.2):
let Test.6 : I64 = 42i64;

View file

@ -1,25 +1,25 @@
procedure List.3 (List.122, List.123, List.124):
let List.628 : {List I64, I64} = CallByName List.64 List.122 List.123 List.124;
let List.627 : List I64 = StructAtIndex 0 List.628;
ret List.627;
procedure List.3 (List.123, List.124, List.125):
let List.629 : {List I64, I64} = CallByName List.64 List.123 List.124 List.125;
let List.628 : List I64 = StructAtIndex 0 List.629;
ret List.628;
procedure List.6 (#Attr.2):
let List.626 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.626;
let List.627 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.627;
procedure List.64 (List.119, List.120, List.121):
let List.633 : U64 = CallByName List.6 List.119;
let List.630 : Int1 = CallByName Num.22 List.120 List.633;
if List.630 then
let List.631 : {List I64, I64} = CallByName List.67 List.119 List.120 List.121;
ret List.631;
procedure List.64 (List.120, List.121, List.122):
let List.634 : U64 = CallByName List.6 List.120;
let List.631 : Int1 = CallByName Num.22 List.121 List.634;
if List.631 then
let List.632 : {List I64, I64} = CallByName List.67 List.120 List.121 List.122;
ret List.632;
else
let List.629 : {List I64, I64} = Struct {List.119, List.121};
ret List.629;
let List.630 : {List I64, I64} = Struct {List.120, List.122};
ret List.630;
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
let List.632 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.632;
let List.633 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.633;
procedure Num.19 (#Attr.2, #Attr.3):
let Num.281 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;

View file

@ -1,22 +1,22 @@
procedure List.2 (List.114, List.115):
let List.631 : U64 = CallByName List.6 List.114;
let List.627 : Int1 = CallByName Num.22 List.115 List.631;
if List.627 then
let List.629 : I64 = CallByName List.66 List.114 List.115;
let List.628 : [C {}, C I64] = TagId(1) List.629;
ret List.628;
procedure List.2 (List.115, List.116):
let List.632 : U64 = CallByName List.6 List.115;
let List.628 : Int1 = CallByName Num.22 List.116 List.632;
if List.628 then
let List.630 : I64 = CallByName List.66 List.115 List.116;
let List.629 : [C {}, C I64] = TagId(1) List.630;
ret List.629;
else
let List.626 : {} = Struct {};
let List.625 : [C {}, C I64] = TagId(0) List.626;
ret List.625;
let List.627 : {} = Struct {};
let List.626 : [C {}, C I64] = TagId(0) List.627;
ret List.626;
procedure List.6 (#Attr.2):
let List.632 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.632;
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.633;
procedure List.66 (#Attr.2, #Attr.3):
let List.630 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.630;
let List.631 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.631;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.281 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -1,11 +1,11 @@
procedure List.6 (#Attr.2):
let List.625 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.625;
procedure List.6 (#Attr.2):
let List.626 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.626;
procedure List.6 (#Attr.2):
let List.627 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.627;
procedure Num.19 (#Attr.2, #Attr.3):
let Num.281 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
ret Num.281;

View file

@ -1,66 +1,66 @@
procedure List.18 (List.166, List.167, List.168):
let List.637 : U64 = 0i64;
let List.638 : U64 = CallByName List.6 List.166;
let List.636 : List Str = CallByName List.95 List.166 List.167 List.168 List.637 List.638;
ret List.636;
procedure List.18 (List.167, List.168, List.169):
let List.638 : U64 = 0i64;
let List.639 : U64 = CallByName List.6 List.167;
let List.637 : List Str = CallByName List.96 List.167 List.168 List.169 List.638 List.639;
ret List.637;
procedure List.2 (List.114, List.115):
let List.631 : U64 = CallByName List.6 List.114;
let List.627 : Int1 = CallByName Num.22 List.115 List.631;
if List.627 then
let List.629 : Str = CallByName List.66 List.114 List.115;
inc List.629;
let List.628 : [C {}, C Str] = TagId(1) List.629;
ret List.628;
procedure List.2 (List.115, List.116):
let List.632 : U64 = CallByName List.6 List.115;
let List.628 : Int1 = CallByName Num.22 List.116 List.632;
if List.628 then
let List.630 : Str = CallByName List.66 List.115 List.116;
inc List.630;
let List.629 : [C {}, C Str] = TagId(1) List.630;
ret List.629;
else
let List.626 : {} = Struct {};
let List.625 : [C {}, C Str] = TagId(0) List.626;
ret List.625;
let List.627 : {} = Struct {};
let List.626 : [C {}, C Str] = TagId(0) List.627;
ret List.626;
procedure List.278 (List.279, List.280, List.276):
let List.648 : Str = CallByName Test.3 List.280;
let List.647 : List Str = CallByName List.71 List.279 List.648;
ret List.647;
procedure List.279 (List.280, List.281, List.277):
let List.649 : Str = CallByName Test.3 List.281;
let List.648 : List Str = CallByName List.71 List.280 List.649;
ret List.648;
procedure List.5 (List.275, List.276):
let List.277 : U64 = CallByName List.6 List.275;
let List.634 : List Str = CallByName List.68 List.277;
let List.633 : List Str = CallByName List.18 List.275 List.634 List.276;
ret List.633;
procedure List.5 (List.276, List.277):
let List.278 : U64 = CallByName List.6 List.276;
let List.635 : List Str = CallByName List.68 List.278;
let List.634 : List Str = CallByName List.18 List.276 List.635 List.277;
ret List.634;
procedure List.6 (#Attr.2):
let List.632 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.632;
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.633;
procedure List.66 (#Attr.2, #Attr.3):
let List.630 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.630;
let List.631 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.631;
procedure List.68 (#Attr.2):
let List.650 : List Str = lowlevel ListWithCapacity #Attr.2;
ret List.650;
let List.651 : List Str = lowlevel ListWithCapacity #Attr.2;
ret List.651;
procedure List.71 (#Attr.2, #Attr.3):
let List.649 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.649;
let List.650 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.650;
procedure List.95 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.639 List.169 List.170 List.171 List.172 List.173:
let List.641 : Int1 = CallByName Num.22 List.172 List.173;
if List.641 then
let List.645 : Str = CallByName List.66 List.169 List.172;
inc List.645;
let List.174 : List Str = CallByName List.278 List.170 List.645 List.171;
dec List.645;
let List.644 : U64 = 1i64;
let List.643 : U64 = CallByName Num.51 List.172 List.644;
jump List.639 List.169 List.174 List.171 List.643 List.173;
procedure List.96 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.640 List.170 List.171 List.172 List.173 List.174:
let List.642 : Int1 = CallByName Num.22 List.173 List.174;
if List.642 then
let List.646 : Str = CallByName List.66 List.170 List.173;
inc List.646;
let List.175 : List Str = CallByName List.279 List.171 List.646 List.172;
dec List.646;
let List.645 : U64 = 1i64;
let List.644 : U64 = CallByName Num.51 List.173 List.645;
jump List.640 List.170 List.175 List.172 List.644 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.0;
jump List.639 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
jump List.640 #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;

View file

@ -1,65 +1,65 @@
procedure List.18 (List.166, List.167, List.168):
let List.637 : U64 = 0i64;
let List.638 : U64 = CallByName List.6 List.166;
let List.636 : List Str = CallByName List.95 List.166 List.167 List.168 List.637 List.638;
ret List.636;
procedure List.18 (List.167, List.168, List.169):
let List.638 : U64 = 0i64;
let List.639 : U64 = CallByName List.6 List.167;
let List.637 : List Str = CallByName List.96 List.167 List.168 List.169 List.638 List.639;
ret List.637;
procedure List.2 (List.114, List.115):
let List.631 : U64 = CallByName List.6 List.114;
let List.627 : Int1 = CallByName Num.22 List.115 List.631;
if List.627 then
let List.629 : Str = CallByName List.66 List.114 List.115;
inc List.629;
let List.628 : [C {}, C Str] = TagId(1) List.629;
ret List.628;
procedure List.2 (List.115, List.116):
let List.632 : U64 = CallByName List.6 List.115;
let List.628 : Int1 = CallByName Num.22 List.116 List.632;
if List.628 then
let List.630 : Str = CallByName List.66 List.115 List.116;
inc List.630;
let List.629 : [C {}, C Str] = TagId(1) List.630;
ret List.629;
else
let List.626 : {} = Struct {};
let List.625 : [C {}, C Str] = TagId(0) List.626;
ret List.625;
let List.627 : {} = Struct {};
let List.626 : [C {}, C Str] = TagId(0) List.627;
ret List.626;
procedure List.278 (List.279, List.280, List.276):
let List.648 : Str = CallByName Test.3 List.280;
let List.647 : List Str = CallByName List.71 List.279 List.648;
ret List.647;
procedure List.279 (List.280, List.281, List.277):
let List.649 : Str = CallByName Test.3 List.281;
let List.648 : List Str = CallByName List.71 List.280 List.649;
ret List.648;
procedure List.5 (List.275, List.276):
let List.277 : U64 = CallByName List.6 List.275;
let List.634 : List Str = CallByName List.68 List.277;
let List.633 : List Str = CallByName List.18 List.275 List.634 List.276;
ret List.633;
procedure List.5 (List.276, List.277):
let List.278 : U64 = CallByName List.6 List.276;
let List.635 : List Str = CallByName List.68 List.278;
let List.634 : List Str = CallByName List.18 List.276 List.635 List.277;
ret List.634;
procedure List.6 (#Attr.2):
let List.632 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.632;
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.633;
procedure List.66 (#Attr.2, #Attr.3):
let List.630 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.630;
let List.631 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.631;
procedure List.68 (#Attr.2):
let List.650 : List Str = lowlevel ListWithCapacity #Attr.2;
ret List.650;
let List.651 : List Str = lowlevel ListWithCapacity #Attr.2;
ret List.651;
procedure List.71 (#Attr.2, #Attr.3):
let List.649 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.649;
let List.650 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.650;
procedure List.95 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.639 List.169 List.170 List.171 List.172 List.173:
let List.641 : Int1 = CallByName Num.22 List.172 List.173;
if List.641 then
let List.645 : Str = CallByName List.66 List.169 List.172;
inc List.645;
let List.174 : List Str = CallByName List.278 List.170 List.645 List.171;
let List.644 : U64 = 1i64;
let List.643 : U64 = CallByName Num.51 List.172 List.644;
jump List.639 List.169 List.174 List.171 List.643 List.173;
procedure List.96 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.640 List.170 List.171 List.172 List.173 List.174:
let List.642 : Int1 = CallByName Num.22 List.173 List.174;
if List.642 then
let List.646 : Str = CallByName List.66 List.170 List.173;
inc List.646;
let List.175 : List Str = CallByName List.279 List.171 List.646 List.172;
let List.645 : U64 = 1i64;
let List.644 : U64 = CallByName Num.51 List.173 List.645;
jump List.640 List.170 List.175 List.172 List.644 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.0;
jump List.639 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
jump List.640 #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;

View file

@ -1,66 +1,66 @@
procedure List.18 (List.166, List.167, List.168):
let List.629 : U64 = 0i64;
let List.630 : U64 = CallByName List.6 List.166;
let List.628 : List U8 = CallByName List.95 List.166 List.167 List.168 List.629 List.630;
ret List.628;
procedure List.18 (List.167, List.168, List.169):
let List.630 : U64 = 0i64;
let List.631 : U64 = CallByName List.6 List.167;
let List.629 : List U8 = CallByName List.96 List.167 List.168 List.169 List.630 List.631;
ret List.629;
procedure List.278 (List.279, List.280, List.276):
let List.644 : U8 = GetTagId List.276;
joinpoint List.645 List.642:
let List.641 : List U8 = CallByName List.71 List.279 List.642;
ret List.641;
procedure List.279 (List.280, List.281, List.277):
let List.645 : U8 = GetTagId List.277;
joinpoint List.646 List.643:
let List.642 : List U8 = CallByName List.71 List.280 List.643;
ret List.642;
in
switch List.644:
switch List.645:
case 0:
let List.646 : U8 = CallByName Test.4 List.280 List.276;
jump List.645 List.646;
let List.647 : U8 = CallByName Test.4 List.281 List.277;
jump List.646 List.647;
case 1:
let List.646 : U8 = CallByName Test.6 List.280 List.276;
jump List.645 List.646;
let List.647 : U8 = CallByName Test.6 List.281 List.277;
jump List.646 List.647;
default:
let List.646 : U8 = CallByName Test.8 List.280;
jump List.645 List.646;
let List.647 : U8 = CallByName Test.8 List.281;
jump List.646 List.647;
procedure List.5 (List.275, List.276):
let List.277 : U64 = CallByName List.6 List.275;
let List.626 : List U8 = CallByName List.68 List.277;
let List.625 : List U8 = CallByName List.18 List.275 List.626 List.276;
ret List.625;
procedure List.5 (List.276, List.277):
let List.278 : U64 = CallByName List.6 List.276;
let List.627 : List U8 = CallByName List.68 List.278;
let List.626 : List U8 = CallByName List.18 List.276 List.627 List.277;
ret List.626;
procedure List.6 (#Attr.2):
let List.639 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.639;
let List.640 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.640;
procedure List.66 (#Attr.2, #Attr.3):
let List.638 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.638;
let List.639 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.639;
procedure List.68 (#Attr.2):
let List.647 : List U8 = lowlevel ListWithCapacity #Attr.2;
ret List.647;
let List.648 : List U8 = lowlevel ListWithCapacity #Attr.2;
ret List.648;
procedure List.71 (#Attr.2, #Attr.3):
let List.643 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.643;
let List.644 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.644;
procedure List.95 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.631 List.169 List.170 List.171 List.172 List.173:
let List.633 : Int1 = CallByName Num.22 List.172 List.173;
if List.633 then
let List.637 : U8 = CallByName List.66 List.169 List.172;
let List.174 : List U8 = CallByName List.278 List.170 List.637 List.171;
let List.636 : U64 = 1i64;
let List.635 : U64 = CallByName Num.51 List.172 List.636;
jump List.631 List.169 List.174 List.171 List.635 List.173;
procedure List.96 (#Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7):
joinpoint List.632 List.170 List.171 List.172 List.173 List.174:
let List.634 : Int1 = CallByName Num.22 List.173 List.174;
if List.634 then
let List.638 : U8 = CallByName List.66 List.170 List.173;
let List.175 : List U8 = CallByName List.279 List.171 List.638 List.172;
let List.637 : U64 = 1i64;
let List.636 : U64 = CallByName Num.51 List.173 List.637;
jump List.632 List.170 List.175 List.172 List.636 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.0;
jump List.631 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
inc #Derived_gen.3;
jump List.632 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7;
procedure Num.19 (#Attr.2, #Attr.3):
let Num.283 : U8 = lowlevel NumAdd #Attr.2 #Attr.3;

View file

@ -1,25 +1,25 @@
procedure List.3 (List.122, List.123, List.124):
let List.626 : {List I64, I64} = CallByName List.64 List.122 List.123 List.124;
let List.625 : List I64 = StructAtIndex 0 List.626;
ret List.625;
procedure List.3 (List.123, List.124, List.125):
let List.627 : {List I64, I64} = CallByName List.64 List.123 List.124 List.125;
let List.626 : List I64 = StructAtIndex 0 List.627;
ret List.626;
procedure List.6 (#Attr.2):
let List.632 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.632;
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.633;
procedure List.64 (List.119, List.120, List.121):
let List.631 : U64 = CallByName List.6 List.119;
let List.628 : Int1 = CallByName Num.22 List.120 List.631;
if List.628 then
let List.629 : {List I64, I64} = CallByName List.67 List.119 List.120 List.121;
ret List.629;
procedure List.64 (List.120, List.121, List.122):
let List.632 : U64 = CallByName List.6 List.120;
let List.629 : Int1 = CallByName Num.22 List.121 List.632;
if List.629 then
let List.630 : {List I64, I64} = CallByName List.67 List.120 List.121 List.122;
ret List.630;
else
let List.627 : {List I64, I64} = Struct {List.119, List.121};
ret List.627;
let List.628 : {List I64, I64} = Struct {List.120, List.122};
ret List.628;
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
let List.630 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.630;
let List.631 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.631;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.281 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -1,11 +1,11 @@
procedure List.28 (#Attr.2, #Attr.3):
let List.627 : List I64 = lowlevel ListSortWith { xs: `#Attr.#arg1` } #Attr.2 Num.46 #Attr.3;
ret List.627;
let List.628 : List I64 = lowlevel ListSortWith { xs: `#Attr.#arg1` } #Attr.2 Num.46 #Attr.3;
ret List.628;
procedure List.59 (List.381):
let List.626 : {} = Struct {};
let List.625 : List I64 = CallByName List.28 List.381 List.626;
ret List.625;
procedure List.59 (List.382):
let List.627 : {} = Struct {};
let List.626 : List I64 = CallByName List.28 List.382 List.627;
ret List.626;
procedure Num.46 (#Attr.2, #Attr.3):
let Num.281 : U8 = lowlevel NumCompare #Attr.2 #Attr.3;

View file

@ -1,41 +1,41 @@
procedure List.2 (List.114, List.115):
let List.647 : U64 = CallByName List.6 List.114;
let List.644 : Int1 = CallByName Num.22 List.115 List.647;
if List.644 then
let List.646 : I64 = CallByName List.66 List.114 List.115;
let List.645 : [C {}, C I64] = TagId(1) List.646;
ret List.645;
procedure List.2 (List.115, List.116):
let List.648 : U64 = CallByName List.6 List.115;
let List.645 : Int1 = CallByName Num.22 List.116 List.648;
if List.645 then
let List.647 : I64 = CallByName List.66 List.115 List.116;
let List.646 : [C {}, C I64] = TagId(1) List.647;
ret List.646;
else
let List.643 : {} = Struct {};
let List.642 : [C {}, C I64] = TagId(0) List.643;
ret List.642;
let List.644 : {} = Struct {};
let List.643 : [C {}, C I64] = TagId(0) List.644;
ret List.643;
procedure List.3 (List.122, List.123, List.124):
let List.634 : {List I64, I64} = CallByName List.64 List.122 List.123 List.124;
let List.633 : List I64 = StructAtIndex 0 List.634;
ret List.633;
procedure List.3 (List.123, List.124, List.125):
let List.635 : {List I64, I64} = CallByName List.64 List.123 List.124 List.125;
let List.634 : List I64 = StructAtIndex 0 List.635;
ret List.634;
procedure List.6 (#Attr.2):
let List.632 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.632;
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.633;
procedure List.64 (List.119, List.120, List.121):
let List.631 : U64 = CallByName List.6 List.119;
let List.628 : Int1 = CallByName Num.22 List.120 List.631;
if List.628 then
let List.629 : {List I64, I64} = CallByName List.67 List.119 List.120 List.121;
ret List.629;
procedure List.64 (List.120, List.121, List.122):
let List.632 : U64 = CallByName List.6 List.120;
let List.629 : Int1 = CallByName Num.22 List.121 List.632;
if List.629 then
let List.630 : {List I64, I64} = CallByName List.67 List.120 List.121 List.122;
ret List.630;
else
let List.627 : {List I64, I64} = Struct {List.119, List.121};
ret List.627;
let List.628 : {List I64, I64} = Struct {List.120, List.122};
ret List.628;
procedure List.66 (#Attr.2, #Attr.3):
let List.640 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.640;
let List.641 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.641;
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
let List.630 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.630;
let List.631 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.631;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.283 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -1,25 +1,25 @@
procedure List.3 (List.122, List.123, List.124):
let List.634 : {List U64, U64} = CallByName List.64 List.122 List.123 List.124;
let List.633 : List U64 = StructAtIndex 0 List.634;
ret List.633;
procedure List.3 (List.123, List.124, List.125):
let List.635 : {List U64, U64} = CallByName List.64 List.123 List.124 List.125;
let List.634 : List U64 = StructAtIndex 0 List.635;
ret List.634;
procedure List.6 (#Attr.2):
let List.632 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.632;
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.633;
procedure List.64 (List.119, List.120, List.121):
let List.631 : U64 = CallByName List.6 List.119;
let List.628 : Int1 = CallByName Num.22 List.120 List.631;
if List.628 then
let List.629 : {List U64, U64} = CallByName List.67 List.119 List.120 List.121;
ret List.629;
procedure List.64 (List.120, List.121, List.122):
let List.632 : U64 = CallByName List.6 List.120;
let List.629 : Int1 = CallByName Num.22 List.121 List.632;
if List.629 then
let List.630 : {List U64, U64} = CallByName List.67 List.120 List.121 List.122;
ret List.630;
else
let List.627 : {List U64, U64} = Struct {List.119, List.121};
ret List.627;
let List.628 : {List U64, U64} = Struct {List.120, List.122};
ret List.628;
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
let List.630 : {List U64, U64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.630;
let List.631 : {List U64, U64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.631;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.281 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -1,52 +1,52 @@
procedure List.18 (List.166, List.167, List.168):
let List.629 : U64 = 0i64;
let List.630 : U64 = CallByName List.6 List.166;
let List.628 : List [<rnnu>C List *self] = CallByName List.95 List.166 List.167 List.168 List.629 List.630;
ret List.628;
procedure List.18 (List.167, List.168, List.169):
let List.630 : U64 = 0i64;
let List.631 : U64 = CallByName List.6 List.167;
let List.629 : List [<rnnu>C List *self] = CallByName List.96 List.167 List.168 List.169 List.630 List.631;
ret List.629;
procedure List.278 (List.279, List.280, List.276):
let List.642 : [<rnnu>C List *self] = CallByName Test.2 List.280;
let List.641 : List [<rnnu>C List *self] = CallByName List.71 List.279 List.642;
ret List.641;
procedure List.279 (List.280, List.281, List.277):
let List.643 : [<rnnu>C List *self] = CallByName Test.2 List.281;
let List.642 : List [<rnnu>C List *self] = CallByName List.71 List.280 List.643;
ret List.642;
procedure List.5 (List.275, List.276):
let List.277 : U64 = CallByName List.6 List.275;
let List.626 : List [<rnnu>C List *self] = CallByName List.68 List.277;
let List.625 : List [<rnnu>C List *self] = CallByName List.18 List.275 List.626 List.276;
ret List.625;
procedure List.5 (List.276, List.277):
let List.278 : U64 = CallByName List.6 List.276;
let List.627 : List [<rnnu>C List *self] = CallByName List.68 List.278;
let List.626 : List [<rnnu>C List *self] = CallByName List.18 List.276 List.627 List.277;
ret List.626;
procedure List.6 (#Attr.2):
let List.639 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.639;
let List.640 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.640;
procedure List.66 (#Attr.2, #Attr.3):
let List.638 : [<rnnu>C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.638;
let List.639 : [<rnnu>C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.639;
procedure List.68 (#Attr.2):
let List.644 : List [<rnnu>C List *self] = lowlevel ListWithCapacity #Attr.2;
ret List.644;
let List.645 : List [<rnnu>C List *self] = lowlevel ListWithCapacity #Attr.2;
ret List.645;
procedure List.71 (#Attr.2, #Attr.3):
let List.643 : List [<rnnu>C List *self] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.643;
let List.644 : List [<rnnu>C List *self] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.644;
procedure List.95 (#Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4, #Derived_gen.5):
joinpoint List.631 List.169 List.170 List.171 List.172 List.173:
let List.633 : Int1 = CallByName Num.22 List.172 List.173;
if List.633 then
let List.637 : [<rnnu>C List *self] = CallByName List.66 List.169 List.172;
inc List.637;
let List.174 : List [<rnnu>C List *self] = CallByName List.278 List.170 List.637 List.171;
let List.636 : U64 = 1i64;
let List.635 : U64 = CallByName Num.51 List.172 List.636;
jump List.631 List.169 List.174 List.171 List.635 List.173;
procedure List.96 (#Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4, #Derived_gen.5):
joinpoint List.632 List.170 List.171 List.172 List.173 List.174:
let List.634 : Int1 = CallByName Num.22 List.173 List.174;
if List.634 then
let List.638 : [<rnnu>C List *self] = CallByName List.66 List.170 List.173;
inc List.638;
let List.175 : List [<rnnu>C List *self] = CallByName List.279 List.171 List.638 List.172;
let List.637 : U64 = 1i64;
let List.636 : U64 = CallByName Num.51 List.173 List.637;
jump List.632 List.170 List.175 List.172 List.636 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.1;
jump List.631 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5;
jump List.632 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.282 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -1,41 +1,41 @@
procedure List.2 (List.114, List.115):
let List.647 : U64 = CallByName List.6 List.114;
let List.644 : Int1 = CallByName Num.22 List.115 List.647;
if List.644 then
let List.646 : I64 = CallByName List.66 List.114 List.115;
let List.645 : [C {}, C I64] = TagId(1) List.646;
ret List.645;
procedure List.2 (List.115, List.116):
let List.648 : U64 = CallByName List.6 List.115;
let List.645 : Int1 = CallByName Num.22 List.116 List.648;
if List.645 then
let List.647 : I64 = CallByName List.66 List.115 List.116;
let List.646 : [C {}, C I64] = TagId(1) List.647;
ret List.646;
else
let List.643 : {} = Struct {};
let List.642 : [C {}, C I64] = TagId(0) List.643;
ret List.642;
let List.644 : {} = Struct {};
let List.643 : [C {}, C I64] = TagId(0) List.644;
ret List.643;
procedure List.3 (List.122, List.123, List.124):
let List.634 : {List I64, I64} = CallByName List.64 List.122 List.123 List.124;
let List.633 : List I64 = StructAtIndex 0 List.634;
ret List.633;
procedure List.3 (List.123, List.124, List.125):
let List.635 : {List I64, I64} = CallByName List.64 List.123 List.124 List.125;
let List.634 : List I64 = StructAtIndex 0 List.635;
ret List.634;
procedure List.6 (#Attr.2):
let List.632 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.632;
let List.633 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.633;
procedure List.64 (List.119, List.120, List.121):
let List.631 : U64 = CallByName List.6 List.119;
let List.628 : Int1 = CallByName Num.22 List.120 List.631;
if List.628 then
let List.629 : {List I64, I64} = CallByName List.67 List.119 List.120 List.121;
ret List.629;
procedure List.64 (List.120, List.121, List.122):
let List.632 : U64 = CallByName List.6 List.120;
let List.629 : Int1 = CallByName Num.22 List.121 List.632;
if List.629 then
let List.630 : {List I64, I64} = CallByName List.67 List.120 List.121 List.122;
ret List.630;
else
let List.627 : {List I64, I64} = Struct {List.119, List.121};
ret List.627;
let List.628 : {List I64, I64} = Struct {List.120, List.122};
ret List.628;
procedure List.66 (#Attr.2, #Attr.3):
let List.640 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.640;
let List.641 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.641;
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
let List.630 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.630;
let List.631 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
ret List.631;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.283 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;

View file

@ -30,57 +30,57 @@ procedure Encode.26 (Encode.107, Encode.108):
ret Encode.110;
procedure List.13 (#Attr.2, #Attr.3):
let List.651 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.651;
let List.652 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.652;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : List U8 = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : List U8 = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.4 (List.130, List.131):
let List.647 : U64 = 1i64;
let List.646 : List U8 = CallByName List.70 List.130 List.647;
let List.645 : List U8 = CallByName List.71 List.646 List.131;
ret List.645;
procedure List.4 (List.131, List.132):
let List.648 : U64 = 1i64;
let List.647 : List U8 = CallByName List.70 List.131 List.648;
let List.646 : List U8 = CallByName List.71 List.647 List.132;
ret List.646;
procedure List.6 (#Attr.2):
let List.650 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.650;
let List.651 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.651;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.70 (#Attr.2, #Attr.3):
let List.641 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.641;
let List.642 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.642;
procedure List.71 (#Attr.2, #Attr.3):
let List.639 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.639;
let List.640 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.640;
procedure List.8 (#Attr.2, #Attr.3):
let List.649 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.649;
let List.650 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.650;
procedure List.95 (#Derived_gen.12, #Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : Str = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : List U8 = CallByName Test.66 List.170 List.634 List.171;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : Str = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : List U8 = CallByName Test.66 List.171 List.635 List.172;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.12;
jump List.628 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16;
inc #Derived_gen.0;
jump List.629 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
procedure Num.127 (#Attr.2):
let Num.282 : U8 = lowlevel NumIntCast #Attr.2;

View file

@ -88,92 +88,92 @@ procedure Encode.26 (Encode.107, Encode.108):
ret Encode.110;
procedure List.13 (#Attr.2, #Attr.3):
let List.651 : List [C {}, C {}, C Str] = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.651;
procedure List.13 (#Attr.2, #Attr.3):
let List.679 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.679;
procedure List.18 (List.166, List.167, List.168):
let List.626 : U64 = 0i64;
let List.627 : U64 = CallByName List.6 List.166;
let List.625 : List U8 = CallByName List.95 List.166 List.167 List.168 List.626 List.627;
ret List.625;
procedure List.18 (List.166, List.167, List.168):
let List.653 : U64 = 0i64;
let List.654 : U64 = CallByName List.6 List.166;
let List.652 : List U8 = CallByName List.95 List.166 List.167 List.168 List.653 List.654;
let List.652 : List [C {}, C {}, C Str] = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.652;
procedure List.4 (List.130, List.131):
let List.674 : U64 = 1i64;
let List.673 : List U8 = CallByName List.70 List.130 List.674;
let List.672 : List U8 = CallByName List.71 List.673 List.131;
ret List.672;
procedure List.13 (#Attr.2, #Attr.3):
let List.680 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
ret List.680;
procedure List.18 (List.167, List.168, List.169):
let List.627 : U64 = 0i64;
let List.628 : U64 = CallByName List.6 List.167;
let List.626 : List U8 = CallByName List.96 List.167 List.168 List.169 List.627 List.628;
ret List.626;
procedure List.18 (List.167, List.168, List.169):
let List.654 : U64 = 0i64;
let List.655 : U64 = CallByName List.6 List.167;
let List.653 : List U8 = CallByName List.96 List.167 List.168 List.169 List.654 List.655;
ret List.653;
procedure List.4 (List.131, List.132):
let List.675 : U64 = 1i64;
let List.674 : List U8 = CallByName List.70 List.131 List.675;
let List.673 : List U8 = CallByName List.71 List.674 List.132;
ret List.673;
procedure List.6 (#Attr.2):
let List.650 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.650;
let List.651 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.651;
procedure List.6 (#Attr.2):
let List.677 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.677;
let List.678 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.678;
procedure List.66 (#Attr.2, #Attr.3):
let List.635 : [C {}, C {}, C Str] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.635;
let List.636 : [C {}, C {}, C Str] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.636;
procedure List.66 (#Attr.2, #Attr.3):
let List.662 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.662;
let List.663 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.663;
procedure List.70 (#Attr.2, #Attr.3):
let List.668 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.668;
let List.669 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
ret List.669;
procedure List.71 (#Attr.2, #Attr.3):
let List.666 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.666;
let List.667 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
ret List.667;
procedure List.8 (#Attr.2, #Attr.3):
let List.676 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.676;
let List.677 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
ret List.677;
procedure List.95 (#Derived_gen.35, #Derived_gen.36, #Derived_gen.37, #Derived_gen.38, #Derived_gen.39):
joinpoint List.628 List.169 List.170 List.171 List.172 List.173:
let List.630 : Int1 = CallByName Num.22 List.172 List.173;
if List.630 then
let List.634 : [C {}, C {}, C Str] = CallByName List.66 List.169 List.172;
inc List.634;
let List.174 : List U8 = CallByName Test.66 List.170 List.634 List.171;
let List.633 : U64 = 1i64;
let List.632 : U64 = CallByName Num.51 List.172 List.633;
jump List.628 List.169 List.174 List.171 List.632 List.173;
procedure List.96 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27):
joinpoint List.656 List.170 List.171 List.172 List.173 List.174:
let List.658 : Int1 = CallByName Num.22 List.173 List.174;
if List.658 then
let List.662 : Str = CallByName List.66 List.170 List.173;
inc List.662;
let List.175 : List U8 = CallByName Test.66 List.171 List.662 List.172;
let List.661 : U64 = 1i64;
let List.660 : U64 = CallByName Num.51 List.173 List.661;
jump List.656 List.170 List.175 List.172 List.660 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.35;
jump List.628 #Derived_gen.35 #Derived_gen.36 #Derived_gen.37 #Derived_gen.38 #Derived_gen.39;
inc #Derived_gen.23;
jump List.656 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
procedure List.95 (#Derived_gen.49, #Derived_gen.50, #Derived_gen.51, #Derived_gen.52, #Derived_gen.53):
joinpoint List.655 List.169 List.170 List.171 List.172 List.173:
let List.657 : Int1 = CallByName Num.22 List.172 List.173;
if List.657 then
let List.661 : Str = CallByName List.66 List.169 List.172;
inc List.661;
let List.174 : List U8 = CallByName Test.66 List.170 List.661 List.171;
let List.660 : U64 = 1i64;
let List.659 : U64 = CallByName Num.51 List.172 List.660;
jump List.655 List.169 List.174 List.171 List.659 List.173;
procedure List.96 (#Derived_gen.46, #Derived_gen.47, #Derived_gen.48, #Derived_gen.49, #Derived_gen.50):
joinpoint List.629 List.170 List.171 List.172 List.173 List.174:
let List.631 : Int1 = CallByName Num.22 List.173 List.174;
if List.631 then
let List.635 : [C {}, C {}, C Str] = CallByName List.66 List.170 List.173;
inc List.635;
let List.175 : List U8 = CallByName Test.66 List.171 List.635 List.172;
let List.634 : U64 = 1i64;
let List.633 : U64 = CallByName Num.51 List.173 List.634;
jump List.629 List.170 List.175 List.172 List.633 List.174;
else
dec List.169;
ret List.170;
dec List.170;
ret List.171;
in
inc #Derived_gen.49;
jump List.655 #Derived_gen.49 #Derived_gen.50 #Derived_gen.51 #Derived_gen.52 #Derived_gen.53;
inc #Derived_gen.46;
jump List.629 #Derived_gen.46 #Derived_gen.47 #Derived_gen.48 #Derived_gen.49 #Derived_gen.50;
procedure Num.127 (#Attr.2):
let Num.286 : U8 = lowlevel NumIntCast #Attr.2;

View file

@ -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.110 (List.539, List.540, List.541):
let List.643 : U64 = 0i64;
let List.644 : U64 = CallByName List.6 List.539;
let List.642 : [C U64, C U64] = CallByName List.80 List.539 List.540 List.541 List.643 List.644;
ret List.642;
procedure List.111 (List.540, List.541, List.542):
let List.644 : U64 = 0i64;
let List.645 : U64 = CallByName List.6 List.540;
let List.643 : [C U64, C U64] = CallByName List.80 List.540 List.541 List.542 List.644 List.645;
ret List.643;
procedure List.26 (List.207, List.208, List.209):
let List.636 : [C U64, C U64] = CallByName List.110 List.207 List.208 List.209;
let List.639 : U8 = 1i64;
let List.640 : U8 = GetTagId List.636;
let List.641 : Int1 = lowlevel Eq List.639 List.640;
if List.641 then
let List.210 : U64 = UnionAtIndex (Id 1) (Index 0) List.636;
ret List.210;
else
let List.211 : U64 = UnionAtIndex (Id 0) (Index 0) List.636;
procedure List.26 (List.208, List.209, List.210):
let List.637 : [C U64, C U64] = CallByName List.111 List.208 List.209 List.210;
let List.640 : U8 = 1i64;
let List.641 : U8 = GetTagId List.637;
let List.642 : Int1 = lowlevel Eq List.640 List.641;
if List.642 then
let List.211 : U64 = UnionAtIndex (Id 1) (Index 0) List.637;
ret List.211;
else
let List.212 : U64 = UnionAtIndex (Id 0) (Index 0) List.637;
ret List.212;
procedure List.38 (List.395, List.396):
let List.635 : U64 = CallByName List.6 List.395;
let List.397 : U64 = CallByName Num.77 List.635 List.396;
let List.625 : List U8 = CallByName List.43 List.395 List.397;
ret List.625;
procedure List.43 (List.393, List.394):
let List.633 : U64 = CallByName List.6 List.393;
let List.632 : U64 = CallByName Num.77 List.633 List.394;
let List.627 : {U64, U64} = Struct {List.394, List.632};
let List.626 : List U8 = CallByName List.49 List.393 List.627;
procedure List.38 (List.396, List.397):
let List.636 : U64 = CallByName List.6 List.396;
let List.398 : U64 = CallByName Num.77 List.636 List.397;
let List.626 : List U8 = CallByName List.43 List.396 List.398;
ret List.626;
procedure List.49 (List.471, List.472):
let List.629 : U64 = StructAtIndex 1 List.472;
let List.630 : U64 = StructAtIndex 0 List.472;
let List.628 : List U8 = CallByName List.72 List.471 List.629 List.630;
ret List.628;
procedure List.43 (List.394, List.395):
let List.634 : U64 = CallByName List.6 List.394;
let List.633 : U64 = CallByName Num.77 List.634 List.395;
let List.628 : {U64, U64} = Struct {List.395, List.633};
let List.627 : List U8 = CallByName List.49 List.394 List.628;
ret List.627;
procedure List.49 (List.472, List.473):
let List.630 : U64 = StructAtIndex 1 List.473;
let List.631 : U64 = StructAtIndex 0 List.473;
let List.629 : List U8 = CallByName List.72 List.472 List.630 List.631;
ret List.629;
procedure List.6 (#Attr.2):
let List.634 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.634;
let List.635 : U64 = lowlevel ListLenU64 #Attr.2;
ret List.635;
procedure List.66 (#Attr.2, #Attr.3):
let List.657 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.657;
let List.658 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
ret List.658;
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
let List.631 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
ret List.631;
let List.632 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
ret List.632;
procedure List.80 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4):
joinpoint List.645 List.542 List.543 List.544 List.545 List.546:
let List.647 : Int1 = CallByName Num.22 List.545 List.546;
if List.647 then
let List.656 : U8 = CallByName List.66 List.542 List.545;
let List.648 : [C U64, C U64] = CallByName Test.3 List.543 List.656;
let List.653 : U8 = 1i64;
let List.654 : U8 = GetTagId List.648;
let List.655 : Int1 = lowlevel Eq List.653 List.654;
if List.655 then
let List.547 : U64 = UnionAtIndex (Id 1) (Index 0) List.648;
let List.651 : U64 = 1i64;
let List.650 : U64 = CallByName Num.51 List.545 List.651;
jump List.645 List.542 List.547 List.544 List.650 List.546;
joinpoint List.646 List.543 List.544 List.545 List.546 List.547:
let List.648 : Int1 = CallByName Num.22 List.546 List.547;
if List.648 then
let List.657 : U8 = CallByName List.66 List.543 List.546;
let List.649 : [C U64, C U64] = CallByName Test.3 List.544 List.657;
let List.654 : U8 = 1i64;
let List.655 : U8 = GetTagId List.649;
let List.656 : Int1 = lowlevel Eq List.654 List.655;
if List.656 then
let List.548 : U64 = UnionAtIndex (Id 1) (Index 0) List.649;
let List.652 : U64 = 1i64;
let List.651 : U64 = CallByName Num.51 List.546 List.652;
jump List.646 List.543 List.548 List.545 List.651 List.547;
else
dec List.542;
let List.548 : U64 = UnionAtIndex (Id 0) (Index 0) List.648;
let List.652 : [C U64, C U64] = TagId(0) List.548;
ret List.652;
dec List.543;
let List.549 : U64 = UnionAtIndex (Id 0) (Index 0) List.649;
let List.653 : [C U64, C U64] = TagId(0) List.549;
ret List.653;
else
dec List.542;
let List.646 : [C U64, C U64] = TagId(1) List.543;
ret List.646;
dec List.543;
let List.647 : [C U64, C U64] = TagId(1) List.544;
ret List.647;
in
inc #Derived_gen.0;
jump List.645 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
jump List.646 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4;
procedure Num.22 (#Attr.2, #Attr.3):
let Num.284 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;