summaryrefslogtreecommitdiff
path: root/test/exception-handling.wast.fromBinary.noDebugInfo
diff options
context:
space:
mode:
Diffstat (limited to 'test/exception-handling.wast.fromBinary.noDebugInfo')
-rw-r--r--test/exception-handling.wast.fromBinary.noDebugInfo135
1 files changed, 116 insertions, 19 deletions
diff --git a/test/exception-handling.wast.fromBinary.noDebugInfo b/test/exception-handling.wast.fromBinary.noDebugInfo
index 0b5a7d896..1f1ebdb6f 100644
--- a/test/exception-handling.wast.fromBinary.noDebugInfo
+++ b/test/exception-handling.wast.fromBinary.noDebugInfo
@@ -1,10 +1,12 @@
(module
(type $none_=>_none (func))
(type $i32_=>_none (func (param i32)))
- (type $externref_=>_none (func (param externref)))
+ (type $i64_=>_none (func (param i64)))
+ (type $i32_i64_=>_none (func (param i32 i64)))
(type $exnref_=>_exnref (func (param exnref) (result exnref)))
(event $event$0 (attr 0) (param i32))
- (event $event$1 (attr 0) (param externref))
+ (event $event$1 (attr 0) (param i64))
+ (event $event$2 (attr 0) (param i32 i64))
(func $0 (param $0 exnref) (result exnref)
(local.get $0)
)
@@ -15,38 +17,72 @@
(nop)
)
(func $3
- (local $0 exnref)
+ (local $0 i32)
+ (local $1 i64)
+ (local $2 (i32 i64))
+ (local $3 i32)
+ (local $4 i32)
(try
(do
(throw $event$0
(i32.const 0)
)
)
- (catch
+ (catch $event$0
+ (drop
+ (pop i32)
+ )
+ )
+ )
+ (try
+ (do
+ (throw $event$2
+ (i32.const 0)
+ (i64.const 0)
+ )
+ )
+ (catch $event$2
+ (local.set $2
+ (pop i32 i64)
+ )
(local.set $0
- (pop exnref)
+ (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 $label$3 (result i32)
- (rethrow
- (br_on_exn $label$3 $event$0
- (local.get $0)
- )
+ (block (result i32)
+ (local.set $4
+ (local.get $0)
+ )
+ (drop
+ (local.get $1)
)
+ (local.get $4)
)
)
)
)
- (block $label$4
+ (block $label$5
(try
(do
- (br $label$4)
+ (br $label$5)
)
- (catch
+ (catch $event$0
(drop
- (pop exnref)
+ (pop i32)
)
- (br $label$4)
+ (br $label$5)
)
)
)
@@ -54,9 +90,9 @@
(do
(nop)
)
- (catch
+ (catch $event$0
(drop
- (pop exnref)
+ (pop i32)
)
)
)
@@ -65,14 +101,75 @@
(call $1)
(call $2)
)
- (catch
+ (catch $event$0
(drop
- (pop exnref)
+ (pop i32)
)
(call $1)
(call $2)
)
)
+ (try
+ (do
+ (throw $event$0
+ (i32.const 0)
+ )
+ )
+ (catch $event$0
+ (drop
+ (pop i32)
+ )
+ )
+ (catch $event$1
+ (drop
+ (pop i64)
+ )
+ )
+ )
+ (try
+ (do
+ (throw $event$0
+ (i32.const 0)
+ )
+ )
+ (catch_all
+ (nop)
+ )
+ )
+ (try
+ (do
+ (throw $event$0
+ (i32.const 0)
+ )
+ )
+ (catch $event$0
+ (drop
+ (pop i32)
+ )
+ )
+ (catch $event$1
+ (drop
+ (pop i64)
+ )
+ )
+ (catch_all
+ (call $1)
+ (call $2)
+ )
+ )
+ (try
+ (do
+ (throw $event$0
+ (i32.const 0)
+ )
+ )
+ (catch $event$0
+ (drop
+ (pop i32)
+ )
+ (rethrow 0)
+ )
+ )
)
)