Fix mono tests

This commit is contained in:
Sam Mohr 2025-01-08 17:15:23 -08:00
parent 82b7279485
commit 2010ada504
No known key found for this signature in database
GPG key ID: EA41D161A3C1BC99
16 changed files with 90 additions and 90 deletions

View file

@ -1,4 +1,4 @@
procedure List.100 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_gen.16, #Derived_gen.17): procedure List.100 (#Derived_gen.11, #Derived_gen.12, #Derived_gen.13, #Derived_gen.14, #Derived_gen.15):
joinpoint List.668 List.174 List.175 List.176 List.177 List.178: joinpoint List.668 List.174 List.175 List.176 List.177 List.178:
let List.670 : Int1 = CallByName Num.22 List.177 List.178; let List.670 : Int1 = CallByName Num.22 List.177 List.178;
if List.670 then if List.670 then
@ -11,8 +11,8 @@ procedure List.100 (#Derived_gen.13, #Derived_gen.14, #Derived_gen.15, #Derived_
dec List.174; dec List.174;
ret List.175; ret List.175;
in in
inc #Derived_gen.13; inc #Derived_gen.11;
jump List.668 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15 #Derived_gen.16 #Derived_gen.17; jump List.668 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14 #Derived_gen.15;
procedure List.18 (List.171, List.172, List.173): procedure List.18 (List.171, List.172, List.173):
let List.666 : U64 = 0i64; let List.666 : U64 = 0i64;
@ -38,8 +38,8 @@ procedure Num.51 (#Attr.2, #Attr.3):
procedure Test.10 (Test.69, #Attr.12): procedure Test.10 (Test.69, #Attr.12):
let Test.72 : {} = UnionAtIndex (Id 0) (Index 0) #Attr.12; let Test.72 : {} = UnionAtIndex (Id 0) (Index 0) #Attr.12;
let #Derived_gen.20 : Int1 = lowlevel RefCountIsUnique #Attr.12; let #Derived_gen.18 : Int1 = lowlevel RefCountIsUnique #Attr.12;
if #Derived_gen.20 then if #Derived_gen.18 then
free #Attr.12; free #Attr.12;
ret Test.72; ret Test.72;
else else
@ -53,7 +53,7 @@ procedure Test.10 (Test.69, #Attr.12):
procedure Test.14 (Test.45, #Attr.12): procedure Test.14 (Test.45, #Attr.12):
let Test.55 : {{}, []} = UnionAtIndex (Id 1) (Index 1) #Attr.12; let Test.55 : {{}, []} = UnionAtIndex (Id 1) (Index 1) #Attr.12;
let Test.54 : [<r>C {}, C *self {{}, []}] = UnionAtIndex (Id 1) (Index 0) #Attr.12; let Test.54 : [<r>C {}, C *self {{}, []}] = UnionAtIndex (Id 1) (Index 0) #Attr.12;
joinpoint #Derived_gen.18: joinpoint #Derived_gen.19:
let Test.50 : {} = Struct {}; let Test.50 : {} = Struct {};
let Test.51 : U8 = GetTagId Test.54; let Test.51 : U8 = GetTagId Test.54;
joinpoint Test.52 Test.15: joinpoint Test.52 Test.15:
@ -80,14 +80,14 @@ procedure Test.14 (Test.45, #Attr.12):
jump Test.52 Test.53; jump Test.52 Test.53;
in in
let #Derived_gen.19 : Int1 = lowlevel RefCountIsUnique #Attr.12; let #Derived_gen.20 : Int1 = lowlevel RefCountIsUnique #Attr.12;
if #Derived_gen.19 then if #Derived_gen.20 then
free #Attr.12; free #Attr.12;
jump #Derived_gen.18; jump #Derived_gen.19;
else else
inc Test.54; inc Test.54;
decref #Attr.12; decref #Attr.12;
jump #Derived_gen.18; jump #Derived_gen.19;
procedure Test.20 (Test.21, Test.18): procedure Test.20 (Test.21, Test.18):
let Test.23 : [C {}, C []] = CallByName Test.32 Test.21 Test.18; let Test.23 : [C {}, C []] = CallByName Test.32 Test.21 Test.18;

View file

@ -2,7 +2,7 @@ procedure Bool.2 ():
let Bool.23 : Int1 = true; let Bool.23 : Int1 = true;
ret Bool.23; ret Bool.23;
procedure List.100 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4): procedure List.100 (#Derived_gen.3, #Derived_gen.4, #Derived_gen.5, #Derived_gen.6, #Derived_gen.7):
joinpoint List.668 List.174 List.175 List.176 List.177 List.178: joinpoint List.668 List.174 List.175 List.176 List.177 List.178:
let List.670 : Int1 = CallByName Num.22 List.177 List.178; let List.670 : Int1 = CallByName Num.22 List.177 List.178;
if List.670 then if List.670 then
@ -15,8 +15,8 @@ procedure List.100 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen
dec List.174; dec List.174;
ret List.175; ret List.175;
in in
inc #Derived_gen.0; inc #Derived_gen.3;
jump List.668 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4; jump List.668 #Derived_gen.3 #Derived_gen.4 #Derived_gen.5 #Derived_gen.6 #Derived_gen.7;
procedure List.18 (List.171, List.172, List.173): procedure List.18 (List.171, List.172, List.173):
let List.666 : U64 = 0i64; let List.666 : U64 = 0i64;
@ -47,11 +47,11 @@ procedure Str.3 (#Attr.2, #Attr.3):
procedure Test.1 (Test.5): procedure Test.1 (Test.5):
ret Test.5; ret Test.5;
procedure Test.11 (#Derived_gen.8, #Derived_gen.9): procedure Test.11 (#Derived_gen.10, #Derived_gen.11):
joinpoint Test.27 Test.12 #Attr.12: joinpoint Test.27 Test.12 #Attr.12:
let Test.34 : Int1 = UnionAtIndex (Id 2) (Index 1) #Attr.12; let Test.34 : Int1 = UnionAtIndex (Id 2) (Index 1) #Attr.12;
let Test.33 : [<rnw><null>, C *self Int1, C *self Int1] = UnionAtIndex (Id 2) (Index 0) #Attr.12; let Test.33 : [<rnw><null>, C *self Int1, C *self Int1] = UnionAtIndex (Id 2) (Index 0) #Attr.12;
joinpoint #Derived_gen.12: joinpoint #Derived_gen.14:
joinpoint Test.31 Test.29: joinpoint Test.31 Test.29:
let Test.30 : U8 = GetTagId Test.33; let Test.30 : U8 = GetTagId Test.33;
switch Test.30: switch Test.30:
@ -78,16 +78,16 @@ procedure Test.11 (#Derived_gen.8, #Derived_gen.9):
jump Test.31 Test.32; jump Test.31 Test.32;
in in
let #Derived_gen.13 : Int1 = lowlevel RefCountIsUnique #Attr.12; let #Derived_gen.15 : Int1 = lowlevel RefCountIsUnique #Attr.12;
if #Derived_gen.13 then if #Derived_gen.15 then
free #Attr.12; free #Attr.12;
jump #Derived_gen.12; jump #Derived_gen.14;
else else
inc Test.33; inc Test.33;
decref #Attr.12; decref #Attr.12;
jump #Derived_gen.12; jump #Derived_gen.14;
in in
jump Test.27 #Derived_gen.8 #Derived_gen.9; jump Test.27 #Derived_gen.10 #Derived_gen.11;
procedure Test.2 (Test.13): procedure Test.2 (Test.13):
ret Test.13; ret Test.13;
@ -118,7 +118,7 @@ procedure Test.6 (Test.7, Test.8, Test.5):
procedure Test.9 (Test.10, #Attr.12): procedure Test.9 (Test.10, #Attr.12):
let Test.43 : Int1 = UnionAtIndex (Id 1) (Index 1) #Attr.12; let Test.43 : Int1 = UnionAtIndex (Id 1) (Index 1) #Attr.12;
let Test.42 : [<rnw><null>, C *self Int1, C *self Int1] = UnionAtIndex (Id 1) (Index 0) #Attr.12; let Test.42 : [<rnw><null>, C *self Int1, C *self Int1] = UnionAtIndex (Id 1) (Index 0) #Attr.12;
joinpoint #Derived_gen.14: joinpoint #Derived_gen.12:
let Test.39 : U8 = GetTagId Test.42; let Test.39 : U8 = GetTagId Test.42;
joinpoint Test.40 Test.38: joinpoint Test.40 Test.38:
switch Test.43: switch Test.43:
@ -146,14 +146,14 @@ procedure Test.9 (Test.10, #Attr.12):
jump Test.40 Test.41; jump Test.40 Test.41;
in in
let #Derived_gen.15 : Int1 = lowlevel RefCountIsUnique #Attr.12; let #Derived_gen.13 : Int1 = lowlevel RefCountIsUnique #Attr.12;
if #Derived_gen.15 then if #Derived_gen.13 then
free #Attr.12; free #Attr.12;
jump #Derived_gen.14; jump #Derived_gen.12;
else else
inc Test.42; inc Test.42;
decref #Attr.12; decref #Attr.12;
jump #Derived_gen.14; jump #Derived_gen.12;
procedure Test.0 (): procedure Test.0 ():
let Test.45 : Int1 = false; let Test.45 : Int1 = false;

View file

@ -67,7 +67,7 @@ procedure Encode.26 (Encode.107, Encode.108):
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108; let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
ret Encode.110; ret Encode.110;
procedure List.100 (#Derived_gen.29, #Derived_gen.30, #Derived_gen.31, #Derived_gen.32, #Derived_gen.33): procedure List.100 (#Derived_gen.26, #Derived_gen.27, #Derived_gen.28, #Derived_gen.29, #Derived_gen.30):
joinpoint List.694 List.174 List.175 List.176 List.177 List.178: joinpoint List.694 List.174 List.175 List.176 List.177 List.178:
let List.696 : Int1 = CallByName Num.22 List.177 List.178; let List.696 : Int1 = CallByName Num.22 List.177 List.178;
if List.696 then if List.696 then
@ -81,10 +81,10 @@ procedure List.100 (#Derived_gen.29, #Derived_gen.30, #Derived_gen.31, #Derived_
dec List.174; dec List.174;
ret List.175; ret List.175;
in in
inc #Derived_gen.29; inc #Derived_gen.26;
jump List.694 #Derived_gen.29 #Derived_gen.30 #Derived_gen.31 #Derived_gen.32 #Derived_gen.33; jump List.694 #Derived_gen.26 #Derived_gen.27 #Derived_gen.28 #Derived_gen.29 #Derived_gen.30;
procedure List.100 (#Derived_gen.37, #Derived_gen.38, #Derived_gen.39, #Derived_gen.40, #Derived_gen.41): procedure List.100 (#Derived_gen.34, #Derived_gen.35, #Derived_gen.36, #Derived_gen.37, #Derived_gen.38):
joinpoint List.668 List.174 List.175 List.176 List.177 List.178: joinpoint List.668 List.174 List.175 List.176 List.177 List.178:
let List.670 : Int1 = CallByName Num.22 List.177 List.178; let List.670 : Int1 = CallByName Num.22 List.177 List.178;
if List.670 then if List.670 then
@ -98,8 +98,8 @@ procedure List.100 (#Derived_gen.37, #Derived_gen.38, #Derived_gen.39, #Derived_
dec List.174; dec List.174;
ret List.175; ret List.175;
in in
inc #Derived_gen.37; inc #Derived_gen.34;
jump List.668 #Derived_gen.37 #Derived_gen.38 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41; jump List.668 #Derived_gen.34 #Derived_gen.35 #Derived_gen.36 #Derived_gen.37 #Derived_gen.38;
procedure List.18 (List.171, List.172, List.173): procedure List.18 (List.171, List.172, List.173):
let List.666 : U64 = 0i64; let List.666 : U64 = 0i64;

View file

@ -40,7 +40,7 @@ procedure Encode.26 (Encode.107, Encode.108):
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108; let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
ret Encode.110; ret Encode.110;
procedure List.100 (#Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26): procedure List.100 (#Derived_gen.10, #Derived_gen.11, #Derived_gen.12, #Derived_gen.13, #Derived_gen.14):
joinpoint List.668 List.174 List.175 List.176 List.177 List.178: joinpoint List.668 List.174 List.175 List.176 List.177 List.178:
let List.670 : Int1 = CallByName Num.22 List.177 List.178; let List.670 : Int1 = CallByName Num.22 List.177 List.178;
if List.670 then if List.670 then
@ -54,8 +54,8 @@ procedure List.100 (#Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_
dec List.174; dec List.174;
ret List.175; ret List.175;
in in
inc #Derived_gen.22; inc #Derived_gen.10;
jump List.668 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26; jump List.668 #Derived_gen.10 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14;
procedure List.13 (#Attr.2, #Attr.3): procedure List.13 (#Attr.2, #Attr.3):
let List.691 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3; let List.691 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;

View file

@ -43,7 +43,7 @@ procedure Encode.26 (Encode.107, Encode.108):
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108; let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
ret Encode.110; ret Encode.110;
procedure List.100 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27): procedure List.100 (#Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23, #Derived_gen.24):
joinpoint List.668 List.174 List.175 List.176 List.177 List.178: joinpoint List.668 List.174 List.175 List.176 List.177 List.178:
let List.670 : Int1 = CallByName Num.22 List.177 List.178; let List.670 : Int1 = CallByName Num.22 List.177 List.178;
if List.670 then if List.670 then
@ -57,8 +57,8 @@ procedure List.100 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_
dec List.174; dec List.174;
ret List.175; ret List.175;
in in
inc #Derived_gen.23; inc #Derived_gen.20;
jump List.668 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27; jump List.668 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24;
procedure List.13 (#Attr.2, #Attr.3): procedure List.13 (#Attr.2, #Attr.3):
let List.691 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3; let List.691 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;

View file

@ -17,7 +17,7 @@ procedure Test.4 (Test.5, #Attr.12):
let Test.16 : I64 = CallByName Num.19 Test.5 Test.17; let Test.16 : I64 = CallByName Num.19 Test.5 Test.17;
ret Test.16; ret Test.16;
procedure Test.0 (#Derived_gen.2): procedure Test.0 (#Derived_gen.0):
joinpoint Test.7 Test.1: joinpoint Test.7 Test.1:
let Test.21 : I64 = 1i64; let Test.21 : I64 = 1i64;
let Test.9 : I64 = CallByName Num.19 Test.1 Test.21; let Test.9 : I64 = CallByName Num.19 Test.1 Test.21;
@ -33,4 +33,4 @@ procedure Test.0 (#Derived_gen.2):
ret Test.8; ret Test.8;
in in
jump Test.7 #Derived_gen.2; jump Test.7 #Derived_gen.0;

View file

@ -162,7 +162,7 @@ procedure List.1 (List.118):
let List.677 : Int1 = CallByName Bool.11 List.678 List.679; let List.677 : Int1 = CallByName Bool.11 List.678 List.679;
ret List.677; ret List.677;
procedure List.100 (#Derived_gen.19, #Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23): procedure List.100 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27):
joinpoint List.668 List.174 List.175 List.176 List.177 List.178: joinpoint List.668 List.174 List.175 List.176 List.177 List.178:
let List.670 : Int1 = CallByName Num.22 List.177 List.178; let List.670 : Int1 = CallByName Num.22 List.177 List.178;
if List.670 then if List.670 then
@ -177,8 +177,8 @@ procedure List.100 (#Derived_gen.19, #Derived_gen.20, #Derived_gen.21, #Derived_
dec List.174; dec List.174;
ret List.175; ret List.175;
in in
inc #Derived_gen.19; inc #Derived_gen.23;
jump List.668 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23; jump List.668 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
procedure List.18 (List.171, List.172, List.173): procedure List.18 (List.171, List.172, List.173):
let List.666 : U64 = 0i64; let List.666 : U64 = 0i64;
@ -290,7 +290,7 @@ procedure Str.45 (Str.91, Str.92, Str.93):
dec Str.341; dec Str.341;
ret Str.91; ret Str.91;
procedure Str.56 (#Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27): procedure Str.56 (#Derived_gen.19, #Derived_gen.20, #Derived_gen.21, #Derived_gen.22):
joinpoint Str.250 Str.96 Str.97 Str.98 Str.99: joinpoint Str.250 Str.96 Str.97 Str.98 Str.99:
inc Str.97; inc Str.97;
let Str.251 : [C {}, C {Str, Str}] = CallByName Str.38 Str.97 Str.98; let Str.251 : [C {}, C {Str, Str}] = CallByName Str.38 Str.97 Str.98;
@ -314,9 +314,9 @@ procedure Str.56 (#Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_ge
dec Str.97; dec Str.97;
ret Str.255; ret Str.255;
in in
inc #Derived_gen.27; inc #Derived_gen.21;
inc #Derived_gen.26; inc #Derived_gen.22;
jump Str.250 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27; jump Str.250 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22;
procedure Str.57 (Str.121, Str.122): procedure Str.57 (Str.121, Str.122):
let Str.123 : U64 = CallByName Str.36 Str.121; let Str.123 : U64 = CallByName Str.36 Str.121;

View file

@ -91,8 +91,8 @@ procedure Test.19 ():
let Test.120 : [C Str, C {List U8, I64}] = TagId(0) Test.122; let Test.120 : [C Str, C {List U8, I64}] = TagId(0) Test.122;
ret Test.120; ret Test.120;
else else
dec Test.93;
dec Test.92; dec Test.92;
dec Test.93;
let Test.128 : Str = "not a number"; let Test.128 : Str = "not a number";
let Test.126 : [C Str, C {List U8, I64}] = TagId(0) Test.128; let Test.126 : [C Str, C {List U8, I64}] = TagId(0) Test.128;
ret Test.126; ret Test.126;

View file

@ -8,19 +8,19 @@ procedure Test.2 (Test.4, Test.5):
else else
let Test.7 : I64 = UnionAtIndex (Id 0) (Index 0) Test.4; let Test.7 : I64 = UnionAtIndex (Id 0) (Index 0) Test.4;
let Test.8 : [<rnu><null>, C I64 *self] = UnionAtIndex (Id 0) (Index 1) Test.4; let Test.8 : [<rnu><null>, C I64 *self] = UnionAtIndex (Id 0) (Index 1) Test.4;
joinpoint #Derived_gen.2: joinpoint #Derived_gen.4:
dec Test.8; dec Test.8;
let Test.22 : Str = "a Lambda Set is empty. Most likely there is a type error in your program."; let Test.22 : Str = "a Lambda Set is empty. Most likely there is a type error in your program.";
Crash Test.22 Crash Test.22
in in
let #Derived_gen.3 : Int1 = lowlevel RefCountIsUnique Test.4; let #Derived_gen.5 : Int1 = lowlevel RefCountIsUnique Test.4;
if #Derived_gen.3 then if #Derived_gen.5 then
free Test.4; free Test.4;
jump #Derived_gen.2; jump #Derived_gen.4;
else else
inc Test.8; inc Test.8;
decref Test.4; decref Test.4;
jump #Derived_gen.2; jump #Derived_gen.4;
procedure Test.0 (): procedure Test.0 ():
let Test.27 : I64 = 1i64; let Test.27 : I64 = 1i64;
@ -28,15 +28,15 @@ procedure Test.0 ():
let Test.30 : [<rnu><null>, C I64 *self] = TagId(1) ; let Test.30 : [<rnu><null>, C I64 *self] = TagId(1) ;
let Test.28 : [<rnu><null>, C I64 *self] = TagId(0) Test.29 Test.30; let Test.28 : [<rnu><null>, C I64 *self] = TagId(0) Test.29 Test.30;
let Test.14 : [<rnu><null>, C I64 *self] = TagId(0) Test.27 Test.28; let Test.14 : [<rnu><null>, C I64 *self] = TagId(0) Test.27 Test.28;
joinpoint #Derived_gen.4: joinpoint #Derived_gen.2:
let Test.26 : Str = "ValueNotExposed { module_name: ModuleName(IdentStr { string: \"Num\" }), ident: Ident(IdentStr { string: \"isEven\" }), region: @416-426, exposed_values: ['max_f32', 'min_f32', 'abs', 'neg', 'add', 'sub', 'mul', 'is_lt', 'is_lte', 'is_gt', 'is_gte', 'to_frac', 'sin', 'cos', 'tan', 'is_zero', 'is_even', 'is_odd', 'is_positive', 'is_negative', 'rem', 'rem_checked', 'div', 'div_checked', 'div_trunc', 'div_trunc_checked', 'sqrt', 'sqrt_checked', 'log', 'log_checked', 'round', 'compare', 'pow', 'ceiling', 'pow_int', 'floor', 'add_wrap', 'add_checked', 'add_saturated', 'atan', 'acos', 'asin', 'bitwise_and', 'bitwise_xor', 'bitwise_or', 'shift_left_by', 'shift_right_by', 'shift_right_zf_by', 'sub_wrap', 'sub_checked', 'sub_saturated', 'mul_wrap', 'mul_checked', 'mul_saturated', 'e', 'pi', 'tau', 'is_multiple_of', 'count_one_bits', 'abs_diff', 'is_nan', 'is_infinite', 'is_finite', 'count_leading_zero_bits', 'count_trailing_zero_bits', 'to_str', 'min_i8', 'max_i8', 'min_u8', 'max_u8', 'min_i16', 'max_i16', 'min_u16', 'max_u16', 'min_i32', 'max_i32', 'min_u32', 'max_u32', 'min_i64', 'max_i64', 'min_u64', 'max_u64', 'min_i128', 'max_i128', 'min_u128', 'max_u128', 'to_i8', 'to_i8_checked', 'to_i16', 'to_i16_checked', 'to_i32', 'to_i32_checked', 'to_i64', 'to_i64_checked', 'to_i128', 'to_i128_checked', 'to_u8', 'to_u8_checked', 'to_u16', 'to_u16_checked', 'to_u32', 'to_u32_checked', 'to_u64', 'to_u64_checked', 'to_u128', 'to_u128_checked', 'div_ceil', 'div_ceil_checked', 'to_f32', 'to_f32_checked', 'to_f64', 'to_f64_checked', 'max_f64', 'min_f64', 'add_checked_lowlevel', 'sub_checked_lowlevel', 'mul_checked_lowlevel', 'min', 'max', 'bitwise_not', 'int_cast', 'is_approx_eq', 'bytes_to_u16_owlevel', 'bytes_to_u32_lowlevel', 'bytes_to_u64_lowlevel', 'bytes_to_u128_lowlevel', 'div_trunc_unchecked', 'rem_unchecked', 'without_decimal_point', 'with_decimal_point', 'f32_to_parts', 'f64_to_parts', 'f32_from_parts', 'f64_from_parts', 'nan_f32', 'nan_f64', 'infinity_f32', 'infinity_f64', 'from_bool'] }"; let Test.26 : Str = "ValueNotExposed { module_name: ModuleName(IdentStr { string: \"Num\" }), ident: Ident(IdentStr { string: \"isEven\" }), region: @416-426, exposed_values: ['max_f32', 'min_f32', 'abs', 'neg', 'add', 'sub', 'mul', 'is_lt', 'is_lte', 'is_gt', 'is_gte', 'to_frac', 'sin', 'cos', 'tan', 'is_zero', 'is_even', 'is_odd', 'is_positive', 'is_negative', 'rem', 'rem_checked', 'div', 'div_checked', 'div_trunc', 'div_trunc_checked', 'sqrt', 'sqrt_checked', 'log', 'log_checked', 'round', 'compare', 'pow', 'ceiling', 'pow_int', 'floor', 'add_wrap', 'add_checked', 'add_saturated', 'atan', 'acos', 'asin', 'bitwise_and', 'bitwise_xor', 'bitwise_or', 'shift_left_by', 'shift_right_by', 'shift_right_zf_by', 'sub_wrap', 'sub_checked', 'sub_saturated', 'mul_wrap', 'mul_checked', 'mul_saturated', 'e', 'pi', 'tau', 'is_multiple_of', 'count_one_bits', 'abs_diff', 'is_nan', 'is_infinite', 'is_finite', 'count_leading_zero_bits', 'count_trailing_zero_bits', 'to_str', 'min_i8', 'max_i8', 'min_u8', 'max_u8', 'min_i16', 'max_i16', 'min_u16', 'max_u16', 'min_i32', 'max_i32', 'min_u32', 'max_u32', 'min_i64', 'max_i64', 'min_u64', 'max_u64', 'min_i128', 'max_i128', 'min_u128', 'max_u128', 'to_i8', 'to_i8_checked', 'to_i16', 'to_i16_checked', 'to_i32', 'to_i32_checked', 'to_i64', 'to_i64_checked', 'to_i128', 'to_i128_checked', 'to_u8', 'to_u8_checked', 'to_u16', 'to_u16_checked', 'to_u32', 'to_u32_checked', 'to_u64', 'to_u64_checked', 'to_u128', 'to_u128_checked', 'div_ceil', 'div_ceil_checked', 'to_f32', 'to_f32_checked', 'to_f64', 'to_f64_checked', 'max_f64', 'min_f64', 'add_checked_lowlevel', 'sub_checked_lowlevel', 'mul_checked_lowlevel', 'min', 'max', 'bitwise_not', 'int_cast', 'is_approx_eq', 'bytes_to_u16_owlevel', 'bytes_to_u32_lowlevel', 'bytes_to_u64_lowlevel', 'bytes_to_u128_lowlevel', 'div_trunc_unchecked', 'rem_unchecked', 'without_decimal_point', 'with_decimal_point', 'f32_to_parts', 'f64_to_parts', 'f32_from_parts', 'f64_from_parts', 'nan_f32', 'nan_f64', 'infinity_f32', 'infinity_f64', 'from_bool'] }";
Crash Test.26 Crash Test.26
in in
let #Derived_gen.5 : Int1 = lowlevel RefCountIsUnique Test.14; let #Derived_gen.3 : Int1 = lowlevel RefCountIsUnique Test.14;
if #Derived_gen.5 then if #Derived_gen.3 then
dec Test.28; dec Test.28;
free Test.14; free Test.14;
jump #Derived_gen.4; jump #Derived_gen.2;
else else
decref Test.14; decref Test.14;
jump #Derived_gen.4; jump #Derived_gen.2;

View file

@ -108,8 +108,8 @@ procedure Test.0 ():
else else
let Test.22 : Str = "B"; let Test.22 : Str = "B";
let Test.23 : Int1 = lowlevel Eq Test.22 Test.12; let Test.23 : Int1 = lowlevel Eq Test.22 Test.12;
dec Test.12;
dec Test.22; dec Test.22;
dec Test.12;
if Test.23 then if Test.23 then
let Test.17 : [C U8, C U8, C ] = TagId(1) Test.2; let Test.17 : [C U8, C U8, C ] = TagId(1) Test.2;
jump Test.13 Test.17; jump Test.13 Test.17;

View file

@ -20,9 +20,9 @@ procedure Test.0 ():
if Test.13 then if Test.13 then
let Test.6 : {I64, Str} = CallByName Test.1; let Test.6 : {I64, Str} = CallByName Test.1;
let Test.5 : Int1 = CallByName Bool.11 Test.6 Test.4; let Test.5 : Int1 = CallByName Bool.11 Test.6 Test.4;
dec Test.6;
let #Derived_gen.0 : Str = StructAtIndex 1 Test.4; let #Derived_gen.0 : Str = StructAtIndex 1 Test.4;
dec #Derived_gen.0; dec #Derived_gen.0;
dec Test.6;
ret Test.5; ret Test.5;
else else
let #Derived_gen.1 : Str = StructAtIndex 1 Test.4; let #Derived_gen.1 : Str = StructAtIndex 1 Test.4;

View file

@ -10,7 +10,7 @@ procedure Num.21 (#Attr.2, #Attr.3):
let Num.283 : U8 = lowlevel NumMul #Attr.2 #Attr.3; let Num.283 : U8 = lowlevel NumMul #Attr.2 #Attr.3;
ret Num.283; ret Num.283;
procedure Test.1 (#Derived_gen.2, #Derived_gen.3): procedure Test.1 (#Derived_gen.0, #Derived_gen.1):
joinpoint Test.11 Test.2 Test.3: joinpoint Test.11 Test.2 Test.3:
let Test.26 : U8 = 0i64; let Test.26 : U8 = 0i64;
let Test.22 : Int1 = CallByName Bool.11 Test.2 Test.26; let Test.22 : Int1 = CallByName Bool.11 Test.2 Test.26;
@ -33,9 +33,9 @@ procedure Test.1 (#Derived_gen.2, #Derived_gen.3):
let Test.14 : [<rnu><null>, C *self U8] = TagId(0) Test.3 Test.2; let Test.14 : [<rnu><null>, C *self U8] = TagId(0) Test.3 Test.2;
jump Test.11 Test.13 Test.14; jump Test.11 Test.13 Test.14;
in in
jump Test.11 #Derived_gen.2 #Derived_gen.3; jump Test.11 #Derived_gen.0 #Derived_gen.1;
procedure Test.4 (#Derived_gen.0, #Derived_gen.1): procedure Test.4 (#Derived_gen.2, #Derived_gen.3):
joinpoint Test.15 Test.5 #Attr.12: joinpoint Test.15 Test.5 #Attr.12:
let Test.20 : U8 = UnionAtIndex (Id 0) (Index 1) #Attr.12; let Test.20 : U8 = UnionAtIndex (Id 0) (Index 1) #Attr.12;
let Test.19 : [<rnu><null>, C *self U8] = UnionAtIndex (Id 0) (Index 0) #Attr.12; let Test.19 : [<rnu><null>, C *self U8] = UnionAtIndex (Id 0) (Index 0) #Attr.12;
@ -61,7 +61,7 @@ procedure Test.4 (#Derived_gen.0, #Derived_gen.1):
decref #Attr.12; decref #Attr.12;
jump #Derived_gen.4; jump #Derived_gen.4;
in in
jump Test.15 #Derived_gen.0 #Derived_gen.1; jump Test.15 #Derived_gen.2 #Derived_gen.3;
procedure Test.6 (Test.7): procedure Test.6 (Test.7):
ret Test.7; ret Test.7;

View file

@ -8,8 +8,8 @@ procedure Str.3 (#Attr.2, #Attr.3):
procedure Test.11 (Test.29, #Attr.12): procedure Test.11 (Test.29, #Attr.12):
let Test.32 : {} = UnionAtIndex (Id 0) (Index 0) #Attr.12; let Test.32 : {} = UnionAtIndex (Id 0) (Index 0) #Attr.12;
let #Derived_gen.11 : Int1 = lowlevel RefCountIsUnique #Attr.12; let #Derived_gen.9 : Int1 = lowlevel RefCountIsUnique #Attr.12;
if #Derived_gen.11 then if #Derived_gen.9 then
free #Attr.12; free #Attr.12;
ret Test.32; ret Test.32;
else else
@ -19,11 +19,11 @@ procedure Test.11 (Test.29, #Attr.12):
procedure Test.11 (Test.29, Test.10): procedure Test.11 (Test.29, Test.10):
ret Test.10; ret Test.10;
procedure Test.14 (#Derived_gen.0, #Derived_gen.1): procedure Test.14 (#Derived_gen.7, #Derived_gen.8):
joinpoint Test.38 Test.37 #Attr.12: joinpoint Test.38 Test.37 #Attr.12:
let Test.46 : {} = UnionAtIndex (Id 1) (Index 1) #Attr.12; let Test.46 : {} = UnionAtIndex (Id 1) (Index 1) #Attr.12;
let Test.45 : I64 = UnionAtIndex (Id 1) (Index 0) #Attr.12; let Test.45 : I64 = UnionAtIndex (Id 1) (Index 0) #Attr.12;
joinpoint #Derived_gen.9: joinpoint #Derived_gen.10:
let Test.44 : {} = Struct {}; let Test.44 : {} = Struct {};
let Test.43 : {} = CallByName Test.11 Test.44 Test.46; let Test.43 : {} = CallByName Test.11 Test.44 Test.46;
let Test.39 : [<r>C {}, C I64 {}] = CallByName Test.9 Test.43 Test.45; let Test.39 : [<r>C {}, C I64 {}] = CallByName Test.9 Test.43 Test.45;
@ -38,15 +38,15 @@ procedure Test.14 (#Derived_gen.0, #Derived_gen.1):
jump Test.38 Test.41 Test.39; jump Test.38 Test.41 Test.39;
in in
let #Derived_gen.10 : Int1 = lowlevel RefCountIsUnique #Attr.12; let #Derived_gen.11 : Int1 = lowlevel RefCountIsUnique #Attr.12;
if #Derived_gen.10 then if #Derived_gen.11 then
free #Attr.12; free #Attr.12;
jump #Derived_gen.9; jump #Derived_gen.10;
else else
decref #Attr.12; decref #Attr.12;
jump #Derived_gen.9; jump #Derived_gen.10;
in in
jump Test.38 #Derived_gen.0 #Derived_gen.1; jump Test.38 #Derived_gen.7 #Derived_gen.8;
procedure Test.2 (): procedure Test.2 ():
let Test.6 : Str = "Hello"; let Test.6 : Str = "Hello";

View file

@ -23,7 +23,7 @@ procedure Test.2 (Test.9, Test.10):
let Test.29 : U64 = CallByName Test.3 Test.9; let Test.29 : U64 = CallByName Test.3 Test.9;
ret Test.29; ret Test.29;
else else
joinpoint #Derived_gen.1: joinpoint #Derived_gen.4:
let Test.13 : Str = UnionAtIndex (Id 0) (Index 0) Test.10; let Test.13 : Str = UnionAtIndex (Id 0) (Index 0) Test.10;
let Test.14 : [<rnu><null>, C Str *self] = UnionAtIndex (Id 0) (Index 1) Test.10; let Test.14 : [<rnu><null>, C Str *self] = UnionAtIndex (Id 0) (Index 1) Test.10;
let Test.33 : U64 = CallByName Test.3 Test.12; let Test.33 : U64 = CallByName Test.3 Test.12;
@ -36,15 +36,15 @@ procedure Test.2 (Test.9, Test.10):
else else
ret Test.16; ret Test.16;
in in
let #Derived_gen.2 : Int1 = lowlevel RefCountIsUnique Test.9; let #Derived_gen.5 : Int1 = lowlevel RefCountIsUnique Test.9;
if #Derived_gen.2 then if #Derived_gen.5 then
dec Test.11; dec Test.11;
free Test.9; free Test.9;
jump #Derived_gen.1; jump #Derived_gen.4;
else else
inc Test.12; inc Test.12;
decref Test.9; decref Test.9;
jump #Derived_gen.1; jump #Derived_gen.4;
procedure Test.3 (Test.17): procedure Test.3 (Test.17):
let Test.26 : U8 = 1i64; let Test.26 : U8 = 1i64;
@ -55,22 +55,22 @@ procedure Test.3 (Test.17):
ret Test.22; ret Test.22;
else else
let Test.18 : [<rnu><null>, C Str *self] = UnionAtIndex (Id 0) (Index 1) Test.17; let Test.18 : [<rnu><null>, C Str *self] = UnionAtIndex (Id 0) (Index 1) Test.17;
joinpoint #Derived_gen.3: joinpoint #Derived_gen.1:
let Test.24 : U64 = 1i64; let Test.24 : U64 = 1i64;
let Test.25 : U64 = CallByName Test.3 Test.18; let Test.25 : U64 = CallByName Test.3 Test.18;
let Test.23 : U64 = CallByName Num.19 Test.24 Test.25; let Test.23 : U64 = CallByName Num.19 Test.24 Test.25;
ret Test.23; ret Test.23;
in in
let #Derived_gen.5 : Int1 = lowlevel RefCountIsUnique Test.17; let #Derived_gen.3 : Int1 = lowlevel RefCountIsUnique Test.17;
if #Derived_gen.5 then if #Derived_gen.3 then
let #Derived_gen.4 : Str = UnionAtIndex (Id 0) (Index 0) Test.17; let #Derived_gen.2 : Str = UnionAtIndex (Id 0) (Index 0) Test.17;
dec #Derived_gen.4; dec #Derived_gen.2;
free Test.17; free Test.17;
jump #Derived_gen.3; jump #Derived_gen.1;
else else
inc Test.18; inc Test.18;
decref Test.17; decref Test.17;
jump #Derived_gen.3; jump #Derived_gen.1;
procedure Test.0 (): procedure Test.0 ():
let Test.5 : [<rnu><null>, C Str *self] = TagId(1) ; let Test.5 : [<rnu><null>, C Str *self] = TagId(1) ;

View file

@ -29,7 +29,7 @@ procedure Encode.26 (Encode.107, Encode.108):
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108; let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
ret Encode.110; ret Encode.110;
procedure List.100 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen.3, #Derived_gen.4): procedure List.100 (#Derived_gen.6, #Derived_gen.7, #Derived_gen.8, #Derived_gen.9, #Derived_gen.10):
joinpoint List.668 List.174 List.175 List.176 List.177 List.178: joinpoint List.668 List.174 List.175 List.176 List.177 List.178:
let List.670 : Int1 = CallByName Num.22 List.177 List.178; let List.670 : Int1 = CallByName Num.22 List.177 List.178;
if List.670 then if List.670 then
@ -43,8 +43,8 @@ procedure List.100 (#Derived_gen.0, #Derived_gen.1, #Derived_gen.2, #Derived_gen
dec List.174; dec List.174;
ret List.175; ret List.175;
in in
inc #Derived_gen.0; inc #Derived_gen.6;
jump List.668 #Derived_gen.0 #Derived_gen.1 #Derived_gen.2 #Derived_gen.3 #Derived_gen.4; jump List.668 #Derived_gen.6 #Derived_gen.7 #Derived_gen.8 #Derived_gen.9 #Derived_gen.10;
procedure List.13 (#Attr.2, #Attr.3): procedure List.13 (#Attr.2, #Attr.3):
let List.691 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3; let List.691 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;

View file

@ -87,7 +87,7 @@ procedure Encode.26 (Encode.107, Encode.108):
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108; let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
ret Encode.110; ret Encode.110;
procedure List.100 (#Derived_gen.44, #Derived_gen.45, #Derived_gen.46, #Derived_gen.47, #Derived_gen.48): procedure List.100 (#Derived_gen.29, #Derived_gen.30, #Derived_gen.31, #Derived_gen.32, #Derived_gen.33):
joinpoint List.695 List.174 List.175 List.176 List.177 List.178: joinpoint List.695 List.174 List.175 List.176 List.177 List.178:
let List.697 : Int1 = CallByName Num.22 List.177 List.178; let List.697 : Int1 = CallByName Num.22 List.177 List.178;
if List.697 then if List.697 then
@ -101,8 +101,8 @@ procedure List.100 (#Derived_gen.44, #Derived_gen.45, #Derived_gen.46, #Derived_
dec List.174; dec List.174;
ret List.175; ret List.175;
in in
inc #Derived_gen.44; inc #Derived_gen.29;
jump List.695 #Derived_gen.44 #Derived_gen.45 #Derived_gen.46 #Derived_gen.47 #Derived_gen.48; jump List.695 #Derived_gen.29 #Derived_gen.30 #Derived_gen.31 #Derived_gen.32 #Derived_gen.33;
procedure List.100 (#Derived_gen.49, #Derived_gen.50, #Derived_gen.51, #Derived_gen.52, #Derived_gen.53): procedure List.100 (#Derived_gen.49, #Derived_gen.50, #Derived_gen.51, #Derived_gen.52, #Derived_gen.53):
joinpoint List.668 List.174 List.175 List.176 List.177 List.178: joinpoint List.668 List.174 List.175 List.176 List.177 List.178: