summaryrefslogtreecommitdiff
path: root/test/wasm2js/unaligned.2asm.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/wasm2js/unaligned.2asm.js')
-rw-r--r--test/wasm2js/unaligned.2asm.js38
1 files changed, 35 insertions, 3 deletions
diff --git a/test/wasm2js/unaligned.2asm.js b/test/wasm2js/unaligned.2asm.js
index d9268bcd6..fceb55a3e 100644
--- a/test/wasm2js/unaligned.2asm.js
+++ b/test/wasm2js/unaligned.2asm.js
@@ -1,4 +1,5 @@
import { __tempMemory__ } from 'env';
+import { setTempRet0 } from 'env';
function asmFunc(global, env, buffer) {
"almost asm";
@@ -22,6 +23,7 @@ function asmFunc(global, env, buffer) {
var abort = env.abort;
var nan = global.NaN;
var infinity = global.Infinity;
+ var setTempRet0 = env.setTempRet0;
var __tempMemory__ = env.__tempMemory__ | 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0() {
@@ -96,11 +98,41 @@ function asmFunc(global, env, buffer) {
(wasm2js_i32$2 = wasm2js_i32$0, wasm2js_i32$3 = wasm2js_i32$1), ((HEAP8[(wasm2js_i32$2 + 4 | 0) >> 0] = wasm2js_i32$3 & 255 | 0, HEAP8[(wasm2js_i32$2 + 5 | 0) >> 0] = (wasm2js_i32$3 >>> 8 | 0) & 255 | 0), HEAP8[(wasm2js_i32$2 + 6 | 0) >> 0] = (wasm2js_i32$3 >>> 16 | 0) & 255 | 0), HEAP8[(wasm2js_i32$2 + 7 | 0) >> 0] = (wasm2js_i32$3 >>> 24 | 0) & 255 | 0;
}
+ function legalstub$1() {
+ var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7_1 = 0, $0_1 = 0, $0$hi = 0, i64toi32_i32$2 = 0;
+ i64toi32_i32$0 = $1() | 0;
+ i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
+ $0_1 = i64toi32_i32$0;
+ $0$hi = i64toi32_i32$1;
+ i64toi32_i32$2 = i64toi32_i32$0;
+ i64toi32_i32$0 = 0;
+ i64toi32_i32$3 = 32;
+ i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
+ if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
+ {
+ i64toi32_i32$0 = 0;
+ $7_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
+ }
+ } else {
+ {
+ i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
+ $7_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
+ }
+ }
+ setTempRet0($7_1 | 0);
+ i64toi32_i32$0 = $0$hi;
+ return $0_1 | 0;
+ }
+
+ function legalstub$2() {
+ return +(+Math_fround($2()));
+ }
+
var FUNCTION_TABLE = [];
return {
i32_load: $0,
- i64_load: $1,
- f32_load: $2,
+ i64_load: legalstub$1,
+ f32_load: legalstub$2,
f64_load: $3,
i32_store: $4,
i64_store: $5,
@@ -110,7 +142,7 @@ function asmFunc(global, env, buffer) {
}
const memasmFunc = new ArrayBuffer(65536);
-const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); }},memasmFunc);
+const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0},memasmFunc);
export const i32_load = retasmFunc.i32_load;
export const i64_load = retasmFunc.i64_load;
export const f32_load = retasmFunc.f32_load;