diff options
Diffstat (limited to 'test/unit.fromasm.imprecise')
-rw-r--r-- | test/unit.fromasm.imprecise | 211 |
1 files changed, 200 insertions, 11 deletions
diff --git a/test/unit.fromasm.imprecise b/test/unit.fromasm.imprecise index d38321636..aca0185a2 100644 --- a/test/unit.fromasm.imprecise +++ b/test/unit.fromasm.imprecise @@ -768,25 +768,214 @@ ) (get_local $1) ) - (func $optimize_exprs_at_end (param $0 i32) + (func $relooperJumpThreading (param $0 i32) (result i32) + (block $jumpthreading$outer$0 + (block $jumpthreading$inner$0 + (if + (get_local $0) + (block + (call_import $h + (i32.const 0) + ) + (br $jumpthreading$inner$0) + ) + ) + (br $jumpthreading$outer$0) + ) + (call_import $h + (i32.const 1) + ) + ) + (call_import $h + (i32.const -1) + ) + (block $jumpthreading$inner$1 + (loop $while-in$1 + (br_if $while-in$1 + (i32.eqz + (tee_local $0 + (i32.add + (get_local $0) + (i32.const 1) + ) + ) + ) + ) + (call_import $h + (i32.const 2) + ) + (br $jumpthreading$inner$1) + ) + ) + (call_import $h + (i32.const 3) + ) + (call_import $h + (i32.const -2) + ) + (block $jumpthreading$outer$3 + (block $jumpthreading$inner$3 + (block $jumpthreading$outer$2 + (block $jumpthreading$inner$2 + (if + (get_local $0) + (block + (call_import $h + (i32.const 4) + ) + (br_if $jumpthreading$inner$2 + (i32.eq + (get_local $0) + (i32.const 3) + ) + ) + (br $jumpthreading$inner$3) + ) + ) + (br $jumpthreading$outer$2) + ) + (call_import $h + (i32.const 5) + ) + ) + (br $jumpthreading$outer$3) + ) + (call_import $h + (i32.const 6) + ) + ) + (call_import $h + (i32.const -3) + ) + (block $jumpthreading$outer$5 + (block $jumpthreading$inner$5 + (block $jumpthreading$outer$4 + (block $jumpthreading$inner$4 + (if + (get_local $0) + (block + (call_import $h + (i32.const 7) + ) + (br_if $jumpthreading$inner$4 + (i32.eq + (get_local $0) + (i32.const 5) + ) + ) + (br $jumpthreading$inner$5) + ) + ) + (br $jumpthreading$outer$4) + ) + (call_import $h + (i32.const 8) + ) + (br_if $jumpthreading$inner$5 + (i32.eq + (get_local $0) + (i32.const 6) + ) + ) + ) + (br $jumpthreading$outer$5) + ) + (call_import $h + (i32.const 9) + ) + ) + (call_import $h + (i32.const -4) + ) + (block $jumpthreading$outer$6 + (block $jumpthreading$inner$6 + (if + (get_local $0) + (block + (call_import $h + (i32.const 10) + ) + (br $jumpthreading$inner$6) + ) + ) + (br $jumpthreading$outer$6) + ) + (call_import $h + (i32.const 11) + ) + ) + (call_import $h + (i32.const -5) + ) + (block $jumpthreading$outer$8 + (block $jumpthreading$inner$8 + (block $jumpthreading$outer$7 + (block $jumpthreading$inner$7 + (if + (get_local $0) + (block + (call_import $h + (i32.const 12) + ) + (br_if $jumpthreading$inner$7 + (i32.eq + (get_local $0) + (i32.const 8) + ) + ) + (br $jumpthreading$inner$8) + ) + ) + (br $jumpthreading$outer$7) + ) + (call_import $h + (i32.const 13) + ) + (br_if $jumpthreading$inner$8 + (get_local $0) + ) + ) + (br $jumpthreading$outer$8) + ) + (call_import $h + (i32.const 14) + ) + ) + (call_import $h + (i32.const -6) + ) + (get_local $0) + ) + (func $relooperJumpThreading__ZN4game14preloadweaponsEv + (local $0 i32) (local $1 i32) (local $2 i32) (local $3 i32) + (local $4 i32) (loop $while-in$1 - (block $while-out$0 - (br_if $while-out$0 - (get_local $1) - ) - (br_if $while-in$1 - (i32.ne - (get_local $2) - (i32.const 1) + (block $jumpthreading$outer$1 + (block $jumpthreading$inner$1 + (if + (get_local $0) + (br_if $jumpthreading$inner$1 + (i32.eqz + (get_local $1) + ) + ) + (br_if $jumpthreading$inner$1 + (i32.eqz + (get_local $2) + ) + ) ) + (br $jumpthreading$outer$1) ) - (set_local $3 - (i32.const 5) + (i32.store + (get_local $3) + (get_local $4) ) ) + (br $while-in$1) ) ) ) |