diff options
Diffstat (limited to 'test/passes/flatten_simplify-locals-nonesting_souperify-single-use_enable-threads.txt')
-rw-r--r-- | test/passes/flatten_simplify-locals-nonesting_souperify-single-use_enable-threads.txt | 4775 |
1 files changed, 0 insertions, 4775 deletions
diff --git a/test/passes/flatten_simplify-locals-nonesting_souperify-single-use_enable-threads.txt b/test/passes/flatten_simplify-locals-nonesting_souperify-single-use_enable-threads.txt deleted file mode 100644 index 71c272079..000000000 --- a/test/passes/flatten_simplify-locals-nonesting_souperify-single-use_enable-threads.txt +++ /dev/null @@ -1,4775 +0,0 @@ - -; function: figure-1a - -; start LHS (in figure-1a) -%0:i64 = var -%1:i64 = var -%2 = eq %0, %1 -infer %2 - - -; start LHS (in figure-1a) -%0:i64 = var -%1:i64 = var -%2 = ne %0, %1 -infer %2 - - -; start LHS (in figure-1a) -%0:i64 = var -%1:i64 = var -%2 = eq %0, %1 -%3:i32 = zext %2 -%4:i64 = var -%5 = ne %0, %4 -%6:i32 = zext %5 -%7 = and %3, %6 -infer %7 - - -; function: figure-1b - -; start LHS (in figure-1b) -%0:i64 = var -%1:i64 = var -%2 = slt %0, %1 -infer %2 - - -; start LHS (in figure-1b) -%0:i64 = var -%1:i64 = var -%2 = eq %0, %1 -%3:i64 = var -%4 = slt %1, %3 -pc %4 1:i1 -infer %2 - - -; start LHS (in figure-1b) -%0:i64 = var -%1:i64 = var -%2 = ne %0, %1 -%3:i64 = var -%4 = slt %3, %1 -pc %4 1:i1 -infer %2 - - -; start LHS (in figure-1b) -%0:i64 = var -%1:i64 = var -%2 = eq %0, %1 -%3:i32 = zext %2 -%4:i64 = var -%5 = ne %0, %4 -%6:i32 = zext %5 -%7 = and %3, %6 -%8 = slt %1, %4 -pc %8 1:i1 -infer %7 - - -; function: figure-3-if - -; start LHS (in figure-3-if) -%0:i32 = var -%1 = and %0, 1:i32 -infer %1 - - -; start LHS (in figure-3-if) -%0:i32 = var -%1 = add %0, 1:i32 -%2 = and %0, 1:i32 -%3 = ne %2, 0:i32 -pc %3 1:i1 -infer %1 - - -; start LHS (in figure-3-if) -%0:i32 = var -%1 = add %0, 2:i32 -%2 = and %0, 1:i32 -%3 = eq %2, 0:i32 -pc %3 1:i1 -infer %1 - - -; start LHS (in figure-3-if) -%0 = block 2 -%1:i32 = var -%2 = add %1, 1:i32 -%3 = add %1, 2:i32 -%4 = phi %0, %2, %3 -%5 = and %4, 1:i32 -%6 = and %1, 1:i32 -%7 = ne %6, 0:i32 -blockpc %0 0 %7 1:i1 -%8 = eq %6, 0:i32 -blockpc %0 1 %8 1:i1 -infer %5 - - -; function: flips - -; start LHS (in flips) -%0 = sle 0:i32, 0:i32 -infer %0 - - -; start LHS (in flips) -%0 = sle 0:i32, 0:i32 -%1:i32 = zext %0 -%2 = ule 0:i32, %1 -infer %2 - - -; start LHS (in flips) -%0 = sle 0:i32, 0:i32 -%1:i32 = zext %0 -%2 = ule 0:i32, %1 -%3:i32 = zext %2 -%4 = slt 0:i32, %3 -infer %4 - - -; start LHS (in flips) -%0 = sle 0:i32, 0:i32 -%1:i32 = zext %0 -%2 = ule 0:i32, %1 -%3:i32 = zext %2 -%4 = slt 0:i32, %3 -%5:i32 = zext %4 -%6 = ult 0:i32, %5 -infer %6 - - -; function: various-conditions-1 - -; start LHS (in various-conditions-1) -%0:i32 = var -%1 = add %0, 1:i32 -%2 = ne %0, 0:i32 -pc %2 1:i1 -infer %1 - - -; function: various-conditions-2 - -; start LHS (in various-conditions-2) -%0:i32 = var -%1 = slt %0, 0:i32 -infer %1 - - -; start LHS (in various-conditions-2) -%0:i32 = var -%1 = sub %0, 2:i32 -%2 = slt %0, 0:i32 -pc %2 1:i1 -infer %1 - - -; function: various-conditions-3 - -; start LHS (in various-conditions-3) -%0:i32 = var -%1 = sub %0, 4:i32 -%2:i32 = var -%3 = ne %2, 0:i32 -pc %3 1:i1 -infer %1 - - -; function: various-conditions-4 - -; function: unaries - -; start LHS (in unaries) -%0:i32 = var -%1 = eq %0, 0:i32 -infer %1 - - -; start LHS (in unaries) -%0:i32 = var -%1 = cttz %0 -%2:i32 = var -%3 = eq %2, 0:i32 -pc %3 1:i1 -infer %1 - - -; start LHS (in unaries) -%0:i32 = var -%1 = ctlz %0 -%2 = eq %0, 0:i32 -pc %2 1:i1 -infer %1 - - -; start LHS (in unaries) -%0:i32 = var -%1 = ctpop %0 -%2:i32 = var -%3 = eq %2, 0:i32 -pc %3 1:i1 -infer %1 - - -; start LHS (in unaries) -%0:i32 = var -%1 = ctlz %0 -%2:i32 = var -%3 = ctpop %2 -%4 = sub %1, %3 -%5 = eq %0, 0:i32 -pc %5 1:i1 -infer %4 - - -; start LHS (in unaries) -%0:i32 = var -%1 = cttz %0 -%2:i32 = var -%3 = ctlz %2 -%4 = ctpop %0 -%5 = sub %3, %4 -%6 = add %1, %5 -%7 = eq %2, 0:i32 -pc %7 1:i1 -infer %6 - - -; function: unary-condition - -; start LHS (in unary-condition) -%0:i32 = var -%1 = ult 1:i32, %0 -infer %1 - - -; start LHS (in unary-condition) -%0:i32 = var -%1 = ult 1:i32, %0 -%2:i32 = zext %1 -%3 = cttz %2 -infer %3 - - -; start LHS (in unary-condition) -%0:i32 = var -%1 = add %0, 2:i32 -%2 = ult 1:i32, %0 -%3:i32 = zext %2 -%4 = cttz %3 -%5 = ne %4, 0:i32 -pc %5 1:i1 -infer %1 - - -; function: unary-condition-2 - -; start LHS (in unary-condition-2) -%0:i32 = var -%1 = ult 1:i32, %0 -infer %1 - - -; start LHS (in unary-condition-2) -%0:i32 = var -%1 = ult 1:i32, %0 -%2:i32 = zext %1 -%3 = eq %2, 0:i32 -infer %3 - - -; start LHS (in unary-condition-2) -%0:i32 = var -%1 = add %0, 2:i32 -%2 = ult 1:i32, %0 -%3:i32 = zext %2 -%4 = eq %3, 0:i32 -pc %4 1:i1 -infer %1 - - -; function: if-else-cond - -; start LHS (in if-else-cond) -%0:i32 = var -%1 = slt %0, 1:i32 -infer %1 - - -; start LHS (in if-else-cond) -%0:i32 = var -%1 = add %0, 1:i32 -%2 = slt %0, 1:i32 -pc %2 1:i1 -infer %1 - - -; start LHS (in if-else-cond) -%0:i32 = var -%1 = add %0, 2:i32 -%2 = slt %0, 1:i32 -%3:i32 = zext %2 -%4 = eq %3, 0:i32 -pc %4 1:i1 -infer %1 - - -; start LHS (in if-else-cond) -%0 = block 2 -%1:i32 = var -%2 = add %1, 1:i32 -%3 = add %1, 2:i32 -%4 = phi %0, %2, %3 -%5 = and %4, 1:i32 -%6 = slt %1, 1:i32 -blockpc %0 0 %6 1:i1 -%7:i32 = zext %6 -%8 = eq %7, 0:i32 -blockpc %0 1 %8 1:i1 -infer %5 - - -; function: trivial-ret - -; start LHS (in trivial-ret) -%0 = add 0:i32, 1:i32 -infer %0 - - -; function: trivial-const - -; function: trivial-const-block - -; function: bad-phi-value - -; function: bad-phi-value-2 - -; function: select - -; start LHS (in select) -%0 = ne 3:i32, 0:i32 -infer %0 - - -; start LHS (in select) -%0 = ne 3:i32, 0:i32 -%1 = select %0, 1:i32, 2:i32 -infer %1 - - -; function: select-2 - -; start LHS (in select-2) -%0:i32 = var -%1:i32 = var -%2 = add %0, %1 -infer %2 - - -; start LHS (in select-2) -%0:i32 = var -%1 = add %0, 1:i32 -infer %1 - - -; start LHS (in select-2) -%0:i32 = var -%1 = add 2:i32, %0 -infer %1 - - -; start LHS (in select-2) -%0:i32 = var -%1 = add 2:i32, %0 -%2 = ne %1, 0:i32 -infer %2 - - -; start LHS (in select-2) -%0:i32 = var -%1 = add 2:i32, %0 -%2 = ne %1, 0:i32 -%3:i32 = var -%4 = add %3, %0 -%5 = add %3, 1:i32 -%6 = select %2, %4, %5 -infer %6 - - -; function: block-phi-1 - -; start LHS (in block-phi-1) -%0:i32 = var -%1 = add %0, 1:i32 -infer %1 - - -; start LHS (in block-phi-1) -%0:i32 = var -%1 = add %0, 2:i32 -infer %1 - - -; start LHS (in block-phi-1) -%0 = block 2 -%1:i32 = var -%2 = add %1, 2:i32 -%3 = phi %0, %1, %2 -%4 = add %3, 3:i32 -infer %4 - - -; function: block-phi-2 - -; start LHS (in block-phi-2) -%0 = block 2 -%1 = phi %0, 1:i32, 2:i32 -%2 = add %1, 3:i32 -infer %2 - - -; function: zero_init-phi-bad_type - -; function: phi-bad-type - -; function: phi-one-side-i1 - -; start LHS (in phi-one-side-i1) -%0:i32 = var -%1:i32 = var -%2 = sle %0, %1 -infer %2 - - -; start LHS (in phi-one-side-i1) -%0:i32 = var -%1:i32 = var -%2 = eq %0, %1 -%3 = sle %0, %1 -pc %3 1:i1 -infer %2 - - -; start LHS (in phi-one-side-i1) -%0:i32 = var -%1:i32 = var -%2 = add %0, %1 -%3 = sle %0, %1 -%4:i32 = zext %3 -%5 = eq %4, 0:i32 -pc %5 1:i1 -infer %2 - - -; function: call - -; start LHS (in call) -%0:i32 = var -%1:i32 = var -%2 = add %0, %1 -infer %2 - - -; start LHS (in call) -%0:i32 = var -%1 = add 10:i32, %0 -infer %1 - - -; start LHS (in call) -%0:i32 = var -%1:i32 = var -%2 = add %0, %1 -%3:i32 = var -%4 = add 10:i32, %3 -%5 = mul %2, %4 -infer %5 - - -; function: in-unreachable-1 - -; function: in-unreachable-2 - -; function: in-unreachable-3 - -; function: in-unreachable-4 - -; function: in-unreachable-br_if - -; function: in-unreachable-big - -; function: in-unreachable-operations - -; function: merge-with-one-less - -; function: deep - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -infer %1 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -infer %2 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -infer %3 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -infer %4 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -infer %5 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -infer %6 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -infer %7 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -infer %8 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -%9 = xor %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = mul %0, 1234:i32 -%2 = xor %1, 1234:i32 -%3 = mul %2, 1234:i32 -%4 = xor %3, 1234:i32 -%5 = mul %4, 1234:i32 -%6 = xor %5, 1234:i32 -%7 = mul %6, 1234:i32 -%8 = xor %7, 1234:i32 -%9 = mul %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -%9 = xor %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = mul %0, 1234:i32 -%2 = xor %1, 1234:i32 -%3 = mul %2, 1234:i32 -%4 = xor %3, 1234:i32 -%5 = mul %4, 1234:i32 -%6 = xor %5, 1234:i32 -%7 = mul %6, 1234:i32 -%8 = xor %7, 1234:i32 -%9 = mul %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -%9 = xor %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = mul %0, 1234:i32 -%2 = xor %1, 1234:i32 -%3 = mul %2, 1234:i32 -%4 = xor %3, 1234:i32 -%5 = mul %4, 1234:i32 -%6 = xor %5, 1234:i32 -%7 = mul %6, 1234:i32 -%8 = xor %7, 1234:i32 -%9 = mul %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -%9 = xor %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = mul %0, 1234:i32 -%2 = xor %1, 1234:i32 -%3 = mul %2, 1234:i32 -%4 = xor %3, 1234:i32 -%5 = mul %4, 1234:i32 -%6 = xor %5, 1234:i32 -%7 = mul %6, 1234:i32 -%8 = xor %7, 1234:i32 -%9 = mul %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -%9 = xor %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = mul %0, 1234:i32 -%2 = xor %1, 1234:i32 -%3 = mul %2, 1234:i32 -%4 = xor %3, 1234:i32 -%5 = mul %4, 1234:i32 -%6 = xor %5, 1234:i32 -%7 = mul %6, 1234:i32 -%8 = xor %7, 1234:i32 -%9 = mul %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -%9 = xor %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = mul %0, 1234:i32 -%2 = xor %1, 1234:i32 -%3 = mul %2, 1234:i32 -%4 = xor %3, 1234:i32 -%5 = mul %4, 1234:i32 -%6 = xor %5, 1234:i32 -%7 = mul %6, 1234:i32 -%8 = xor %7, 1234:i32 -%9 = mul %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -%9 = xor %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = mul %0, 1234:i32 -%2 = xor %1, 1234:i32 -%3 = mul %2, 1234:i32 -%4 = xor %3, 1234:i32 -%5 = mul %4, 1234:i32 -%6 = xor %5, 1234:i32 -%7 = mul %6, 1234:i32 -%8 = xor %7, 1234:i32 -%9 = mul %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -%9 = xor %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = mul %0, 1234:i32 -%2 = xor %1, 1234:i32 -%3 = mul %2, 1234:i32 -%4 = xor %3, 1234:i32 -%5 = mul %4, 1234:i32 -%6 = xor %5, 1234:i32 -%7 = mul %6, 1234:i32 -%8 = xor %7, 1234:i32 -%9 = mul %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = xor %0, 1234:i32 -%2 = mul %1, 1234:i32 -%3 = xor %2, 1234:i32 -%4 = mul %3, 1234:i32 -%5 = xor %4, 1234:i32 -%6 = mul %5, 1234:i32 -%7 = xor %6, 1234:i32 -%8 = mul %7, 1234:i32 -%9 = xor %8, 1234:i32 -infer %9 - - -; start LHS (in deep) -%0:i32 = var -%1 = mul %0, 1234:i32 -%2 = xor %1, 1234:i32 -%3 = mul %2, 1234:i32 -%4 = xor %3, 1234:i32 -%5 = mul %4, 1234:i32 -%6 = xor %5, 1234:i32 -%7 = mul %6, 1234:i32 -%8 = xor %7, 1234:i32 -%9 = mul %8, 1234:i32 -infer %9 - - -; function: two-pcs - -; start LHS (in two-pcs) -%0:i64 = var -%1:i64 = var -%2 = slt %0, %1 -infer %2 - - -; start LHS (in two-pcs) -%0:i64 = var -%1 = eq %0, 0:i64 -%2:i64 = var -%3 = slt %0, %2 -pc %3 1:i1 -infer %1 - - -; start LHS (in two-pcs) -%0:i64 = var -%1:i64 = var -%2 = add %0, %1 -%3 = eq %0, 0:i64 -%4 = slt %0, %1 -pc %3 1:i1 -pc %4 1:i1 -infer %2 - - -; start LHS (in two-pcs) -%0:i64 = var -%1:i64 = var -%2 = sub %0, %1 -%3 = eq %0, 0:i64 -%4:i32 = zext %3 -%5 = eq %4, 0:i32 -%6 = slt %0, %1 -pc %5 1:i1 -pc %6 1:i1 -infer %2 - - -; start LHS (in two-pcs) -%0:i64 = var -%1 = eq %0, 0:i64 -%2:i64 = var -%3 = slt %2, %0 -%4:i32 = zext %3 -%5 = eq %4, 0:i32 -pc %5 1:i1 -infer %1 - - -; start LHS (in two-pcs) -%0:i64 = var -%1:i64 = var -%2 = mul %0, %1 -%3 = eq %1, 0:i64 -%4 = slt %0, %1 -%5:i32 = zext %4 -%6 = eq %5, 0:i32 -pc %3 1:i1 -pc %6 1:i1 -infer %2 - - -; start LHS (in two-pcs) -%0:i64 = var -%1:i64 = var -%2 = sdiv %0, %1 -%3 = eq %1, 0:i64 -%4:i32 = zext %3 -%5 = eq %4, 0:i32 -%6 = slt %0, %1 -%7:i32 = zext %6 -%8 = eq %7, 0:i32 -pc %5 1:i1 -pc %8 1:i1 -infer %2 - - -; function: loop-1 - -; start LHS (in loop-1) -%0 = add 1:i32, 2:i32 -infer %0 - - -; function: loop-2 - -; start LHS (in loop-2) -%0 = add 1:i32, 3:i32 -infer %0 - - -; start LHS (in loop-2) -%0 = add 2:i32, 4:i32 -infer %0 - - -; start LHS (in loop-2) -%0 = add 1:i32, 3:i32 -%1 = add 2:i32, 4:i32 -%2 = add %0, %1 -infer %2 - - -; function: loop-3 - -; start LHS (in loop-3) -%0:i32 = var -%1 = add %0, 3:i32 -infer %1 - - -; start LHS (in loop-3) -%0:i32 = var -%1 = add %0, 4:i32 -infer %1 - - -; start LHS (in loop-3) -%0:i32 = var -%1:i32 = var -%2 = add %0, %1 -infer %2 - - -; function: loop-4 - -; start LHS (in loop-4) -%0:i32 = var -%1 = add %0, 3:i32 -infer %1 - - -; start LHS (in loop-4) -%0:i32 = var -%1 = add %0, 2:i32 -infer %1 - - -; function: loop-5 - -; start LHS (in loop-5) -%0:i32 = var -%1 = add %0, 3:i32 -infer %1 - - -; start LHS (in loop-5) -%0:i32 = var -%1 = add %0, 2:i32 -infer %1 - - -; function: loop-6 - -; start LHS (in loop-6) -%0:i32 = var -%1 = add %0, 3:i32 -infer %1 - - -; start LHS (in loop-6) -%0:i32 = var -%1 = add %0, 2:i32 -infer %1 - - -; function: loop-7 - -; start LHS (in loop-7) -%0:i32 = var -%1 = add %0, 3:i32 -infer %1 - - -; start LHS (in loop-7) -%0:i32 = var -%1 = add %0, 5:i32 -infer %1 - - -; function: loop-8 - -; start LHS (in loop-8) -%0 = add 1:i32, 4:i32 -infer %0 - - -; start LHS (in loop-8) -%0:i32 = var -%1 = sub 1:i32, %0 -infer %1 - - -; start LHS (in loop-8) -%0 = add 1:i32, 4:i32 -%1:i32 = var -%2 = sub 1:i32, %1 -%3 = mul %0, %2 -infer %3 - - -; function: loop-9 - -; start LHS (in loop-9) -%0:i32 = var -%1:i32 = var -%2 = add %0, %1 -infer %2 - - -; function: loop-10 - -; start LHS (in loop-10) -%0:i32 = var -%1:i32 = var -%2 = add %0, %1 -infer %2 - - -; function: loop-multicond-1 - -; start LHS (in loop-multicond-1) -%0 = ne 6:i32, 0:i32 -infer %0 - - -; start LHS (in loop-multicond-1) -%0 = ne 6:i32, 0:i32 -%1 = select %0, 4:i32, 5:i32 -infer %1 - - -; function: loop-multicond-2 - -; start LHS (in loop-multicond-2) -%0:i32 = var -%1 = add %0, 4:i32 -infer %1 - - -; start LHS (in loop-multicond-2) -%0:i32 = var -%1 = add %0, 5:i32 -infer %1 - - -; start LHS (in loop-multicond-2) -%0 = add 3:i32, 6:i32 -infer %0 - - -; start LHS (in loop-multicond-2) -%0 = add 3:i32, 6:i32 -%1 = ne %0, 0:i32 -infer %1 - - -; start LHS (in loop-multicond-2) -%0 = add 3:i32, 6:i32 -%1 = ne %0, 0:i32 -%2:i32 = var -%3:i32 = var -%4 = select %1, %2, %3 -infer %4 - - -; function: loop-block-1 - -; start LHS (in loop-block-1) -%0:i32 = var -%1 = add %0, 4:i32 -infer %1 - - -; start LHS (in loop-block-1) -%0:i32 = var -%1 = add %0, 5:i32 -infer %1 - - -; start LHS (in loop-block-1) -%0:i32 = var -%1 = add %0, 6:i32 -infer %1 - - -; start LHS (in loop-block-1) -%0:i32 = var -%1 = ne %0, 0:i32 -infer %1 - - -; start LHS (in loop-block-1) -%0:i32 = var -%1 = ne %0, 0:i32 -%2:i32 = var -%3 = block 2 -%4:i32 = var -%5:i32 = var -%6 = phi %3, %4, %5 -%7 = select %1, %2, %6 -infer %7 - - -; function: loop-block-2 - -; start LHS (in loop-block-2) -%0:i32 = var -%1 = add %0, 4:i32 -infer %1 - - -; start LHS (in loop-block-2) -%0:i32 = var -%1 = add %0, 5:i32 -infer %1 - - -; start LHS (in loop-block-2) -%0:i32 = var -%1 = add %0, 6:i32 -infer %1 - - -; start LHS (in loop-block-2) -%0:i32 = var -%1 = ne %0, 0:i32 -infer %1 - - -; start LHS (in loop-block-2) -%0:i32 = var -%1 = ne %0, 0:i32 -%2:i32 = var -%3 = block 2 -%4:i32 = var -%5:i32 = var -%6 = phi %3, %4, %5 -%7 = select %1, %2, %6 -infer %7 - - -; function: bad-phi-type - -; function: loop-unreachable - -; function: phi-value-turns-bad - -; start LHS (in phi-value-turns-bad) -%0:i32 = var -%1 = ctlz %0 -%2 = eq %0, 0:i32 -pc %2 1:i1 -infer %1 - - -; function: multi-use - -; start LHS (in multi-use) -%0:i32 = var -%1 = add %0, 1:i32 -infer %1 - - -; start LHS (in multi-use) -%0:i32 = var -%1 = add %0, %0 -infer %1 - - -; function: multi-use-2 - -; start LHS (in multi-use-2) -%0:i32 = var -%1 = add %0, 1:i32 -infer %1 - - -; start LHS (in multi-use-2) -%0:i32 = var -%1 = mul %0, 2:i32 -infer %1 - - -; start LHS (in multi-use-2) -%0:i32 = var -%1 = mul %0, 2:i32 -%2 = sub %1, %0 -infer %2 - - -; function: many-single-uses-with-param - -; start LHS (in many-single-uses-with-param) -%0:i32 = var -%1 = mul 10:i32, %0 -infer %1 - - -; start LHS (in many-single-uses-with-param) -%0:i32 = var -%1 = cttz %0 -infer %1 - - -; start LHS (in many-single-uses-with-param) -%0:i32 = var -%1 = cttz %0 -%2 = sub %1, 20:i32 -infer %2 - - -; start LHS (in many-single-uses-with-param) -%0:i32 = var -%1 = mul 10:i32, %0 -%2 = cttz %0 -%3 = sub %2, 20:i32 -%4 = add %1, %3 -infer %4 - - -; start LHS (in many-single-uses-with-param) -%0:i32 = var -%1 = mul 10:i32, %0 -%2 = cttz %0 -%3 = sub %2, 20:i32 -%4 = add %1, %3 -%5 = eq %4, 0:i32 -infer %5 - - -; function: 55 - -; start LHS (in 55) -%0:i32 = var -%1 = add %0, -7:i32 -infer %1 - - -; start LHS (in 55) -%0:i32 = var -%1 = eq %0, 0:i32 -%2 = ne %0, 0:i32 -pc %2 1:i1 -infer %1 - - -; start LHS (in 55) -%0:i32 = var -%1:i32 = var -%2 = ne %0, %1 -%3 = ne %1, 0:i32 -pc %3 1:i1 -infer %2 - - -; function: multiple-uses-to-non-expression - -; start LHS (in multiple-uses-to-non-expression) -%0:i32 = var -%1 = add %0, 10:i32 -infer %1 - - -; start LHS (in multiple-uses-to-non-expression) -%0:i32 = var -%1 = add %0, 20:i32 -infer %1 - - -; function: nested-phi-forwarding - -; start LHS (in nested-phi-forwarding) -%0 = block 2 -%1:i32 = var -%2 = block 2 -%3 = block 2 -%4 = phi %3, %1, 1:i32 -%5 = phi %2, %1, %4 -%6 = phi %0, %1, %5 -%7 = or 1:i32, %6 -infer %7 - - -; function: zext-numGets - -; start LHS (in zext-numGets) -%0:i32 = var -%1 = eq %0, 0:i32 -infer %1 - - -; start LHS (in zext-numGets) -%0 = block 2 -%1:i32 = var -%2 = eq %1, 0:i32 -%3:i32 = zext %2 -%4 = phi %0, 1:i32, %3 -%5 = cttz %4 -infer %5 - - -; function: zext-numGets-hasAnotherUse - -; start LHS (in zext-numGets-hasAnotherUse) -%0:i32 = var -%1 = eq %0, 0:i32 -infer %1 - - -; start LHS (in zext-numGets-hasAnotherUse) -%0 = block 2 -%1:i32 = var -%2 = eq %1, 0:i32 -%3:i32 = zext %2 -%4 = phi %0, 1:i32, %3 -%5 = cttz %4 -infer %5 - - -; function: flipped-needs-right-origin - -; start LHS (in flipped-needs-right-origin) -%0 = block 2 -%1 = phi %0, 0:i32, 2:i32 -%2 = add %1, 4:i32 -infer %2 - - -; start LHS (in flipped-needs-right-origin) -%0 = block 2 -%1 = phi %0, 0:i32, 2:i32 -%2 = add %1, 4:i32 -%3 = slt %2, 3:i32 -infer %3 - - -; function: non-expr-nodes-may-have-multiple-uses-too-its-the-ORIGIN - -; start LHS (in non-expr-nodes-may-have-multiple-uses-too-its-the-ORIGIN) -%0:i32 = var -%1 = ult 1:i32, %0 -infer %1 - - -; start LHS (in non-expr-nodes-may-have-multiple-uses-too-its-the-ORIGIN) -%0:i32 = var -%1:i32 = zext %0 -%2 = sub 4:i32, %1 -infer %2 - - -; function: loop-of-set-connections - -; start LHS (in loop-of-set-connections) -%0 = add 0:i32, 1:i32 -%1 = ne 0:i32, 0:i32 -pc %1 1:i1 -infer %0 - - -; function: conditions-in-conditions - -; start LHS (in conditions-in-conditions) -%0 = sub 0:i32, 1:i32 -%1 = ne 0:i32, 0:i32 -pc %1 1:i1 -infer %0 - - -; start LHS (in conditions-in-conditions) -%0 = block 2 -%1 = block 2 -%2 = phi %1, 0:i32, 1:i32 -%3 = phi %0, %2, 1:i32 -%4 = add %3, 16:i32 -%5 = ne 0:i32, 0:i32 -blockpc %1 0 %5 1:i1 -%6 = eq 0:i32, 0:i32 -blockpc %1 1 %6 1:i1 -%7:i32 = var -%8 = phi %1, 1:i32, %7 -%9 = ne %8, 0:i32 -blockpc %0 0 %9 1:i1 -%10 = eq %8, 0:i32 -blockpc %0 1 %10 1:i1 -infer %4 - -(module - (type $i32_i32_=>_i32 (func (param i32 i32) (result i32))) - (type $i32_=>_i32 (func (param i32) (result i32))) - (type $i32_=>_none (func (param i32))) - (type $i32_i32_i32_=>_i32 (func (param i32 i32 i32) (result i32))) - (type $none_=>_i32 (func (result i32))) - (type $i32_i32_=>_none (func (param i32 i32))) - (type $none_=>_f64 (func (result f64))) - (type $i64_i64_i64_=>_i32 (func (param i64 i64 i64) (result i32))) - (type $none_=>_none (func)) - (type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32))) - (type $i64_i64_i64_=>_i64 (func (param i64 i64 i64) (result i64))) - (type $i64_i64_i32_f32_=>_none (func (param i64 i64 i32 f32))) - (type $i32_i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32 i32) (result i32))) - (memory $0 (shared 1 1)) - (export "replaced-print-internal" (func $55)) - (func $figure-1a (param $a i64) (param $x i64) (param $y i64) (result i32) - (local $i i32) - (local $j i32) - (local $r i32) - (local $6 i64) - (local $7 i64) - (local $8 i32) - (local $9 i64) - (local $10 i64) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (block - (nop) - (nop) - (nop) - (nop) - (nop) - (nop) - (nop) - (nop) - (local.set $12 - (i64.eq - (local.get $a) - (local.get $x) - ) - ) - (local.set $13 - (i64.ne - (local.get $a) - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $15 - (i32.and - (local.get $12) - (local.get $13) - ) - ) - (return - (local.get $15) - ) - (unreachable) - ) - (nop) - (return - (local.get $16) - ) - ) - (func $figure-1b (param $a i64) (param $x i64) (param $y i64) (result i32) - (local $i i32) - (local $j i32) - (local $r i32) - (local $6 i64) - (local $7 i64) - (local $8 i32) - (local $9 i64) - (local $10 i64) - (local $11 i32) - (local $12 i64) - (local $13 i64) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (block - (nop) - (nop) - (local.set $8 - (i64.lt_s - (local.get $x) - (local.get $y) - ) - ) - (if - (local.get $8) - (block - (block $block - (nop) - (nop) - (nop) - (nop) - (nop) - (nop) - (nop) - (nop) - (local.set $15 - (i64.eq - (local.get $a) - (local.get $x) - ) - ) - (local.set $16 - (i64.ne - (local.get $a) - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $18 - (i32.and - (local.get $15) - (local.get $16) - ) - ) - (return - (local.get $18) - ) - (unreachable) - ) - (unreachable) - ) - (block - (unreachable) - (unreachable) - ) - ) - ) - (unreachable) - ) - (func $figure-3-if (param $x i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (block - (block - (nop) - (local.set $2 - (i32.and - (local.get $x) - (i32.const 1) - ) - ) - (if - (local.get $2) - (block - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 1) - ) - ) - ) - (block - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 2) - ) - ) - ) - ) - ) - (nop) - (local.set $8 - (i32.and - (local.get $x) - (i32.const 1) - ) - ) - (return - (local.get $8) - ) - (unreachable) - ) - (nop) - (return - (local.get $9) - ) - ) - (func $flips - (local $x i32) - (local $y i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (nop) - (nop) - (nop) - (local.set $x - (i32.ge_s - (local.get $x) - (local.get $y) - ) - ) - (nop) - (nop) - (nop) - (local.set $x - (i32.ge_u - (local.get $x) - (local.get $y) - ) - ) - (nop) - (nop) - (nop) - (local.set $x - (i32.gt_s - (local.get $x) - (local.get $y) - ) - ) - (nop) - (nop) - (nop) - (local.set $x - (i32.gt_u - (local.get $x) - (local.get $y) - ) - ) - ) - (func $various-conditions-1 (param $x i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (nop) - (if - (local.get $x) - (block - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 1) - ) - ) - ) - ) - ) - (func $various-conditions-2 (param $x i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (nop) - (local.set $2 - (i32.lt_s - (local.get $x) - (i32.const 0) - ) - ) - (if - (local.get $2) - (block - (nop) - (nop) - (local.set $x - (i32.sub - (local.get $x) - (i32.const 2) - ) - ) - ) - ) - ) - (func $various-conditions-3 (param $x i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local.set $1 - (i32.reinterpret_f32 - (f32.const 0) - ) - ) - (if - (local.get $1) - (block - (nop) - (nop) - (local.set $x - (i32.sub - (local.get $x) - (i32.const 4) - ) - ) - ) - ) - ) - (func $various-conditions-4 (param $x i32) - (local $1 i32) - (local $2 i32) - (block - (unreachable) - (if - (unreachable) - (block - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 3) - ) - ) - ) - ) - ) - (unreachable) - ) - (func $unaries (param $x i32) (param $y i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (nop) - (local.set $3 - (i32.eqz - (local.get $x) - ) - ) - (if - (local.get $3) - (block - (nop) - (local.set $5 - (i32.ctz - (local.get $y) - ) - ) - (nop) - (local.set $7 - (i32.clz - (local.get $x) - ) - ) - (nop) - (local.set $9 - (i32.popcnt - (local.get $y) - ) - ) - (local.set $10 - (i32.sub - (local.get $7) - (local.get $9) - ) - ) - (nop) - (local.set $x - (i32.add - (local.get $5) - (local.get $10) - ) - ) - ) - ) - ) - (func $unary-condition (param $x i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (nop) - (local.set $2 - (i32.gt_u - (local.get $x) - (i32.const 1) - ) - ) - (local.set $3 - (i32.ctz - (local.get $2) - ) - ) - (if - (local.get $3) - (block - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 2) - ) - ) - ) - ) - ) - (func $unary-condition-2 (param $x i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (nop) - (local.set $2 - (i32.gt_u - (local.get $x) - (i32.const 1) - ) - ) - (local.set $3 - (i32.eqz - (local.get $2) - ) - ) - (if - (local.get $3) - (block - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 2) - ) - ) - ) - ) - ) - (func $if-else-cond (param $x i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (block - (block - (nop) - (local.set $2 - (i32.lt_s - (local.get $x) - (i32.const 1) - ) - ) - (if - (local.get $2) - (block - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 1) - ) - ) - ) - (block - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 2) - ) - ) - ) - ) - ) - (nop) - (local.set $8 - (i32.and - (local.get $x) - (i32.const 1) - ) - ) - (return - (local.get $8) - ) - (unreachable) - ) - (nop) - (return - (local.get $9) - ) - ) - (func $trivial-ret (result i32) - (local $0 i32) - (local.set $0 - (i32.add - (i32.const 0) - (i32.const 1) - ) - ) - (return - (local.get $0) - ) - ) - (func $trivial-const (result i32) - (return - (i32.const 0) - ) - ) - (func $trivial-const-block (result i32) - (local $0 i32) - (local $1 i32) - (block - (nop) - (nop) - ) - (local.set $1 - (i32.const 0) - ) - (return - (local.get $1) - ) - ) - (func $bad-phi-value (result i32) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (block - (if - (i32.const 1) - (block - (nop) - (local.set $1 - (i32.load - (i32.const 0) - ) - ) - ) - (local.set $1 - (i32.const 0) - ) - ) - (nop) - (if - (local.get $1) - (local.set $3 - (i32.const 0) - ) - (local.set $3 - (i32.const 1) - ) - ) - ) - (nop) - (return - (local.get $3) - ) - ) - (func $bad-phi-value-2 (param $x i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (block - (block - (if - (i32.const 1) - (block - (nop) - (local.set $2 - (i32.load - (i32.const 0) - ) - ) - ) - (local.set $2 - (i32.const 0) - ) - ) - (nop) - (if - (local.get $2) - (local.set $x - (i32.const 1) - ) - (local.set $x - (i32.const 2) - ) - ) - ) - (nop) - (nop) - ) - (nop) - (return - (local.get $x) - ) - ) - (func $select (param $x i32) (result i32) - (local $1 i32) - (local.set $1 - (select - (i32.const 1) - (i32.const 2) - (i32.const 3) - ) - ) - (return - (local.get $1) - ) - (unreachable) - ) - (func $select-2 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (nop) - (nop) - (local.set $4 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (nop) - (local.set $6 - (i32.add - (local.get $x) - (i32.const 1) - ) - ) - (nop) - (local.set $8 - (i32.add - (i32.const 2) - (local.get $y) - ) - ) - (local.set $9 - (select - (local.get $4) - (local.get $6) - (local.get $8) - ) - ) - (return - (local.get $9) - ) - (unreachable) - ) - (func $block-phi-1 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (block - (block $out - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 1) - ) - ) - (nop) - (br_if $out - (local.get $y) - ) - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 2) - ) - ) - ) - (nop) - (nop) - (nop) - ) - (local.set $10 - (i32.add - (local.get $x) - (i32.const 3) - ) - ) - (return - (local.get $10) - ) - ) - (func $block-phi-2 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (block - (block $out - (local.set $x - (i32.const 1) - ) - (nop) - (br_if $out - (local.get $y) - ) - (local.set $x - (i32.const 2) - ) - ) - (nop) - (nop) - (nop) - ) - (local.set $6 - (i32.add - (local.get $x) - (i32.const 3) - ) - ) - (return - (local.get $6) - ) - ) - (func $zero_init-phi-bad_type (result f64) - (local $x f64) - (local $1 f64) - (local $2 f64) - (local $3 f64) - (block - (if - (i32.const 0) - (local.set $x - (f64.const 1) - ) - ) - (nop) - (nop) - ) - (nop) - (return - (local.get $x) - ) - ) - (func $phi-bad-type (result f64) - (local $0 f64) - (local $1 f64) - (local $2 f64) - (local $3 f64) - (block $label$1 - (if - (i32.const 0) - (local.set $0 - (f64.const 0) - ) - (local.set $0 - (f64.const 1) - ) - ) - (nop) - (nop) - ) - (nop) - (return - (local.get $0) - ) - ) - (func $phi-one-side-i1 (param $x i32) (param $y i32) (result i32) - (local $i i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (block - (block - (nop) - (nop) - (local.set $5 - (i32.le_s - (local.get $x) - (local.get $y) - ) - ) - (if - (local.get $5) - (block - (nop) - (nop) - (nop) - (local.set $i - (i32.eq - (local.get $x) - (local.get $y) - ) - ) - ) - (block - (nop) - (nop) - (nop) - (local.set $i - (i32.add - (local.get $x) - (local.get $y) - ) - ) - ) - ) - ) - (nop) - (nop) - ) - (nop) - (return - (local.get $i) - ) - ) - (func $call (result i32) - (local $0 i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local.set $0 - (call $call) - ) - (local.set $1 - (call $call) - ) - (local.set $2 - (i32.add - (local.get $0) - (local.get $1) - ) - ) - (local.set $3 - (call $call) - ) - (local.set $4 - (i32.add - (i32.const 10) - (local.get $3) - ) - ) - (local.set $5 - (i32.mul - (local.get $2) - (local.get $4) - ) - ) - (return - (local.get $5) - ) - (unreachable) - ) - (func $in-unreachable-1 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (block - (block - (nop) - (if - (local.get $x) - (block - (block $block - (local.set $x - (i32.const 1) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (unreachable) - ) - (local.set $x - (i32.const 2) - ) - ) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (nop) - (return - (local.get $5) - ) - ) - (func $in-unreachable-2 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (block - (block - (nop) - (if - (local.get $x) - (block - (block $block - (local.set $x - (i32.const 1) - ) - (unreachable) - (unreachable) - ) - (unreachable) - ) - (local.set $x - (i32.const 2) - ) - ) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (nop) - (return - (local.get $4) - ) - ) - (func $in-unreachable-3 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (block - (block $out - (block - (nop) - (if - (local.get $x) - (block - (block $block - (local.set $x - (i32.const 1) - ) - (br $out) - (unreachable) - ) - (unreachable) - ) - (local.set $x - (i32.const 2) - ) - ) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (nop) - (return - (local.get $5) - ) - ) - (func $in-unreachable-4 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (block - (block $out - (block - (nop) - (if - (local.get $x) - (block - (block $block - (local.set $x - (i32.const 1) - ) - (br_table $out $out $out - (i32.const 1) - ) - (unreachable) - ) - (unreachable) - ) - (local.set $x - (i32.const 2) - ) - ) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (nop) - (return - (local.get $5) - ) - ) - (func $in-unreachable-br_if (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (block - (block $out - (block - (nop) - (if - (local.get $x) - (block $block - (local.set $x - (i32.const 1) - ) - (nop) - (br_if $out - (local.get $x) - ) - ) - (local.set $x - (i32.const 2) - ) - ) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (nop) - (return - (local.get $6) - ) - ) - (func $in-unreachable-big (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (block $label$1 - (block $label$2 - (block $label$3 - (block - (nop) - (if - (local.get $2) - (block - (block - (nop) - (if - (local.get $0) - (block - (block $block - (local.set $1 - (i32.const -8531) - ) - (br $label$3) - (unreachable) - ) - (unreachable) - ) - (block - (block $block3 - (local.set $1 - (i32.const -8531) - ) - (br $label$1) - (unreachable) - ) - (unreachable) - ) - ) - ) - (unreachable) - ) - ) - ) - (br $label$2) - (unreachable) - ) - (local.set $6 - (i32.load - (i32.const 0) - ) - ) - (drop - (local.get $6) - ) - (br $label$1) - (unreachable) - ) - (nop) - (i32.store16 - (i32.const 1) - (local.get $1) - ) - (unreachable) - (unreachable) - ) - (i32.store16 - (i32.const 0) - (i32.const -8531) - ) - ) - (func $in-unreachable-operations (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (block $block - (unreachable) - (unreachable) - (block - (nop) - (if - (local.get $x) - (local.set $x - (i32.const 1) - ) - (local.set $x - (i32.const 2) - ) - ) - ) - (nop) - (return - (local.get $x) - ) - (unreachable) - ) - (unreachable) - ) - (func $merge-with-one-less (param $var$0 i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (block - (block $label$1 - (block $label$2 - (block $label$3 - (block $label$4 - (block $label$5 - (local.set $1 - (i32.load - (i32.const 1) - ) - ) - (br_table $label$5 $label$4 $label$3 $label$2 - (local.get $1) - ) - (unreachable) - ) - (unreachable) - (unreachable) - ) - (br $label$1) - (unreachable) - ) - (local.set $var$0 - (i32.const 8) - ) - (nop) - (local.set $3 - (i32.load - (local.get $var$0) - ) - ) - (f64.store - (local.get $3) - (f64.const 0) - ) - (br $label$1) - (unreachable) - ) - (unreachable) - (unreachable) - ) - (nop) - (i32.store - (local.get $var$0) - (i32.const 16) - ) - (nop) - ) - (local.set $6 - (i32.const 1) - ) - (return - (local.get $6) - ) - ) - (func $deep (param $x i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (local $18 i32) - (local $19 i32) - (local $20 i32) - (local $21 i32) - (local $22 i32) - (local $23 i32) - (local $24 i32) - (local $25 i32) - (local $26 i32) - (local $27 i32) - (local $28 i32) - (local $29 i32) - (local $30 i32) - (local $31 i32) - (local $32 i32) - (local $33 i32) - (local $34 i32) - (local $35 i32) - (local $36 i32) - (local $37 i32) - (local $38 i32) - (local $39 i32) - (local $40 i32) - (local $41 i32) - (local $42 i32) - (local $43 i32) - (local $44 i32) - (local $45 i32) - (local $46 i32) - (local $47 i32) - (local $48 i32) - (local $49 i32) - (local $50 i32) - (local $51 i32) - (local $52 i32) - (local $53 i32) - (local $54 i32) - (local $55 i32) - (block - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.xor - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $x) - (i32.const 1234) - ) - ) - (nop) - (nop) - ) - (nop) - (return - (local.get $x) - ) - ) - (func $two-pcs (param $x i64) (param $y i64) (param $t i64) (result i64) - (local $3 i64) - (local $4 i64) - (local $5 i32) - (local $6 i64) - (local $7 i32) - (local $8 i64) - (local $9 i64) - (local $10 i64) - (local $11 i64) - (local $12 i64) - (local $13 i64) - (local $14 i64) - (local $15 i32) - (local $16 i64) - (local $17 i64) - (local $18 i64) - (local $19 i64) - (local $20 i64) - (local $21 i64) - (local $22 i64) - (local $23 i64) - (local $24 i64) - (block - (block - (nop) - (nop) - (local.set $5 - (i64.lt_s - (local.get $x) - (local.get $y) - ) - ) - (if - (local.get $5) - (block - (nop) - (local.set $7 - (i64.eqz - (local.get $x) - ) - ) - (if - (local.get $7) - (block - (nop) - (nop) - (nop) - (local.set $t - (i64.add - (local.get $x) - (local.get $y) - ) - ) - ) - (block - (nop) - (nop) - (nop) - (local.set $t - (i64.sub - (local.get $x) - (local.get $y) - ) - ) - ) - ) - ) - (block - (nop) - (local.set $15 - (i64.eqz - (local.get $y) - ) - ) - (if - (local.get $15) - (block - (nop) - (nop) - (nop) - (local.set $t - (i64.mul - (local.get $x) - (local.get $y) - ) - ) - ) - (block - (nop) - (nop) - (nop) - (local.set $t - (i64.div_s - (local.get $x) - (local.get $y) - ) - ) - ) - ) - ) - ) - ) - (nop) - (return - (local.get $t) - ) - (unreachable) - ) - (nop) - (return - (local.get $23) - ) - ) - (func $loop-1 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (loop $loopy - (nop) - ) - (nop) - (nop) - (local.set $4 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (return - (local.get $4) - ) - (unreachable) - ) - (nop) - (return - (local.get $5) - ) - ) - (func $loop-2 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (loop $loopy - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 3) - ) - ) - (nop) - (nop) - (local.set $y - (i32.add - (local.get $y) - (i32.const 4) - ) - ) - ) - (nop) - (nop) - (local.set $8 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (return - (local.get $8) - ) - (unreachable) - ) - (nop) - (return - (local.get $9) - ) - ) - (func $loop-3 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (loop $loopy - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 3) - ) - ) - (nop) - (nop) - (local.set $y - (i32.add - (local.get $y) - (i32.const 4) - ) - ) - (nop) - (br_if $loopy - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $9 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (return - (local.get $9) - ) - (unreachable) - ) - (nop) - (return - (local.get $10) - ) - ) - (func $loop-4 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (loop $loopy - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 3) - ) - ) - (nop) - (br_if $loopy - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $7 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (return - (local.get $7) - ) - (unreachable) - ) - (nop) - (return - (local.get $8) - ) - ) - (func $loop-5 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (loop $loopy - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 3) - ) - ) - (local.set $y - (i32.const 2) - ) - (nop) - (br_if $loopy - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $7 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (return - (local.get $7) - ) - (unreachable) - ) - (nop) - (return - (local.get $8) - ) - ) - (func $loop-6 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (loop $loopy - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 3) - ) - ) - (nop) - (nop) - (nop) - (br_if $loopy - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $8 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (return - (local.get $8) - ) - (unreachable) - ) - (nop) - (return - (local.get $9) - ) - ) - (func $loop-7 (param $x i32) (param $y i32) (result i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (loop $loopy - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 3) - ) - ) - (local.set $y - (i32.const 5) - ) - (nop) - (br_if $loopy - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $7 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (return - (local.get $7) - ) - (unreachable) - ) - (nop) - (return - (local.get $8) - ) - ) - (func $loop-8 (param $x i32) (param $y i32) (result i32) - (local $z i32) - (local $w i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (loop $loopy - (nop) - (local.set $z - (local.get $x) - ) - (nop) - (local.set $w - (local.get $y) - ) - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 4) - ) - (nop) - (br_if $loopy - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $9 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $12 - (i32.sub - (local.get $z) - (local.get $w) - ) - ) - (local.set $13 - (i32.mul - (local.get $9) - (local.get $12) - ) - ) - (return - (local.get $13) - ) - (unreachable) - ) - (nop) - (return - (local.get $14) - ) - ) - (func $loop-9 (param $x i32) (param $y i32) (result i32) - (local $t i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (loop $loopy - (nop) - (local.set $t - (local.get $x) - ) - (nop) - (local.set $x - (local.get $y) - ) - (nop) - (local.set $y - (local.get $t) - ) - (nop) - (br_if $loopy - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $9 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (return - (local.get $9) - ) - (unreachable) - ) - (nop) - (return - (local.get $10) - ) - ) - (func $loop-10 (param $x i32) (param $y i32) (result i32) - (local $t i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 1) - ) - (loop $loopy - (nop) - (local.set $t - (local.get $x) - ) - (nop) - (local.set $x - (local.get $y) - ) - (nop) - (local.set $y - (local.get $t) - ) - (nop) - (br_if $loopy - (local.get $y) - ) - ) - (nop) - (nop) - (local.set $9 - (i32.add - (local.get $x) - (local.get $y) - ) - ) - (return - (local.get $9) - ) - (unreachable) - ) - (nop) - (return - (local.get $10) - ) - ) - (func $loop-multicond-1 (param $x i32) (param $y i32) (param $z i32) (result i32) - (local $t i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (local.set $z - (i32.const 3) - ) - (loop $loopy - (local.set $x - (i32.const 4) - ) - (nop) - (br_if $loopy - (local.get $t) - ) - (local.set $y - (i32.const 5) - ) - (nop) - (br_if $loopy - (local.get $t) - ) - (local.set $z - (i32.const 6) - ) - ) - (nop) - (nop) - (nop) - (local.set $9 - (select - (local.get $x) - (local.get $y) - (local.get $z) - ) - ) - (return - (local.get $9) - ) - (unreachable) - ) - (nop) - (return - (local.get $10) - ) - ) - (func $loop-multicond-2 (param $x i32) (param $y i32) (param $z i32) (result i32) - (local $t i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (local.set $z - (i32.const 3) - ) - (loop $loopy - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 4) - ) - ) - (nop) - (br_if $loopy - (local.get $t) - ) - (nop) - (nop) - (local.set $y - (i32.add - (local.get $y) - (i32.const 5) - ) - ) - (nop) - (br_if $loopy - (local.get $t) - ) - (nop) - (nop) - (local.set $z - (i32.add - (local.get $z) - (i32.const 6) - ) - ) - ) - (nop) - (nop) - (nop) - (local.set $15 - (select - (local.get $x) - (local.get $y) - (local.get $z) - ) - ) - (return - (local.get $15) - ) - (unreachable) - ) - (nop) - (return - (local.get $16) - ) - ) - (func $loop-block-1 (param $x i32) (param $y i32) (param $z i32) (result i32) - (local $t i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (local.set $z - (i32.const 3) - ) - (loop $loopy - (block $out - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 4) - ) - ) - (nop) - (br_if $out - (local.get $t) - ) - (nop) - (nop) - (local.set $y - (i32.add - (local.get $y) - (i32.const 5) - ) - ) - (nop) - (br_if $out - (local.get $t) - ) - (nop) - (nop) - (local.set $z - (i32.add - (local.get $z) - (i32.const 6) - ) - ) - (br $loopy) - (unreachable) - ) - ) - (nop) - (nop) - (nop) - (local.set $15 - (select - (local.get $x) - (local.get $y) - (local.get $z) - ) - ) - (return - (local.get $15) - ) - (unreachable) - ) - (nop) - (return - (local.get $16) - ) - ) - (func $loop-block-2 (param $x i32) (param $y i32) (param $z i32) (result i32) - (local $t i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (local $17 i32) - (block - (local.set $x - (i32.const 1) - ) - (local.set $y - (i32.const 2) - ) - (local.set $z - (i32.const 3) - ) - (block $out - (loop $loopy - (block - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 4) - ) - ) - (nop) - (br_if $out - (local.get $t) - ) - (nop) - (nop) - (local.set $y - (i32.add - (local.get $y) - (i32.const 5) - ) - ) - (nop) - (br_if $out - (local.get $t) - ) - (nop) - (nop) - (local.set $z - (i32.add - (local.get $z) - (i32.const 6) - ) - ) - (br $loopy) - (unreachable) - ) - (unreachable) - ) - (unreachable) - ) - (nop) - (nop) - (nop) - (local.set $15 - (select - (local.get $x) - (local.get $y) - (local.get $z) - ) - ) - (return - (local.get $15) - ) - (unreachable) - ) - (nop) - (return - (local.get $16) - ) - ) - (func $bad-phi-type (param $var$0 i64) (param $var$1 i64) (param $var$2 i32) (param $var$3 f32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 f64) - (local $9 f64) - (local $10 f64) - (local $11 f64) - (nop) - (if - (local.get $var$2) - (block - (loop $label$2 - (block - (block - (block $label$3 - (if - (i32.const 0) - (block - (unreachable) - (unreachable) - ) - ) - (nop) - (nop) - ) - (local.set $6 - (i32.const 0) - ) - (if - (local.get $6) - (block - (unreachable) - (unreachable) - ) - ) - ) - (nop) - (br_if $label$2 - (local.get $var$2) - ) - (nop) - ) - (nop) - (local.set $10 - (f64.const 0) - ) - ) - (nop) - (drop - (local.get $10) - ) - ) - ) - ) - (func $loop-unreachable - (local $var$0 i32) - (local $var$1 f64) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 f64) - (local $12 f64) - (local $13 f64) - (loop $label$1 - (block - (block $label$2 - (block $label$3 - (block $label$4 - (if - (i32.const 1337) - (block - (unreachable) - (unreachable) - ) - ) - (nop) - (nop) - ) - (nop) - (nop) - (loop $label$6 - (block $label$7 - (nop) - (local.set $6 - (local.get $var$0) - ) - (br_if $label$7 - (i32.const 65535) - ) - (nop) - (drop - (local.get $6) - ) - (nop) - (local.set $6 - (local.get $var$0) - ) - (br_if $label$7 - (i32.const 0) - ) - (nop) - (drop - (local.get $6) - ) - (unreachable) - (unreachable) - ) - (nop) - (br_if $label$6 - (local.get $6) - ) - ) - ) - (nop) - (nop) - ) - (nop) - (nop) - (br $label$1) - (unreachable) - ) - (unreachable) - ) - (unreachable) - ) - (func $phi-value-turns-bad (result f64) - (local $var$0 i32) - (local $var$1 i32) - (local $var$2 f32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 f32) - (local $13 f32) - (local $14 f32) - (local $15 f32) - (local $16 f64) - (local $17 f64) - (block - (block - (nop) - (local.set $var$0 - (i32.atomic.rmw16.sub_u offset=22 - (i32.const 0) - (i32.const 0) - ) - ) - (nop) - (if - (local.get $var$0) - (block - (unreachable) - (unreachable) - ) - (block - (block $block - (block - (loop $label$3 - (block $label$4 - (nop) - (local.set $6 - (local.get $var$0) - ) - (br_if $label$4 - (i32.const 1) - ) - (nop) - (nop) - (local.set $6 - (i32.clz - (local.get $6) - ) - ) - ) - (nop) - (nop) - ) - (nop) - (if - (local.get $6) - (nop) - ) - ) - (nop) - ) - (nop) - (local.set $14 - (f32.const 1) - ) - ) - ) - ) - (nop) - (nop) - (unreachable) - (unreachable) - ) - (nop) - (return - (local.get $16) - ) - ) - (func $multi-use (param $x i32) (result i32) - (local $temp i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (block - (nop) - (nop) - (local.set $temp - (i32.add - (local.get $x) - (i32.const 1) - ) - ) - (nop) - (nop) - (nop) - (nop) - ) - (local.set $8 - (i32.add - (local.get $temp) - (local.get $temp) - ) - ) - (return - (local.get $8) - ) - ) - (func $multi-use-2 (param $x i32) (result i32) - (local $temp i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (block - (nop) - (nop) - (local.set $temp - (i32.add - (local.get $x) - (i32.const 1) - ) - ) - (nop) - (nop) - (local.set $x - (i32.mul - (local.get $temp) - (i32.const 2) - ) - ) - (nop) - (nop) - (nop) - (nop) - ) - (local.set $10 - (i32.sub - (local.get $x) - (local.get $temp) - ) - ) - (return - (local.get $10) - ) - ) - (func $many-single-uses-with-param (param $x i32) (result i32) - (local $1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (nop) - (local.set $2 - (i32.mul - (i32.const 10) - (local.get $x) - ) - ) - (nop) - (local.set $4 - (i32.ctz - (local.get $x) - ) - ) - (local.set $5 - (i32.sub - (local.get $4) - (i32.const 20) - ) - ) - (local.set $6 - (i32.add - (local.get $2) - (local.get $5) - ) - ) - (local.set $7 - (i32.eqz - (local.get $6) - ) - ) - (return - (local.get $7) - ) - (unreachable) - ) - (func $55 (param $var$0 i32) - (local $var$1 i32) - (local $var$2 i32) - (local $var$3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (nop) - (nop) - (local.set $var$0 - (i32.add - (local.get $var$0) - (i32.const -7) - ) - ) - (nop) - (if - (local.get $var$0) - (block $label$2 - (block $label$3 - (nop) - (local.set $var$1 - (local.get $var$0) - ) - (nop) - (local.set $8 - (i32.const 12) - ) - (br_if $label$3 - (local.get $8) - ) - (unreachable) - (unreachable) - ) - (nop) - (local.set $10 - (i32.eqz - (local.get $var$1) - ) - ) - (br_if $label$2 - (local.get $10) - ) - (block - (local.set $11 - (i32.load - (i32.const 0) - ) - ) - (nop) - (local.set $13 - (i32.ne - (local.get $11) - (local.get $var$0) - ) - ) - (if - (local.get $13) - (block - (unreachable) - (unreachable) - ) - ) - ) - (unreachable) - (unreachable) - ) - ) - ) - (func $multiple-uses-to-non-expression (param $x i32) - (local $temp i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (nop) - (nop) - (local.set $x - (i32.add - (local.get $x) - (i32.const 10) - ) - ) - (nop) - (i32.store - (i32.const 1) - (local.get $x) - ) - (nop) - (local.set $6 - (i32.add - (local.get $x) - (i32.const 20) - ) - ) - (i32.store - (i32.const 2) - (local.get $6) - ) - ) - (func $nested-phi-forwarding (param $var$0 i32) (result i32) - (local $var$1 i32) - (local $var$2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (block - (block $label$1 - (block $label$2 - (loop $label$3 - (block $label$4 - (block $label$5 - (block $label$6 - (block $label$7 - (block $label$8 - (nop) - (br_table $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$8 $label$2 $label$2 $label$2 $label$6 $label$2 $label$2 $label$7 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$2 $label$5 $label$4 - (local.get $var$0) - ) - (unreachable) - ) - (local.set $var$1 - (i32.const 1) - ) - ) - (br $label$4) - (unreachable) - ) - (unreachable) - (unreachable) - ) - (br $label$1) - (unreachable) - ) - (local.set $var$2 - (i32.const 1) - ) - (nop) - (br_if $label$3 - (local.get $var$2) - ) - ) - ) - (block $label$9 - (nop) - (local.set $6 - (i32.or - (i32.const 1) - (local.get $var$1) - ) - ) - (br_if $label$9 - (local.get $6) - ) - ) - (unreachable) - (unreachable) - ) - (nop) - (i32.store offset=176 - (i32.const 0) - (local.get $var$2) - ) - (nop) - ) - (local.set $9 - (i32.const 0) - ) - (return - (local.get $9) - ) - ) - (func $zext-numGets (param $var$0 i32) (param $var$1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (block $label$1 - (local.set $2 - (i32.load - (i32.const -8) - ) - ) - (local.set $3 - (i32.const 1) - ) - (br_if $label$1 - (local.get $2) - ) - (nop) - (drop - (local.get $3) - ) - (local.set $5 - (i32.load - (i32.const -16) - ) - ) - (nop) - (local.set $3 - (i32.eqz - (local.get $5) - ) - ) - ) - (nop) - (local.set $8 - (i32.ctz - (local.get $3) - ) - ) - (if - (local.get $8) - (block - (unreachable) - (unreachable) - ) - ) - ) - (func $zext-numGets-hasAnotherUse (param $var$0 i32) (param $var$1 i32) - (local $temp i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (block $label$1 - (local.set $3 - (i32.load - (i32.const -8) - ) - ) - (local.set $4 - (i32.const 1) - ) - (br_if $label$1 - (local.get $3) - ) - (nop) - (drop - (local.get $4) - ) - (local.set $6 - (i32.load - (i32.const -16) - ) - ) - (nop) - (local.set $temp - (i32.eqz - (local.get $6) - ) - ) - (nop) - (drop - (local.get $temp) - ) - (nop) - (local.set $4 - (local.get $temp) - ) - ) - (nop) - (local.set $11 - (i32.ctz - (local.get $4) - ) - ) - (if - (local.get $11) - (block - (unreachable) - (unreachable) - ) - ) - ) - (func $flipped-needs-right-origin (param $var$0 i32) (result i32) - (local $var$1 i32) - (local $2 i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (block - (block $label$1 - (local.set $2 - (i32.load - (i32.const 1) - ) - ) - (br_if $label$1 - (local.get $2) - ) - (local.set $var$1 - (i32.const 2) - ) - ) - (block - (nop) - (local.set $4 - (i32.add - (local.get $var$1) - (i32.const 4) - ) - ) - (local.set $5 - (i32.gt_s - (i32.const 3) - (local.get $4) - ) - ) - (if - (local.get $5) - (block - (unreachable) - (unreachable) - ) - ) - ) - (nop) - ) - (local.set $7 - (i32.const 5) - ) - (return - (local.get $7) - ) - ) - (func $non-expr-nodes-may-have-multiple-uses-too-its-the-ORIGIN (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32) - (local $3 i32) - (local $4 i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (local $8 i32) - (local $9 i32) - (block - (nop) - (nop) - (local.set $var$1 - (i32.gt_u - (local.get $var$1) - (i32.const 1) - ) - ) - (nop) - (i32.store - (local.get $var$1) - (i32.const 2) - ) - (nop) - (local.set $7 - (i32.sub - (i32.const 4) - (local.get $var$1) - ) - ) - (i32.store offset=8 - (i32.const 3) - (local.get $7) - ) - (unreachable) - (unreachable) - ) - (nop) - (return - (local.get $8) - ) - ) - (func $loop-of-set-connections (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (param $var$3 i32) (param $var$4 i32) (result i32) - (local $5 i32) - (local $6 i32) - (local $7 i32) - (loop $label$1 - (block - (if - (i32.const 0) - (block - (block $block - (nop) - (local.set $var$2 - (i32.add - (i32.const 0) - (i32.const 1) - ) - ) - (br $label$1) - (unreachable) - ) - (unreachable) - ) - ) - (nop) - (nop) - (nop) - (nop) - (br $label$1) - (unreachable) - ) - (unreachable) - ) - (unreachable) - ) - (func $conditions-in-conditions (param $var$0 i32) (param $var$1 i32) (param $var$2 i32) (result i32) - (local $var$3 i32) - (local $var$4 i32) - (local $var$5 i32) - (local $var$6 i32) - (local $var$7 i32) - (local $var$8 i32) - (local $9 i32) - (local $10 i32) - (local $11 i32) - (local $12 i32) - (local $13 i32) - (local $14 i32) - (local $15 i32) - (local $16 i32) - (block - (local.set $var$1 - (i32.const 1) - ) - (if - (i32.const 0) - (loop $label$2 - (block - (nop) - (if - (local.get $var$1) - (nop) - ) - ) - (local.set $var$3 - (i32.const 1) - ) - (nop) - (nop) - (local.set $var$1 - (i32.sub - (i32.const 0) - (local.get $var$3) - ) - ) - (br_if $label$2 - (i32.const 0) - ) - ) - ) - (block - (nop) - (if - (local.get $var$1) - (local.set $var$3 - (i32.const 1) - ) - ) - ) - (nop) - (local.set $14 - (i32.add - (local.get $var$3) - (i32.const 16) - ) - ) - (i32.store - (i32.const 8) - (local.get $14) - ) - (i32.store - (i32.const 8) - (i32.const 64) - ) - (unreachable) - (unreachable) - ) - (nop) - (return - (local.get $15) - ) - ) -) |