mirror of
https://github.com/roc-lang/roc.git
synced 2025-08-04 12:18:19 +00:00
added map_try! + walk_try! test (#7770)
* map_try! + walk_try! test * update mono tests
This commit is contained in:
parent
e89bb6eb50
commit
882577bebc
51 changed files with 1510 additions and 1352 deletions
|
@ -9,6 +9,8 @@ module [
|
|||
prepend,
|
||||
prepend_if_ok,
|
||||
map,
|
||||
map_try,
|
||||
map_try!,
|
||||
len,
|
||||
with_capacity,
|
||||
walk_backwards,
|
||||
|
@ -22,12 +24,19 @@ module [
|
|||
contains,
|
||||
sum,
|
||||
walk,
|
||||
walk!,
|
||||
walk_try,
|
||||
walk_try!,
|
||||
last,
|
||||
keep_oks,
|
||||
keep_errs,
|
||||
for_each!,
|
||||
for_each_try!,
|
||||
map_with_index,
|
||||
map2,
|
||||
map3,
|
||||
map4,
|
||||
join_map,
|
||||
product,
|
||||
walk_with_index,
|
||||
walk_until,
|
||||
|
@ -40,10 +49,6 @@ module [
|
|||
drop_at,
|
||||
min,
|
||||
max,
|
||||
map4,
|
||||
map_try,
|
||||
walk_try,
|
||||
join_map,
|
||||
any,
|
||||
take_first,
|
||||
take_last,
|
||||
|
@ -72,10 +77,6 @@ module [
|
|||
count_if,
|
||||
chunks_of,
|
||||
concat_utf8,
|
||||
for_each!,
|
||||
for_each_try!,
|
||||
walk!,
|
||||
walk_try!,
|
||||
]
|
||||
|
||||
import Bool exposing [Bool, Eq]
|
||||
|
@ -131,7 +132,7 @@ import Num exposing [U64, Num, U8]
|
|||
##
|
||||
## Let's turn this example into a function.
|
||||
## ```roc
|
||||
## get_ratings = \first ->
|
||||
## get_ratings = |first|
|
||||
## ratings = [first, 4, 3]
|
||||
##
|
||||
## { foo: ratings, bar: ratings }
|
||||
|
@ -153,7 +154,7 @@ import Num exposing [U64, Num, U8]
|
|||
##
|
||||
## Let's change the last line to be `get_ratings(5).bar` instead of `get_ratings(5)`:
|
||||
## ```roc
|
||||
## get_ratings = \first ->
|
||||
## get_ratings = |first|
|
||||
## ratings = [first, 4, 3]
|
||||
##
|
||||
## { foo: ratings, bar: ratings }
|
||||
|
@ -273,7 +274,7 @@ set = |list, index, value|
|
|||
|
||||
## Updates the element at the given index with the given function.
|
||||
## ```roc
|
||||
## List.update([1, 2, 3], 1, (\x -> x + 1))
|
||||
## List.update([1, 2, 3], 1, (|x| x + 1))
|
||||
## ```
|
||||
## If the given index is outside the bounds of the list, returns the original
|
||||
## list unmodified.
|
||||
|
@ -644,7 +645,7 @@ all = |list, predicate|
|
|||
## Run the given function on each element of a list, and return all the
|
||||
## elements for which the function returned `Bool.true`.
|
||||
## ```roc
|
||||
## List.keep_if([1, 2, 3, 4], (\num -> num > 2))
|
||||
## List.keep_if([1, 2, 3, 4], (|num| num > 2))
|
||||
## ```
|
||||
## ## Performance Details
|
||||
##
|
||||
|
@ -681,7 +682,7 @@ keep_if_help = |list, predicate, kept, index, length|
|
|||
## Run the given function on each element of a list, and return all the
|
||||
## elements for which the function returned `Bool.false`.
|
||||
## ```roc
|
||||
## List.drop_if([1, 2, 3, 4], (\num -> num > 2))
|
||||
## List.drop_if([1, 2, 3, 4], (|num| num > 2))
|
||||
## ```
|
||||
## ## Performance Details
|
||||
##
|
||||
|
@ -695,7 +696,7 @@ drop_if = |list, predicate|
|
|||
## number of elements for which the function returned `Bool.true`.
|
||||
## ```roc
|
||||
## expect List.count_if([1, -2, -3], Num.is_negative) == 2
|
||||
## expect List.count_if([1, 2, 3], (\num -> num > 1)) == 2
|
||||
## expect List.count_if([1, 2, 3], (|num| num > 1)) == 2
|
||||
## ```
|
||||
count_if : List a, (a -> Bool) -> U64
|
||||
count_if = |list, predicate|
|
||||
|
@ -714,13 +715,13 @@ count_if = |list, predicate|
|
|||
##
|
||||
## expect List.keep_oks([["a", "b"], [], ["c", "d", "e"], [] ], List.first) == ["a", "c"]
|
||||
##
|
||||
## fn = \str -> if Str.is_empty(str) then Err(StrWasEmpty) else Ok(str)
|
||||
## fn = |str| if Str.is_empty(str) then Err(StrWasEmpty) else Ok(str)
|
||||
## expect List.keep_oks(["", "a", "bc", "", "d", "ef", ""], fn) == ["a", "bc", "d", "ef"]
|
||||
## ```
|
||||
keep_oks : List before, (before -> Result after *) -> List after
|
||||
keep_oks = |list, to_result|
|
||||
keep_oks = |list, to_result_fun|
|
||||
walker = |accum, element|
|
||||
when to_result(element) is
|
||||
when to_result_fun(element) is
|
||||
Ok(keep) -> List.append(accum, keep)
|
||||
Err(_drop) -> accum
|
||||
|
||||
|
@ -731,14 +732,14 @@ keep_oks = |list, to_result|
|
|||
## ```roc
|
||||
## List.keep_errs([["a", "b"], [], [], ["c", "d", "e"]], List.last)
|
||||
##
|
||||
## fn = \str -> if Str.is_empty(str) then Err(StrWasEmpty) else Okd(Str.len(str))
|
||||
## fn = |str| if Str.is_empty(str) then Err(StrWasEmpty) else Okd(Str.len(str))
|
||||
##
|
||||
## List.keep_errs(["", "a", "bc", "", "d", "ef", ""], fn)
|
||||
## ```
|
||||
keep_errs : List before, (before -> Result * after) -> List after
|
||||
keep_errs = |list, to_result|
|
||||
keep_errs = |list, to_result_fun|
|
||||
walker = |accum, element|
|
||||
when to_result(element) is
|
||||
when to_result_fun(element) is
|
||||
Ok(_drop) -> accum
|
||||
Err(keep) -> List.append(accum, keep)
|
||||
|
||||
|
@ -747,7 +748,7 @@ keep_errs = |list, to_result|
|
|||
## Convert each element in the list to something new, by calling a conversion
|
||||
## function on each of them. Then return a new list of the converted values.
|
||||
## ```roc
|
||||
## expect List.map([1, 2, 3], (\num -> num + 1)) == [2, 3, 4]
|
||||
## expect List.map([1, 2, 3], (|num| num + 1)) == [2, 3, 4]
|
||||
##
|
||||
## expect List.map(["", "a", "bc"], Str.is_empty) == [Bool.true, Bool.false, Bool.false]
|
||||
## ```
|
||||
|
@ -829,7 +830,7 @@ map4_help = |list_a, list_b, list_c, list_d, out, mapper, index, length|
|
|||
## This works like [List.map], except it also passes the index
|
||||
## of the element to the conversion function.
|
||||
## ```roc
|
||||
## expect List.map_with_index([10, 20, 30], (\num, index -> num + index)) == [10, 21, 32]
|
||||
## expect List.map_with_index([10, 20, 30], (|num, index| num + index)) == [10, 21, 32]
|
||||
## ```
|
||||
map_with_index : List a, (a, U64 -> b) -> List b
|
||||
map_with_index = |src, func|
|
||||
|
@ -1379,13 +1380,32 @@ chunks_of_help = |list_rest, chunk_size, chunks|
|
|||
## If that function ever returns `Err`, [map_try] immediately returns that `Err`.
|
||||
## If it returns `Ok` for every element, [map_try] returns `Ok` with the transformed list.
|
||||
map_try : List elem, (elem -> Result ok err) -> Result (List ok) err
|
||||
map_try = |list, to_result|
|
||||
map_try = |list, to_result_fun|
|
||||
walk_try(
|
||||
list,
|
||||
[],
|
||||
|state, elem|
|
||||
Result.map_ok(
|
||||
to_result(elem),
|
||||
to_result_fun(elem),
|
||||
|ok|
|
||||
List.append(state, ok),
|
||||
),
|
||||
)
|
||||
|
||||
## Like [List.map_try], but with an effectful function.
|
||||
## ```
|
||||
## file_list = ["a.txt", "b.txt", "c.txt"]
|
||||
## file_contents =
|
||||
## List.map_try!(file_list, |file| File.read_utf8!(file))
|
||||
## ```
|
||||
map_try! : List elem, (elem => Result ok err) => Result (List ok) err
|
||||
map_try! = |list, to_result_fun!|
|
||||
walk_try!(
|
||||
list,
|
||||
[],
|
||||
|state, elem|
|
||||
Result.map_ok(
|
||||
to_result_fun!(elem),
|
||||
|ok|
|
||||
List.append(state, ok),
|
||||
),
|
||||
|
@ -1460,7 +1480,7 @@ expect (List.concat_utf8([1, 2, 3, 4], "🐦")) == [1, 2, 3, 4, 240, 159, 144, 1
|
|||
## Run an effectful function for each element on the list.
|
||||
##
|
||||
## ```roc
|
||||
## List.for_each!(["Alice", "Bob", "Charlie"], \name ->
|
||||
## List.for_each!(["Alice", "Bob", "Charlie"], |name|
|
||||
## create_account!(name)
|
||||
## log!("Account created")
|
||||
## )
|
||||
|
@ -1482,7 +1502,7 @@ for_each! = |list, func!|
|
|||
## If the function returns `Err`, the iteration stops and the error is returned.
|
||||
##
|
||||
## ```roc
|
||||
## List.for_each_try!(files_to_delete, \path ->
|
||||
## List.for_each_try!(files_to_delete, |path|
|
||||
## File.delete!(path)?
|
||||
##
|
||||
## Stdout.line!("${path} deleted")
|
||||
|
@ -1505,7 +1525,7 @@ for_each_try! = |list, func!|
|
|||
## Build a value from the contents of a list, using an effectful function.
|
||||
##
|
||||
## ```roc
|
||||
## now_multiples = List.walk!([1, 2, 3], [], \nums, i ->
|
||||
## now_multiples = List.walk!([1, 2, 3], [], |nums, i|
|
||||
## now = Utc.now!({}) |> Utc.to_millis_since_epoch
|
||||
## List.append(nums, now * i)
|
||||
## )
|
||||
|
@ -1531,7 +1551,7 @@ walk! = |list, state, func!|
|
|||
## List.walk_try!(
|
||||
## ["First", "Middle", "Last"],
|
||||
## [],
|
||||
## \accumulator, which ->
|
||||
## |accumulator, which|
|
||||
## Stdout.write!("${which} name: ")?
|
||||
## name = Stdin.line!({})?
|
||||
## Ok(List.append(accumulator, name)),
|
||||
|
|
|
@ -1531,6 +1531,7 @@ define_builtins! {
|
|||
93 LIST_SPLIT_ON: "split_on"
|
||||
94 LIST_SPLIT_ON_LIST: "split_on_list"
|
||||
95 LIST_WALK_TRY_FX: "walk_try!"
|
||||
96 LIST_MAP_TRY_FX: "map_try!"
|
||||
}
|
||||
7 RESULT: "Result" => {
|
||||
0 RESULT_RESULT: "Result" exposed_type=true // the Result.Result type alias
|
||||
|
|
|
@ -2,81 +2,81 @@ procedure Bool.9 (#Attr.2, #Attr.3):
|
|||
let Bool.21 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
||||
ret Bool.21;
|
||||
|
||||
procedure List.116 (List.563, List.564, List.565):
|
||||
let List.693 : U64 = 0i64;
|
||||
let List.694 : U64 = CallByName List.6 List.563;
|
||||
let List.692 : [C U64, C U64] = CallByName List.80 List.563 List.564 List.565 List.693 List.694;
|
||||
ret List.692;
|
||||
procedure List.117 (List.571, List.572, List.573):
|
||||
let List.701 : U64 = 0i64;
|
||||
let List.702 : U64 = CallByName List.6 List.571;
|
||||
let List.700 : [C U64, C U64] = CallByName List.80 List.571 List.572 List.573 List.701 List.702;
|
||||
ret List.700;
|
||||
|
||||
procedure List.26 (List.213, List.214, List.215):
|
||||
let List.686 : [C U64, C U64] = CallByName List.116 List.213 List.214 List.215;
|
||||
let List.689 : U8 = 1i64;
|
||||
let List.690 : U8 = GetTagId List.686;
|
||||
let List.691 : Int1 = lowlevel Eq List.689 List.690;
|
||||
if List.691 then
|
||||
let List.216 : U64 = UnionAtIndex (Id 1) (Index 0) List.686;
|
||||
ret List.216;
|
||||
else
|
||||
let List.217 : U64 = UnionAtIndex (Id 0) (Index 0) List.686;
|
||||
procedure List.26 (List.214, List.215, List.216):
|
||||
let List.694 : [C U64, C U64] = CallByName List.117 List.214 List.215 List.216;
|
||||
let List.697 : U8 = 1i64;
|
||||
let List.698 : U8 = GetTagId List.694;
|
||||
let List.699 : Int1 = lowlevel Eq List.697 List.698;
|
||||
if List.699 then
|
||||
let List.217 : U64 = UnionAtIndex (Id 1) (Index 0) List.694;
|
||||
ret List.217;
|
||||
else
|
||||
let List.218 : U64 = UnionAtIndex (Id 0) (Index 0) List.694;
|
||||
ret List.218;
|
||||
|
||||
procedure List.38 (List.401, List.402):
|
||||
let List.685 : U64 = CallByName List.6 List.401;
|
||||
let List.403 : U64 = CallByName Num.77 List.685 List.402;
|
||||
let List.675 : List U8 = CallByName List.43 List.401 List.403;
|
||||
ret List.675;
|
||||
procedure List.38 (List.402, List.403):
|
||||
let List.693 : U64 = CallByName List.6 List.402;
|
||||
let List.404 : U64 = CallByName Num.77 List.693 List.403;
|
||||
let List.683 : List U8 = CallByName List.43 List.402 List.404;
|
||||
ret List.683;
|
||||
|
||||
procedure List.43 (List.399, List.400):
|
||||
let List.683 : U64 = CallByName List.6 List.399;
|
||||
let List.682 : U64 = CallByName Num.77 List.683 List.400;
|
||||
let List.677 : {U64, U64} = Struct {List.400, List.682};
|
||||
let List.676 : List U8 = CallByName List.49 List.399 List.677;
|
||||
ret List.676;
|
||||
|
||||
procedure List.49 (List.477, List.478):
|
||||
let List.679 : U64 = StructAtIndex 1 List.478;
|
||||
let List.680 : U64 = StructAtIndex 0 List.478;
|
||||
let List.678 : List U8 = CallByName List.72 List.477 List.679 List.680;
|
||||
ret List.678;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.684 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
procedure List.43 (List.400, List.401):
|
||||
let List.691 : U64 = CallByName List.6 List.400;
|
||||
let List.690 : U64 = CallByName Num.77 List.691 List.401;
|
||||
let List.685 : {U64, U64} = Struct {List.401, List.690};
|
||||
let List.684 : List U8 = CallByName List.49 List.400 List.685;
|
||||
ret List.684;
|
||||
|
||||
procedure List.49 (List.478, List.479):
|
||||
let List.687 : U64 = StructAtIndex 1 List.479;
|
||||
let List.688 : U64 = StructAtIndex 0 List.479;
|
||||
let List.686 : List U8 = CallByName List.72 List.478 List.687 List.688;
|
||||
ret List.686;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.692 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.692;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.707 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.707;
|
||||
let List.715 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.715;
|
||||
|
||||
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.681 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.681;
|
||||
let List.689 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.689;
|
||||
|
||||
procedure List.80 (Bool.22, Bool.23, Bool.24, Bool.25, Bool.26):
|
||||
joinpoint List.695 List.566 List.567 List.568 List.569 List.570:
|
||||
let List.697 : Int1 = CallByName Num.22 List.569 List.570;
|
||||
if List.697 then
|
||||
let List.706 : U8 = CallByName List.66 List.566 List.569;
|
||||
let List.698 : [C U64, C U64] = CallByName Test.4 List.567 List.706;
|
||||
let List.703 : U8 = 1i64;
|
||||
let List.704 : U8 = GetTagId List.698;
|
||||
let List.705 : Int1 = lowlevel Eq List.703 List.704;
|
||||
if List.705 then
|
||||
let List.571 : U64 = UnionAtIndex (Id 1) (Index 0) List.698;
|
||||
let List.701 : U64 = 1i64;
|
||||
let List.700 : U64 = CallByName Num.51 List.569 List.701;
|
||||
jump List.695 List.566 List.571 List.568 List.700 List.570;
|
||||
joinpoint List.703 List.574 List.575 List.576 List.577 List.578:
|
||||
let List.705 : Int1 = CallByName Num.22 List.577 List.578;
|
||||
if List.705 then
|
||||
let List.714 : U8 = CallByName List.66 List.574 List.577;
|
||||
let List.706 : [C U64, C U64] = CallByName Test.4 List.575 List.714;
|
||||
let List.711 : U8 = 1i64;
|
||||
let List.712 : U8 = GetTagId List.706;
|
||||
let List.713 : Int1 = lowlevel Eq List.711 List.712;
|
||||
if List.713 then
|
||||
let List.579 : U64 = UnionAtIndex (Id 1) (Index 0) List.706;
|
||||
let List.709 : U64 = 1i64;
|
||||
let List.708 : U64 = CallByName Num.51 List.577 List.709;
|
||||
jump List.703 List.574 List.579 List.576 List.708 List.578;
|
||||
else
|
||||
dec List.566;
|
||||
let List.572 : U64 = UnionAtIndex (Id 0) (Index 0) List.698;
|
||||
let List.702 : [C U64, C U64] = TagId(0) List.572;
|
||||
ret List.702;
|
||||
dec List.574;
|
||||
let List.580 : U64 = UnionAtIndex (Id 0) (Index 0) List.706;
|
||||
let List.710 : [C U64, C U64] = TagId(0) List.580;
|
||||
ret List.710;
|
||||
else
|
||||
dec List.566;
|
||||
let List.696 : [C U64, C U64] = TagId(1) List.567;
|
||||
ret List.696;
|
||||
dec List.574;
|
||||
let List.704 : [C U64, C U64] = TagId(1) List.575;
|
||||
ret List.704;
|
||||
in
|
||||
inc Bool.22;
|
||||
jump List.695 Bool.22 Bool.23 Bool.24 Bool.25 Bool.26;
|
||||
jump List.703 Bool.22 Bool.23 Bool.24 Bool.25 Bool.26;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.292 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,51 +1,51 @@
|
|||
procedure List.101 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.681 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.683 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.683 then
|
||||
let List.687 : [] = CallByName List.66 List.175 List.178;
|
||||
let List.180 : List {} = CallByName List.284 List.176 List.687 List.177;
|
||||
let List.686 : U64 = 1i64;
|
||||
let List.685 : U64 = CallByName Num.51 List.178 List.686;
|
||||
jump List.681 List.175 List.180 List.177 List.685 List.179;
|
||||
procedure List.102 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.689 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.691 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.691 then
|
||||
let List.695 : [] = CallByName List.66 List.176 List.179;
|
||||
let List.181 : List {} = CallByName List.285 List.177 List.695 List.178;
|
||||
let List.694 : U64 = 1i64;
|
||||
let List.693 : U64 = CallByName Num.51 List.179 List.694;
|
||||
jump List.689 List.176 List.181 List.178 List.693 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc Bool.21;
|
||||
jump List.681 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
jump List.689 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.679 : U64 = 0i64;
|
||||
let List.680 : U64 = CallByName List.6 List.172;
|
||||
let List.678 : List {} = CallByName List.101 List.172 List.173 List.174 List.679 List.680;
|
||||
ret List.678;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.687 : U64 = 0i64;
|
||||
let List.688 : U64 = CallByName List.6 List.173;
|
||||
let List.686 : List {} = CallByName List.102 List.173 List.174 List.175 List.687 List.688;
|
||||
ret List.686;
|
||||
|
||||
procedure List.284 (List.285, List.286, List.282):
|
||||
let List.692 : {} = CallByName Test.2 List.286;
|
||||
let List.691 : List {} = CallByName List.71 List.285 List.692;
|
||||
ret List.691;
|
||||
procedure List.285 (List.286, List.287, List.283):
|
||||
let List.700 : {} = CallByName Test.2 List.287;
|
||||
let List.699 : List {} = CallByName List.71 List.286 List.700;
|
||||
ret List.699;
|
||||
|
||||
procedure List.5 (List.281, List.282):
|
||||
let List.283 : U64 = CallByName List.6 List.281;
|
||||
let List.676 : List {} = CallByName List.68 List.283;
|
||||
let List.675 : List {} = CallByName List.18 List.281 List.676 List.282;
|
||||
ret List.675;
|
||||
procedure List.5 (List.282, List.283):
|
||||
let List.284 : U64 = CallByName List.6 List.282;
|
||||
let List.684 : List {} = CallByName List.68 List.284;
|
||||
let List.683 : List {} = CallByName List.18 List.282 List.684 List.283;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.689 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.689;
|
||||
let List.697 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.697;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.688 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.688;
|
||||
let List.696 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.696;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.694 : List {} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.694;
|
||||
let List.702 : List {} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.702;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.693 : List {} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
let List.701 : List {} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.701;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.290 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,51 +1,51 @@
|
|||
procedure List.101 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.681 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.683 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.683 then
|
||||
let List.687 : [] = CallByName List.66 List.175 List.178;
|
||||
let List.180 : List [] = CallByName List.284 List.176 List.687 List.177;
|
||||
let List.686 : U64 = 1i64;
|
||||
let List.685 : U64 = CallByName Num.51 List.178 List.686;
|
||||
jump List.681 List.175 List.180 List.177 List.685 List.179;
|
||||
procedure List.102 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.689 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.691 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.691 then
|
||||
let List.695 : [] = CallByName List.66 List.176 List.179;
|
||||
let List.181 : List [] = CallByName List.285 List.177 List.695 List.178;
|
||||
let List.694 : U64 = 1i64;
|
||||
let List.693 : U64 = CallByName Num.51 List.179 List.694;
|
||||
jump List.689 List.176 List.181 List.178 List.693 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc Bool.21;
|
||||
jump List.681 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
jump List.689 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.679 : U64 = 0i64;
|
||||
let List.680 : U64 = CallByName List.6 List.172;
|
||||
let List.678 : List [] = CallByName List.101 List.172 List.173 List.174 List.679 List.680;
|
||||
ret List.678;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.687 : U64 = 0i64;
|
||||
let List.688 : U64 = CallByName List.6 List.173;
|
||||
let List.686 : List [] = CallByName List.102 List.173 List.174 List.175 List.687 List.688;
|
||||
ret List.686;
|
||||
|
||||
procedure List.284 (List.285, List.286, List.282):
|
||||
let List.692 : [] = CallByName Test.2 List.286;
|
||||
let List.691 : List [] = CallByName List.71 List.285 List.692;
|
||||
ret List.691;
|
||||
procedure List.285 (List.286, List.287, List.283):
|
||||
let List.700 : [] = CallByName Test.2 List.287;
|
||||
let List.699 : List [] = CallByName List.71 List.286 List.700;
|
||||
ret List.699;
|
||||
|
||||
procedure List.5 (List.281, List.282):
|
||||
let List.283 : U64 = CallByName List.6 List.281;
|
||||
let List.676 : List [] = CallByName List.68 List.283;
|
||||
let List.675 : List [] = CallByName List.18 List.281 List.676 List.282;
|
||||
ret List.675;
|
||||
procedure List.5 (List.282, List.283):
|
||||
let List.284 : U64 = CallByName List.6 List.282;
|
||||
let List.684 : List [] = CallByName List.68 List.284;
|
||||
let List.683 : List [] = CallByName List.18 List.282 List.684 List.283;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.689 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.689;
|
||||
let List.697 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.697;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.688 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.688;
|
||||
let List.696 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.696;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.694 : List [] = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.694;
|
||||
let List.702 : List [] = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.702;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.693 : List [] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
let List.701 : List [] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.701;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.290 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,32 +1,32 @@
|
|||
procedure List.101 (Bool.34, Bool.35, Bool.36, Bool.37, Bool.38):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : [] = CallByName List.66 List.175 List.178;
|
||||
let List.180 : [<r>C {}, C *self {{}, []}] = CallByName Test.29 List.176 List.684 List.177;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (Bool.34, Bool.35, Bool.36, Bool.37, Bool.38):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : [] = CallByName List.66 List.176 List.179;
|
||||
let List.181 : [<r>C {}, C *self {{}, []}] = CallByName Test.29 List.177 List.692 List.178;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc Bool.34;
|
||||
jump List.678 Bool.34 Bool.35 Bool.36 Bool.37 Bool.38;
|
||||
jump List.686 Bool.34 Bool.35 Bool.36 Bool.37 Bool.38;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : [<r>C {}, C *self {{}, []}] = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : [<r>C {}, C *self {{}, []}] = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : [] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.290 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
procedure List.6 (#Attr.2):
|
||||
let List.675 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.675;
|
||||
let List.683 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.683;
|
||||
|
||||
procedure Test.1 (Test.5):
|
||||
let Test.2 : I64 = 41i64;
|
||||
|
|
|
@ -2,35 +2,35 @@ procedure Bool.2 ():
|
|||
let Bool.21 : Int1 = true;
|
||||
ret Bool.21;
|
||||
|
||||
procedure List.101 (Bool.29, Bool.30, Bool.31, Bool.32, Bool.33):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : Int1 = CallByName List.66 List.175 List.178;
|
||||
let List.180 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName Test.6 List.176 List.684 List.177;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (Bool.29, Bool.30, Bool.31, Bool.32, Bool.33):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : Int1 = CallByName List.66 List.176 List.179;
|
||||
let List.181 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName Test.6 List.177 List.692 List.178;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc Bool.29;
|
||||
jump List.678 Bool.29 Bool.30 Bool.31 Bool.32 Bool.33;
|
||||
jump List.686 Bool.29 Bool.30 Bool.31 Bool.32 Bool.33;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : [<rnw><null>, C *self Int1, C *self Int1] = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : Int1 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : Int1 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.290 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
4
crates/compiler/test_mono/generated/dict.txt
generated
4
crates/compiler/test_mono/generated/dict.txt
generated
|
@ -26,8 +26,8 @@ procedure Dict.52 ():
|
|||
ret Dict.744;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.675 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.675;
|
||||
let List.683 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.683;
|
||||
|
||||
procedure Num.75 (#Attr.2, #Attr.3):
|
||||
let Num.289 : U8 = lowlevel NumSubWrap #Attr.2 #Attr.3;
|
||||
|
|
|
@ -2,25 +2,25 @@ procedure Bool.1 ():
|
|||
let Bool.21 : Int1 = false;
|
||||
ret Bool.21;
|
||||
|
||||
procedure List.2 (List.120, List.121):
|
||||
let List.681 : U64 = CallByName List.6 List.120;
|
||||
let List.677 : Int1 = CallByName Num.22 List.121 List.681;
|
||||
if List.677 then
|
||||
let List.679 : {} = CallByName List.66 List.120 List.121;
|
||||
let List.678 : [C {}, C {}] = TagId(1) List.679;
|
||||
ret List.678;
|
||||
procedure List.2 (List.121, List.122):
|
||||
let List.689 : U64 = CallByName List.6 List.121;
|
||||
let List.685 : Int1 = CallByName Num.22 List.122 List.689;
|
||||
if List.685 then
|
||||
let List.687 : {} = CallByName List.66 List.121 List.122;
|
||||
let List.686 : [C {}, C {}] = TagId(1) List.687;
|
||||
ret List.686;
|
||||
else
|
||||
let List.676 : {} = Struct {};
|
||||
let List.675 : [C {}, C {}] = TagId(0) List.676;
|
||||
ret List.675;
|
||||
let List.684 : {} = Struct {};
|
||||
let List.683 : [C {}, C {}] = TagId(0) List.684;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.682 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.682;
|
||||
let List.690 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.690;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.680 : {} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.680;
|
||||
let List.688 : {} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.688;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.289 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
18
crates/compiler/test_mono/generated/encode.txt
generated
18
crates/compiler/test_mono/generated/encode.txt
generated
|
@ -1,16 +1,16 @@
|
|||
procedure List.4 (List.136, List.137):
|
||||
let List.678 : U64 = 1i64;
|
||||
let List.676 : List U8 = CallByName List.70 List.136 List.678;
|
||||
let List.675 : List U8 = CallByName List.71 List.676 List.137;
|
||||
ret List.675;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.686 : U64 = 1i64;
|
||||
let List.684 : List U8 = CallByName List.70 List.137 List.686;
|
||||
let List.683 : List U8 = CallByName List.71 List.684 List.138;
|
||||
ret List.683;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.679 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.679;
|
||||
let List.687 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.687;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.677 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.677;
|
||||
let List.685 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
|
||||
procedure Test.23 (Test.24, Test.35, Test.22):
|
||||
let Test.37 : List U8 = CallByName List.4 Test.24 Test.22;
|
||||
|
|
|
@ -67,85 +67,85 @@ procedure Encode.26 (Encode.107, Encode.108):
|
|||
let Encode.110 : List U8 = CallByName Encode.24 Encode.111 Encode.112 Encode.108;
|
||||
ret Encode.110;
|
||||
|
||||
procedure List.101 (#Derived_gen.35, #Derived_gen.36, #Derived_gen.37, #Derived_gen.38, #Derived_gen.39):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : {Str, Str} = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : List U8 = CallByName Test.71 List.176 List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.35, #Derived_gen.36, #Derived_gen.37, #Derived_gen.38, #Derived_gen.39):
|
||||
joinpoint List.712 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.714 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.714 then
|
||||
let List.718 : {Str, Str} = CallByName List.66 List.176 List.179;
|
||||
inc List.718;
|
||||
let List.181 : List U8 = CallByName Test.71 List.177 List.718;
|
||||
let List.717 : U64 = 1i64;
|
||||
let List.716 : U64 = CallByName Num.51 List.179 List.717;
|
||||
jump List.712 List.176 List.181 List.178 List.716 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.35;
|
||||
jump List.678 #Derived_gen.35 #Derived_gen.36 #Derived_gen.37 #Derived_gen.38 #Derived_gen.39;
|
||||
jump List.712 #Derived_gen.35 #Derived_gen.36 #Derived_gen.37 #Derived_gen.38 #Derived_gen.39;
|
||||
|
||||
procedure List.101 (#Derived_gen.40, #Derived_gen.41, #Derived_gen.42, #Derived_gen.43, #Derived_gen.44):
|
||||
joinpoint List.704 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.706 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.706 then
|
||||
let List.710 : {Str, Str} = CallByName List.66 List.175 List.178;
|
||||
inc List.710;
|
||||
let List.180 : List U8 = CallByName Test.71 List.176 List.710;
|
||||
let List.709 : U64 = 1i64;
|
||||
let List.708 : U64 = CallByName Num.51 List.178 List.709;
|
||||
jump List.704 List.175 List.180 List.177 List.708 List.179;
|
||||
procedure List.102 (#Derived_gen.40, #Derived_gen.41, #Derived_gen.42, #Derived_gen.43, #Derived_gen.44):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : {Str, Str} = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : List U8 = CallByName Test.71 List.177 List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.40;
|
||||
jump List.704 #Derived_gen.40 #Derived_gen.41 #Derived_gen.42 #Derived_gen.43 #Derived_gen.44;
|
||||
jump List.686 #Derived_gen.40 #Derived_gen.41 #Derived_gen.42 #Derived_gen.43 #Derived_gen.44;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : List U8 = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : List U8 = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.702 : U64 = 0i64;
|
||||
let List.703 : U64 = CallByName List.6 List.172;
|
||||
let List.701 : List U8 = CallByName List.101 List.172 List.173 List.174 List.702 List.703;
|
||||
ret List.701;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.710 : U64 = 0i64;
|
||||
let List.711 : U64 = CallByName List.6 List.173;
|
||||
let List.709 : List U8 = CallByName List.102 List.173 List.174 List.175 List.710 List.711;
|
||||
ret List.709;
|
||||
|
||||
procedure List.4 (List.136, List.137):
|
||||
let List.723 : U64 = 1i64;
|
||||
let List.722 : List U8 = CallByName List.70 List.136 List.723;
|
||||
let List.721 : List U8 = CallByName List.71 List.722 List.137;
|
||||
ret List.721;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.731 : U64 = 1i64;
|
||||
let List.730 : List U8 = CallByName List.70 List.137 List.731;
|
||||
let List.729 : List U8 = CallByName List.71 List.730 List.138;
|
||||
ret List.729;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.700 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.700;
|
||||
let List.708 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.708;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.726 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.726;
|
||||
let List.734 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.734;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.711 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.711;
|
||||
let List.719 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.719;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.717 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.717;
|
||||
let List.725 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.725;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.715 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.715;
|
||||
let List.723 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.723;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.725 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.725;
|
||||
let List.733 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.733;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.294 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -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.101 (#Derived_gen.19, #Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : {Str, Str} = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : List U8 = CallByName Test.71 List.176 List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.19, #Derived_gen.20, #Derived_gen.21, #Derived_gen.22, #Derived_gen.23):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : {Str, Str} = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : List U8 = CallByName Test.71 List.177 List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.19;
|
||||
jump List.678 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23;
|
||||
jump List.686 #Derived_gen.19 #Derived_gen.20 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : List U8 = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : List U8 = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.4 (List.136, List.137):
|
||||
let List.697 : U64 = 1i64;
|
||||
let List.696 : List U8 = CallByName List.70 List.136 List.697;
|
||||
let List.695 : List U8 = CallByName List.71 List.696 List.137;
|
||||
ret List.695;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.705 : U64 = 1i64;
|
||||
let List.704 : List U8 = CallByName List.70 List.137 List.705;
|
||||
let List.703 : List U8 = CallByName List.71 List.704 List.138;
|
||||
ret List.703;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.700 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.700;
|
||||
let List.708 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.708;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.691 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.691;
|
||||
let List.699 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.689 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.689;
|
||||
let List.697 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.697;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.699 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
let List.707 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.707;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.290 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -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.101 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : {Str, Str} = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : List U8 = CallByName Test.71 List.176 List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : {Str, Str} = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : List U8 = CallByName Test.71 List.177 List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.23;
|
||||
jump List.678 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
|
||||
jump List.686 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : List U8 = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : List U8 = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.4 (List.136, List.137):
|
||||
let List.697 : U64 = 1i64;
|
||||
let List.696 : List U8 = CallByName List.70 List.136 List.697;
|
||||
let List.695 : List U8 = CallByName List.71 List.696 List.137;
|
||||
ret List.695;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.705 : U64 = 1i64;
|
||||
let List.704 : List U8 = CallByName List.70 List.137 List.705;
|
||||
let List.703 : List U8 = CallByName List.71 List.704 List.138;
|
||||
ret List.703;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.700 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.700;
|
||||
let List.708 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.708;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.691 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.691;
|
||||
let List.699 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.689 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.689;
|
||||
let List.697 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.697;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.699 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
let List.707 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.707;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.290 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -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.136, List.137):
|
||||
let List.685 : U64 = 1i64;
|
||||
let List.684 : List U8 = CallByName List.70 List.136 List.685;
|
||||
let List.683 : List U8 = CallByName List.71 List.684 List.137;
|
||||
ret List.683;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.693 : U64 = 1i64;
|
||||
let List.692 : List U8 = CallByName List.70 List.137 List.693;
|
||||
let List.691 : List U8 = CallByName List.71 List.692 List.138;
|
||||
ret List.691;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.679 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.679;
|
||||
let List.687 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.687;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.677 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.677;
|
||||
let List.685 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.687 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.687;
|
||||
let List.695 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.695;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.290 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -40,58 +40,58 @@ 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.101 (#Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : Str = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : List U8 = CallByName Test.64 List.176 List.684 List.177;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : Str = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : List U8 = CallByName Test.64 List.177 List.692 List.178;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.22;
|
||||
jump List.678 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26;
|
||||
jump List.686 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.701 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.701;
|
||||
let List.709 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.709;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : List U8 = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : List U8 = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.4 (List.136, List.137):
|
||||
let List.697 : U64 = 1i64;
|
||||
let List.696 : List U8 = CallByName List.70 List.136 List.697;
|
||||
let List.695 : List U8 = CallByName List.71 List.696 List.137;
|
||||
ret List.695;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.705 : U64 = 1i64;
|
||||
let List.704 : List U8 = CallByName List.70 List.137 List.705;
|
||||
let List.703 : List U8 = CallByName List.71 List.704 List.138;
|
||||
ret List.703;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.700 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.700;
|
||||
let List.708 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.708;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.691 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.691;
|
||||
let List.699 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.689 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.689;
|
||||
let List.697 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.697;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.699 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
let List.707 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.707;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.290 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -43,58 +43,58 @@ 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.101 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : Str = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : List U8 = CallByName Test.64 List.176 List.684 List.177;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26, #Derived_gen.27):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : Str = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : List U8 = CallByName Test.64 List.177 List.692 List.178;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.23;
|
||||
jump List.678 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
|
||||
jump List.686 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.701 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.701;
|
||||
let List.709 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.709;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : List U8 = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : List U8 = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.4 (List.136, List.137):
|
||||
let List.697 : U64 = 1i64;
|
||||
let List.696 : List U8 = CallByName List.70 List.136 List.697;
|
||||
let List.695 : List U8 = CallByName List.71 List.696 List.137;
|
||||
ret List.695;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.705 : U64 = 1i64;
|
||||
let List.704 : List U8 = CallByName List.70 List.137 List.705;
|
||||
let List.703 : List U8 = CallByName List.71 List.704 List.138;
|
||||
ret List.703;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.700 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.700;
|
||||
let List.708 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.708;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.691 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.691;
|
||||
let List.699 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.689 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.689;
|
||||
let List.697 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.697;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.699 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
let List.707 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.707;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.290 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -898,171 +898,171 @@ procedure Inspect.63 (Inspect.295, Inspect.291):
|
|||
procedure Inspect.64 (Inspect.297):
|
||||
ret Inspect.297;
|
||||
|
||||
procedure List.101 (#Derived_gen.37, #Derived_gen.38, #Derived_gen.39, #Derived_gen.40, #Derived_gen.41):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : {Str, I64} = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName Dict.159 List.176 List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.100 (#Derived_gen.34, #Derived_gen.35, #Derived_gen.36):
|
||||
joinpoint List.734 List.153 List.154 List.155:
|
||||
let List.742 : U64 = 0i64;
|
||||
let List.736 : Int1 = CallByName Num.24 List.154 List.742;
|
||||
if List.736 then
|
||||
let List.741 : U64 = 1i64;
|
||||
let List.738 : U64 = CallByName Num.75 List.154 List.741;
|
||||
let List.739 : List {U32, U32} = CallByName List.71 List.155 List.153;
|
||||
jump List.734 List.153 List.738 List.739;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
ret List.155;
|
||||
in
|
||||
jump List.734 #Derived_gen.34 #Derived_gen.35 #Derived_gen.36;
|
||||
|
||||
procedure List.102 (#Derived_gen.37, #Derived_gen.38, #Derived_gen.39, #Derived_gen.40, #Derived_gen.41):
|
||||
joinpoint List.749 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.751 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.751 then
|
||||
let List.755 : {Str, I64} = CallByName List.66 List.176 List.179;
|
||||
inc List.755;
|
||||
let List.181 : {Str, Int1} = CallByName Dict.188 List.177 List.755 List.178;
|
||||
let List.754 : U64 = 1i64;
|
||||
let List.753 : U64 = CallByName Num.51 List.179 List.754;
|
||||
jump List.749 List.176 List.181 List.178 List.753 List.180;
|
||||
else
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.37;
|
||||
jump List.678 #Derived_gen.37 #Derived_gen.38 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41;
|
||||
jump List.749 #Derived_gen.37 #Derived_gen.38 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41;
|
||||
|
||||
procedure List.101 (#Derived_gen.42, #Derived_gen.43, #Derived_gen.44, #Derived_gen.45, #Derived_gen.46):
|
||||
joinpoint List.741 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.743 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.743 then
|
||||
let List.747 : {Str, I64} = CallByName List.66 List.175 List.178;
|
||||
inc List.747;
|
||||
let List.180 : {Str, Int1} = CallByName Dict.188 List.176 List.747 List.177;
|
||||
let List.746 : U64 = 1i64;
|
||||
let List.745 : U64 = CallByName Num.51 List.178 List.746;
|
||||
jump List.741 List.175 List.180 List.177 List.745 List.179;
|
||||
procedure List.102 (#Derived_gen.42, #Derived_gen.43, #Derived_gen.44, #Derived_gen.45, #Derived_gen.46):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : {Str, I64} = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName Dict.159 List.177 List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.42;
|
||||
jump List.741 #Derived_gen.42 #Derived_gen.43 #Derived_gen.44 #Derived_gen.45 #Derived_gen.46;
|
||||
jump List.686 #Derived_gen.42 #Derived_gen.43 #Derived_gen.44 #Derived_gen.45 #Derived_gen.46;
|
||||
|
||||
procedure List.102 (#Derived_gen.47, #Derived_gen.48, #Derived_gen.49, #Derived_gen.50, #Derived_gen.51):
|
||||
joinpoint List.717 List.184 List.185 List.186 List.187 List.188:
|
||||
let List.719 : Int1 = CallByName Num.22 List.187 List.188;
|
||||
if List.719 then
|
||||
let List.723 : {Str, I64} = CallByName List.66 List.184 List.187;
|
||||
inc List.723;
|
||||
let List.189 : List {U32, U32} = CallByName Dict.407 List.185 List.723 List.187 List.186;
|
||||
let List.722 : U64 = 1i64;
|
||||
let List.721 : U64 = CallByName Num.51 List.187 List.722;
|
||||
jump List.717 List.184 List.189 List.186 List.721 List.188;
|
||||
procedure List.103 (#Derived_gen.47, #Derived_gen.48, #Derived_gen.49, #Derived_gen.50, #Derived_gen.51):
|
||||
joinpoint List.725 List.185 List.186 List.187 List.188 List.189:
|
||||
let List.727 : Int1 = CallByName Num.22 List.188 List.189;
|
||||
if List.727 then
|
||||
let List.731 : {Str, I64} = CallByName List.66 List.185 List.188;
|
||||
inc List.731;
|
||||
let List.190 : List {U32, U32} = CallByName Dict.407 List.186 List.731 List.188 List.187;
|
||||
let List.730 : U64 = 1i64;
|
||||
let List.729 : U64 = CallByName Num.51 List.188 List.730;
|
||||
jump List.725 List.185 List.190 List.187 List.729 List.189;
|
||||
else
|
||||
dec List.184;
|
||||
ret List.185;
|
||||
dec List.185;
|
||||
ret List.186;
|
||||
in
|
||||
inc #Derived_gen.47;
|
||||
jump List.717 #Derived_gen.47 #Derived_gen.48 #Derived_gen.49 #Derived_gen.50 #Derived_gen.51;
|
||||
jump List.725 #Derived_gen.47 #Derived_gen.48 #Derived_gen.49 #Derived_gen.50 #Derived_gen.51;
|
||||
|
||||
procedure List.11 (List.150, List.151):
|
||||
let List.737 : List {U32, U32} = CallByName List.68 List.151;
|
||||
let List.736 : List {U32, U32} = CallByName List.99 List.150 List.151 List.737;
|
||||
ret List.736;
|
||||
procedure List.11 (List.151, List.152):
|
||||
let List.745 : List {U32, U32} = CallByName List.68 List.152;
|
||||
let List.744 : List {U32, U32} = CallByName List.100 List.151 List.152 List.745;
|
||||
ret List.744;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : {List {U32, U32}, List {Str, I64}, U64, Float32, U8} = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.739 : U64 = 0i64;
|
||||
let List.740 : U64 = CallByName List.6 List.172;
|
||||
let List.738 : {Str, Int1} = CallByName List.101 List.172 List.173 List.174 List.739 List.740;
|
||||
ret List.738;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.747 : U64 = 0i64;
|
||||
let List.748 : U64 = CallByName List.6 List.173;
|
||||
let List.746 : {Str, Int1} = CallByName List.102 List.173 List.174 List.175 List.747 List.748;
|
||||
ret List.746;
|
||||
|
||||
procedure List.3 (List.128, List.129, List.130):
|
||||
let List.701 : {List {U32, U32}, {U32, U32}} = CallByName List.64 List.128 List.129 List.130;
|
||||
let List.700 : List {U32, U32} = StructAtIndex 0 List.701;
|
||||
ret List.700;
|
||||
procedure List.3 (List.129, List.130, List.131):
|
||||
let List.709 : {List {U32, U32}, {U32, U32}} = CallByName List.64 List.129 List.130 List.131;
|
||||
let List.708 : List {U32, U32} = StructAtIndex 0 List.709;
|
||||
ret List.708;
|
||||
|
||||
procedure List.3 (List.128, List.129, List.130):
|
||||
let List.703 : {List {Str, I64}, {Str, I64}} = CallByName List.64 List.128 List.129 List.130;
|
||||
let List.702 : List {Str, I64} = StructAtIndex 0 List.703;
|
||||
let #Derived_gen.74 : {Str, I64} = StructAtIndex 1 List.703;
|
||||
procedure List.3 (List.129, List.130, List.131):
|
||||
let List.711 : {List {Str, I64}, {Str, I64}} = CallByName List.64 List.129 List.130 List.131;
|
||||
let List.710 : List {Str, I64} = StructAtIndex 0 List.711;
|
||||
let #Derived_gen.74 : {Str, I64} = StructAtIndex 1 List.711;
|
||||
dec #Derived_gen.74;
|
||||
ret List.702;
|
||||
ret List.710;
|
||||
|
||||
procedure List.4 (List.136, List.137):
|
||||
let List.712 : U64 = 1i64;
|
||||
let List.710 : List {Str, I64} = CallByName List.70 List.136 List.712;
|
||||
let List.709 : List {Str, I64} = CallByName List.71 List.710 List.137;
|
||||
ret List.709;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.720 : U64 = 1i64;
|
||||
let List.718 : List {Str, I64} = CallByName List.70 List.137 List.720;
|
||||
let List.717 : List {Str, I64} = CallByName List.71 List.718 List.138;
|
||||
ret List.717;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.691 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.691;
|
||||
let List.699 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.699;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.749 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.749;
|
||||
let List.757 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.757;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.750 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.750;
|
||||
let List.758 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.758;
|
||||
|
||||
procedure List.64 (List.125, List.126, List.127):
|
||||
let List.699 : U64 = CallByName List.6 List.125;
|
||||
let List.696 : Int1 = CallByName Num.22 List.126 List.699;
|
||||
if List.696 then
|
||||
let List.697 : {List {U32, U32}, {U32, U32}} = CallByName List.67 List.125 List.126 List.127;
|
||||
ret List.697;
|
||||
procedure List.64 (List.126, List.127, List.128):
|
||||
let List.707 : U64 = CallByName List.6 List.126;
|
||||
let List.704 : Int1 = CallByName Num.22 List.127 List.707;
|
||||
if List.704 then
|
||||
let List.705 : {List {U32, U32}, {U32, U32}} = CallByName List.67 List.126 List.127 List.128;
|
||||
ret List.705;
|
||||
else
|
||||
let List.695 : {List {U32, U32}, {U32, U32}} = Struct {List.125, List.127};
|
||||
ret List.695;
|
||||
let List.703 : {List {U32, U32}, {U32, U32}} = Struct {List.126, List.128};
|
||||
ret List.703;
|
||||
|
||||
procedure List.64 (List.125, List.126, List.127):
|
||||
let List.708 : U64 = CallByName List.6 List.125;
|
||||
let List.705 : Int1 = CallByName Num.22 List.126 List.708;
|
||||
if List.705 then
|
||||
let List.706 : {List {Str, I64}, {Str, I64}} = CallByName List.67 List.125 List.126 List.127;
|
||||
ret List.706;
|
||||
procedure List.64 (List.126, List.127, List.128):
|
||||
let List.716 : U64 = CallByName List.6 List.126;
|
||||
let List.713 : Int1 = CallByName Num.22 List.127 List.716;
|
||||
if List.713 then
|
||||
let List.714 : {List {Str, I64}, {Str, I64}} = CallByName List.67 List.126 List.127 List.128;
|
||||
ret List.714;
|
||||
else
|
||||
let List.704 : {List {Str, I64}, {Str, I64}} = Struct {List.125, List.127};
|
||||
ret List.704;
|
||||
let List.712 : {List {Str, I64}, {Str, I64}} = Struct {List.126, List.128};
|
||||
ret List.712;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.748 : {Str, I64} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.748;
|
||||
let List.756 : {Str, I64} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.756;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.698 : {List {U32, U32}, {U32, U32}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.698;
|
||||
let List.706 : {List {U32, U32}, {U32, U32}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.706;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.707 : {List {Str, I64}, {Str, I64}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.707;
|
||||
let List.715 : {List {Str, I64}, {Str, I64}} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.715;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.735 : List {U32, U32} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.735;
|
||||
let List.743 : List {U32, U32} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.743;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.713 : List {Str, I64} = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.713;
|
||||
let List.721 : List {Str, I64} = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.721;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.711 : List {Str, I64} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.711;
|
||||
let List.719 : List {Str, I64} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.719;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.732 : List {U32, U32} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.732;
|
||||
let List.740 : List {U32, U32} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.740;
|
||||
|
||||
procedure List.83 (List.181, List.182, List.183):
|
||||
let List.715 : U64 = 0i64;
|
||||
let List.716 : U64 = CallByName List.6 List.181;
|
||||
let List.714 : List {U32, U32} = CallByName List.102 List.181 List.182 List.183 List.715 List.716;
|
||||
ret List.714;
|
||||
|
||||
procedure List.99 (#Derived_gen.34, #Derived_gen.35, #Derived_gen.36):
|
||||
joinpoint List.726 List.152 List.153 List.154:
|
||||
let List.734 : U64 = 0i64;
|
||||
let List.728 : Int1 = CallByName Num.24 List.153 List.734;
|
||||
if List.728 then
|
||||
let List.733 : U64 = 1i64;
|
||||
let List.730 : U64 = CallByName Num.75 List.153 List.733;
|
||||
let List.731 : List {U32, U32} = CallByName List.71 List.154 List.152;
|
||||
jump List.726 List.152 List.730 List.731;
|
||||
else
|
||||
ret List.154;
|
||||
in
|
||||
jump List.726 #Derived_gen.34 #Derived_gen.35 #Derived_gen.36;
|
||||
procedure List.83 (List.182, List.183, List.184):
|
||||
let List.723 : U64 = 0i64;
|
||||
let List.724 : U64 = CallByName List.6 List.182;
|
||||
let List.722 : List {U32, U32} = CallByName List.103 List.182 List.183 List.184 List.723 List.724;
|
||||
ret List.722;
|
||||
|
||||
procedure Num.131 (#Attr.2):
|
||||
let Num.297 : U32 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -120,35 +120,35 @@ procedure Inspect.63 (Inspect.295, Inspect.291):
|
|||
procedure Inspect.64 (Inspect.297):
|
||||
ret Inspect.297;
|
||||
|
||||
procedure List.101 (#Derived_gen.10, #Derived_gen.11, #Derived_gen.12, #Derived_gen.13, #Derived_gen.14):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : I64 = CallByName List.66 List.175 List.178;
|
||||
let List.180 : {Str, Int1} = CallByName Inspect.160 List.176 List.684 List.177;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.10, #Derived_gen.11, #Derived_gen.12, #Derived_gen.13, #Derived_gen.14):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : I64 = CallByName List.66 List.176 List.179;
|
||||
let List.181 : {Str, Int1} = CallByName Inspect.160 List.177 List.692 List.178;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.10;
|
||||
jump List.678 #Derived_gen.10 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14;
|
||||
jump List.686 #Derived_gen.10 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13 #Derived_gen.14;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : {Str, Int1} = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : {Str, Int1} = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.291 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -231,67 +231,67 @@ procedure Inspect.63 (Inspect.295, Inspect.291):
|
|||
procedure Inspect.64 (Inspect.297):
|
||||
ret Inspect.297;
|
||||
|
||||
procedure List.101 (#Derived_gen.33, #Derived_gen.34, #Derived_gen.35, #Derived_gen.36, #Derived_gen.37):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : {Str, Str} = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : {Str, Int1} = CallByName Inspect.229 List.176 List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.33, #Derived_gen.34, #Derived_gen.35, #Derived_gen.36, #Derived_gen.37):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : {Str, Str} = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : {Str, Int1} = CallByName Inspect.229 List.177 List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.33;
|
||||
jump List.678 #Derived_gen.33 #Derived_gen.34 #Derived_gen.35 #Derived_gen.36 #Derived_gen.37;
|
||||
jump List.686 #Derived_gen.33 #Derived_gen.34 #Derived_gen.35 #Derived_gen.36 #Derived_gen.37;
|
||||
|
||||
procedure List.101 (#Derived_gen.38, #Derived_gen.39, #Derived_gen.40, #Derived_gen.41, #Derived_gen.42):
|
||||
joinpoint List.690 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.692 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.692 then
|
||||
let List.696 : {Str, Str} = CallByName List.66 List.175 List.178;
|
||||
inc List.696;
|
||||
let List.180 : {Str, Int1} = CallByName Inspect.229 List.176 List.696;
|
||||
let List.695 : U64 = 1i64;
|
||||
let List.694 : U64 = CallByName Num.51 List.178 List.695;
|
||||
jump List.690 List.175 List.180 List.177 List.694 List.179;
|
||||
procedure List.102 (#Derived_gen.38, #Derived_gen.39, #Derived_gen.40, #Derived_gen.41, #Derived_gen.42):
|
||||
joinpoint List.698 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.700 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.700 then
|
||||
let List.704 : {Str, Str} = CallByName List.66 List.176 List.179;
|
||||
inc List.704;
|
||||
let List.181 : {Str, Int1} = CallByName Inspect.229 List.177 List.704;
|
||||
let List.703 : U64 = 1i64;
|
||||
let List.702 : U64 = CallByName Num.51 List.179 List.703;
|
||||
jump List.698 List.176 List.181 List.178 List.702 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.38;
|
||||
jump List.690 #Derived_gen.38 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41 #Derived_gen.42;
|
||||
jump List.698 #Derived_gen.38 #Derived_gen.39 #Derived_gen.40 #Derived_gen.41 #Derived_gen.42;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : {Str, Int1} = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : {Str, Int1} = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.688 : U64 = 0i64;
|
||||
let List.689 : U64 = CallByName List.6 List.172;
|
||||
let List.687 : {Str, Int1} = CallByName List.101 List.172 List.173 List.174 List.688 List.689;
|
||||
ret List.687;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.696 : U64 = 0i64;
|
||||
let List.697 : U64 = CallByName List.6 List.173;
|
||||
let List.695 : {Str, Int1} = CallByName List.102 List.173 List.174 List.175 List.696 List.697;
|
||||
ret List.695;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.698 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.698;
|
||||
let List.706 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.706;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.697 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.697;
|
||||
let List.705 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.705;
|
||||
|
||||
procedure Num.20 (#Attr.2, #Attr.3):
|
||||
let Num.296 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
|
|
|
@ -150,36 +150,36 @@ procedure Inspect.63 (Inspect.295, Inspect.291):
|
|||
procedure Inspect.64 (Inspect.297):
|
||||
ret Inspect.297;
|
||||
|
||||
procedure List.101 (#Derived_gen.16, #Derived_gen.17, #Derived_gen.18, #Derived_gen.19, #Derived_gen.20):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : {[C I64, C Decimal], Str} = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : {Str, Int1} = CallByName Inspect.229 List.176 List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.16, #Derived_gen.17, #Derived_gen.18, #Derived_gen.19, #Derived_gen.20):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : {[C I64, C Decimal], Str} = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : {Str, Int1} = CallByName Inspect.229 List.177 List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.16;
|
||||
jump List.678 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18 #Derived_gen.19 #Derived_gen.20;
|
||||
jump List.686 #Derived_gen.16 #Derived_gen.17 #Derived_gen.18 #Derived_gen.19 #Derived_gen.20;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : {Str, Int1} = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : {Str, Int1} = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : {[C I64, C Decimal], Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : {[C I64, C Decimal], Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.292 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -156,36 +156,36 @@ procedure Inspect.63 (Inspect.295, Inspect.291):
|
|||
procedure Inspect.64 (Inspect.297):
|
||||
ret Inspect.297;
|
||||
|
||||
procedure List.101 (#Derived_gen.21, #Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : {Str, Str} = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : {Str, Int1} = CallByName Inspect.229 List.176 List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.21, #Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : {Str, Str} = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : {Str, Int1} = CallByName Inspect.229 List.177 List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.21;
|
||||
jump List.678 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25;
|
||||
jump List.686 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : {Str, Int1} = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : {Str, Int1} = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure Num.20 (#Attr.2, #Attr.3):
|
||||
let Num.294 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
|
|
|
@ -163,36 +163,36 @@ procedure Inspect.63 (Inspect.295, Inspect.291):
|
|||
procedure Inspect.64 (Inspect.297):
|
||||
ret Inspect.297;
|
||||
|
||||
procedure List.101 (#Derived_gen.25, #Derived_gen.26, #Derived_gen.27, #Derived_gen.28, #Derived_gen.29):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : {Str, Str} = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : {Str, Int1} = CallByName Inspect.229 List.176 List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.25, #Derived_gen.26, #Derived_gen.27, #Derived_gen.28, #Derived_gen.29):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : {Str, Str} = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : {Str, Int1} = CallByName Inspect.229 List.177 List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.25;
|
||||
jump List.678 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27 #Derived_gen.28 #Derived_gen.29;
|
||||
jump List.686 #Derived_gen.25 #Derived_gen.26 #Derived_gen.27 #Derived_gen.28 #Derived_gen.29;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : {Str, Int1} = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : {Str, Int1} = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : {Str, Str} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure Num.20 (#Attr.2, #Attr.3):
|
||||
let Num.294 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
|
|
|
@ -156,43 +156,43 @@ procedure Inspect.63 (Inspect.295, Inspect.291):
|
|||
procedure Inspect.64 (Inspect.297):
|
||||
ret Inspect.297;
|
||||
|
||||
procedure List.1 (List.119):
|
||||
let List.688 : U64 = CallByName List.6 List.119;
|
||||
let List.689 : U64 = 0i64;
|
||||
let List.687 : Int1 = CallByName Bool.9 List.688 List.689;
|
||||
ret List.687;
|
||||
procedure List.1 (List.120):
|
||||
let List.696 : U64 = CallByName List.6 List.120;
|
||||
let List.697 : U64 = 0i64;
|
||||
let List.695 : Int1 = CallByName Bool.9 List.696 List.697;
|
||||
ret List.695;
|
||||
|
||||
procedure List.101 (#Derived_gen.21, #Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : Str = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : Str = CallByName Inspect.207 List.176 List.684;
|
||||
dec List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.21, #Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : Str = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : Str = CallByName Inspect.207 List.177 List.692;
|
||||
dec List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.21;
|
||||
jump List.678 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25;
|
||||
jump List.686 #Derived_gen.21 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : Str = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : Str = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure Num.20 (#Attr.2, #Attr.3):
|
||||
let Num.294 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
|
|
|
@ -159,43 +159,43 @@ procedure Inspect.63 (Inspect.295, Inspect.291):
|
|||
procedure Inspect.64 (Inspect.297):
|
||||
ret Inspect.297;
|
||||
|
||||
procedure List.1 (List.119):
|
||||
let List.688 : U64 = CallByName List.6 List.119;
|
||||
let List.689 : U64 = 0i64;
|
||||
let List.687 : Int1 = CallByName Bool.9 List.688 List.689;
|
||||
ret List.687;
|
||||
procedure List.1 (List.120):
|
||||
let List.696 : U64 = CallByName List.6 List.120;
|
||||
let List.697 : U64 = 0i64;
|
||||
let List.695 : Int1 = CallByName Bool.9 List.696 List.697;
|
||||
ret List.695;
|
||||
|
||||
procedure List.101 (#Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : Str = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : Str = CallByName Inspect.207 List.176 List.684;
|
||||
dec List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.22, #Derived_gen.23, #Derived_gen.24, #Derived_gen.25, #Derived_gen.26):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : Str = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : Str = CallByName Inspect.207 List.177 List.692;
|
||||
dec List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.22;
|
||||
jump List.678 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26;
|
||||
jump List.686 #Derived_gen.22 #Derived_gen.23 #Derived_gen.24 #Derived_gen.25 #Derived_gen.26;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : Str = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : Str = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure Num.20 (#Attr.2, #Attr.3):
|
||||
let Num.294 : U64 = lowlevel NumSub #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
procedure List.6 (#Attr.2):
|
||||
let List.675 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.675;
|
||||
let List.683 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.683;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.291 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
|
|
|
@ -6,40 +6,40 @@ procedure Bool.9 (#Attr.2, #Attr.3):
|
|||
let Bool.22 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
||||
ret Bool.22;
|
||||
|
||||
procedure List.2 (List.120, List.121):
|
||||
let List.689 : U64 = CallByName List.6 List.120;
|
||||
let List.685 : Int1 = CallByName Num.22 List.121 List.689;
|
||||
if List.685 then
|
||||
let List.687 : I64 = CallByName List.66 List.120 List.121;
|
||||
let List.686 : [C {}, C I64] = TagId(1) List.687;
|
||||
ret List.686;
|
||||
procedure List.2 (List.121, List.122):
|
||||
let List.697 : U64 = CallByName List.6 List.121;
|
||||
let List.693 : Int1 = CallByName Num.22 List.122 List.697;
|
||||
if List.693 then
|
||||
let List.695 : I64 = CallByName List.66 List.121 List.122;
|
||||
let List.694 : [C {}, C I64] = TagId(1) List.695;
|
||||
ret List.694;
|
||||
else
|
||||
let List.684 : {} = Struct {};
|
||||
let List.683 : [C {}, C I64] = TagId(0) List.684;
|
||||
ret List.683;
|
||||
let List.692 : {} = Struct {};
|
||||
let List.691 : [C {}, C I64] = TagId(0) List.692;
|
||||
ret List.691;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.690 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.690;
|
||||
let List.698 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.698;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.688 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.688;
|
||||
let List.696 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.696;
|
||||
|
||||
procedure List.9 (List.392):
|
||||
let List.682 : U64 = 0i64;
|
||||
let List.675 : [C {}, C I64] = CallByName List.2 List.392 List.682;
|
||||
let List.679 : U8 = 1i64;
|
||||
let List.680 : U8 = GetTagId List.675;
|
||||
let List.681 : Int1 = lowlevel Eq List.679 List.680;
|
||||
if List.681 then
|
||||
let List.393 : I64 = UnionAtIndex (Id 1) (Index 0) List.675;
|
||||
let List.676 : [C Int1, C I64] = TagId(1) List.393;
|
||||
ret List.676;
|
||||
procedure List.9 (List.393):
|
||||
let List.690 : U64 = 0i64;
|
||||
let List.683 : [C {}, C I64] = CallByName List.2 List.393 List.690;
|
||||
let List.687 : U8 = 1i64;
|
||||
let List.688 : U8 = GetTagId List.683;
|
||||
let List.689 : Int1 = lowlevel Eq List.687 List.688;
|
||||
if List.689 then
|
||||
let List.394 : I64 = UnionAtIndex (Id 1) (Index 0) List.683;
|
||||
let List.684 : [C Int1, C I64] = TagId(1) List.394;
|
||||
ret List.684;
|
||||
else
|
||||
let List.678 : Int1 = true;
|
||||
let List.677 : [C Int1, C I64] = TagId(0) List.678;
|
||||
ret List.677;
|
||||
let List.686 : Int1 = true;
|
||||
let List.685 : [C Int1, C I64] = TagId(0) List.686;
|
||||
ret List.685;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.289 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
166
crates/compiler/test_mono/generated/issue_4770.txt
generated
166
crates/compiler/test_mono/generated/issue_4770.txt
generated
|
@ -6,118 +6,118 @@ procedure Bool.2 ():
|
|||
let Bool.22 : Int1 = true;
|
||||
ret Bool.22;
|
||||
|
||||
procedure List.106 (Bool.30, Bool.31, Bool.32, Bool.33, Bool.34, Bool.35):
|
||||
joinpoint List.713 List.291 List.292 List.293 List.294 List.295 List.296:
|
||||
let List.715 : Int1 = CallByName Num.22 List.295 List.296;
|
||||
if List.715 then
|
||||
let List.721 : [<r>C I64, C List *self] = CallByName List.66 List.291 List.295;
|
||||
inc List.721;
|
||||
let List.722 : [<r>C I64, C List *self] = CallByName List.66 List.292 List.295;
|
||||
inc List.722;
|
||||
let List.297 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName Test.15 List.721 List.722;
|
||||
let List.717 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.71 List.293 List.297;
|
||||
let List.719 : U64 = 1i64;
|
||||
let List.718 : U64 = CallByName Num.51 List.295 List.719;
|
||||
jump List.713 List.291 List.292 List.717 List.294 List.718 List.296;
|
||||
procedure List.107 (Bool.30, Bool.31, Bool.32, Bool.33, Bool.34, Bool.35):
|
||||
joinpoint List.721 List.292 List.293 List.294 List.295 List.296 List.297:
|
||||
let List.723 : Int1 = CallByName Num.22 List.296 List.297;
|
||||
if List.723 then
|
||||
let List.729 : [<r>C I64, C List *self] = CallByName List.66 List.292 List.296;
|
||||
inc List.729;
|
||||
let List.730 : [<r>C I64, C List *self] = CallByName List.66 List.293 List.296;
|
||||
inc List.730;
|
||||
let List.298 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName Test.15 List.729 List.730;
|
||||
let List.725 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.71 List.294 List.298;
|
||||
let List.727 : U64 = 1i64;
|
||||
let List.726 : U64 = CallByName Num.51 List.296 List.727;
|
||||
jump List.721 List.292 List.293 List.725 List.295 List.726 List.297;
|
||||
else
|
||||
dec List.291;
|
||||
dec List.292;
|
||||
ret List.293;
|
||||
dec List.293;
|
||||
ret List.294;
|
||||
in
|
||||
inc Bool.30;
|
||||
inc Bool.31;
|
||||
jump List.713 Bool.30 Bool.31 Bool.32 Bool.33 Bool.34 Bool.35;
|
||||
jump List.721 Bool.30 Bool.31 Bool.32 Bool.33 Bool.34 Bool.35;
|
||||
|
||||
procedure List.116 (List.563, List.564, List.565):
|
||||
let List.689 : U64 = 0i64;
|
||||
let List.690 : U64 = CallByName List.6 List.563;
|
||||
let List.688 : [C {}, C {}] = CallByName List.80 List.563 List.564 List.565 List.689 List.690;
|
||||
ret List.688;
|
||||
procedure List.117 (List.571, List.572, List.573):
|
||||
let List.697 : U64 = 0i64;
|
||||
let List.698 : U64 = CallByName List.6 List.571;
|
||||
let List.696 : [C {}, C {}] = CallByName List.80 List.571 List.572 List.573 List.697 List.698;
|
||||
ret List.696;
|
||||
|
||||
procedure List.23 (List.287, List.288, List.289):
|
||||
let List.725 : U64 = CallByName List.6 List.287;
|
||||
let List.726 : U64 = CallByName List.6 List.288;
|
||||
let List.290 : U64 = CallByName Num.148 List.725 List.726;
|
||||
let List.711 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.68 List.290;
|
||||
let List.712 : U64 = 0i64;
|
||||
let List.710 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.106 List.287 List.288 List.711 List.289 List.712 List.290;
|
||||
ret List.710;
|
||||
procedure List.23 (List.288, List.289, List.290):
|
||||
let List.733 : U64 = CallByName List.6 List.288;
|
||||
let List.734 : U64 = CallByName List.6 List.289;
|
||||
let List.291 : U64 = CallByName Num.148 List.733 List.734;
|
||||
let List.719 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.68 List.291;
|
||||
let List.720 : U64 = 0i64;
|
||||
let List.718 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.107 List.288 List.289 List.719 List.290 List.720 List.291;
|
||||
ret List.718;
|
||||
|
||||
procedure List.248 (List.677, List.249, List.247):
|
||||
let List.707 : Int1 = CallByName Test.1 List.249;
|
||||
if List.707 then
|
||||
let List.709 : {} = Struct {};
|
||||
let List.708 : [C {}, C {}] = TagId(1) List.709;
|
||||
ret List.708;
|
||||
procedure List.249 (List.685, List.250, List.248):
|
||||
let List.715 : Int1 = CallByName Test.1 List.250;
|
||||
if List.715 then
|
||||
let List.717 : {} = Struct {};
|
||||
let List.716 : [C {}, C {}] = TagId(1) List.717;
|
||||
ret List.716;
|
||||
else
|
||||
let List.706 : {} = Struct {};
|
||||
let List.705 : [C {}, C {}] = TagId(0) List.706;
|
||||
ret List.705;
|
||||
let List.714 : {} = Struct {};
|
||||
let List.713 : [C {}, C {}] = TagId(0) List.714;
|
||||
ret List.713;
|
||||
|
||||
procedure List.56 (List.246, List.247):
|
||||
let List.686 : {} = Struct {};
|
||||
let List.678 : [C {}, C {}] = CallByName List.116 List.246 List.686 List.247;
|
||||
let List.683 : U8 = 1i64;
|
||||
let List.684 : U8 = GetTagId List.678;
|
||||
let List.685 : Int1 = lowlevel Eq List.683 List.684;
|
||||
if List.685 then
|
||||
let List.679 : Int1 = CallByName Bool.2;
|
||||
ret List.679;
|
||||
procedure List.56 (List.247, List.248):
|
||||
let List.694 : {} = Struct {};
|
||||
let List.686 : [C {}, C {}] = CallByName List.117 List.247 List.694 List.248;
|
||||
let List.691 : U8 = 1i64;
|
||||
let List.692 : U8 = GetTagId List.686;
|
||||
let List.693 : Int1 = lowlevel Eq List.691 List.692;
|
||||
if List.693 then
|
||||
let List.687 : Int1 = CallByName Bool.2;
|
||||
ret List.687;
|
||||
else
|
||||
let List.680 : Int1 = CallByName Bool.1;
|
||||
ret List.680;
|
||||
let List.688 : Int1 = CallByName Bool.1;
|
||||
ret List.688;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.676 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.676;
|
||||
let List.684 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.684;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.704 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.704;
|
||||
let List.712 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.712;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.703 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.703;
|
||||
let List.711 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.711;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.723 : [<r>C I64, C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.723;
|
||||
let List.731 : [<r>C I64, C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.731;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.724 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.724;
|
||||
let List.732 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.732;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.720 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.720;
|
||||
let List.728 : List {[<r>C I64, C List *self], [<r>C I64, C List *self]} = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.728;
|
||||
|
||||
procedure List.80 (Bool.25, Bool.26, Bool.27, Bool.28, Bool.29):
|
||||
joinpoint List.691 List.566 List.567 List.568 List.569 List.570:
|
||||
let List.693 : Int1 = CallByName Num.22 List.569 List.570;
|
||||
if List.693 then
|
||||
let List.702 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.66 List.566 List.569;
|
||||
inc List.702;
|
||||
let List.694 : [C {}, C {}] = CallByName List.248 List.567 List.702 List.568;
|
||||
let List.699 : U8 = 1i64;
|
||||
let List.700 : U8 = GetTagId List.694;
|
||||
let List.701 : Int1 = lowlevel Eq List.699 List.700;
|
||||
if List.701 then
|
||||
let List.571 : {} = UnionAtIndex (Id 1) (Index 0) List.694;
|
||||
let List.697 : U64 = 1i64;
|
||||
let List.696 : U64 = CallByName Num.51 List.569 List.697;
|
||||
jump List.691 List.566 List.571 List.568 List.696 List.570;
|
||||
joinpoint List.699 List.574 List.575 List.576 List.577 List.578:
|
||||
let List.701 : Int1 = CallByName Num.22 List.577 List.578;
|
||||
if List.701 then
|
||||
let List.710 : {[<r>C I64, C List *self], [<r>C I64, C List *self]} = CallByName List.66 List.574 List.577;
|
||||
inc List.710;
|
||||
let List.702 : [C {}, C {}] = CallByName List.249 List.575 List.710 List.576;
|
||||
let List.707 : U8 = 1i64;
|
||||
let List.708 : U8 = GetTagId List.702;
|
||||
let List.709 : Int1 = lowlevel Eq List.707 List.708;
|
||||
if List.709 then
|
||||
let List.579 : {} = UnionAtIndex (Id 1) (Index 0) List.702;
|
||||
let List.705 : U64 = 1i64;
|
||||
let List.704 : U64 = CallByName Num.51 List.577 List.705;
|
||||
jump List.699 List.574 List.579 List.576 List.704 List.578;
|
||||
else
|
||||
dec List.566;
|
||||
let List.572 : {} = UnionAtIndex (Id 0) (Index 0) List.694;
|
||||
let List.698 : [C {}, C {}] = TagId(0) List.572;
|
||||
ret List.698;
|
||||
dec List.574;
|
||||
let List.580 : {} = UnionAtIndex (Id 0) (Index 0) List.702;
|
||||
let List.706 : [C {}, C {}] = TagId(0) List.580;
|
||||
ret List.706;
|
||||
else
|
||||
dec List.566;
|
||||
let List.692 : [C {}, C {}] = TagId(1) List.567;
|
||||
ret List.692;
|
||||
dec List.574;
|
||||
let List.700 : [C {}, C {}] = TagId(1) List.575;
|
||||
ret List.700;
|
||||
in
|
||||
inc Bool.25;
|
||||
jump List.691 Bool.25 Bool.26 Bool.27 Bool.28 Bool.29;
|
||||
jump List.699 Bool.25 Bool.26 Bool.27 Bool.28 Bool.29;
|
||||
|
||||
procedure Num.148 (Num.232, Num.233):
|
||||
let Num.296 : Int1 = CallByName Num.22 Num.232 Num.233;
|
||||
|
|
|
@ -1,33 +1,33 @@
|
|||
procedure List.101 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : [<rnu>C *self, <null>] = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName Test.7 List.176 List.684;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : [<rnu>C *self, <null>] = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName Test.7 List.177 List.692;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc Bool.21;
|
||||
jump List.678 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
jump List.686 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : [<rnu><null>, C {[<rnu>C *self, <null>], *self}] = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.686 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.686;
|
||||
let List.694 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.694;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : [<rnu>C *self, <null>] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : [<rnu>C *self, <null>] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.290 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
18
crates/compiler/test_mono/generated/list_append.txt
generated
18
crates/compiler/test_mono/generated/list_append.txt
generated
|
@ -1,16 +1,16 @@
|
|||
procedure List.4 (List.136, List.137):
|
||||
let List.678 : U64 = 1i64;
|
||||
let List.676 : List I64 = CallByName List.70 List.136 List.678;
|
||||
let List.675 : List I64 = CallByName List.71 List.676 List.137;
|
||||
ret List.675;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.686 : U64 = 1i64;
|
||||
let List.684 : List I64 = CallByName List.70 List.137 List.686;
|
||||
let List.683 : List I64 = CallByName List.71 List.684 List.138;
|
||||
ret List.683;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.679 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.679;
|
||||
let List.687 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.687;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.677 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.677;
|
||||
let List.685 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
|
||||
procedure Test.0 ():
|
||||
let Test.2 : List I64 = Array [1i64];
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
procedure List.4 (List.136, List.137):
|
||||
let List.678 : U64 = 1i64;
|
||||
let List.676 : List I64 = CallByName List.70 List.136 List.678;
|
||||
let List.675 : List I64 = CallByName List.71 List.676 List.137;
|
||||
ret List.675;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.686 : U64 = 1i64;
|
||||
let List.684 : List I64 = CallByName List.70 List.137 List.686;
|
||||
let List.683 : List I64 = CallByName List.71 List.684 List.138;
|
||||
ret List.683;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.679 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.679;
|
||||
let List.687 : List I64 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.687;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.677 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.677;
|
||||
let List.685 : List I64 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
|
||||
procedure Test.1 (Test.2):
|
||||
let Test.6 : I64 = 42i64;
|
||||
|
|
|
@ -1,25 +1,25 @@
|
|||
procedure List.3 (List.128, List.129, List.130):
|
||||
let List.678 : {List I64, I64} = CallByName List.64 List.128 List.129 List.130;
|
||||
let List.677 : List I64 = StructAtIndex 0 List.678;
|
||||
ret List.677;
|
||||
procedure List.3 (List.129, List.130, List.131):
|
||||
let List.686 : {List I64, I64} = CallByName List.64 List.129 List.130 List.131;
|
||||
let List.685 : List I64 = StructAtIndex 0 List.686;
|
||||
ret List.685;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.676 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.676;
|
||||
let List.684 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.684;
|
||||
|
||||
procedure List.64 (List.125, List.126, List.127):
|
||||
let List.683 : U64 = CallByName List.6 List.125;
|
||||
let List.680 : Int1 = CallByName Num.22 List.126 List.683;
|
||||
if List.680 then
|
||||
let List.681 : {List I64, I64} = CallByName List.67 List.125 List.126 List.127;
|
||||
ret List.681;
|
||||
procedure List.64 (List.126, List.127, List.128):
|
||||
let List.691 : U64 = CallByName List.6 List.126;
|
||||
let List.688 : Int1 = CallByName Num.22 List.127 List.691;
|
||||
if List.688 then
|
||||
let List.689 : {List I64, I64} = CallByName List.67 List.126 List.127 List.128;
|
||||
ret List.689;
|
||||
else
|
||||
let List.679 : {List I64, I64} = Struct {List.125, List.127};
|
||||
ret List.679;
|
||||
let List.687 : {List I64, I64} = Struct {List.126, List.128};
|
||||
ret List.687;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.682 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.682;
|
||||
let List.690 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.690;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.289 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
|
|
28
crates/compiler/test_mono/generated/list_get.txt
generated
28
crates/compiler/test_mono/generated/list_get.txt
generated
|
@ -1,22 +1,22 @@
|
|||
procedure List.2 (List.120, List.121):
|
||||
let List.681 : U64 = CallByName List.6 List.120;
|
||||
let List.677 : Int1 = CallByName Num.22 List.121 List.681;
|
||||
if List.677 then
|
||||
let List.679 : I64 = CallByName List.66 List.120 List.121;
|
||||
let List.678 : [C {}, C I64] = TagId(1) List.679;
|
||||
ret List.678;
|
||||
procedure List.2 (List.121, List.122):
|
||||
let List.689 : U64 = CallByName List.6 List.121;
|
||||
let List.685 : Int1 = CallByName Num.22 List.122 List.689;
|
||||
if List.685 then
|
||||
let List.687 : I64 = CallByName List.66 List.121 List.122;
|
||||
let List.686 : [C {}, C I64] = TagId(1) List.687;
|
||||
ret List.686;
|
||||
else
|
||||
let List.676 : {} = Struct {};
|
||||
let List.675 : [C {}, C I64] = TagId(0) List.676;
|
||||
ret List.675;
|
||||
let List.684 : {} = Struct {};
|
||||
let List.683 : [C {}, C I64] = TagId(0) List.684;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.682 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.682;
|
||||
let List.690 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.690;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.680 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.680;
|
||||
let List.688 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.688;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.289 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
8
crates/compiler/test_mono/generated/list_len.txt
generated
8
crates/compiler/test_mono/generated/list_len.txt
generated
|
@ -1,10 +1,10 @@
|
|||
procedure List.6 (#Attr.2):
|
||||
let List.675 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.675;
|
||||
let List.683 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.676 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.676;
|
||||
let List.684 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.684;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.289 : U64 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,66 +1,66 @@
|
|||
procedure List.101 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.689 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.691 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.691 then
|
||||
let List.695 : Str = CallByName List.66 List.175 List.178;
|
||||
inc List.695;
|
||||
let List.180 : List Str = CallByName List.284 List.176 List.695 List.177;
|
||||
dec List.695;
|
||||
let List.694 : U64 = 1i64;
|
||||
let List.693 : U64 = CallByName Num.51 List.178 List.694;
|
||||
jump List.689 List.175 List.180 List.177 List.693 List.179;
|
||||
procedure List.102 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.697 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.699 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.699 then
|
||||
let List.703 : Str = CallByName List.66 List.176 List.179;
|
||||
inc List.703;
|
||||
let List.181 : List Str = CallByName List.285 List.177 List.703 List.178;
|
||||
dec List.703;
|
||||
let List.702 : U64 = 1i64;
|
||||
let List.701 : U64 = CallByName Num.51 List.179 List.702;
|
||||
jump List.697 List.176 List.181 List.178 List.701 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc Bool.21;
|
||||
jump List.689 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
jump List.697 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.687 : U64 = 0i64;
|
||||
let List.688 : U64 = CallByName List.6 List.172;
|
||||
let List.686 : List Str = CallByName List.101 List.172 List.173 List.174 List.687 List.688;
|
||||
ret List.686;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.695 : U64 = 0i64;
|
||||
let List.696 : U64 = CallByName List.6 List.173;
|
||||
let List.694 : List Str = CallByName List.102 List.173 List.174 List.175 List.695 List.696;
|
||||
ret List.694;
|
||||
|
||||
procedure List.2 (List.120, List.121):
|
||||
let List.681 : U64 = CallByName List.6 List.120;
|
||||
let List.677 : Int1 = CallByName Num.22 List.121 List.681;
|
||||
if List.677 then
|
||||
let List.679 : Str = CallByName List.66 List.120 List.121;
|
||||
inc List.679;
|
||||
let List.678 : [C {}, C Str] = TagId(1) List.679;
|
||||
ret List.678;
|
||||
procedure List.2 (List.121, List.122):
|
||||
let List.689 : U64 = CallByName List.6 List.121;
|
||||
let List.685 : Int1 = CallByName Num.22 List.122 List.689;
|
||||
if List.685 then
|
||||
let List.687 : Str = CallByName List.66 List.121 List.122;
|
||||
inc List.687;
|
||||
let List.686 : [C {}, C Str] = TagId(1) List.687;
|
||||
ret List.686;
|
||||
else
|
||||
let List.676 : {} = Struct {};
|
||||
let List.675 : [C {}, C Str] = TagId(0) List.676;
|
||||
ret List.675;
|
||||
let List.684 : {} = Struct {};
|
||||
let List.683 : [C {}, C Str] = TagId(0) List.684;
|
||||
ret List.683;
|
||||
|
||||
procedure List.284 (List.285, List.286, List.282):
|
||||
let List.698 : Str = CallByName Test.3 List.286;
|
||||
let List.697 : List Str = CallByName List.71 List.285 List.698;
|
||||
ret List.697;
|
||||
procedure List.285 (List.286, List.287, List.283):
|
||||
let List.706 : Str = CallByName Test.3 List.287;
|
||||
let List.705 : List Str = CallByName List.71 List.286 List.706;
|
||||
ret List.705;
|
||||
|
||||
procedure List.5 (List.281, List.282):
|
||||
let List.283 : U64 = CallByName List.6 List.281;
|
||||
let List.684 : List Str = CallByName List.68 List.283;
|
||||
let List.683 : List Str = CallByName List.18 List.281 List.684 List.282;
|
||||
ret List.683;
|
||||
procedure List.5 (List.282, List.283):
|
||||
let List.284 : U64 = CallByName List.6 List.282;
|
||||
let List.692 : List Str = CallByName List.68 List.284;
|
||||
let List.691 : List Str = CallByName List.18 List.282 List.692 List.283;
|
||||
ret List.691;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.682 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.682;
|
||||
let List.690 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.690;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.680 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.680;
|
||||
let List.688 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.688;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.700 : List Str = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.700;
|
||||
let List.708 : List Str = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.708;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.699 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
let List.707 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.707;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.290 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,65 +1,65 @@
|
|||
procedure List.101 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.689 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.691 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.691 then
|
||||
let List.695 : Str = CallByName List.66 List.175 List.178;
|
||||
inc List.695;
|
||||
let List.180 : List Str = CallByName List.284 List.176 List.695 List.177;
|
||||
let List.694 : U64 = 1i64;
|
||||
let List.693 : U64 = CallByName Num.51 List.178 List.694;
|
||||
jump List.689 List.175 List.180 List.177 List.693 List.179;
|
||||
procedure List.102 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.697 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.699 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.699 then
|
||||
let List.703 : Str = CallByName List.66 List.176 List.179;
|
||||
inc List.703;
|
||||
let List.181 : List Str = CallByName List.285 List.177 List.703 List.178;
|
||||
let List.702 : U64 = 1i64;
|
||||
let List.701 : U64 = CallByName Num.51 List.179 List.702;
|
||||
jump List.697 List.176 List.181 List.178 List.701 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc Bool.21;
|
||||
jump List.689 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
jump List.697 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.687 : U64 = 0i64;
|
||||
let List.688 : U64 = CallByName List.6 List.172;
|
||||
let List.686 : List Str = CallByName List.101 List.172 List.173 List.174 List.687 List.688;
|
||||
ret List.686;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.695 : U64 = 0i64;
|
||||
let List.696 : U64 = CallByName List.6 List.173;
|
||||
let List.694 : List Str = CallByName List.102 List.173 List.174 List.175 List.695 List.696;
|
||||
ret List.694;
|
||||
|
||||
procedure List.2 (List.120, List.121):
|
||||
let List.681 : U64 = CallByName List.6 List.120;
|
||||
let List.677 : Int1 = CallByName Num.22 List.121 List.681;
|
||||
if List.677 then
|
||||
let List.679 : Str = CallByName List.66 List.120 List.121;
|
||||
inc List.679;
|
||||
let List.678 : [C {}, C Str] = TagId(1) List.679;
|
||||
ret List.678;
|
||||
procedure List.2 (List.121, List.122):
|
||||
let List.689 : U64 = CallByName List.6 List.121;
|
||||
let List.685 : Int1 = CallByName Num.22 List.122 List.689;
|
||||
if List.685 then
|
||||
let List.687 : Str = CallByName List.66 List.121 List.122;
|
||||
inc List.687;
|
||||
let List.686 : [C {}, C Str] = TagId(1) List.687;
|
||||
ret List.686;
|
||||
else
|
||||
let List.676 : {} = Struct {};
|
||||
let List.675 : [C {}, C Str] = TagId(0) List.676;
|
||||
ret List.675;
|
||||
let List.684 : {} = Struct {};
|
||||
let List.683 : [C {}, C Str] = TagId(0) List.684;
|
||||
ret List.683;
|
||||
|
||||
procedure List.284 (List.285, List.286, List.282):
|
||||
let List.698 : Str = CallByName Test.3 List.286;
|
||||
let List.697 : List Str = CallByName List.71 List.285 List.698;
|
||||
ret List.697;
|
||||
procedure List.285 (List.286, List.287, List.283):
|
||||
let List.706 : Str = CallByName Test.3 List.287;
|
||||
let List.705 : List Str = CallByName List.71 List.286 List.706;
|
||||
ret List.705;
|
||||
|
||||
procedure List.5 (List.281, List.282):
|
||||
let List.283 : U64 = CallByName List.6 List.281;
|
||||
let List.684 : List Str = CallByName List.68 List.283;
|
||||
let List.683 : List Str = CallByName List.18 List.281 List.684 List.282;
|
||||
ret List.683;
|
||||
procedure List.5 (List.282, List.283):
|
||||
let List.284 : U64 = CallByName List.6 List.282;
|
||||
let List.692 : List Str = CallByName List.68 List.284;
|
||||
let List.691 : List Str = CallByName List.18 List.282 List.692 List.283;
|
||||
ret List.691;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.682 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.682;
|
||||
let List.690 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.690;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.680 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.680;
|
||||
let List.688 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.688;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.700 : List Str = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.700;
|
||||
let List.708 : List Str = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.708;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.699 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
let List.707 : List Str = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.707;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.290 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,66 +1,66 @@
|
|||
procedure List.101 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.681 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.683 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.683 then
|
||||
let List.687 : U8 = CallByName List.66 List.175 List.178;
|
||||
let List.180 : List U8 = CallByName List.284 List.176 List.687 List.177;
|
||||
let List.686 : U64 = 1i64;
|
||||
let List.685 : U64 = CallByName Num.51 List.178 List.686;
|
||||
jump List.681 List.175 List.180 List.177 List.685 List.179;
|
||||
procedure List.102 (Bool.21, Bool.22, Bool.23, Bool.24, Bool.25):
|
||||
joinpoint List.689 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.691 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.691 then
|
||||
let List.695 : U8 = CallByName List.66 List.176 List.179;
|
||||
let List.181 : List U8 = CallByName List.285 List.177 List.695 List.178;
|
||||
let List.694 : U64 = 1i64;
|
||||
let List.693 : U64 = CallByName Num.51 List.179 List.694;
|
||||
jump List.689 List.176 List.181 List.178 List.693 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc Bool.21;
|
||||
jump List.681 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
jump List.689 Bool.21 Bool.22 Bool.23 Bool.24 Bool.25;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.679 : U64 = 0i64;
|
||||
let List.680 : U64 = CallByName List.6 List.172;
|
||||
let List.678 : List U8 = CallByName List.101 List.172 List.173 List.174 List.679 List.680;
|
||||
ret List.678;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.687 : U64 = 0i64;
|
||||
let List.688 : U64 = CallByName List.6 List.173;
|
||||
let List.686 : List U8 = CallByName List.102 List.173 List.174 List.175 List.687 List.688;
|
||||
ret List.686;
|
||||
|
||||
procedure List.284 (List.285, List.286, List.282):
|
||||
let List.694 : U8 = GetTagId List.282;
|
||||
joinpoint List.695 List.692:
|
||||
let List.691 : List U8 = CallByName List.71 List.285 List.692;
|
||||
ret List.691;
|
||||
procedure List.285 (List.286, List.287, List.283):
|
||||
let List.702 : U8 = GetTagId List.283;
|
||||
joinpoint List.703 List.700:
|
||||
let List.699 : List U8 = CallByName List.71 List.286 List.700;
|
||||
ret List.699;
|
||||
in
|
||||
switch List.694:
|
||||
switch List.702:
|
||||
case 0:
|
||||
let List.696 : U8 = CallByName Test.4 List.286 List.282;
|
||||
jump List.695 List.696;
|
||||
let List.704 : U8 = CallByName Test.4 List.287 List.283;
|
||||
jump List.703 List.704;
|
||||
|
||||
case 1:
|
||||
let List.696 : U8 = CallByName Test.6 List.286 List.282;
|
||||
jump List.695 List.696;
|
||||
let List.704 : U8 = CallByName Test.6 List.287 List.283;
|
||||
jump List.703 List.704;
|
||||
|
||||
default:
|
||||
let List.696 : U8 = CallByName Test.8 List.286;
|
||||
jump List.695 List.696;
|
||||
let List.704 : U8 = CallByName Test.8 List.287;
|
||||
jump List.703 List.704;
|
||||
|
||||
|
||||
procedure List.5 (List.281, List.282):
|
||||
let List.283 : U64 = CallByName List.6 List.281;
|
||||
let List.676 : List U8 = CallByName List.68 List.283;
|
||||
let List.675 : List U8 = CallByName List.18 List.281 List.676 List.282;
|
||||
ret List.675;
|
||||
procedure List.5 (List.282, List.283):
|
||||
let List.284 : U64 = CallByName List.6 List.282;
|
||||
let List.684 : List U8 = CallByName List.68 List.284;
|
||||
let List.683 : List U8 = CallByName List.18 List.282 List.684 List.283;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.689 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.689;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.688 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.688;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.697 : List U8 = lowlevel ListWithCapacity #Attr.2;
|
||||
let List.697 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.697;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.696 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.696;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.705 : List U8 = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.705;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.693 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
let List.701 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.701;
|
||||
|
||||
procedure Num.19 (#Attr.2, #Attr.3):
|
||||
let Num.291 : U8 = lowlevel NumAdd #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,25 +1,25 @@
|
|||
procedure List.3 (List.128, List.129, List.130):
|
||||
let List.676 : {List I64, I64} = CallByName List.64 List.128 List.129 List.130;
|
||||
let List.675 : List I64 = StructAtIndex 0 List.676;
|
||||
ret List.675;
|
||||
procedure List.3 (List.129, List.130, List.131):
|
||||
let List.684 : {List I64, I64} = CallByName List.64 List.129 List.130 List.131;
|
||||
let List.683 : List I64 = StructAtIndex 0 List.684;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.682 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.682;
|
||||
let List.690 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.690;
|
||||
|
||||
procedure List.64 (List.125, List.126, List.127):
|
||||
let List.681 : U64 = CallByName List.6 List.125;
|
||||
let List.678 : Int1 = CallByName Num.22 List.126 List.681;
|
||||
if List.678 then
|
||||
let List.679 : {List I64, I64} = CallByName List.67 List.125 List.126 List.127;
|
||||
ret List.679;
|
||||
procedure List.64 (List.126, List.127, List.128):
|
||||
let List.689 : U64 = CallByName List.6 List.126;
|
||||
let List.686 : Int1 = CallByName Num.22 List.127 List.689;
|
||||
if List.686 then
|
||||
let List.687 : {List I64, I64} = CallByName List.67 List.126 List.127 List.128;
|
||||
ret List.687;
|
||||
else
|
||||
let List.677 : {List I64, I64} = Struct {List.125, List.127};
|
||||
ret List.677;
|
||||
let List.685 : {List I64, I64} = Struct {List.126, List.128};
|
||||
ret List.685;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.680 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.680;
|
||||
let List.688 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.688;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.289 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
procedure List.28 (#Attr.2, #Attr.3):
|
||||
let List.677 : List I64 = lowlevel ListSortWith { xs: `#Attr.#arg1` } #Attr.2 Num.46 #Attr.3;
|
||||
ret List.677;
|
||||
let List.685 : List I64 = lowlevel ListSortWith { xs: `#Attr.#arg1` } #Attr.2 Num.46 #Attr.3;
|
||||
ret List.685;
|
||||
|
||||
procedure List.59 (List.387):
|
||||
let List.676 : {} = Struct {};
|
||||
let List.675 : List I64 = CallByName List.28 List.387 List.676;
|
||||
ret List.675;
|
||||
procedure List.59 (List.388):
|
||||
let List.684 : {} = Struct {};
|
||||
let List.683 : List I64 = CallByName List.28 List.388 List.684;
|
||||
ret List.683;
|
||||
|
||||
procedure Num.46 (#Attr.2, #Attr.3):
|
||||
let Num.289 : U8 = lowlevel NumCompare #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,41 +1,41 @@
|
|||
procedure List.2 (List.120, List.121):
|
||||
let List.697 : U64 = CallByName List.6 List.120;
|
||||
let List.694 : Int1 = CallByName Num.22 List.121 List.697;
|
||||
if List.694 then
|
||||
let List.696 : I64 = CallByName List.66 List.120 List.121;
|
||||
let List.695 : [C {}, C I64] = TagId(1) List.696;
|
||||
ret List.695;
|
||||
procedure List.2 (List.121, List.122):
|
||||
let List.705 : U64 = CallByName List.6 List.121;
|
||||
let List.702 : Int1 = CallByName Num.22 List.122 List.705;
|
||||
if List.702 then
|
||||
let List.704 : I64 = CallByName List.66 List.121 List.122;
|
||||
let List.703 : [C {}, C I64] = TagId(1) List.704;
|
||||
ret List.703;
|
||||
else
|
||||
let List.693 : {} = Struct {};
|
||||
let List.692 : [C {}, C I64] = TagId(0) List.693;
|
||||
ret List.692;
|
||||
let List.701 : {} = Struct {};
|
||||
let List.700 : [C {}, C I64] = TagId(0) List.701;
|
||||
ret List.700;
|
||||
|
||||
procedure List.3 (List.128, List.129, List.130):
|
||||
let List.684 : {List I64, I64} = CallByName List.64 List.128 List.129 List.130;
|
||||
let List.683 : List I64 = StructAtIndex 0 List.684;
|
||||
ret List.683;
|
||||
procedure List.3 (List.129, List.130, List.131):
|
||||
let List.692 : {List I64, I64} = CallByName List.64 List.129 List.130 List.131;
|
||||
let List.691 : List I64 = StructAtIndex 0 List.692;
|
||||
ret List.691;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.682 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.682;
|
||||
|
||||
procedure List.64 (List.125, List.126, List.127):
|
||||
let List.681 : U64 = CallByName List.6 List.125;
|
||||
let List.678 : Int1 = CallByName Num.22 List.126 List.681;
|
||||
if List.678 then
|
||||
let List.679 : {List I64, I64} = CallByName List.67 List.125 List.126 List.127;
|
||||
ret List.679;
|
||||
else
|
||||
let List.677 : {List I64, I64} = Struct {List.125, List.127};
|
||||
ret List.677;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.690 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
let List.690 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.690;
|
||||
|
||||
procedure List.64 (List.126, List.127, List.128):
|
||||
let List.689 : U64 = CallByName List.6 List.126;
|
||||
let List.686 : Int1 = CallByName Num.22 List.127 List.689;
|
||||
if List.686 then
|
||||
let List.687 : {List I64, I64} = CallByName List.67 List.126 List.127 List.128;
|
||||
ret List.687;
|
||||
else
|
||||
let List.685 : {List I64, I64} = Struct {List.126, List.128};
|
||||
ret List.685;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.698 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.698;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.680 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.680;
|
||||
let List.688 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.688;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.291 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,25 +1,25 @@
|
|||
procedure List.3 (List.128, List.129, List.130):
|
||||
let List.684 : {List U64, U64} = CallByName List.64 List.128 List.129 List.130;
|
||||
let List.683 : List U64 = StructAtIndex 0 List.684;
|
||||
ret List.683;
|
||||
procedure List.3 (List.129, List.130, List.131):
|
||||
let List.692 : {List U64, U64} = CallByName List.64 List.129 List.130 List.131;
|
||||
let List.691 : List U64 = StructAtIndex 0 List.692;
|
||||
ret List.691;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.682 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.682;
|
||||
let List.690 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.690;
|
||||
|
||||
procedure List.64 (List.125, List.126, List.127):
|
||||
let List.681 : U64 = CallByName List.6 List.125;
|
||||
let List.678 : Int1 = CallByName Num.22 List.126 List.681;
|
||||
if List.678 then
|
||||
let List.679 : {List U64, U64} = CallByName List.67 List.125 List.126 List.127;
|
||||
ret List.679;
|
||||
procedure List.64 (List.126, List.127, List.128):
|
||||
let List.689 : U64 = CallByName List.6 List.126;
|
||||
let List.686 : Int1 = CallByName Num.22 List.127 List.689;
|
||||
if List.686 then
|
||||
let List.687 : {List U64, U64} = CallByName List.67 List.126 List.127 List.128;
|
||||
ret List.687;
|
||||
else
|
||||
let List.677 : {List U64, U64} = Struct {List.125, List.127};
|
||||
ret List.677;
|
||||
let List.685 : {List U64, U64} = Struct {List.126, List.128};
|
||||
ret List.685;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.680 : {List U64, U64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.680;
|
||||
let List.688 : {List U64, U64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.688;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.289 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -1,52 +1,52 @@
|
|||
procedure List.101 (Bool.22, Bool.23, Bool.24, Bool.25, Bool.26):
|
||||
joinpoint List.681 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.683 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.683 then
|
||||
let List.687 : [<rnnu>C List *self] = CallByName List.66 List.175 List.178;
|
||||
inc List.687;
|
||||
let List.180 : List [<rnnu>C List *self] = CallByName List.284 List.176 List.687 List.177;
|
||||
let List.686 : U64 = 1i64;
|
||||
let List.685 : U64 = CallByName Num.51 List.178 List.686;
|
||||
jump List.681 List.175 List.180 List.177 List.685 List.179;
|
||||
procedure List.102 (Bool.22, Bool.23, Bool.24, Bool.25, Bool.26):
|
||||
joinpoint List.689 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.691 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.691 then
|
||||
let List.695 : [<rnnu>C List *self] = CallByName List.66 List.176 List.179;
|
||||
inc List.695;
|
||||
let List.181 : List [<rnnu>C List *self] = CallByName List.285 List.177 List.695 List.178;
|
||||
let List.694 : U64 = 1i64;
|
||||
let List.693 : U64 = CallByName Num.51 List.179 List.694;
|
||||
jump List.689 List.176 List.181 List.178 List.693 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc Bool.22;
|
||||
jump List.681 Bool.22 Bool.23 Bool.24 Bool.25 Bool.26;
|
||||
jump List.689 Bool.22 Bool.23 Bool.24 Bool.25 Bool.26;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.679 : U64 = 0i64;
|
||||
let List.680 : U64 = CallByName List.6 List.172;
|
||||
let List.678 : List [<rnnu>C List *self] = CallByName List.101 List.172 List.173 List.174 List.679 List.680;
|
||||
ret List.678;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.687 : U64 = 0i64;
|
||||
let List.688 : U64 = CallByName List.6 List.173;
|
||||
let List.686 : List [<rnnu>C List *self] = CallByName List.102 List.173 List.174 List.175 List.687 List.688;
|
||||
ret List.686;
|
||||
|
||||
procedure List.284 (List.285, List.286, List.282):
|
||||
let List.692 : [<rnnu>C List *self] = CallByName Test.2 List.286;
|
||||
let List.691 : List [<rnnu>C List *self] = CallByName List.71 List.285 List.692;
|
||||
ret List.691;
|
||||
procedure List.285 (List.286, List.287, List.283):
|
||||
let List.700 : [<rnnu>C List *self] = CallByName Test.2 List.287;
|
||||
let List.699 : List [<rnnu>C List *self] = CallByName List.71 List.286 List.700;
|
||||
ret List.699;
|
||||
|
||||
procedure List.5 (List.281, List.282):
|
||||
let List.283 : U64 = CallByName List.6 List.281;
|
||||
let List.676 : List [<rnnu>C List *self] = CallByName List.68 List.283;
|
||||
let List.675 : List [<rnnu>C List *self] = CallByName List.18 List.281 List.676 List.282;
|
||||
ret List.675;
|
||||
procedure List.5 (List.282, List.283):
|
||||
let List.284 : U64 = CallByName List.6 List.282;
|
||||
let List.684 : List [<rnnu>C List *self] = CallByName List.68 List.284;
|
||||
let List.683 : List [<rnnu>C List *self] = CallByName List.18 List.282 List.684 List.283;
|
||||
ret List.683;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.689 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.689;
|
||||
let List.697 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.697;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.688 : [<rnnu>C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.688;
|
||||
let List.696 : [<rnnu>C List *self] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.696;
|
||||
|
||||
procedure List.68 (#Attr.2):
|
||||
let List.694 : List [<rnnu>C List *self] = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.694;
|
||||
let List.702 : List [<rnnu>C List *self] = lowlevel ListWithCapacity #Attr.2;
|
||||
ret List.702;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.693 : List [<rnnu>C List *self] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
let List.701 : List [<rnnu>C List *self] = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.701;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.290 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
62
crates/compiler/test_mono/generated/rigids.txt
generated
62
crates/compiler/test_mono/generated/rigids.txt
generated
|
@ -1,41 +1,41 @@
|
|||
procedure List.2 (List.120, List.121):
|
||||
let List.697 : U64 = CallByName List.6 List.120;
|
||||
let List.694 : Int1 = CallByName Num.22 List.121 List.697;
|
||||
if List.694 then
|
||||
let List.696 : I64 = CallByName List.66 List.120 List.121;
|
||||
let List.695 : [C {}, C I64] = TagId(1) List.696;
|
||||
ret List.695;
|
||||
procedure List.2 (List.121, List.122):
|
||||
let List.705 : U64 = CallByName List.6 List.121;
|
||||
let List.702 : Int1 = CallByName Num.22 List.122 List.705;
|
||||
if List.702 then
|
||||
let List.704 : I64 = CallByName List.66 List.121 List.122;
|
||||
let List.703 : [C {}, C I64] = TagId(1) List.704;
|
||||
ret List.703;
|
||||
else
|
||||
let List.693 : {} = Struct {};
|
||||
let List.692 : [C {}, C I64] = TagId(0) List.693;
|
||||
ret List.692;
|
||||
let List.701 : {} = Struct {};
|
||||
let List.700 : [C {}, C I64] = TagId(0) List.701;
|
||||
ret List.700;
|
||||
|
||||
procedure List.3 (List.128, List.129, List.130):
|
||||
let List.684 : {List I64, I64} = CallByName List.64 List.128 List.129 List.130;
|
||||
let List.683 : List I64 = StructAtIndex 0 List.684;
|
||||
ret List.683;
|
||||
procedure List.3 (List.129, List.130, List.131):
|
||||
let List.692 : {List I64, I64} = CallByName List.64 List.129 List.130 List.131;
|
||||
let List.691 : List I64 = StructAtIndex 0 List.692;
|
||||
ret List.691;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.682 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.682;
|
||||
|
||||
procedure List.64 (List.125, List.126, List.127):
|
||||
let List.681 : U64 = CallByName List.6 List.125;
|
||||
let List.678 : Int1 = CallByName Num.22 List.126 List.681;
|
||||
if List.678 then
|
||||
let List.679 : {List I64, I64} = CallByName List.67 List.125 List.126 List.127;
|
||||
ret List.679;
|
||||
else
|
||||
let List.677 : {List I64, I64} = Struct {List.125, List.127};
|
||||
ret List.677;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.690 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
let List.690 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.690;
|
||||
|
||||
procedure List.64 (List.126, List.127, List.128):
|
||||
let List.689 : U64 = CallByName List.6 List.126;
|
||||
let List.686 : Int1 = CallByName Num.22 List.127 List.689;
|
||||
if List.686 then
|
||||
let List.687 : {List I64, I64} = CallByName List.67 List.126 List.127 List.128;
|
||||
ret List.687;
|
||||
else
|
||||
let List.685 : {List I64, I64} = Struct {List.126, List.128};
|
||||
ret List.685;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.698 : I64 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.698;
|
||||
|
||||
procedure List.67 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.680 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.680;
|
||||
let List.688 : {List I64, I64} = lowlevel ListReplaceUnsafe #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.688;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.291 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
|
@ -29,58 +29,58 @@ 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.101 (#Derived_gen.9, #Derived_gen.10, #Derived_gen.11, #Derived_gen.12, #Derived_gen.13):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : Str = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : List U8 = CallByName Test.66 List.176 List.684 List.177;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.9, #Derived_gen.10, #Derived_gen.11, #Derived_gen.12, #Derived_gen.13):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : Str = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : List U8 = CallByName Test.66 List.177 List.692 List.178;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.9;
|
||||
jump List.678 #Derived_gen.9 #Derived_gen.10 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13;
|
||||
jump List.686 #Derived_gen.9 #Derived_gen.10 #Derived_gen.11 #Derived_gen.12 #Derived_gen.13;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.701 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.701;
|
||||
let List.709 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.709;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : List U8 = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : List U8 = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.4 (List.136, List.137):
|
||||
let List.697 : U64 = 1i64;
|
||||
let List.696 : List U8 = CallByName List.70 List.136 List.697;
|
||||
let List.695 : List U8 = CallByName List.71 List.696 List.137;
|
||||
ret List.695;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.705 : U64 = 1i64;
|
||||
let List.704 : List U8 = CallByName List.70 List.137 List.705;
|
||||
let List.703 : List U8 = CallByName List.71 List.704 List.138;
|
||||
ret List.703;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.700 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.700;
|
||||
let List.708 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.708;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.691 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.691;
|
||||
let List.699 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.689 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.689;
|
||||
let List.697 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.697;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.699 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.699;
|
||||
let List.707 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.707;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.290 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -87,93 +87,93 @@ 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.101 (#Derived_gen.44, #Derived_gen.45, #Derived_gen.46, #Derived_gen.47, #Derived_gen.48):
|
||||
joinpoint List.678 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.680 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.680 then
|
||||
let List.684 : [C {}, C {}, C Str] = CallByName List.66 List.175 List.178;
|
||||
inc List.684;
|
||||
let List.180 : List U8 = CallByName Test.66 List.176 List.684 List.177;
|
||||
let List.683 : U64 = 1i64;
|
||||
let List.682 : U64 = CallByName Num.51 List.178 List.683;
|
||||
jump List.678 List.175 List.180 List.177 List.682 List.179;
|
||||
procedure List.102 (#Derived_gen.44, #Derived_gen.45, #Derived_gen.46, #Derived_gen.47, #Derived_gen.48):
|
||||
joinpoint List.713 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.715 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.715 then
|
||||
let List.719 : Str = CallByName List.66 List.176 List.179;
|
||||
inc List.719;
|
||||
let List.181 : List U8 = CallByName Test.66 List.177 List.719 List.178;
|
||||
let List.718 : U64 = 1i64;
|
||||
let List.717 : U64 = CallByName Num.51 List.179 List.718;
|
||||
jump List.713 List.176 List.181 List.178 List.717 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.44;
|
||||
jump List.678 #Derived_gen.44 #Derived_gen.45 #Derived_gen.46 #Derived_gen.47 #Derived_gen.48;
|
||||
jump List.713 #Derived_gen.44 #Derived_gen.45 #Derived_gen.46 #Derived_gen.47 #Derived_gen.48;
|
||||
|
||||
procedure List.101 (#Derived_gen.49, #Derived_gen.50, #Derived_gen.51, #Derived_gen.52, #Derived_gen.53):
|
||||
joinpoint List.705 List.175 List.176 List.177 List.178 List.179:
|
||||
let List.707 : Int1 = CallByName Num.22 List.178 List.179;
|
||||
if List.707 then
|
||||
let List.711 : Str = CallByName List.66 List.175 List.178;
|
||||
inc List.711;
|
||||
let List.180 : List U8 = CallByName Test.66 List.176 List.711 List.177;
|
||||
let List.710 : U64 = 1i64;
|
||||
let List.709 : U64 = CallByName Num.51 List.178 List.710;
|
||||
jump List.705 List.175 List.180 List.177 List.709 List.179;
|
||||
procedure List.102 (#Derived_gen.49, #Derived_gen.50, #Derived_gen.51, #Derived_gen.52, #Derived_gen.53):
|
||||
joinpoint List.686 List.176 List.177 List.178 List.179 List.180:
|
||||
let List.688 : Int1 = CallByName Num.22 List.179 List.180;
|
||||
if List.688 then
|
||||
let List.692 : [C {}, C {}, C Str] = CallByName List.66 List.176 List.179;
|
||||
inc List.692;
|
||||
let List.181 : List U8 = CallByName Test.66 List.177 List.692 List.178;
|
||||
let List.691 : U64 = 1i64;
|
||||
let List.690 : U64 = CallByName Num.51 List.179 List.691;
|
||||
jump List.686 List.176 List.181 List.178 List.690 List.180;
|
||||
else
|
||||
dec List.175;
|
||||
ret List.176;
|
||||
dec List.176;
|
||||
ret List.177;
|
||||
in
|
||||
inc #Derived_gen.49;
|
||||
jump List.705 #Derived_gen.49 #Derived_gen.50 #Derived_gen.51 #Derived_gen.52 #Derived_gen.53;
|
||||
jump List.686 #Derived_gen.49 #Derived_gen.50 #Derived_gen.51 #Derived_gen.52 #Derived_gen.53;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.701 : List [C {}, C {}, C Str] = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.701;
|
||||
let List.709 : List [C {}, C {}, C Str] = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.709;
|
||||
|
||||
procedure List.13 (#Attr.2, #Attr.3):
|
||||
let List.729 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.729;
|
||||
let List.737 : List Str = lowlevel ListPrepend #Attr.2 #Attr.3;
|
||||
ret List.737;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.676 : U64 = 0i64;
|
||||
let List.677 : U64 = CallByName List.6 List.172;
|
||||
let List.675 : List U8 = CallByName List.101 List.172 List.173 List.174 List.676 List.677;
|
||||
ret List.675;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.684 : U64 = 0i64;
|
||||
let List.685 : U64 = CallByName List.6 List.173;
|
||||
let List.683 : List U8 = CallByName List.102 List.173 List.174 List.175 List.684 List.685;
|
||||
ret List.683;
|
||||
|
||||
procedure List.18 (List.172, List.173, List.174):
|
||||
let List.703 : U64 = 0i64;
|
||||
let List.704 : U64 = CallByName List.6 List.172;
|
||||
let List.702 : List U8 = CallByName List.101 List.172 List.173 List.174 List.703 List.704;
|
||||
ret List.702;
|
||||
procedure List.18 (List.173, List.174, List.175):
|
||||
let List.711 : U64 = 0i64;
|
||||
let List.712 : U64 = CallByName List.6 List.173;
|
||||
let List.710 : List U8 = CallByName List.102 List.173 List.174 List.175 List.711 List.712;
|
||||
ret List.710;
|
||||
|
||||
procedure List.4 (List.136, List.137):
|
||||
let List.724 : U64 = 1i64;
|
||||
let List.723 : List U8 = CallByName List.70 List.136 List.724;
|
||||
let List.722 : List U8 = CallByName List.71 List.723 List.137;
|
||||
ret List.722;
|
||||
procedure List.4 (List.137, List.138):
|
||||
let List.732 : U64 = 1i64;
|
||||
let List.731 : List U8 = CallByName List.70 List.137 List.732;
|
||||
let List.730 : List U8 = CallByName List.71 List.731 List.138;
|
||||
ret List.730;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.700 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.700;
|
||||
let List.708 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.708;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.727 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.727;
|
||||
let List.735 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.735;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.685 : [C {}, C {}, C Str] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.685;
|
||||
let List.693 : [C {}, C {}, C Str] = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.693;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.712 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.712;
|
||||
let List.720 : Str = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.720;
|
||||
|
||||
procedure List.70 (#Attr.2, #Attr.3):
|
||||
let List.718 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.718;
|
||||
let List.726 : List U8 = lowlevel ListReserve #Attr.2 #Attr.3;
|
||||
ret List.726;
|
||||
|
||||
procedure List.71 (#Attr.2, #Attr.3):
|
||||
let List.716 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.716;
|
||||
let List.724 : List U8 = lowlevel ListAppendUnsafe #Attr.2 #Attr.3;
|
||||
ret List.724;
|
||||
|
||||
procedure List.8 (#Attr.2, #Attr.3):
|
||||
let List.726 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.726;
|
||||
let List.734 : List U8 = lowlevel ListConcat #Attr.2 #Attr.3;
|
||||
ret List.734;
|
||||
|
||||
procedure Num.127 (#Attr.2):
|
||||
let Num.294 : U8 = lowlevel NumIntCast #Attr.2;
|
||||
|
|
|
@ -2,81 +2,81 @@ procedure Bool.9 (#Attr.2, #Attr.3):
|
|||
let Bool.21 : Int1 = lowlevel Eq #Attr.2 #Attr.3;
|
||||
ret Bool.21;
|
||||
|
||||
procedure List.116 (List.563, List.564, List.565):
|
||||
let List.693 : U64 = 0i64;
|
||||
let List.694 : U64 = CallByName List.6 List.563;
|
||||
let List.692 : [C U64, C U64] = CallByName List.80 List.563 List.564 List.565 List.693 List.694;
|
||||
ret List.692;
|
||||
procedure List.117 (List.571, List.572, List.573):
|
||||
let List.701 : U64 = 0i64;
|
||||
let List.702 : U64 = CallByName List.6 List.571;
|
||||
let List.700 : [C U64, C U64] = CallByName List.80 List.571 List.572 List.573 List.701 List.702;
|
||||
ret List.700;
|
||||
|
||||
procedure List.26 (List.213, List.214, List.215):
|
||||
let List.686 : [C U64, C U64] = CallByName List.116 List.213 List.214 List.215;
|
||||
let List.689 : U8 = 1i64;
|
||||
let List.690 : U8 = GetTagId List.686;
|
||||
let List.691 : Int1 = lowlevel Eq List.689 List.690;
|
||||
if List.691 then
|
||||
let List.216 : U64 = UnionAtIndex (Id 1) (Index 0) List.686;
|
||||
ret List.216;
|
||||
else
|
||||
let List.217 : U64 = UnionAtIndex (Id 0) (Index 0) List.686;
|
||||
procedure List.26 (List.214, List.215, List.216):
|
||||
let List.694 : [C U64, C U64] = CallByName List.117 List.214 List.215 List.216;
|
||||
let List.697 : U8 = 1i64;
|
||||
let List.698 : U8 = GetTagId List.694;
|
||||
let List.699 : Int1 = lowlevel Eq List.697 List.698;
|
||||
if List.699 then
|
||||
let List.217 : U64 = UnionAtIndex (Id 1) (Index 0) List.694;
|
||||
ret List.217;
|
||||
else
|
||||
let List.218 : U64 = UnionAtIndex (Id 0) (Index 0) List.694;
|
||||
ret List.218;
|
||||
|
||||
procedure List.38 (List.401, List.402):
|
||||
let List.685 : U64 = CallByName List.6 List.401;
|
||||
let List.403 : U64 = CallByName Num.77 List.685 List.402;
|
||||
let List.675 : List U8 = CallByName List.43 List.401 List.403;
|
||||
ret List.675;
|
||||
procedure List.38 (List.402, List.403):
|
||||
let List.693 : U64 = CallByName List.6 List.402;
|
||||
let List.404 : U64 = CallByName Num.77 List.693 List.403;
|
||||
let List.683 : List U8 = CallByName List.43 List.402 List.404;
|
||||
ret List.683;
|
||||
|
||||
procedure List.43 (List.399, List.400):
|
||||
let List.683 : U64 = CallByName List.6 List.399;
|
||||
let List.682 : U64 = CallByName Num.77 List.683 List.400;
|
||||
let List.677 : {U64, U64} = Struct {List.400, List.682};
|
||||
let List.676 : List U8 = CallByName List.49 List.399 List.677;
|
||||
ret List.676;
|
||||
|
||||
procedure List.49 (List.477, List.478):
|
||||
let List.679 : U64 = StructAtIndex 1 List.478;
|
||||
let List.680 : U64 = StructAtIndex 0 List.478;
|
||||
let List.678 : List U8 = CallByName List.72 List.477 List.679 List.680;
|
||||
ret List.678;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.684 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
procedure List.43 (List.400, List.401):
|
||||
let List.691 : U64 = CallByName List.6 List.400;
|
||||
let List.690 : U64 = CallByName Num.77 List.691 List.401;
|
||||
let List.685 : {U64, U64} = Struct {List.401, List.690};
|
||||
let List.684 : List U8 = CallByName List.49 List.400 List.685;
|
||||
ret List.684;
|
||||
|
||||
procedure List.49 (List.478, List.479):
|
||||
let List.687 : U64 = StructAtIndex 1 List.479;
|
||||
let List.688 : U64 = StructAtIndex 0 List.479;
|
||||
let List.686 : List U8 = CallByName List.72 List.478 List.687 List.688;
|
||||
ret List.686;
|
||||
|
||||
procedure List.6 (#Attr.2):
|
||||
let List.692 : U64 = lowlevel ListLenU64 #Attr.2;
|
||||
ret List.692;
|
||||
|
||||
procedure List.66 (#Attr.2, #Attr.3):
|
||||
let List.707 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.707;
|
||||
let List.715 : U8 = lowlevel ListGetUnsafe #Attr.2 #Attr.3;
|
||||
ret List.715;
|
||||
|
||||
procedure List.72 (#Attr.2, #Attr.3, #Attr.4):
|
||||
let List.681 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.681;
|
||||
let List.689 : List U8 = lowlevel ListSublist #Attr.2 #Attr.3 #Attr.4;
|
||||
ret List.689;
|
||||
|
||||
procedure List.80 (Bool.22, Bool.23, Bool.24, Bool.25, Bool.26):
|
||||
joinpoint List.695 List.566 List.567 List.568 List.569 List.570:
|
||||
let List.697 : Int1 = CallByName Num.22 List.569 List.570;
|
||||
if List.697 then
|
||||
let List.706 : U8 = CallByName List.66 List.566 List.569;
|
||||
let List.698 : [C U64, C U64] = CallByName Test.3 List.567 List.706;
|
||||
let List.703 : U8 = 1i64;
|
||||
let List.704 : U8 = GetTagId List.698;
|
||||
let List.705 : Int1 = lowlevel Eq List.703 List.704;
|
||||
if List.705 then
|
||||
let List.571 : U64 = UnionAtIndex (Id 1) (Index 0) List.698;
|
||||
let List.701 : U64 = 1i64;
|
||||
let List.700 : U64 = CallByName Num.51 List.569 List.701;
|
||||
jump List.695 List.566 List.571 List.568 List.700 List.570;
|
||||
joinpoint List.703 List.574 List.575 List.576 List.577 List.578:
|
||||
let List.705 : Int1 = CallByName Num.22 List.577 List.578;
|
||||
if List.705 then
|
||||
let List.714 : U8 = CallByName List.66 List.574 List.577;
|
||||
let List.706 : [C U64, C U64] = CallByName Test.3 List.575 List.714;
|
||||
let List.711 : U8 = 1i64;
|
||||
let List.712 : U8 = GetTagId List.706;
|
||||
let List.713 : Int1 = lowlevel Eq List.711 List.712;
|
||||
if List.713 then
|
||||
let List.579 : U64 = UnionAtIndex (Id 1) (Index 0) List.706;
|
||||
let List.709 : U64 = 1i64;
|
||||
let List.708 : U64 = CallByName Num.51 List.577 List.709;
|
||||
jump List.703 List.574 List.579 List.576 List.708 List.578;
|
||||
else
|
||||
dec List.566;
|
||||
let List.572 : U64 = UnionAtIndex (Id 0) (Index 0) List.698;
|
||||
let List.702 : [C U64, C U64] = TagId(0) List.572;
|
||||
ret List.702;
|
||||
dec List.574;
|
||||
let List.580 : U64 = UnionAtIndex (Id 0) (Index 0) List.706;
|
||||
let List.710 : [C U64, C U64] = TagId(0) List.580;
|
||||
ret List.710;
|
||||
else
|
||||
dec List.566;
|
||||
let List.696 : [C U64, C U64] = TagId(1) List.567;
|
||||
ret List.696;
|
||||
dec List.574;
|
||||
let List.704 : [C U64, C U64] = TagId(1) List.575;
|
||||
ret List.704;
|
||||
in
|
||||
inc Bool.22;
|
||||
jump List.695 Bool.22 Bool.23 Bool.24 Bool.25 Bool.26;
|
||||
jump List.703 Bool.22 Bool.23 Bool.24 Bool.25 Bool.26;
|
||||
|
||||
procedure Num.22 (#Attr.2, #Attr.3):
|
||||
let Num.292 : Int1 = lowlevel NumLt #Attr.2 #Attr.3;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue