| Index: test/mjsunit/wasm/asm-wasm-switch.js
|
| diff --git a/test/mjsunit/wasm/asm-wasm-switch.js b/test/mjsunit/wasm/asm-wasm-switch.js
|
| index fac76fd29a0da6b35823af4283e13c26f215ab25..f4875d0dc13dc1efb3e592a9502a0b7945e249d2 100644
|
| --- a/test/mjsunit/wasm/asm-wasm-switch.js
|
| +++ b/test/mjsunit/wasm/asm-wasm-switch.js
|
| @@ -2,7 +2,11 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -// Flags: --expose-wasm
|
| +// Flags: --validate-asm --allow-natives-syntax
|
| +
|
| +function assertValidAsm(func) {
|
| + assertTrue(%IsAsmWasmCode(func));
|
| +}
|
|
|
| (function TestSwitch0() {
|
| function asmModule() {
|
| @@ -26,7 +30,8 @@
|
|
|
| return {caller:caller};
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(5, wasm.caller());
|
| })();
|
|
|
| @@ -55,7 +60,8 @@
|
|
|
| return {caller:caller};
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(23, wasm.caller());
|
| })();
|
|
|
| @@ -78,7 +84,8 @@
|
|
|
| return {caller:caller};
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(42, wasm.caller());
|
| })();
|
|
|
| @@ -105,7 +112,8 @@
|
|
|
| return {caller:caller};
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(43, wasm.caller());
|
| })();
|
|
|
| @@ -123,7 +131,8 @@
|
| main: main,
|
| };
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(-10, wasm.main(2));
|
| assertEquals(-10, wasm.main(54));
|
| })();
|
| @@ -141,7 +150,8 @@
|
| main: main,
|
| };
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(73, wasm.main(7));
|
| })();
|
|
|
| @@ -165,7 +175,8 @@
|
| main: main,
|
| };
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(25, wasm.main(12));
|
| assertEquals(23, wasm.main(14));
|
| assertEquals(29, wasm.main(15));
|
| @@ -193,7 +204,8 @@
|
| main: main,
|
| };
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(-4, wasm.main(-4));
|
| assertEquals(11, wasm.main(1));
|
| assertEquals(52, wasm.main(5));
|
| @@ -226,7 +238,8 @@
|
| main: main,
|
| };
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(-4, wasm.main(1));
|
| assertEquals(23, wasm.main(2));
|
| assertEquals(32, wasm.main(3));
|
| @@ -273,7 +286,8 @@
|
| main: main,
|
| };
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(12, wasm.main(2));
|
| assertEquals(10, wasm.main(10));
|
| assertEquals(54, wasm.main(3));
|
| @@ -334,7 +348,8 @@
|
| main: main,
|
| };
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(7, wasm.main(4));
|
| assertEquals(16, wasm.main(10));
|
| assertEquals(-1, wasm.main(19));
|
| @@ -375,7 +390,8 @@
|
| main: main,
|
| };
|
| }
|
| - var wasm = Wasm.instantiateModuleFromAsm(asmModule.toString());
|
| + var wasm = asmModule();
|
| + assertValidAsm(asmModule);
|
| assertEquals(2, wasm.main(2));
|
| assertEquals(7, wasm.main(7));
|
| assertEquals(19, wasm.main(-1));
|
| @@ -397,7 +413,9 @@
|
| }\
|
| return {main: main}; }");
|
|
|
| - var wasm = Wasm.instantiateModuleFromAsm(str);
|
| + var decl = eval('(' + str + ')');
|
| + var wasm = decl();
|
| + assertValidAsm(decl);
|
| return wasm;
|
| }
|
|
|
|
|