summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/asm2wasm.h23
-rw-r--r--src/js/wasm.js-post.js7
-rw-r--r--src/tools/asm2wasm.cpp10
-rw-r--r--test/emcc_O2_hello_world.fromasm5
-rw-r--r--test/emcc_O2_hello_world.fromasm.imprecise2
-rw-r--r--test/emcc_O2_hello_world.fromasm.imprecise.no-opts2
-rw-r--r--test/emcc_O2_hello_world.fromasm.no-opts2
-rw-r--r--test/emcc_hello_world.fromasm5
-rw-r--r--test/emcc_hello_world.fromasm.imprecise2
-rw-r--r--test/emcc_hello_world.fromasm.imprecise.no-opts2
-rw-r--r--test/emcc_hello_world.fromasm.no-opts2
-rw-r--r--test/empty.fromasm5
-rw-r--r--test/empty.fromasm.imprecise2
-rw-r--r--test/empty.fromasm.imprecise.no-opts2
-rw-r--r--test/empty.fromasm.no-opts2
-rw-r--r--test/hello_world.fromasm5
-rw-r--r--test/hello_world.fromasm.imprecise2
-rw-r--r--test/hello_world.fromasm.imprecise.no-opts2
-rw-r--r--test/hello_world.fromasm.no-opts2
-rw-r--r--test/memorygrowth.fromasm5
-rw-r--r--test/memorygrowth.fromasm.imprecise2
-rw-r--r--test/memorygrowth.fromasm.imprecise.no-opts2
-rw-r--r--test/memorygrowth.fromasm.no-opts2
-rw-r--r--test/min.fromasm5
-rw-r--r--test/min.fromasm.imprecise2
-rw-r--r--test/min.fromasm.imprecise.no-opts2
-rw-r--r--test/min.fromasm.no-opts2
-rw-r--r--test/two_sides.fromasm5
-rw-r--r--test/two_sides.fromasm.imprecise2
-rw-r--r--test/two_sides.fromasm.imprecise.no-opts2
-rw-r--r--test/two_sides.fromasm.no-opts2
-rw-r--r--test/unit.fromasm5
-rw-r--r--test/unit.fromasm.imprecise2
-rw-r--r--test/unit.fromasm.imprecise.no-opts2
-rw-r--r--test/unit.fromasm.no-opts2
35 files changed, 101 insertions, 27 deletions
diff --git a/src/asm2wasm.h b/src/asm2wasm.h
index e27c5d9e2..0cb9b8dbe 100644
--- a/src/asm2wasm.h
+++ b/src/asm2wasm.h
@@ -840,6 +840,29 @@ void Asm2WasmBuilder::processAsm(Ref ast) {
tableImport->base = TABLE;
tableImport->kind = Import::Table;
wasm.addImport(tableImport.release());
+
+ // Import memory offset
+ {
+ auto* import = new Import;
+ import->name = Name("memoryBase");
+ import->module = Name("env");
+ import->base = Name("memoryBase");
+ import->kind = Import::Global;
+ import->globalType = i32;
+ wasm.addImport(import);
+ }
+
+ // Import table offset
+ {
+ auto* import = new Import;
+ import->name = Name("tableBase");
+ import->module = Name("env");
+ import->base = Name("tableBase");
+ import->kind = Import::Global;
+ import->globalType = i32;
+ wasm.addImport(import);
+ }
+
#endif
#if 0 // enable asm2wasm i64 optimizations when browsers have consistent i64 support in wasm
diff --git a/src/js/wasm.js-post.js b/src/js/wasm.js-post.js
index d691c22f2..1c5e6b0b1 100644
--- a/src/js/wasm.js-post.js
+++ b/src/js/wasm.js-post.js
@@ -212,8 +212,11 @@ function integrateWasmJS(Module) {
info.global = global;
info.env = env;
- if (!('memInitBase' in env)) {
- env['memInitBase'] = STATIC_BASE; // tell the memory segments where to place themselves
+ if (!('memoryBase' in env)) {
+ env['memoryBase'] = STATIC_BASE; // tell the memory segments where to place themselves
+ }
+ if (!('tableBase' in env)) {
+ env['tableBase'] = 0; // tell the memory segments where to place themselves
}
wasmJS['providedTotalMemory'] = Module['buffer'].byteLength;
diff --git a/src/tools/asm2wasm.cpp b/src/tools/asm2wasm.cpp
index af2cf6f5a..031b1fd23 100644
--- a/src/tools/asm2wasm.cpp
+++ b/src/tools/asm2wasm.cpp
@@ -101,16 +101,8 @@ int main(int argc, const char *argv[]) {
if (memInit != options.extra.end()) {
auto filename = memInit->second.c_str();
auto data(read_file<std::vector<char>>(filename, Flags::Binary, options.debug ? Flags::Debug : Flags::Release));
- // the mem init's base is imported
- auto* import = new Import;
- import->name = Name("memInitBase");
- import->module = Name("env");
- import->base = Name("memInitBase");
- import->kind = Import::Global;
- import->globalType = i32;
- wasm.addImport(import);
// create the memory segment
- wasm.memory.segments.emplace_back(Builder(wasm).makeGetGlobal(import->name, import->globalType), data);
+ wasm.memory.segments.emplace_back(Builder(wasm).makeGetGlobal(Name("memoryBase"), i32), data);
}
if (options.debug) std::cerr << "printing..." << std::endl;
diff --git a/test/emcc_O2_hello_world.fromasm b/test/emcc_O2_hello_world.fromasm
index fbf527eb4..72023d55c 100644
--- a/test/emcc_O2_hello_world.fromasm
+++ b/test/emcc_O2_hello_world.fromasm
@@ -1,6 +1,6 @@
(module
(memory 256 256)
- (data (get_global $memInitBase) "emcc_O2_hello_world.asm.js")
+ (data (get_global $memoryBase) "emcc_O2_hello_world.asm.js")
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
(type $FUNCSIG$ii (func (param i32) (result i32)))
@@ -32,7 +32,8 @@
(import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
- (import $memInitBase global "env" "memInitBase" i32)
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_free" $_free)
(export "_main" $_main)
(export "_memset" $_memset)
diff --git a/test/emcc_O2_hello_world.fromasm.imprecise b/test/emcc_O2_hello_world.fromasm.imprecise
index 3a518cf6c..691e60f0a 100644
--- a/test/emcc_O2_hello_world.fromasm.imprecise
+++ b/test/emcc_O2_hello_world.fromasm.imprecise
@@ -30,6 +30,8 @@
(import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_free" $_free)
(export "_main" $_main)
(export "_memset" $_memset)
diff --git a/test/emcc_O2_hello_world.fromasm.imprecise.no-opts b/test/emcc_O2_hello_world.fromasm.imprecise.no-opts
index af862279a..6eaa96fd7 100644
--- a/test/emcc_O2_hello_world.fromasm.imprecise.no-opts
+++ b/test/emcc_O2_hello_world.fromasm.imprecise.no-opts
@@ -30,6 +30,8 @@
(import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_free" $_free)
(export "_main" $_main)
(export "_memset" $_memset)
diff --git a/test/emcc_O2_hello_world.fromasm.no-opts b/test/emcc_O2_hello_world.fromasm.no-opts
index 634a53659..189de5e62 100644
--- a/test/emcc_O2_hello_world.fromasm.no-opts
+++ b/test/emcc_O2_hello_world.fromasm.no-opts
@@ -31,6 +31,8 @@
(import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_free" $_free)
(export "_main" $_main)
(export "_memset" $_memset)
diff --git a/test/emcc_hello_world.fromasm b/test/emcc_hello_world.fromasm
index 036619963..49f2c0080 100644
--- a/test/emcc_hello_world.fromasm
+++ b/test/emcc_hello_world.fromasm
@@ -1,6 +1,6 @@
(module
(memory 256 256)
- (data (get_global $memInitBase) "emcc_hello_world.asm.js")
+ (data (get_global $memoryBase) "emcc_hello_world.asm.js")
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
(type $FUNCSIG$id (func (param f64) (result i32)))
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
@@ -41,7 +41,8 @@
(import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
- (import $memInitBase global "env" "memInitBase" i32)
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_i64Subtract" $_i64Subtract)
(export "_free" $_free)
(export "_main" $_main)
diff --git a/test/emcc_hello_world.fromasm.imprecise b/test/emcc_hello_world.fromasm.imprecise
index 99ae85d71..0cf544e09 100644
--- a/test/emcc_hello_world.fromasm.imprecise
+++ b/test/emcc_hello_world.fromasm.imprecise
@@ -34,6 +34,8 @@
(import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_i64Subtract" $_i64Subtract)
(export "_free" $_free)
(export "_main" $_main)
diff --git a/test/emcc_hello_world.fromasm.imprecise.no-opts b/test/emcc_hello_world.fromasm.imprecise.no-opts
index b5e740df2..339580ad7 100644
--- a/test/emcc_hello_world.fromasm.imprecise.no-opts
+++ b/test/emcc_hello_world.fromasm.imprecise.no-opts
@@ -34,6 +34,8 @@
(import $___syscall146 "env" "___syscall146" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_i64Subtract" $_i64Subtract)
(export "_free" $_free)
(export "_main" $_main)
diff --git a/test/emcc_hello_world.fromasm.no-opts b/test/emcc_hello_world.fromasm.no-opts
index 49c0aed22..98f57b812 100644
--- a/test/emcc_hello_world.fromasm.no-opts
+++ b/test/emcc_hello_world.fromasm.no-opts
@@ -40,6 +40,8 @@
(import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_i64Subtract" $_i64Subtract)
(export "_free" $_free)
(export "_main" $_main)
diff --git a/test/empty.fromasm b/test/empty.fromasm
index 2afc01ebf..b68429ccf 100644
--- a/test/empty.fromasm
+++ b/test/empty.fromasm
@@ -1,7 +1,8 @@
(module
(memory 256 256)
- (data (get_global $memInitBase) "empty.asm.js")
+ (data (get_global $memoryBase) "empty.asm.js")
(import $memory memory "env" "memory")
(import $table table "env" "table")
- (import $memInitBase global "env" "memInitBase" i32)
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
)
diff --git a/test/empty.fromasm.imprecise b/test/empty.fromasm.imprecise
index f0a2ff208..2042278ee 100644
--- a/test/empty.fromasm.imprecise
+++ b/test/empty.fromasm.imprecise
@@ -2,4 +2,6 @@
(memory 256 256)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
)
diff --git a/test/empty.fromasm.imprecise.no-opts b/test/empty.fromasm.imprecise.no-opts
index f0a2ff208..2042278ee 100644
--- a/test/empty.fromasm.imprecise.no-opts
+++ b/test/empty.fromasm.imprecise.no-opts
@@ -2,4 +2,6 @@
(memory 256 256)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
)
diff --git a/test/empty.fromasm.no-opts b/test/empty.fromasm.no-opts
index f0a2ff208..2042278ee 100644
--- a/test/empty.fromasm.no-opts
+++ b/test/empty.fromasm.no-opts
@@ -2,4 +2,6 @@
(memory 256 256)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
)
diff --git a/test/hello_world.fromasm b/test/hello_world.fromasm
index 64839186a..1706d2a2b 100644
--- a/test/hello_world.fromasm
+++ b/test/hello_world.fromasm
@@ -1,9 +1,10 @@
(module
(memory 256 256)
- (data (get_global $memInitBase) "hello_world.asm.js")
+ (data (get_global $memoryBase) "hello_world.asm.js")
(import $memory memory "env" "memory")
(import $table table "env" "table")
- (import $memInitBase global "env" "memInitBase" i32)
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "add" $add)
(func $add (param $0 i32) (param $1 i32) (result i32)
(i32.add
diff --git a/test/hello_world.fromasm.imprecise b/test/hello_world.fromasm.imprecise
index 90eea0c3b..c69686d27 100644
--- a/test/hello_world.fromasm.imprecise
+++ b/test/hello_world.fromasm.imprecise
@@ -2,6 +2,8 @@
(memory 256 256)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "add" $add)
(func $add (param $0 i32) (param $1 i32) (result i32)
(i32.add
diff --git a/test/hello_world.fromasm.imprecise.no-opts b/test/hello_world.fromasm.imprecise.no-opts
index deae6ab2a..1bd263d54 100644
--- a/test/hello_world.fromasm.imprecise.no-opts
+++ b/test/hello_world.fromasm.imprecise.no-opts
@@ -2,6 +2,8 @@
(memory 256 256)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "add" $add)
(func $add (param $x i32) (param $y i32) (result i32)
(return
diff --git a/test/hello_world.fromasm.no-opts b/test/hello_world.fromasm.no-opts
index deae6ab2a..1bd263d54 100644
--- a/test/hello_world.fromasm.no-opts
+++ b/test/hello_world.fromasm.no-opts
@@ -2,6 +2,8 @@
(memory 256 256)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "add" $add)
(func $add (param $x i32) (param $y i32) (result i32)
(return
diff --git a/test/memorygrowth.fromasm b/test/memorygrowth.fromasm
index ec2f13065..eaec42b73 100644
--- a/test/memorygrowth.fromasm
+++ b/test/memorygrowth.fromasm
@@ -1,6 +1,6 @@
(module
(memory 256 256)
- (data (get_global $memInitBase) "memorygrowth.asm.js")
+ (data (get_global $memoryBase) "memorygrowth.asm.js")
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
(type $FUNCSIG$ii (func (param i32) (result i32)))
@@ -28,7 +28,8 @@
(import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
- (import $memInitBase global "env" "memInitBase" i32)
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_free" $fb)
(export "_main" $Na)
(export "_pthread_self" $ib)
diff --git a/test/memorygrowth.fromasm.imprecise b/test/memorygrowth.fromasm.imprecise
index 0ade046a3..68912b28b 100644
--- a/test/memorygrowth.fromasm.imprecise
+++ b/test/memorygrowth.fromasm.imprecise
@@ -26,6 +26,8 @@
(import $ya "env" "___syscall146" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_free" $fb)
(export "_main" $Na)
(export "_pthread_self" $ib)
diff --git a/test/memorygrowth.fromasm.imprecise.no-opts b/test/memorygrowth.fromasm.imprecise.no-opts
index e8ec51644..ac5e13f93 100644
--- a/test/memorygrowth.fromasm.imprecise.no-opts
+++ b/test/memorygrowth.fromasm.imprecise.no-opts
@@ -26,6 +26,8 @@
(import $ya "env" "___syscall146" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_free" $fb)
(export "_main" $Na)
(export "_pthread_self" $ib)
diff --git a/test/memorygrowth.fromasm.no-opts b/test/memorygrowth.fromasm.no-opts
index a5c292652..4c91ef8eb 100644
--- a/test/memorygrowth.fromasm.no-opts
+++ b/test/memorygrowth.fromasm.no-opts
@@ -27,6 +27,8 @@
(import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_free" $fb)
(export "_main" $Na)
(export "_pthread_self" $ib)
diff --git a/test/min.fromasm b/test/min.fromasm
index 907bc572e..9250c1693 100644
--- a/test/min.fromasm
+++ b/test/min.fromasm
@@ -1,10 +1,11 @@
(module
(memory 256 256)
- (data (get_global $memInitBase) "min.asm.js")
+ (data (get_global $memoryBase) "min.asm.js")
(import $tDP global "env" "tempDoublePtr" i32)
(import $memory memory "env" "memory")
(import $table table "env" "table")
- (import $memInitBase global "env" "memInitBase" i32)
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "floats" $floats)
(func $floats (param $0 f32) (result f32)
(local $1 f32)
diff --git a/test/min.fromasm.imprecise b/test/min.fromasm.imprecise
index 612ed2388..9d0edd356 100644
--- a/test/min.fromasm.imprecise
+++ b/test/min.fromasm.imprecise
@@ -3,6 +3,8 @@
(import $tDP global "env" "tempDoublePtr" i32)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "floats" $floats)
(func $floats (param $0 f32) (result f32)
(local $1 f32)
diff --git a/test/min.fromasm.imprecise.no-opts b/test/min.fromasm.imprecise.no-opts
index 00740ad5f..31828a21a 100644
--- a/test/min.fromasm.imprecise.no-opts
+++ b/test/min.fromasm.imprecise.no-opts
@@ -3,6 +3,8 @@
(import $tDP global "env" "tempDoublePtr" i32)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "floats" $floats)
(func $floats (param $f f32) (result f32)
(local $t f32)
diff --git a/test/min.fromasm.no-opts b/test/min.fromasm.no-opts
index 00740ad5f..31828a21a 100644
--- a/test/min.fromasm.no-opts
+++ b/test/min.fromasm.no-opts
@@ -3,6 +3,8 @@
(import $tDP global "env" "tempDoublePtr" i32)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "floats" $floats)
(func $floats (param $f f32) (result f32)
(local $t f32)
diff --git a/test/two_sides.fromasm b/test/two_sides.fromasm
index 53831b7ec..c567116ae 100644
--- a/test/two_sides.fromasm
+++ b/test/two_sides.fromasm
@@ -1,11 +1,12 @@
(module
(memory 256 256)
- (data (get_global $memInitBase) "two_sides.asm.js")
+ (data (get_global $memoryBase) "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 $table table "env" "table")
- (import $memInitBase global "env" "memInitBase" i32)
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_test" $_test)
(func $_test (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
(local $5 f64)
diff --git a/test/two_sides.fromasm.imprecise b/test/two_sides.fromasm.imprecise
index cd13cea64..fbd3799c4 100644
--- a/test/two_sides.fromasm.imprecise
+++ b/test/two_sides.fromasm.imprecise
@@ -2,6 +2,8 @@
(memory 256 256)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_test" $_test)
(func $_test (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
(local $5 f64)
diff --git a/test/two_sides.fromasm.imprecise.no-opts b/test/two_sides.fromasm.imprecise.no-opts
index cce1e9b62..550d747dc 100644
--- a/test/two_sides.fromasm.imprecise.no-opts
+++ b/test/two_sides.fromasm.imprecise.no-opts
@@ -2,6 +2,8 @@
(memory 256 256)
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_test" $_test)
(func $_test (param $i1 i32) (param $i2 i32) (param $i3 i32) (param $i4 i32) (param $i5 i32) (result i32)
(local $d6 f64)
diff --git a/test/two_sides.fromasm.no-opts b/test/two_sides.fromasm.no-opts
index a55ccddf1..4123ec856 100644
--- a/test/two_sides.fromasm.no-opts
+++ b/test/two_sides.fromasm.no-opts
@@ -4,6 +4,8 @@
(import $f64-to-int "asm2wasm" "f64-to-int" (param f64) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "_test" $_test)
(func $_test (param $i1 i32) (param $i2 i32) (param $i3 i32) (param $i4 i32) (param $i5 i32) (result i32)
(local $d6 f64)
diff --git a/test/unit.fromasm b/test/unit.fromasm
index 1987f990b..0260adb81 100644
--- a/test/unit.fromasm
+++ b/test/unit.fromasm
@@ -1,6 +1,6 @@
(module
(memory 256 256)
- (data (get_global $memInitBase) "unit.asm.js")
+ (data (get_global $memoryBase) "unit.asm.js")
(type $FUNCSIG$id (func (param f64) (result i32)))
(type $FUNCSIG$ddd (func (param f64 f64) (result f64)))
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
@@ -21,7 +21,8 @@
(import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
- (import $memInitBase global "env" "memInitBase" i32)
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "big_negative" $big_negative)
(export "pick" $big_negative)
(global $Int i32 (i32.const 0))
diff --git a/test/unit.fromasm.imprecise b/test/unit.fromasm.imprecise
index 3bd3d6881..5ebe88c6f 100644
--- a/test/unit.fromasm.imprecise
+++ b/test/unit.fromasm.imprecise
@@ -16,6 +16,8 @@
(import $f64-rem "asm2wasm" "f64-rem" (param f64 f64) (result f64))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "big_negative" $big_negative)
(export "pick" $big_negative)
(global $Int i32 (i32.const 0))
diff --git a/test/unit.fromasm.imprecise.no-opts b/test/unit.fromasm.imprecise.no-opts
index afacf0794..7fdd01aaa 100644
--- a/test/unit.fromasm.imprecise.no-opts
+++ b/test/unit.fromasm.imprecise.no-opts
@@ -16,6 +16,8 @@
(import $f64-rem "asm2wasm" "f64-rem" (param f64 f64) (result f64))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "big_negative" $big_negative)
(export "pick" $exportMe)
(global $Int i32 (i32.const 0))
diff --git a/test/unit.fromasm.no-opts b/test/unit.fromasm.no-opts
index 165b9df50..14c4d6615 100644
--- a/test/unit.fromasm.no-opts
+++ b/test/unit.fromasm.no-opts
@@ -20,6 +20,8 @@
(import $i32u-div "asm2wasm" "i32u-div" (param i32 i32) (result i32))
(import $memory memory "env" "memory")
(import $table table "env" "table")
+ (import $memoryBase global "env" "memoryBase" i32)
+ (import $tableBase global "env" "tableBase" i32)
(export "big_negative" $big_negative)
(export "pick" $exportMe)
(global $Int i32 (i32.const 0))