summaryrefslogtreecommitdiff
path: root/test/wasm2js
diff options
context:
space:
mode:
Diffstat (limited to 'test/wasm2js')
-rw-r--r--test/wasm2js/br_table_temp.2asm.js2
-rw-r--r--test/wasm2js/unreachable-if.2asm.js19
-rw-r--r--test/wasm2js/unreachable-if.2asm.js.opt19
-rw-r--r--test/wasm2js/unreachable-if.wast22
4 files changed, 61 insertions, 1 deletions
diff --git a/test/wasm2js/br_table_temp.2asm.js b/test/wasm2js/br_table_temp.2asm.js
index 245792eaf..704ec0687 100644
--- a/test/wasm2js/br_table_temp.2asm.js
+++ b/test/wasm2js/br_table_temp.2asm.js
@@ -12671,7 +12671,7 @@ function asmFunc(imports) {
}
function $30() {
- var $1_1 = 0, $2_1 = 0;
+ var $1_1 = 0;
block : {
$1_1 = 2;
switch (0 | 0) {
diff --git a/test/wasm2js/unreachable-if.2asm.js b/test/wasm2js/unreachable-if.2asm.js
new file mode 100644
index 000000000..f5656223c
--- /dev/null
+++ b/test/wasm2js/unreachable-if.2asm.js
@@ -0,0 +1,19 @@
+
+function asmFunc(imports) {
+ var Math_imul = Math.imul;
+ var Math_fround = Math.fround;
+ var Math_abs = Math.abs;
+ var Math_clz32 = Math.clz32;
+ var Math_min = Math.min;
+ var Math_max = Math.max;
+ var Math_floor = Math.floor;
+ var Math_ceil = Math.ceil;
+ var Math_trunc = Math.trunc;
+ var Math_sqrt = Math.sqrt;
+ return {
+
+ };
+}
+
+var retasmFunc = asmFunc({
+});
diff --git a/test/wasm2js/unreachable-if.2asm.js.opt b/test/wasm2js/unreachable-if.2asm.js.opt
new file mode 100644
index 000000000..f5656223c
--- /dev/null
+++ b/test/wasm2js/unreachable-if.2asm.js.opt
@@ -0,0 +1,19 @@
+
+function asmFunc(imports) {
+ var Math_imul = Math.imul;
+ var Math_fround = Math.fround;
+ var Math_abs = Math.abs;
+ var Math_clz32 = Math.clz32;
+ var Math_min = Math.min;
+ var Math_max = Math.max;
+ var Math_floor = Math.floor;
+ var Math_ceil = Math.ceil;
+ var Math_trunc = Math.trunc;
+ var Math_sqrt = Math.sqrt;
+ return {
+
+ };
+}
+
+var retasmFunc = asmFunc({
+});
diff --git a/test/wasm2js/unreachable-if.wast b/test/wasm2js/unreachable-if.wast
new file mode 100644
index 000000000..5bc0257c0
--- /dev/null
+++ b/test/wasm2js/unreachable-if.wast
@@ -0,0 +1,22 @@
+;; Regression test for bad assertion in autodrop that did not expect the if to
+;; be finalized to unreachable.
+(module
+ (func $test (result i32)
+ (block $l (result i32)
+ (drop
+ (br_if $l
+ (if (result i32)
+ (unreachable)
+ (then
+ (i32.const 0)
+ )
+ (else
+ (i32.const 0)
+ )
+ )
+ )
+ (i32.const 0)
+ )
+ )
+ )
+)