| (module | |
| (type $none_=>_none (func)) | |
| (type $i32_=>_none (func (param i32))) | |
| (type $i64_=>_none (func (param i64))) | |
| (type $i32_i64_=>_none (func (param i32 i64))) | |
| (type $eqref_=>_none (func (param eqref))) | |
| (tag $e-i32 (param i32)) | |
| (tag $e-i64 (param i64)) | |
| (tag $e-i32-i64 (param i32 i64)) | |
| (tag $e-eqref (param eqref)) | |
| (tag $e-empty (param)) | |
| (func $foo | |
| (nop) | |
| ) | |
| (func $bar | |
| (nop) | |
| ) | |
| (func $eh-test | |
| (local $x i32) | |
| (local $1 i64) | |
| (local $2 (i32 i64)) | |
| (local $3 i32) | |
| (local $4 i32) | |
| (try $label$3 | |
| (do | |
| (throw $e-i32 | |
| (i32.const 0) | |
| ) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| ) | |
| ) | |
| (try $label$6 | |
| (do | |
| (throw $e-i32-i64 | |
| (i32.const 0) | |
| (i64.const 0) | |
| ) | |
| ) | |
| (catch $e-i32-i64 | |
| (local.set $2 | |
| (pop i32 i64) | |
| ) | |
| (local.set $x | |
| (block (result i32) | |
| (local.set $3 | |
| (tuple.extract 0 | |
| (local.get $2) | |
| ) | |
| ) | |
| (local.set $1 | |
| (tuple.extract 1 | |
| (local.get $2) | |
| ) | |
| ) | |
| (local.get $3) | |
| ) | |
| ) | |
| (drop | |
| (block (result i32) | |
| (local.set $4 | |
| (local.get $x) | |
| ) | |
| (drop | |
| (local.get $1) | |
| ) | |
| (local.get $4) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (block $label$7 | |
| (try $label$10 | |
| (do | |
| (br $label$7) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| (br $label$7) | |
| ) | |
| ) | |
| ) | |
| (try $label$13 | |
| (do | |
| (nop) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| ) | |
| ) | |
| (try $label$16 | |
| (do | |
| (call $foo) | |
| (call $bar) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| (call $foo) | |
| (call $bar) | |
| ) | |
| ) | |
| (try $label$19 | |
| (do | |
| (throw $e-i32 | |
| (i32.const 0) | |
| ) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| ) | |
| (catch $e-i64 | |
| (drop | |
| (pop i64) | |
| ) | |
| ) | |
| ) | |
| (try $label$22 | |
| (do | |
| (throw $e-i32 | |
| (i32.const 0) | |
| ) | |
| ) | |
| (catch_all | |
| (nop) | |
| ) | |
| ) | |
| (try $label$25 | |
| (do | |
| (throw $e-i32 | |
| (i32.const 0) | |
| ) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| ) | |
| (catch $e-i64 | |
| (drop | |
| (pop i64) | |
| ) | |
| ) | |
| (catch_all | |
| (call $foo) | |
| (call $bar) | |
| ) | |
| ) | |
| (try $label$34 | |
| (do | |
| (try $label$29 | |
| (do | |
| (throw $e-i32 | |
| (i32.const 0) | |
| ) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| ) | |
| (catch_all | |
| (nop) | |
| ) | |
| ) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| ) | |
| (catch_all | |
| (try $label$33 | |
| (do | |
| (throw $e-i32 | |
| (i32.const 0) | |
| ) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| ) | |
| (catch_all | |
| (nop) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (try $label$37 | |
| (do | |
| (throw $e-i32 | |
| (i32.const 0) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (func $delegate-test | |
| (try $label$9 | |
| (do | |
| (block $label$1 | |
| (try $label$4 | |
| (do | |
| (call $foo) | |
| ) | |
| (delegate $label$9) | |
| ) | |
| (try $label$7 | |
| (do | |
| (call $foo) | |
| ) | |
| (delegate $label$9) | |
| ) | |
| ) | |
| ) | |
| (catch_all | |
| (nop) | |
| ) | |
| ) | |
| (block $label$10 | |
| (try $label$19 | |
| (do | |
| (block $label$11 | |
| (try $label$14 | |
| (do | |
| (br_if $label$10 | |
| (i32.const 1) | |
| ) | |
| ) | |
| (delegate $label$19) | |
| ) | |
| (try $label$17 | |
| (do | |
| (br_if $label$10 | |
| (i32.const 1) | |
| ) | |
| ) | |
| (delegate $label$19) | |
| ) | |
| ) | |
| ) | |
| (catch_all | |
| (nop) | |
| ) | |
| ) | |
| ) | |
| (try $label$25 | |
| (do | |
| (block $label$20 | |
| (try $label$23 | |
| (do | |
| (call $foo) | |
| ) | |
| (delegate $label$25) | |
| ) | |
| ) | |
| ) | |
| (delegate 0) | |
| ) | |
| (try $label$28 | |
| (do | |
| (nop) | |
| ) | |
| (catch $e-empty | |
| (nop) | |
| ) | |
| ) | |
| ) | |
| (func $rethrow-test | |
| (try $label$3 | |
| (do | |
| (call $foo) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| (rethrow $label$3) | |
| ) | |
| (catch_all | |
| (rethrow $label$3) | |
| ) | |
| ) | |
| (block $label$4 | |
| (try $label$7 | |
| (do | |
| (call $foo) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| (rethrow $label$7) | |
| ) | |
| (catch_all | |
| (br $label$4) | |
| ) | |
| ) | |
| ) | |
| (try $label$13 | |
| (do | |
| (call $foo) | |
| ) | |
| (catch_all | |
| (try $label$12 | |
| (do | |
| (call $foo) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| (rethrow $label$13) | |
| ) | |
| (catch_all | |
| (rethrow $label$13) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (try $label$20 | |
| (do | |
| (call $foo) | |
| ) | |
| (catch_all | |
| (try $label$19 | |
| (do | |
| (call $foo) | |
| ) | |
| (catch $e-i32 | |
| (drop | |
| (pop i32) | |
| ) | |
| (block $label$18 | |
| (rethrow $label$20) | |
| ) | |
| ) | |
| (catch_all | |
| (rethrow $label$20) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (try $label$26 | |
| (do | |
| (call $foo) | |
| ) | |
| (catch_all | |
| (try $label$25 | |
| (do | |
| (rethrow $label$26) | |
| ) | |
| (catch_all | |
| (nop) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (try $label$32 | |
| (do | |
| (call $foo) | |
| ) | |
| (catch_all | |
| (try $label$31 | |
| (do | |
| (rethrow $label$32) | |
| ) | |
| (catch_all | |
| (nop) | |
| ) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (func $pop-test | |
| (try $label$5 | |
| (do | |
| (nop) | |
| ) | |
| (catch $e-i32 | |
| (throw $e-i32 | |
| (if (result i32) | |
| (pop i32) | |
| (i32.const 0) | |
| (i32.const 3) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (try $label$8 | |
| (do | |
| (nop) | |
| ) | |
| (catch $e-eqref | |
| (drop | |
| (pop eqref) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (func $catchless-try-with-inner-delegate | |
| (try $label$6 | |
| (do | |
| (block $label$1 | |
| (try $label$4 | |
| (do | |
| (throw $e-i32 | |
| (i32.const 0) | |
| ) | |
| ) | |
| (delegate $label$6) | |
| ) | |
| ) | |
| ) | |
| ) | |
| ) | |
| (func $nested-block-and-try | |
| (block $label$1 | |
| (block $label$2 | |
| ) | |
| (try $label$5 | |
| (do | |
| (nop) | |
| ) | |
| (delegate 1) | |
| ) | |
| ) | |
| (nop) | |
| ) | |
| ) | |