diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/wasm2js/target_js.2asm.js | 27 | ||||
-rw-r--r-- | test/wasm2js/target_js.2asm.js.opt | 27 | ||||
-rw-r--r-- | test/wasm2js/target_js.wast | 13 |
3 files changed, 67 insertions, 0 deletions
diff --git a/test/wasm2js/target_js.2asm.js b/test/wasm2js/target_js.2asm.js new file mode 100644 index 000000000..f9f4b4a67 --- /dev/null +++ b/test/wasm2js/target_js.2asm.js @@ -0,0 +1,27 @@ + +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; + var nan = NaN; + var infinity = Infinity; + function func(x) { + x = x | 0; + return (1 << x | 0) ^ -1 | 0 | 0; + } + + return { + "func": func + }; +} + +var retasmFunc = asmFunc({ +}); +export var func = retasmFunc.func; diff --git a/test/wasm2js/target_js.2asm.js.opt b/test/wasm2js/target_js.2asm.js.opt new file mode 100644 index 000000000..12e1a475b --- /dev/null +++ b/test/wasm2js/target_js.2asm.js.opt @@ -0,0 +1,27 @@ + +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; + var nan = NaN; + var infinity = Infinity; + function func($0) { + $0 = $0 | 0; + return 1 << $0 ^ -1; + } + + return { + "func": func + }; +} + +var retasmFunc = asmFunc({ +}); +export var func = retasmFunc.func; diff --git a/test/wasm2js/target_js.wast b/test/wasm2js/target_js.wast new file mode 100644 index 000000000..27373f98e --- /dev/null +++ b/test/wasm2js/target_js.wast @@ -0,0 +1,13 @@ +(module + (func $func (export "func") (param $x i32) (result i32) + ;; Do not turn xor into something that does not express well in JS + ;; when optimizing. + (i32.xor + (i32.shl + (i32.const 1) + (local.get $x) + ) + (i32.const -1) + ) + ) +) |