diff options
author | Alon Zakai <alonzakai@gmail.com> | 2016-08-28 09:02:18 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2016-09-07 09:55:55 -0700 |
commit | 42ad2cdbe5baa32dd1b0aea143a4e45f81e8b9b5 (patch) | |
tree | e3bc9183e04bd049d7b497c61425e44989f609fd | |
parent | 304fef1d997f1c43249996737ef7ce6deb961481 (diff) | |
download | binaryen-42ad2cdbe5baa32dd1b0aea143a4e45f81e8b9b5.tar.gz binaryen-42ad2cdbe5baa32dd1b0aea143a4e45f81e8b9b5.tar.bz2 binaryen-42ad2cdbe5baa32dd1b0aea143a4e45f81e8b9b5.zip |
import memory #684
35 files changed, 73 insertions, 38 deletions
diff --git a/src/asm2wasm.h b/src/asm2wasm.h index f88bf9ffc..306a953a7 100644 --- a/src/asm2wasm.h +++ b/src/asm2wasm.h @@ -817,11 +817,22 @@ void Asm2WasmBuilder::processAsm(Ref ast) { wasm.addExport(export_); } +#if 0 + // export memory auto memoryExport = make_unique<Export>(); memoryExport->name = MEMORY; memoryExport->value = Name::fromInt(0); memoryExport->kind = Export::Memory; wasm.addExport(memoryExport.release()); +#else + // import memory + auto memoryImport = make_unique<Import>(); + memoryImport->name = MEMORY; + memoryImport->module = ENV; + memoryImport->base = MEMORY; + memoryImport->kind = Import::Memory; + wasm.addImport(memoryImport.release()); +#endif #if 0 // enable asm2wasm i64 optimizations when browsers have consistent i64 support in wasm if (udivmoddi4.is() && getTempRet0.is()) { diff --git a/src/js/wasm.js-post.js b/src/js/wasm.js-post.js index 05c648ed0..dcffb1ee8 100644 --- a/src/js/wasm.js-post.js +++ b/src/js/wasm.js-post.js @@ -183,7 +183,7 @@ function integrateWasmJS(Module) { return false; } exports = instance.exports; - mergeMemory(exports.memory); + if (exports.memory) mergeMemory(exports.memory); Module["usingWasm"] = true; @@ -274,6 +274,11 @@ function integrateWasmJS(Module) { global = fixImports(global); env = fixImports(env); + // import memory + if (!env['memory']) { + env['memory'] = providedBuffer; + } + // try the methods. each should return the exports if it succeeded var exports; diff --git a/src/wasm-js.cpp b/src/wasm-js.cpp index fc27bc37a..31448d2a0 100644 --- a/src/wasm-js.cpp +++ b/src/wasm-js.cpp @@ -169,17 +169,36 @@ extern "C" void EMSCRIPTEN_KEEPALIVE instantiate() { struct JSExternalInterface : ModuleInstance::ExternalInterface { void init(Module& wasm, ModuleInstance& instance) override { - // create a new buffer here, just like native wasm support would. - EM_ASM_({ - Module['outside']['newBuffer'] = new ArrayBuffer($0); - }, wasm.memory.initial * Memory::kPageSize); + // look for imported memory + { + bool found = false; + for (auto& import : wasm.imports) { + if (import->module == ENV && import->base == MEMORY) { + assert(import->kind == Import::Memory); + // memory is imported + EM_ASM({ + Module['outside']['tempBuffer'] = Module['lookupImport']('env', 'memory'); + }); + found = true; + } + } + if (!found) { + // no memory import; create a new buffer here, just like native wasm support would. + EM_ASM_({ + Module['outside']['tempBuffer'] = Module['outside']['newBuffer'] = new ArrayBuffer($0); + }, wasm.memory.initial * Memory::kPageSize); + } + } for (auto segment : wasm.memory.segments) { EM_ASM_({ var source = Module['HEAP8'].subarray($1, $1 + $2); - var target = new Int8Array(Module['outside']['newBuffer']); + var target = new Int8Array(Module['outside']['tempBuffer']); target.set(source, $0); }, ConstantExpressionRunner(instance.globals).visit(segment.offset).value.geti32(), &segment.data[0], segment.data.size()); } + EM_ASM({ + Module['outside']['tempBuffer'] = null; + }); // Table support is in a JS array. If the entry is a number, it's a function pointer. If not, it's a JS method to be called directly // TODO: make them all JS methods, wrapping a dynCall where necessary? EM_ASM_({ diff --git a/test/emcc_O2_hello_world.fromasm b/test/emcc_O2_hello_world.fromasm index 5c6c31dfa..21873f241 100644 --- a/test/emcc_O2_hello_world.fromasm +++ b/test/emcc_O2_hello_world.fromasm @@ -30,6 +30,7 @@ (import $___syscall140 "env" "___syscall140" (param i32 i32) (result i32)) (import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32)) (import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (import $memInitBase global "env" "memInitBase" i32) (export "_free" $_free) (export "_main" $_main) @@ -49,7 +50,6 @@ (export "dynCall_ii" $dynCall_ii) (export "dynCall_iiii" $dynCall_iiii) (export "dynCall_vi" $dynCall_vi) - (export "memory" memory) (global $__THREW__ i32 (i32.const 0)) (global $threwValue i32 (i32.const 0)) (global $setjmpId i32 (i32.const 0)) diff --git a/test/emcc_O2_hello_world.fromasm.imprecise b/test/emcc_O2_hello_world.fromasm.imprecise index b066153e3..39e95673c 100644 --- a/test/emcc_O2_hello_world.fromasm.imprecise +++ b/test/emcc_O2_hello_world.fromasm.imprecise @@ -28,6 +28,7 @@ (import $___unlock "env" "___unlock" (param i32)) (import $___syscall140 "env" "___syscall140" (param i32 i32) (result i32)) (import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "_free" $_free) (export "_main" $_main) (export "_memset" $_memset) @@ -46,7 +47,6 @@ (export "dynCall_ii" $dynCall_ii) (export "dynCall_iiii" $dynCall_iiii) (export "dynCall_vi" $dynCall_vi) - (export "memory" memory) (global $__THREW__ i32 (i32.const 0)) (global $threwValue i32 (i32.const 0)) (global $setjmpId i32 (i32.const 0)) diff --git a/test/emcc_O2_hello_world.fromasm.imprecise.no-opts b/test/emcc_O2_hello_world.fromasm.imprecise.no-opts index d9be3c6ae..a5e952b4c 100644 --- a/test/emcc_O2_hello_world.fromasm.imprecise.no-opts +++ b/test/emcc_O2_hello_world.fromasm.imprecise.no-opts @@ -28,6 +28,7 @@ (import $___unlock "env" "___unlock" (param i32)) (import $___syscall140 "env" "___syscall140" (param i32 i32) (result i32)) (import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "_free" $_free) (export "_main" $_main) (export "_memset" $_memset) @@ -46,7 +47,6 @@ (export "dynCall_ii" $dynCall_ii) (export "dynCall_iiii" $dynCall_iiii) (export "dynCall_vi" $dynCall_vi) - (export "memory" memory) (global $__THREW__ i32 (i32.const 0)) (global $threwValue i32 (i32.const 0)) (global $setjmpId i32 (i32.const 0)) diff --git a/test/emcc_O2_hello_world.fromasm.no-opts b/test/emcc_O2_hello_world.fromasm.no-opts index 37e32d83b..303b1e723 100644 --- a/test/emcc_O2_hello_world.fromasm.no-opts +++ b/test/emcc_O2_hello_world.fromasm.no-opts @@ -29,6 +29,7 @@ (import $___syscall140 "env" "___syscall140" (param i32 i32) (result i32)) (import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32)) (import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "_free" $_free) (export "_main" $_main) (export "_memset" $_memset) @@ -47,7 +48,6 @@ (export "dynCall_ii" $dynCall_ii) (export "dynCall_iiii" $dynCall_iiii) (export "dynCall_vi" $dynCall_vi) - (export "memory" memory) (global $__THREW__ i32 (i32.const 0)) (global $threwValue i32 (i32.const 0)) (global $setjmpId i32 (i32.const 0)) diff --git a/test/emcc_hello_world.fromasm b/test/emcc_hello_world.fromasm index 14d0b8824..666f03482 100644 --- a/test/emcc_hello_world.fromasm +++ b/test/emcc_hello_world.fromasm @@ -39,6 +39,7 @@ (import $i32s-rem "asm2wasm" "i32s-rem" (param i32 i32) (result i32)) (import $i32u-rem "asm2wasm" "i32u-rem" (param i32 i32) (result i32)) (import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (import $memInitBase global "env" "memInitBase" i32) (export "_i64Subtract" $_i64Subtract) (export "_free" $_free) @@ -63,7 +64,6 @@ (export "dynCall_iiii" $dynCall_iiii) (export "dynCall_vi" $dynCall_vi) (export "___udivmoddi4" $___udivmoddi4) - (export "memory" memory) (global $__THREW__ i32 (i32.const 0)) (global $threwValue i32 (i32.const 0)) (global $setjmpId i32 (i32.const 0)) diff --git a/test/emcc_hello_world.fromasm.imprecise b/test/emcc_hello_world.fromasm.imprecise index ed7b48ea5..e30167119 100644 --- a/test/emcc_hello_world.fromasm.imprecise +++ b/test/emcc_hello_world.fromasm.imprecise @@ -32,6 +32,7 @@ (import $_pthread_cleanup_push "env" "_pthread_cleanup_push" (param i32 i32)) (import $_sysconf "env" "_sysconf" (param i32) (result i32)) (import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "_i64Subtract" $_i64Subtract) (export "_free" $_free) (export "_main" $_main) @@ -55,7 +56,6 @@ (export "dynCall_iiii" $dynCall_iiii) (export "dynCall_vi" $dynCall_vi) (export "___udivmoddi4" $___udivmoddi4) - (export "memory" memory) (global $__THREW__ i32 (i32.const 0)) (global $threwValue i32 (i32.const 0)) (global $setjmpId i32 (i32.const 0)) diff --git a/test/emcc_hello_world.fromasm.imprecise.no-opts b/test/emcc_hello_world.fromasm.imprecise.no-opts index 010c02ffd..a0429b58c 100644 --- a/test/emcc_hello_world.fromasm.imprecise.no-opts +++ b/test/emcc_hello_world.fromasm.imprecise.no-opts @@ -32,6 +32,7 @@ (import $_pthread_cleanup_push "env" "_pthread_cleanup_push" (param i32 i32)) (import $_sysconf "env" "_sysconf" (param i32) (result i32)) (import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "_i64Subtract" $_i64Subtract) (export "_free" $_free) (export "_main" $_main) @@ -55,7 +56,6 @@ (export "dynCall_iiii" $dynCall_iiii) (export "dynCall_vi" $dynCall_vi) (export "___udivmoddi4" $___udivmoddi4) - (export "memory" memory) (global $__THREW__ i32 (i32.const 0)) (global $threwValue i32 (i32.const 0)) (global $setjmpId i32 (i32.const 0)) diff --git a/test/emcc_hello_world.fromasm.no-opts b/test/emcc_hello_world.fromasm.no-opts index a5f8ac376..3c9f8123a 100644 --- a/test/emcc_hello_world.fromasm.no-opts +++ b/test/emcc_hello_world.fromasm.no-opts @@ -38,6 +38,7 @@ (import $i32s-rem "asm2wasm" "i32s-rem" (param i32 i32) (result i32)) (import $i32u-rem "asm2wasm" "i32u-rem" (param i32 i32) (result i32)) (import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "_i64Subtract" $_i64Subtract) (export "_free" $_free) (export "_main" $_main) @@ -61,7 +62,6 @@ (export "dynCall_iiii" $dynCall_iiii) (export "dynCall_vi" $dynCall_vi) (export "___udivmoddi4" $___udivmoddi4) - (export "memory" memory) (global $__THREW__ i32 (i32.const 0)) (global $threwValue i32 (i32.const 0)) (global $setjmpId i32 (i32.const 0)) diff --git a/test/empty.fromasm b/test/empty.fromasm index 008ce532b..2dcb800dd 100644 --- a/test/empty.fromasm +++ b/test/empty.fromasm @@ -1,6 +1,6 @@ (module (memory 256 256) (data (get_global $memInitBase) "empty.asm.js") + (import $memory memory "env" "memory") (import $memInitBase global "env" "memInitBase" i32) - (export "memory" memory) ) diff --git a/test/empty.fromasm.imprecise b/test/empty.fromasm.imprecise index 939cbb87c..6c3928ac1 100644 --- a/test/empty.fromasm.imprecise +++ b/test/empty.fromasm.imprecise @@ -1,4 +1,4 @@ (module (memory 256 256) - (export "memory" memory) + (import $memory memory "env" "memory") ) diff --git a/test/empty.fromasm.imprecise.no-opts b/test/empty.fromasm.imprecise.no-opts index 939cbb87c..6c3928ac1 100644 --- a/test/empty.fromasm.imprecise.no-opts +++ b/test/empty.fromasm.imprecise.no-opts @@ -1,4 +1,4 @@ (module (memory 256 256) - (export "memory" memory) + (import $memory memory "env" "memory") ) diff --git a/test/empty.fromasm.no-opts b/test/empty.fromasm.no-opts index 939cbb87c..6c3928ac1 100644 --- a/test/empty.fromasm.no-opts +++ b/test/empty.fromasm.no-opts @@ -1,4 +1,4 @@ (module (memory 256 256) - (export "memory" memory) + (import $memory memory "env" "memory") ) diff --git a/test/hello_world.fromasm b/test/hello_world.fromasm index 0aae371f0..cea20a687 100644 --- a/test/hello_world.fromasm +++ b/test/hello_world.fromasm @@ -1,9 +1,9 @@ (module (memory 256 256) (data (get_global $memInitBase) "hello_world.asm.js") + (import $memory memory "env" "memory") (import $memInitBase global "env" "memInitBase" i32) (export "add" $add) - (export "memory" memory) (func $add (param $0 i32) (param $1 i32) (result i32) (i32.add (get_local $0) diff --git a/test/hello_world.fromasm.imprecise b/test/hello_world.fromasm.imprecise index 675ef17ca..0438017ff 100644 --- a/test/hello_world.fromasm.imprecise +++ b/test/hello_world.fromasm.imprecise @@ -1,7 +1,7 @@ (module (memory 256 256) + (import $memory memory "env" "memory") (export "add" $add) - (export "memory" memory) (func $add (param $0 i32) (param $1 i32) (result i32) (i32.add (get_local $0) diff --git a/test/hello_world.fromasm.imprecise.no-opts b/test/hello_world.fromasm.imprecise.no-opts index 368ffaff3..80e7688e2 100644 --- a/test/hello_world.fromasm.imprecise.no-opts +++ b/test/hello_world.fromasm.imprecise.no-opts @@ -1,7 +1,7 @@ (module (memory 256 256) + (import $memory memory "env" "memory") (export "add" $add) - (export "memory" memory) (func $add (param $x i32) (param $y i32) (result i32) (return (i32.add diff --git a/test/hello_world.fromasm.no-opts b/test/hello_world.fromasm.no-opts index 368ffaff3..80e7688e2 100644 --- a/test/hello_world.fromasm.no-opts +++ b/test/hello_world.fromasm.no-opts @@ -1,7 +1,7 @@ (module (memory 256 256) + (import $memory memory "env" "memory") (export "add" $add) - (export "memory" memory) (func $add (param $x i32) (param $y i32) (result i32) (return (i32.add diff --git a/test/memorygrowth.fromasm b/test/memorygrowth.fromasm index 36e9590ed..390f163bb 100644 --- a/test/memorygrowth.fromasm +++ b/test/memorygrowth.fromasm @@ -26,6 +26,7 @@ (import $xa "env" "___unlock" (param i32)) (import $ya "env" "___syscall146" (param i32 i32) (result i32)) (import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (import $memInitBase global "env" "memInitBase" i32) (export "_free" $fb) (export "_main" $Na) @@ -47,7 +48,6 @@ (export "dynCall_iiii" $lb) (export "dynCall_vi" $mb) (export "__growWasmMemory" $__growWasmMemory) - (export "memory" memory) (global $v i32 (i32.const 0)) (global $w i32 (i32.const 0)) (global $x i32 (i32.const 0)) diff --git a/test/memorygrowth.fromasm.imprecise b/test/memorygrowth.fromasm.imprecise index 935bf4159..fb8b5b085 100644 --- a/test/memorygrowth.fromasm.imprecise +++ b/test/memorygrowth.fromasm.imprecise @@ -24,6 +24,7 @@ (import $wa "env" "___syscall54" (param i32 i32) (result i32)) (import $xa "env" "___unlock" (param i32)) (import $ya "env" "___syscall146" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "_free" $fb) (export "_main" $Na) (export "_pthread_self" $ib) @@ -44,7 +45,6 @@ (export "dynCall_iiii" $lb) (export "dynCall_vi" $mb) (export "__growWasmMemory" $__growWasmMemory) - (export "memory" memory) (global $v i32 (i32.const 0)) (global $w i32 (i32.const 0)) (global $x i32 (i32.const 0)) diff --git a/test/memorygrowth.fromasm.imprecise.no-opts b/test/memorygrowth.fromasm.imprecise.no-opts index 758fff869..6cdc4fd40 100644 --- a/test/memorygrowth.fromasm.imprecise.no-opts +++ b/test/memorygrowth.fromasm.imprecise.no-opts @@ -24,6 +24,7 @@ (import $wa "env" "___syscall54" (param i32 i32) (result i32)) (import $xa "env" "___unlock" (param i32)) (import $ya "env" "___syscall146" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "_free" $fb) (export "_main" $Na) (export "_pthread_self" $ib) @@ -44,7 +45,6 @@ (export "dynCall_iiii" $lb) (export "dynCall_vi" $mb) (export "__growWasmMemory" $__growWasmMemory) - (export "memory" memory) (global $v i32 (i32.const 0)) (global $w i32 (i32.const 0)) (global $x i32 (i32.const 0)) diff --git a/test/memorygrowth.fromasm.no-opts b/test/memorygrowth.fromasm.no-opts index b506e580c..fd1b541d1 100644 --- a/test/memorygrowth.fromasm.no-opts +++ b/test/memorygrowth.fromasm.no-opts @@ -25,6 +25,7 @@ (import $xa "env" "___unlock" (param i32)) (import $ya "env" "___syscall146" (param i32 i32) (result i32)) (import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "_free" $fb) (export "_main" $Na) (export "_pthread_self" $ib) @@ -45,7 +46,6 @@ (export "dynCall_iiii" $lb) (export "dynCall_vi" $mb) (export "__growWasmMemory" $__growWasmMemory) - (export "memory" memory) (global $v i32 (i32.const 0)) (global $w i32 (i32.const 0)) (global $x i32 (i32.const 0)) diff --git a/test/min.fromasm b/test/min.fromasm index 9135999dd..1a69787ab 100644 --- a/test/min.fromasm +++ b/test/min.fromasm @@ -2,9 +2,9 @@ (memory 256 256) (data (get_global $memInitBase) "min.asm.js") (import $tDP global "env" "tempDoublePtr" i32) + (import $memory memory "env" "memory") (import $memInitBase global "env" "memInitBase" i32) (export "floats" $floats) - (export "memory" memory) (func $floats (param $0 f32) (result f32) (local $1 f32) (f32.add diff --git a/test/min.fromasm.imprecise b/test/min.fromasm.imprecise index 9c0d90097..c1703c203 100644 --- a/test/min.fromasm.imprecise +++ b/test/min.fromasm.imprecise @@ -1,8 +1,8 @@ (module (memory 256 256) (import $tDP global "env" "tempDoublePtr" i32) + (import $memory memory "env" "memory") (export "floats" $floats) - (export "memory" memory) (func $floats (param $0 f32) (result f32) (local $1 f32) (f32.add diff --git a/test/min.fromasm.imprecise.no-opts b/test/min.fromasm.imprecise.no-opts index 4563ef382..7ba8db448 100644 --- a/test/min.fromasm.imprecise.no-opts +++ b/test/min.fromasm.imprecise.no-opts @@ -1,8 +1,8 @@ (module (memory 256 256) (import $tDP global "env" "tempDoublePtr" i32) + (import $memory memory "env" "memory") (export "floats" $floats) - (export "memory" memory) (func $floats (param $f f32) (result f32) (local $t f32) (return diff --git a/test/min.fromasm.no-opts b/test/min.fromasm.no-opts index 4563ef382..7ba8db448 100644 --- a/test/min.fromasm.no-opts +++ b/test/min.fromasm.no-opts @@ -1,8 +1,8 @@ (module (memory 256 256) (import $tDP global "env" "tempDoublePtr" i32) + (import $memory memory "env" "memory") (export "floats" $floats) - (export "memory" memory) (func $floats (param $f f32) (result f32) (local $t f32) (return diff --git a/test/two_sides.fromasm b/test/two_sides.fromasm index 0eed39325..45649cba6 100644 --- a/test/two_sides.fromasm +++ b/test/two_sides.fromasm @@ -3,9 +3,9 @@ (data (get_global $memInitBase) "two_sides.asm.js") (type $FUNCSIG$id (func (param f64) (result i32))) (import $f64-to-int "asm2wasm" "f64-to-int" (param f64) (result i32)) + (import $memory memory "env" "memory") (import $memInitBase global "env" "memInitBase" i32) (export "_test" $_test) - (export "memory" memory) (func $_test (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) (local $5 f64) (if diff --git a/test/two_sides.fromasm.imprecise b/test/two_sides.fromasm.imprecise index 3e982aef2..ce7b83d1f 100644 --- a/test/two_sides.fromasm.imprecise +++ b/test/two_sides.fromasm.imprecise @@ -1,7 +1,7 @@ (module (memory 256 256) + (import $memory memory "env" "memory") (export "_test" $_test) - (export "memory" memory) (func $_test (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32) (local $5 f64) (if diff --git a/test/two_sides.fromasm.imprecise.no-opts b/test/two_sides.fromasm.imprecise.no-opts index d76c31b7e..3d27fcef4 100644 --- a/test/two_sides.fromasm.imprecise.no-opts +++ b/test/two_sides.fromasm.imprecise.no-opts @@ -1,7 +1,7 @@ (module (memory 256 256) + (import $memory memory "env" "memory") (export "_test" $_test) - (export "memory" memory) (func $_test (param $i1 i32) (param $i2 i32) (param $i3 i32) (param $i4 i32) (param $i5 i32) (result i32) (local $d6 f64) (if diff --git a/test/two_sides.fromasm.no-opts b/test/two_sides.fromasm.no-opts index e0b639049..51b871191 100644 --- a/test/two_sides.fromasm.no-opts +++ b/test/two_sides.fromasm.no-opts @@ -2,8 +2,8 @@ (memory 256 256) (type $FUNCSIG$id (func (param f64) (result i32))) (import $f64-to-int "asm2wasm" "f64-to-int" (param f64) (result i32)) + (import $memory memory "env" "memory") (export "_test" $_test) - (export "memory" memory) (func $_test (param $i1 i32) (param $i2 i32) (param $i3 i32) (param $i4 i32) (param $i5 i32) (result i32) (local $d6 f64) (if diff --git a/test/unit.fromasm b/test/unit.fromasm index 530761b62..740c6ff52 100644 --- a/test/unit.fromasm +++ b/test/unit.fromasm @@ -19,10 +19,10 @@ (import $f64-to-int "asm2wasm" "f64-to-int" (param f64) (result i32)) (import $f64-rem "asm2wasm" "f64-rem" (param f64 f64) (result f64)) (import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (import $memInitBase global "env" "memInitBase" i32) (export "big_negative" $big_negative) (export "pick" $big_negative) - (export "memory" memory) (global $Int i32 (i32.const 0)) (global $Double f64 (f64.const 0)) (table 10 10 anyfunc) diff --git a/test/unit.fromasm.imprecise b/test/unit.fromasm.imprecise index d0d98452f..e9d6e4300 100644 --- a/test/unit.fromasm.imprecise +++ b/test/unit.fromasm.imprecise @@ -14,9 +14,9 @@ (import $print "env" "print" (param i32)) (import $h "env" "h" (param i32)) (import $f64-rem "asm2wasm" "f64-rem" (param f64 f64) (result f64)) + (import $memory memory "env" "memory") (export "big_negative" $big_negative) (export "pick" $big_negative) - (export "memory" memory) (global $Int i32 (i32.const 0)) (global $Double f64 (f64.const 0)) (table 10 10 anyfunc) diff --git a/test/unit.fromasm.imprecise.no-opts b/test/unit.fromasm.imprecise.no-opts index f06912d08..ec758bf32 100644 --- a/test/unit.fromasm.imprecise.no-opts +++ b/test/unit.fromasm.imprecise.no-opts @@ -14,9 +14,9 @@ (import $print "env" "print" (param i32)) (import $h "env" "h" (param i32)) (import $f64-rem "asm2wasm" "f64-rem" (param f64 f64) (result f64)) + (import $memory memory "env" "memory") (export "big_negative" $big_negative) (export "pick" $exportMe) - (export "memory" memory) (global $Int i32 (i32.const 0)) (global $Double f64 (f64.const 0)) (table 10 10 anyfunc) diff --git a/test/unit.fromasm.no-opts b/test/unit.fromasm.no-opts index 222e0fa65..546fcd7fc 100644 --- a/test/unit.fromasm.no-opts +++ b/test/unit.fromasm.no-opts @@ -18,9 +18,9 @@ (import $f64-to-int "asm2wasm" "f64-to-int" (param f64) (result i32)) (import $f64-rem "asm2wasm" "f64-rem" (param f64 f64) (result f64)) (import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32)) + (import $memory memory "env" "memory") (export "big_negative" $big_negative) (export "pick" $exportMe) - (export "memory" memory) (global $Int i32 (i32.const 0)) (global $Double f64 (f64.const 0)) (table 10 10 anyfunc) |