| (module |
| (type $FUNCSIG$v (func)) |
| (type $FUNCSIG$i (func (result i32))) |
| (type $FUNCSIG$j (func (result i64))) |
| (type $FUNCSIG$vi (func (param i32))) |
| (type $FUNCSIG$ii (func (param i32) (result i32))) |
| (memory $0 1) |
| (global $glob (mut i32) (i32.const 1)) |
| (func $loop1 (; 0 ;) (type $FUNCSIG$v) |
| (drop |
| (i32.const 10) |
| ) |
| (loop $loop |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop2 (; 1 ;) (type $FUNCSIG$v) |
| (drop |
| (i32.const 10) |
| ) |
| (drop |
| (i32.const 20) |
| ) |
| (loop $loop |
| (nop) |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop3 (; 2 ;) (type $FUNCSIG$v) |
| (drop |
| (i32.const 10) |
| ) |
| (drop |
| (i32.const 20) |
| ) |
| (loop $loop |
| (nop) |
| (call $loop2) |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop4 (; 3 ;) (type $FUNCSIG$v) |
| (drop |
| (i32.load |
| (i32.const 1) |
| ) |
| ) |
| (loop $loop |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop3-4 (; 4 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (drop |
| (i32.load |
| (i32.const 10) |
| ) |
| ) |
| (call $loop2) |
| (drop |
| (i32.load |
| (i32.const 20) |
| ) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop3-4-b (; 5 ;) (type $FUNCSIG$v) |
| (drop |
| (i32.load |
| (i32.const 10) |
| ) |
| ) |
| (drop |
| (i32.load |
| (i32.const 20) |
| ) |
| ) |
| (loop $loop |
| (nop) |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop5 (; 6 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (i32.store |
| (i32.const 1) |
| (i32.const 2) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop6 (; 7 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (i32.store |
| (i32.const 1) |
| (i32.const 2) |
| ) |
| (i32.store |
| (i32.const 2) |
| (i32.const 3) |
| ) |
| ) |
| ) |
| (func $loop7 (; 8 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (i32.store |
| (i32.const 1) |
| (i32.const 2) |
| ) |
| (i32.store |
| (i32.const 2) |
| (i32.const 3) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop8 (; 9 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (i32.store |
| (i32.const 1) |
| (i32.const 2) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop9 (; 10 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (drop |
| (i32.load |
| (i32.const 1) |
| ) |
| ) |
| (i32.store |
| (i32.const 1) |
| (i32.const 2) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop10 (; 11 ;) (type $FUNCSIG$v) |
| (drop |
| (i32.load |
| (i32.const 1) |
| ) |
| ) |
| (drop |
| (i32.load |
| (i32.const 2) |
| ) |
| ) |
| (loop $loop |
| (nop) |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop11 (; 12 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (loop $loop |
| (drop |
| (local.get $x) |
| ) |
| (br_if $loop |
| (local.tee $x |
| (i32.const 2) |
| ) |
| ) |
| ) |
| ) |
| (func $loop12 (; 13 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (drop |
| (local.get $x) |
| ) |
| (loop $loop |
| (nop) |
| (br_if $loop |
| (local.tee $y |
| (i32.const 2) |
| ) |
| ) |
| ) |
| ) |
| (func $loop13 (; 14 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (local.set $x |
| (i32.eqz |
| (local.get $y) |
| ) |
| ) |
| (loop $loop |
| (nop) |
| (call $loop12) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop14 (; 15 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (local.set $x |
| (i32.eqz |
| (local.get $y) |
| ) |
| ) |
| (loop $loop |
| (nop) |
| (call $loop12) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| (local.set $y |
| (local.get $x) |
| ) |
| ) |
| ) |
| (func $loop14-1 (; 16 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (loop $loop |
| (local.set $x |
| (i32.eqz |
| (local.get $y) |
| ) |
| ) |
| (call $loop12) |
| (local.set $y |
| (local.get $x) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop15 (; 17 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (local.set $x |
| (i32.eqz |
| (local.get $y) |
| ) |
| ) |
| (loop $loop |
| (nop) |
| (call $loop12) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| (drop |
| (local.get $y) |
| ) |
| ) |
| ) |
| (func $loop15-1 (; 18 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (local.set $x |
| (i32.eqz |
| (local.get $y) |
| ) |
| ) |
| (drop |
| (local.get $y) |
| ) |
| (loop $loop |
| (nop) |
| (call $loop12) |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop16 (; 19 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (local.set $x |
| (i32.eqz |
| (local.get $y) |
| ) |
| ) |
| (loop $loop |
| (nop) |
| (call $loop12) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| (drop |
| (local.get $x) |
| ) |
| ) |
| ) |
| (func $loop16-1 (; 20 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (local.set $x |
| (i32.eqz |
| (local.get $y) |
| ) |
| ) |
| (drop |
| (local.get $x) |
| ) |
| (loop $loop |
| (nop) |
| (call $loop12) |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $loop16-2 (; 21 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (local.set $x |
| (i32.const 2) |
| ) |
| (block |
| (local.set $x |
| (i32.eqz |
| (local.get $y) |
| ) |
| ) |
| (drop |
| (local.get $x) |
| ) |
| (loop $loop |
| (nop) |
| (call $loop12) |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| ) |
| (func $loop16-3 (; 22 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (local.set $y |
| (i32.const 2) |
| ) |
| (block |
| (local.set $x |
| (i32.eqz |
| (local.get $y) |
| ) |
| ) |
| (drop |
| (local.get $x) |
| ) |
| (loop $loop |
| (nop) |
| (call $loop12) |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| ) |
| (func $nop (; 23 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $nested-blocks (; 24 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (block $block |
| (nop) |
| ) |
| (block $x |
| (nop) |
| ) |
| (block $a |
| (block $b |
| (block $c |
| (nop) |
| ) |
| ) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $nested-unhoistable-blocks (; 25 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (block $block |
| (call $nested-unhoistable-blocks) |
| ) |
| (block $x |
| (call $nested-unhoistable-blocks) |
| ) |
| (block $a |
| (block $b |
| (block $c |
| (call $nested-unhoistable-blocks) |
| ) |
| ) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $conditional (; 26 ;) (type $FUNCSIG$v) |
| (if |
| (i32.const 0) |
| (drop |
| (i32.const 10) |
| ) |
| ) |
| (loop $loop |
| (nop) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $conditional1 (; 27 ;) (type $FUNCSIG$i) (result i32) |
| (loop $loop |
| (if |
| (call $conditional1) |
| (drop |
| (i32.const 10) |
| ) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| (unreachable) |
| ) |
| (func $conditional2 (; 28 ;) (type $FUNCSIG$v) |
| (block $out |
| (loop $loop |
| (br_if $out |
| (i32.const 1) |
| ) |
| (drop |
| (i32.const 10) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| ) |
| (func $conditional3 (; 29 ;) (type $FUNCSIG$v) |
| (block $out |
| (block |
| (drop |
| (i32.const 10) |
| ) |
| (loop $loop |
| (nop) |
| (br_if $out |
| (i32.const 1) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| ) |
| ) |
| (func $after (; 30 ;) (type $FUNCSIG$v) |
| (loop $loop |
| (nop) |
| ) |
| (drop |
| (i32.const 10) |
| ) |
| ) |
| (func $loops (; 31 ;) (type $FUNCSIG$v) |
| (drop |
| (i32.const 10) |
| ) |
| (loop $loop2 |
| (nop) |
| (loop $loop1 |
| (nop) |
| (br_if $loop1 |
| (i32.const 1) |
| ) |
| ) |
| ) |
| ) |
| (func $loops2 (; 32 ;) (type $FUNCSIG$v) |
| (drop |
| (i32.const 10) |
| ) |
| (loop $loop2 |
| (nop) |
| (loop $loop1 |
| (nop) |
| (br_if $loop2 |
| (i32.const 1) |
| ) |
| ) |
| ) |
| ) |
| (func $fuzz1 (; 33 ;) (type $FUNCSIG$j) (result i64) |
| (local $var$1 i64) |
| (drop |
| (block (result i32) |
| (local.set $var$1 |
| (block $label$5 (result i64) |
| (local.set $var$1 |
| (i64.const -29585) |
| ) |
| (i64.const -70) |
| ) |
| ) |
| (loop $label$4 (result i32) |
| (nop) |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (loop $label$1 (result i64) |
| (block $label$2 |
| (block $label$3 |
| (nop) |
| (br $label$2) |
| ) |
| (unreachable) |
| ) |
| (local.get $var$1) |
| ) |
| ) |
| (func $self (; 34 ;) (type $FUNCSIG$i) (result i32) |
| (local $x i32) |
| (loop $loop |
| (local.set $x |
| (i32.add |
| (local.get $x) |
| (i32.const 1) |
| ) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| (local.get $x) |
| ) |
| (func $nested-set (; 35 ;) (type $FUNCSIG$v) |
| (local $var$0 i32) |
| (local $var$1 i64) |
| (loop $label$1 |
| (local.set $var$0 |
| (block $label$3 (result i32) |
| (local.set $var$1 |
| (i64.const 0) |
| ) |
| (local.get $var$0) |
| ) |
| ) |
| (local.set $var$1 |
| (i64.const 1) |
| ) |
| (br_if $label$1 |
| (i32.const 0) |
| ) |
| ) |
| ) |
| (func $load-store (; 36 ;) (type $FUNCSIG$vi) (param $x i32) |
| (loop $loop |
| (drop |
| (i32.load |
| (i32.const 0) |
| ) |
| ) |
| (i32.store |
| (local.get $x) |
| (local.get $x) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $set-set (; 37 ;) (type $FUNCSIG$ii) (param $x i32) (result i32) |
| (loop $loop |
| (local.set $x |
| (i32.const 1) |
| ) |
| (br_if $loop |
| (i32.const 2) |
| ) |
| (local.set $x |
| (i32.const 3) |
| ) |
| (br_if $loop |
| (i32.const 4) |
| ) |
| ) |
| (local.get $x) |
| ) |
| (func $copies-no (; 38 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $y i32) |
| (local $z i32) |
| (local $a i32) |
| (local $b i32) |
| (local $c i32) |
| (loop $loop |
| (local.set $x |
| (local.get $x) |
| ) |
| (local.set $y |
| (local.get $z) |
| ) |
| (local.set $a |
| (local.tee $b |
| (local.get $c) |
| ) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $consts-no (; 39 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local $a i32) |
| (local $b i32) |
| (loop $loop |
| (local.set $x |
| (i32.const 0) |
| ) |
| (local.set $a |
| (local.tee $b |
| (i32.const 1) |
| ) |
| ) |
| (br_if $loop |
| (i32.const 1) |
| ) |
| ) |
| ) |
| (func $global (; 40 ;) (type $FUNCSIG$v) |
| (local $x i32) |
| (local.set $x |
| (global.get $glob) |
| ) |
| (drop |
| (local.get $x) |
| ) |
| (loop $loop |
| (nop) |
| (nop) |
| (br_if $loop |
| (local.get $x) |
| ) |
| ) |
| ) |
| ) |