diff options
author | Sam Clegg <sbc@chromium.org> | 2020-11-10 18:06:14 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-10 18:06:14 -0800 |
commit | 32171f1d6ff57fdb31f55d8aa554eac15cb5d8f5 (patch) | |
tree | 24cdd04d3e616aa25354372a9cab2f72f95094af /test/wasm2js/minified-memory.2asm.js | |
parent | bb124f995527f650d98bdac30b00b125b76fab9c (diff) | |
download | binaryen-32171f1d6ff57fdb31f55d8aa554eac15cb5d8f5.tar.gz binaryen-32171f1d6ff57fdb31f55d8aa554eac15cb5d8f5.tar.bz2 binaryen-32171f1d6ff57fdb31f55d8aa554eac15cb5d8f5.zip |
wasm2js: Support for exported memory (#3323)
The asmFunc now sets the outer scope's `bufferView` variable
as well as its own internal views.
Diffstat (limited to 'test/wasm2js/minified-memory.2asm.js')
-rw-r--r-- | test/wasm2js/minified-memory.2asm.js | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/test/wasm2js/minified-memory.2asm.js b/test/wasm2js/minified-memory.2asm.js index 6c153b656..bfb5fb75c 100644 --- a/test/wasm2js/minified-memory.2asm.js +++ b/test/wasm2js/minified-memory.2asm.js @@ -11,6 +11,7 @@ function asmFunc(env) { var HEAPU32 = new Uint32Array(buffer); var HEAPF32 = new Float32Array(buffer); var HEAPF64 = new Float64Array(buffer); + bufferView = HEAPU8; var Math_imul = Math.imul; var Math_fround = Math.fround; var Math_abs = Math.abs; @@ -40,7 +41,6 @@ function asmFunc(env) { var newBuffer = new ArrayBuffer(Math_imul(newPages, 65536)); var newHEAP8 = new Int8Array(newBuffer); newHEAP8.set(HEAP8); - HEAP8 = newHEAP8; HEAP8 = new Int8Array(newBuffer); HEAP16 = new Int16Array(newBuffer); HEAP32 = new Int32Array(newBuffer); @@ -50,7 +50,8 @@ function asmFunc(env) { HEAPF32 = new Float32Array(newBuffer); HEAPF64 = new Float64Array(newBuffer); buffer = newBuffer; - memory.buffer = newBuffer; + memory.buffer = buffer; + bufferView = HEAPU8; } return oldPages; } @@ -60,8 +61,8 @@ function asmFunc(env) { }; } +var bufferView; var memasmFunc = new ArrayBuffer(65536); -var bufferView = new Uint8Array(memasmFunc); var retasmFunc = asmFunc( { abort: function() { throw new Error('abort'); }, a: { buffer : memasmFunc } }); |