summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/abi/js.h5
-rw-r--r--src/asmjs/shared-constants.cpp2
-rw-r--r--src/passes/RemoveNonJSOps.cpp5
-rw-r--r--src/passes/wasm-intrinsics.wat22
-rw-r--r--src/wasm2js.h16
-rw-r--r--test/passes/remove-non-js-ops.txt19
-rw-r--r--test/wasm2js/i64.2asm.js96
-rw-r--r--test/wasm2js/int_exprs.2asm.js939
-rw-r--r--test/wasm2js/left-to-right.2asm.js90
-rw-r--r--test/wasm2js/traps.2asm.js147
10 files changed, 317 insertions, 1024 deletions
diff --git a/src/abi/js.h b/src/abi/js.h
index c8ac94407..118a2c981 100644
--- a/src/abi/js.h
+++ b/src/abi/js.h
@@ -38,8 +38,6 @@ namespace wasm2js {
extern cashew::IString SCRATCH_LOAD_I32;
extern cashew::IString SCRATCH_STORE_I32;
-extern cashew::IString SCRATCH_LOAD_I64;
-extern cashew::IString SCRATCH_STORE_I64;
extern cashew::IString SCRATCH_LOAD_F32;
extern cashew::IString SCRATCH_STORE_F32;
extern cashew::IString SCRATCH_LOAD_F64;
@@ -76,8 +74,6 @@ inline void ensureHelpers(Module* wasm,
ensureImport(SCRATCH_LOAD_I32, {Type::i32}, Type::i32);
ensureImport(SCRATCH_STORE_I32, {Type::i32, Type::i32}, Type::none);
- ensureImport(SCRATCH_LOAD_I64, {}, Type::i64);
- ensureImport(SCRATCH_STORE_I64, {Type::i64}, Type::none);
ensureImport(SCRATCH_LOAD_F32, {}, Type::f32);
ensureImport(SCRATCH_STORE_F32, {Type::f32}, Type::none);
ensureImport(SCRATCH_LOAD_F64, {}, Type::f64);
@@ -98,7 +94,6 @@ inline void ensureHelpers(Module* wasm,
inline bool isHelper(cashew::IString name) {
return name == SCRATCH_LOAD_I32 || name == SCRATCH_STORE_I32 ||
- name == SCRATCH_LOAD_I64 || name == SCRATCH_STORE_I64 ||
name == SCRATCH_LOAD_F32 || name == SCRATCH_STORE_F32 ||
name == SCRATCH_LOAD_F64 || name == SCRATCH_STORE_F64 ||
name == ATOMIC_WAIT_I32 || name == MEMORY_INIT ||
diff --git a/src/asmjs/shared-constants.cpp b/src/asmjs/shared-constants.cpp
index 8a13cf55c..37594108a 100644
--- a/src/asmjs/shared-constants.cpp
+++ b/src/asmjs/shared-constants.cpp
@@ -113,8 +113,6 @@ namespace wasm2js {
cashew::IString SCRATCH_LOAD_I32("wasm2js_scratch_load_i32");
cashew::IString SCRATCH_STORE_I32("wasm2js_scratch_store_i32");
-cashew::IString SCRATCH_LOAD_I64("wasm2js_scratch_load_i64");
-cashew::IString SCRATCH_STORE_I64("wasm2js_scratch_store_i64");
cashew::IString SCRATCH_LOAD_F32("wasm2js_scratch_load_f32");
cashew::IString SCRATCH_STORE_F32("wasm2js_scratch_store_f32");
cashew::IString SCRATCH_LOAD_F64("wasm2js_scratch_load_f64");
diff --git a/src/passes/RemoveNonJSOps.cpp b/src/passes/RemoveNonJSOps.cpp
index 3c1947725..e25a834b0 100644
--- a/src/passes/RemoveNonJSOps.cpp
+++ b/src/passes/RemoveNonJSOps.cpp
@@ -107,6 +107,11 @@ struct RemoveNonJSOpsPass : public WalkerPass<PostWalker<RemoveNonJSOpsPass>> {
neededFunctions.clear();
}
+ // Copy all the globals in the intrinsics module
+ for (auto& global : intrinsicsModule.globals) {
+ ModuleUtils::copyGlobal(global.get(), *module);
+ }
+
// Intrinsics may use memory, so ensure the module has one.
MemoryUtils::ensureExists(module->memory);
diff --git a/src/passes/wasm-intrinsics.wat b/src/passes/wasm-intrinsics.wat
index f54547a0d..76e900734 100644
--- a/src/passes/wasm-intrinsics.wat
+++ b/src/passes/wasm-intrinsics.wat
@@ -6,9 +6,8 @@
;; (aka inlining and whatnot)
;;
;; LOCAL MODS done by hand afterwards:
-;; * Remove hardcoded address 1024 (apparently a free memory location rustc
-;; thinks is ok to use?); add intrinsic functions, which load/store to
-;; special scratch space, wasm2js_scratch_load_i32 etc.
+;; * Remove hardcoded address 1024 which was used for temporary data; instead
+;; add $wasm-intrinsics-temp-i64 global for that.
;; * Fix function type of __wasm_ctz_i64, which was wrong somehow,
;; i32, i32 => i32 instead of i64 => i64
;;
@@ -22,8 +21,6 @@
(type $4 (func (param i32 i32) (result i32)))
(type $5 (func (param i64) (result i64)))
(import "env" "memory" (memory $0 17))
- (import "env" "wasm2js_scratch_load_i64" (func $wasm2js_scratch_load_i64 (result i64)))
- (import "env" "wasm2js_scratch_store_i64" (func $wasm2js_scratch_store_i64 (param i64)))
(export "__wasm_i64_sdiv" (func $__wasm_i64_sdiv))
(export "__wasm_i64_udiv" (func $__wasm_i64_udiv))
(export "__wasm_i64_srem" (func $__wasm_i64_srem))
@@ -41,6 +38,7 @@
(export "__wasm_nearest_f64" (func $__wasm_nearest_f64))
(export "__wasm_popcnt_i32" (func $__wasm_popcnt_i32))
(export "__wasm_popcnt_i64" (func $__wasm_popcnt_i64))
+ (global $__wasm-intrinsics-temp-i64 (mut i64) (i64.const 0))
;; lowering of the i32.popcnt instruction, counts the number of bits set in the
;; input and returns the result
@@ -137,7 +135,7 @@
(local.get $var$1)
)
)
- (call $wasm2js_scratch_load_i64)
+ (global.get $__wasm-intrinsics-temp-i64)
)
;; lowering of the i64.mul instruction, return $var0 * $var$1
(func $__wasm_i64_mul (; 4 ;) (type $0) (param $var$0 i64) (param $var$1 i64) (result i64)
@@ -578,7 +576,7 @@
(i64.const 4294967296)
)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(i64.extend_i32_u
(i32.sub
(local.tee $var$2
@@ -639,7 +637,7 @@
(local.get $var$3)
)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(i64.or
(i64.shl
(i64.extend_i32_u
@@ -719,7 +717,7 @@
)
(br $label$3)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(i64.shl
(i64.extend_i32_u
(i32.sub
@@ -761,7 +759,7 @@
)
(br $label$2)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(i64.extend_i32_u
(i32.and
(local.get $var$4)
@@ -892,7 +890,7 @@
)
)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(local.get $var$5)
)
(return
@@ -905,7 +903,7 @@
)
)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(local.get $var$0)
)
(local.set $var$0
diff --git a/src/wasm2js.h b/src/wasm2js.h
index a6f27eff1..6b4ad697f 100644
--- a/src/wasm2js.h
+++ b/src/wasm2js.h
@@ -283,6 +283,8 @@ Ref Wasm2JSBuilder::processWasm(Module* wasm, Name funcName) {
{
PassRunner runner(wasm, options);
runner.add(make_unique<AutoDrop>());
+ // TODO: only legalize if necessary - emscripten would already do so, and
+ // likely other toolchains. but spec test suite needs that.
runner.add("legalize-js-interface");
// First up remove as many non-JS operations we can, including things like
// 64-bit integer multiplication/division, `f32.nearest` instructions, etc.
@@ -2378,20 +2380,6 @@ void Wasm2JSGlue::emitSpecialSupport() {
return i32ScratchView[index];
}
)";
- } else if (import->base == ABI::wasm2js::SCRATCH_STORE_I64) {
- out << R"(
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
- )";
- } else if (import->base == ABI::wasm2js::SCRATCH_LOAD_I64) {
- out << R"(
- function legalimport$wasm2js_scratch_load_i64() {
- if (typeof setTempRet0 === 'function') setTempRet0(i32ScratchView[1]);
- return i32ScratchView[0];
- }
- )";
} else if (import->base == ABI::wasm2js::SCRATCH_STORE_F32) {
out << R"(
function wasm2js_scratch_store_f32(value) {
diff --git a/test/passes/remove-non-js-ops.txt b/test/passes/remove-non-js-ops.txt
index f906e8f81..8872a935f 100644
--- a/test/passes/remove-non-js-ops.txt
+++ b/test/passes/remove-non-js-ops.txt
@@ -8,21 +8,17 @@
(type $i32_=>_none (func (param i32)))
(type $i32_i32_=>_none (func (param i32 i32)))
(type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32)))
- (type $i64_=>_none (func (param i64)))
(type $f32_=>_none (func (param f32)))
(type $f64_=>_none (func (param f64)))
(type $none_=>_i32 (func (result i32)))
(type $i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32) (result i32)))
(type $i32_i32_i32_i32_i32_i32_=>_i32 (func (param i32 i32 i32 i32 i32 i32) (result i32)))
- (type $none_=>_i64 (func (result i64)))
(type $none_=>_f32 (func (result f32)))
(type $f32_f32_=>_f32 (func (param f32 f32) (result f32)))
(type $none_=>_f64 (func (result f64)))
(type $f64_f64_=>_f64 (func (param f64 f64) (result f64)))
(import "env" "wasm2js_scratch_load_i32" (func $wasm2js_scratch_load_i32 (param i32) (result i32)))
(import "env" "wasm2js_scratch_store_i32" (func $wasm2js_scratch_store_i32 (param i32 i32)))
- (import "env" "wasm2js_scratch_load_i64" (func $wasm2js_scratch_load_i64 (result i64)))
- (import "env" "wasm2js_scratch_store_i64" (func $wasm2js_scratch_store_i64 (param i64)))
(import "env" "wasm2js_scratch_load_f32" (func $wasm2js_scratch_load_f32 (result f32)))
(import "env" "wasm2js_scratch_store_f32" (func $wasm2js_scratch_store_f32 (param f32)))
(import "env" "wasm2js_scratch_load_f64" (func $wasm2js_scratch_load_f64 (result f64)))
@@ -35,6 +31,7 @@
(import "env" "wasm2js_atomic_rmw_i64" (func $wasm2js_atomic_rmw_i64 (param i32 i32 i32 i32 i32 i32) (result i32)))
(import "env" "wasm2js_get_stashed_bits" (func $wasm2js_get_stashed_bits (result i32)))
(memory $0 1)
+ (global $__wasm-intrinsics-temp-i64 (mut i64) (i64.const 0))
(func $copysign64 (param $0 f64) (param $1 f64) (result f64)
(f64.reinterpret_i64
(i64.or
@@ -426,7 +423,7 @@
(i64.const 4294967296)
)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(i64.extend_i32_u
(i32.sub
(local.tee $var$2
@@ -487,7 +484,7 @@
(local.get $var$3)
)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(i64.or
(i64.shl
(i64.extend_i32_u
@@ -567,7 +564,7 @@
)
(br $label$3)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(i64.shl
(i64.extend_i32_u
(i32.sub
@@ -609,7 +606,7 @@
)
(br $label$2)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(i64.extend_i32_u
(i32.and
(local.get $var$4)
@@ -740,7 +737,7 @@
)
)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(local.get $var$5)
)
(return
@@ -753,7 +750,7 @@
)
)
)
- (call $wasm2js_scratch_store_i64
+ (global.set $__wasm-intrinsics-temp-i64
(local.get $var$0)
)
(local.set $var$0
@@ -813,7 +810,7 @@
(local.get $var$1)
)
)
- (call $wasm2js_scratch_load_i64)
+ (global.get $__wasm-intrinsics-temp-i64)
)
(func $__wasm_nearest_f32 (param $var$0 f32) (result f32)
(local $var$1 f32)
diff --git a/test/wasm2js/i64.2asm.js b/test/wasm2js/i64.2asm.js
index 8ac6cff65..da5a4d5b8 100644
--- a/test/wasm2js/i64.2asm.js
+++ b/test/wasm2js/i64.2asm.js
@@ -1,22 +1,5 @@
import { setTempRet0 } from 'env';
-import { getTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_load_i64() {
- if (typeof setTempRet0 === 'function') setTempRet0(i32ScratchView[1]);
- return i32ScratchView[0];
- }
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -39,7 +22,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
- var getTempRet0 = env.getTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x, x$hi, y, y$hi) {
x = x | 0;
@@ -2396,54 +2380,6 @@ function asmFunc(global, env, buffer) {
return $28($9_1 | 0, i64toi32_i32$1 | 0, $15_1 | 0, i64toi32_i32$2 | 0) | 0 | 0;
}
- function legalfunc$wasm2js_scratch_load_i64() {
- var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $8_1 = 0, $1_1 = 0, $1$hi = 0, $4$hi = 0;
- i64toi32_i32$0 = 0;
- $1_1 = legalimport$wasm2js_scratch_load_i64() | 0;
- $1$hi = i64toi32_i32$0;
- i64toi32_i32$0 = 0;
- i64toi32_i32$2 = getTempRet0() | 0;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- $8_1 = 0;
- } else {
- i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
- $8_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- }
- $4$hi = i64toi32_i32$1;
- i64toi32_i32$1 = $1$hi;
- i64toi32_i32$0 = $1_1;
- i64toi32_i32$2 = $4$hi;
- i64toi32_i32$3 = $8_1;
- i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0;
- i64toi32_i32$0 = i64toi32_i32$0 | i64toi32_i32$3 | 0;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$2;
- return i64toi32_i32$0 | 0;
- }
-
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8_1 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8_1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8_1 | 0);
- }
-
function _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -2795,7 +2731,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -2850,7 +2787,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -2882,7 +2820,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -2896,7 +2835,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -3089,7 +3029,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -3114,7 +3055,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -3249,10 +3191,10 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = var$1$hi;
i64toi32_i32$1 = _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$0 = legalfunc$wasm2js_scratch_load_i64() | 0;
- i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
- return i64toi32_i32$0 | 0;
+ i64toi32_i32$0 = __wasm_intrinsics_temp_i64$hi;
+ i64toi32_i32$1 = __wasm_intrinsics_temp_i64;
+ i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
+ return i64toi32_i32$1 | 0;
}
function __wasm_popcnt_i64(var$0, var$0$hi) {
@@ -3561,7 +3503,7 @@ function asmFunc(global, env, buffer) {
}
var memasmFunc = new ArrayBuffer(65536);
-var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0,getTempRet0},memasmFunc);
+var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0},memasmFunc);
export var add = retasmFunc.add;
export var sub = retasmFunc.sub;
export var mul = retasmFunc.mul;
diff --git a/test/wasm2js/int_exprs.2asm.js b/test/wasm2js/int_exprs.2asm.js
index af1673aa2..17267e41e 100644
--- a/test/wasm2js/int_exprs.2asm.js
+++ b/test/wasm2js/int_exprs.2asm.js
@@ -833,17 +833,6 @@ export var i64_no_fold_shr_s_shl = retasmFunc.i64_no_fold_shr_s_shl;
export var i64_no_fold_shr_u_shl = retasmFunc.i64_no_fold_shr_u_shl;
import { setTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -866,6 +855,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -999,26 +990,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -1276,7 +1247,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -1331,7 +1303,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -1363,7 +1336,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -1377,7 +1351,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -1570,7 +1545,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -1595,7 +1571,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -1679,17 +1656,6 @@ export var i64_no_fold_div_s_mul = retasmFunc.i64_no_fold_div_s_mul;
export var i64_no_fold_div_u_mul = retasmFunc.i64_no_fold_div_u_mul;
import { setTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -1712,6 +1678,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -1837,26 +1805,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Div3div17he78fc483e41d7ec7E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -2044,7 +1992,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -2099,7 +2048,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -2131,7 +2081,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -2145,7 +2096,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -2338,7 +2290,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -2363,7 +2316,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -2430,24 +2384,7 @@ export var i32_no_fold_div_u_self = retasmFunc.i32_no_fold_div_u_self;
export var i64_no_fold_div_s_self = retasmFunc.i64_no_fold_div_s_self;
export var i64_no_fold_div_u_self = retasmFunc.i64_no_fold_div_u_self;
import { setTempRet0 } from 'env';
-import { getTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_load_i64() {
- if (typeof setTempRet0 === 'function') setTempRet0(i32ScratchView[1]);
- return i32ScratchView[0];
- }
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -2470,7 +2407,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
- var getTempRet0 = env.getTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -2596,54 +2534,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_load_i64() {
- var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $8 = 0, $1_1 = 0, $1$hi = 0, $4$hi = 0;
- i64toi32_i32$0 = 0;
- $1_1 = legalimport$wasm2js_scratch_load_i64() | 0;
- $1$hi = i64toi32_i32$0;
- i64toi32_i32$0 = 0;
- i64toi32_i32$2 = getTempRet0() | 0;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- $8 = 0;
- } else {
- i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
- $8 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- }
- $4$hi = i64toi32_i32$1;
- i64toi32_i32$1 = $1$hi;
- i64toi32_i32$0 = $1_1;
- i64toi32_i32$2 = $4$hi;
- i64toi32_i32$3 = $8;
- i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0;
- i64toi32_i32$0 = i64toi32_i32$0 | i64toi32_i32$3 | 0;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$2;
- return i64toi32_i32$0 | 0;
- }
-
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Mod4mod_17h2cbb7bbf36e41d68E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -2811,7 +2701,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -2866,7 +2757,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -2898,7 +2790,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -2912,7 +2805,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -3105,7 +2999,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -3130,7 +3025,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -3169,10 +3065,10 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = var$1$hi;
i64toi32_i32$1 = _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$0 = legalfunc$wasm2js_scratch_load_i64() | 0;
- i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
- return i64toi32_i32$0 | 0;
+ i64toi32_i32$0 = __wasm_intrinsics_temp_i64$hi;
+ i64toi32_i32$1 = __wasm_intrinsics_temp_i64;
+ i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
+ return i64toi32_i32$1 | 0;
}
function __wasm_ctz_i32(var$0) {
@@ -3193,24 +3089,13 @@ function asmFunc(global, env, buffer) {
}
var memasmFunc = new ArrayBuffer(65536);
-var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0,getTempRet0},memasmFunc);
+var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0},memasmFunc);
export var i32_no_fold_rem_s_self = retasmFunc.i32_no_fold_rem_s_self;
export var i32_no_fold_rem_u_self = retasmFunc.i32_no_fold_rem_u_self;
export var i64_no_fold_rem_s_self = retasmFunc.i64_no_fold_rem_s_self;
export var i64_no_fold_rem_u_self = retasmFunc.i64_no_fold_rem_u_self;
import { setTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -3233,6 +3118,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -3366,26 +3253,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -3643,7 +3510,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -3698,7 +3566,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -3730,7 +3599,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -3744,7 +3614,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -3937,7 +3808,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -3962,7 +3834,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -4046,17 +3919,6 @@ export var i64_no_fold_mul_div_s = retasmFunc.i64_no_fold_mul_div_s;
export var i64_no_fold_mul_div_u = retasmFunc.i64_no_fold_mul_div_u;
import { setTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -4079,6 +3941,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -4142,26 +4006,6 @@ function asmFunc(global, env, buffer) {
return $2 | 0;
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Div3div17he78fc483e41d7ec7E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -4365,7 +4209,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -4420,7 +4265,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -4452,7 +4298,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -4466,7 +4313,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -4659,7 +4507,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -4684,7 +4533,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -4731,24 +4581,7 @@ var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32
export var i32_no_fold_div_s_2 = retasmFunc.i32_no_fold_div_s_2;
export var i64_no_fold_div_s_2 = retasmFunc.i64_no_fold_div_s_2;
import { setTempRet0 } from 'env';
-import { getTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_load_i64() {
- if (typeof setTempRet0 === 'function') setTempRet0(i32ScratchView[1]);
- return i32ScratchView[0];
- }
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -4771,7 +4604,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
- var getTempRet0 = env.getTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -4835,54 +4669,6 @@ function asmFunc(global, env, buffer) {
return $2 | 0;
}
- function legalfunc$wasm2js_scratch_load_i64() {
- var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $8 = 0, $1_1 = 0, $1$hi = 0, $4$hi = 0;
- i64toi32_i32$0 = 0;
- $1_1 = legalimport$wasm2js_scratch_load_i64() | 0;
- $1$hi = i64toi32_i32$0;
- i64toi32_i32$0 = 0;
- i64toi32_i32$2 = getTempRet0() | 0;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- $8 = 0;
- } else {
- i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
- $8 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- }
- $4$hi = i64toi32_i32$1;
- i64toi32_i32$1 = $1$hi;
- i64toi32_i32$0 = $1_1;
- i64toi32_i32$2 = $4$hi;
- i64toi32_i32$3 = $8;
- i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0;
- i64toi32_i32$0 = i64toi32_i32$0 | i64toi32_i32$3 | 0;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$2;
- return i64toi32_i32$0 | 0;
- }
-
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Mod4mod_17h2cbb7bbf36e41d68E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -5066,7 +4852,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -5121,7 +4908,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -5153,7 +4941,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -5167,7 +4956,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -5360,7 +5150,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -5385,7 +5176,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -5408,10 +5200,10 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = var$1$hi;
i64toi32_i32$1 = _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$0 = legalfunc$wasm2js_scratch_load_i64() | 0;
- i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
- return i64toi32_i32$0 | 0;
+ i64toi32_i32$0 = __wasm_intrinsics_temp_i64$hi;
+ i64toi32_i32$1 = __wasm_intrinsics_temp_i64;
+ i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
+ return i64toi32_i32$1 | 0;
}
function __wasm_ctz_i32(var$0) {
@@ -5430,22 +5222,11 @@ function asmFunc(global, env, buffer) {
}
var memasmFunc = new ArrayBuffer(65536);
-var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0,getTempRet0},memasmFunc);
+var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0},memasmFunc);
export var i32_no_fold_rem_s_2 = retasmFunc.i32_no_fold_rem_s_2;
export var i64_no_fold_rem_s_2 = retasmFunc.i64_no_fold_rem_s_2;
import { setTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -5468,6 +5249,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -5593,26 +5376,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Div3div17he78fc483e41d7ec7E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -5800,7 +5563,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -5855,7 +5619,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -5887,7 +5652,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -5901,7 +5667,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -6094,7 +5861,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -6119,7 +5887,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -6187,17 +5956,6 @@ export var i64_div_s_0 = retasmFunc.i64_div_s_0;
export var i64_div_u_0 = retasmFunc.i64_div_u_0;
import { setTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -6220,6 +5978,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -6345,26 +6105,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Div3div17he78fc483e41d7ec7E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -6552,7 +6292,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -6607,7 +6348,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -6639,7 +6381,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -6653,7 +6396,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -6846,7 +6590,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -6871,7 +6616,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -6939,17 +6685,6 @@ export var i64_div_s_3 = retasmFunc.i64_div_s_3;
export var i64_div_u_3 = retasmFunc.i64_div_u_3;
import { setTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -6972,6 +6707,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -7097,26 +6834,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Div3div17he78fc483e41d7ec7E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -7304,7 +7021,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -7359,7 +7077,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -7391,7 +7110,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -7405,7 +7125,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -7598,7 +7319,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -7623,7 +7345,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -7691,17 +7414,6 @@ export var i64_div_s_5 = retasmFunc.i64_div_s_5;
export var i64_div_u_5 = retasmFunc.i64_div_u_5;
import { setTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -7724,6 +7436,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -7849,26 +7563,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Div3div17he78fc483e41d7ec7E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -8056,7 +7750,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -8111,7 +7806,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -8143,7 +7839,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -8157,7 +7854,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -8350,7 +8048,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -8375,7 +8074,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -8442,24 +8142,7 @@ export var i32_div_u_7 = retasmFunc.i32_div_u_7;
export var i64_div_s_7 = retasmFunc.i64_div_s_7;
export var i64_div_u_7 = retasmFunc.i64_div_u_7;
import { setTempRet0 } from 'env';
-import { getTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_load_i64() {
- if (typeof setTempRet0 === 'function') setTempRet0(i32ScratchView[1]);
- return i32ScratchView[0];
- }
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -8482,7 +8165,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
- var getTempRet0 = env.getTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -8608,54 +8292,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_load_i64() {
- var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $8 = 0, $1_1 = 0, $1$hi = 0, $4$hi = 0;
- i64toi32_i32$0 = 0;
- $1_1 = legalimport$wasm2js_scratch_load_i64() | 0;
- $1$hi = i64toi32_i32$0;
- i64toi32_i32$0 = 0;
- i64toi32_i32$2 = getTempRet0() | 0;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- $8 = 0;
- } else {
- i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
- $8 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- }
- $4$hi = i64toi32_i32$1;
- i64toi32_i32$1 = $1$hi;
- i64toi32_i32$0 = $1_1;
- i64toi32_i32$2 = $4$hi;
- i64toi32_i32$3 = $8;
- i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0;
- i64toi32_i32$0 = i64toi32_i32$0 | i64toi32_i32$3 | 0;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$2;
- return i64toi32_i32$0 | 0;
- }
-
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Mod4mod_17h2cbb7bbf36e41d68E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -8823,7 +8459,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -8878,7 +8515,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -8910,7 +8548,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -8924,7 +8563,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -9117,7 +8757,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -9142,7 +8783,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -9181,10 +8823,10 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = var$1$hi;
i64toi32_i32$1 = _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$0 = legalfunc$wasm2js_scratch_load_i64() | 0;
- i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
- return i64toi32_i32$0 | 0;
+ i64toi32_i32$0 = __wasm_intrinsics_temp_i64$hi;
+ i64toi32_i32$1 = __wasm_intrinsics_temp_i64;
+ i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
+ return i64toi32_i32$1 | 0;
}
function __wasm_ctz_i32(var$0) {
@@ -9205,30 +8847,13 @@ function asmFunc(global, env, buffer) {
}
var memasmFunc = new ArrayBuffer(65536);
-var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0,getTempRet0},memasmFunc);
+var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0},memasmFunc);
export var i32_rem_s_3 = retasmFunc.i32_rem_s_3;
export var i32_rem_u_3 = retasmFunc.i32_rem_u_3;
export var i64_rem_s_3 = retasmFunc.i64_rem_s_3;
export var i64_rem_u_3 = retasmFunc.i64_rem_u_3;
import { setTempRet0 } from 'env';
-import { getTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_load_i64() {
- if (typeof setTempRet0 === 'function') setTempRet0(i32ScratchView[1]);
- return i32ScratchView[0];
- }
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -9251,7 +8876,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
- var getTempRet0 = env.getTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -9377,54 +9003,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_load_i64() {
- var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $8 = 0, $1_1 = 0, $1$hi = 0, $4$hi = 0;
- i64toi32_i32$0 = 0;
- $1_1 = legalimport$wasm2js_scratch_load_i64() | 0;
- $1$hi = i64toi32_i32$0;
- i64toi32_i32$0 = 0;
- i64toi32_i32$2 = getTempRet0() | 0;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- $8 = 0;
- } else {
- i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
- $8 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- }
- $4$hi = i64toi32_i32$1;
- i64toi32_i32$1 = $1$hi;
- i64toi32_i32$0 = $1_1;
- i64toi32_i32$2 = $4$hi;
- i64toi32_i32$3 = $8;
- i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0;
- i64toi32_i32$0 = i64toi32_i32$0 | i64toi32_i32$3 | 0;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$2;
- return i64toi32_i32$0 | 0;
- }
-
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Mod4mod_17h2cbb7bbf36e41d68E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -9592,7 +9170,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -9647,7 +9226,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -9679,7 +9259,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -9693,7 +9274,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -9886,7 +9468,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -9911,7 +9494,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -9950,10 +9534,10 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = var$1$hi;
i64toi32_i32$1 = _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$0 = legalfunc$wasm2js_scratch_load_i64() | 0;
- i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
- return i64toi32_i32$0 | 0;
+ i64toi32_i32$0 = __wasm_intrinsics_temp_i64$hi;
+ i64toi32_i32$1 = __wasm_intrinsics_temp_i64;
+ i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
+ return i64toi32_i32$1 | 0;
}
function __wasm_ctz_i32(var$0) {
@@ -9974,30 +9558,13 @@ function asmFunc(global, env, buffer) {
}
var memasmFunc = new ArrayBuffer(65536);
-var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0,getTempRet0},memasmFunc);
+var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0},memasmFunc);
export var i32_rem_s_5 = retasmFunc.i32_rem_s_5;
export var i32_rem_u_5 = retasmFunc.i32_rem_u_5;
export var i64_rem_s_5 = retasmFunc.i64_rem_s_5;
export var i64_rem_u_5 = retasmFunc.i64_rem_u_5;
import { setTempRet0 } from 'env';
-import { getTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_load_i64() {
- if (typeof setTempRet0 === 'function') setTempRet0(i32ScratchView[1]);
- return i32ScratchView[0];
- }
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -10020,7 +9587,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
- var getTempRet0 = env.getTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -10146,54 +9714,6 @@ function asmFunc(global, env, buffer) {
return $2_1 | 0;
}
- function legalfunc$wasm2js_scratch_load_i64() {
- var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $8 = 0, $1_1 = 0, $1$hi = 0, $4$hi = 0;
- i64toi32_i32$0 = 0;
- $1_1 = legalimport$wasm2js_scratch_load_i64() | 0;
- $1$hi = i64toi32_i32$0;
- i64toi32_i32$0 = 0;
- i64toi32_i32$2 = getTempRet0() | 0;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- $8 = 0;
- } else {
- i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
- $8 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- }
- $4$hi = i64toi32_i32$1;
- i64toi32_i32$1 = $1$hi;
- i64toi32_i32$0 = $1_1;
- i64toi32_i32$2 = $4$hi;
- i64toi32_i32$3 = $8;
- i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0;
- i64toi32_i32$0 = i64toi32_i32$0 | i64toi32_i32$3 | 0;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$2;
- return i64toi32_i32$0 | 0;
- }
-
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Mod4mod_17h2cbb7bbf36e41d68E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -10361,7 +9881,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -10416,7 +9937,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -10448,7 +9970,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -10462,7 +9985,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -10655,7 +10179,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -10680,7 +10205,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -10719,10 +10245,10 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = var$1$hi;
i64toi32_i32$1 = _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$0 = legalfunc$wasm2js_scratch_load_i64() | 0;
- i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
- return i64toi32_i32$0 | 0;
+ i64toi32_i32$0 = __wasm_intrinsics_temp_i64$hi;
+ i64toi32_i32$1 = __wasm_intrinsics_temp_i64;
+ i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
+ return i64toi32_i32$1 | 0;
}
function __wasm_ctz_i32(var$0) {
@@ -10743,24 +10269,13 @@ function asmFunc(global, env, buffer) {
}
var memasmFunc = new ArrayBuffer(65536);
-var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0,getTempRet0},memasmFunc);
+var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0},memasmFunc);
export var i32_rem_s_7 = retasmFunc.i32_rem_s_7;
export var i32_rem_u_7 = retasmFunc.i32_rem_u_7;
export var i64_rem_s_7 = retasmFunc.i64_rem_s_7;
export var i64_rem_u_7 = retasmFunc.i64_rem_u_7;
import { setTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -10783,6 +10298,8 @@ function asmFunc(global, env, buffer) {
var nan = global.NaN;
var infinity = global.Infinity;
var setTempRet0 = env.setTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x) {
x = x | 0;
@@ -10846,26 +10363,6 @@ function asmFunc(global, env, buffer) {
return $2 | 0;
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Div3div17he78fc483e41d7ec7E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -11069,7 +10566,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -11124,7 +10622,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -11156,7 +10655,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -11170,7 +10670,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -11363,7 +10864,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -11388,7 +10890,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
diff --git a/test/wasm2js/left-to-right.2asm.js b/test/wasm2js/left-to-right.2asm.js
index 4dc0b081c..5a2826c59 100644
--- a/test/wasm2js/left-to-right.2asm.js
+++ b/test/wasm2js/left-to-right.2asm.js
@@ -1,4 +1,3 @@
-import { getTempRet0 } from 'env';
var scratchBuffer = new ArrayBuffer(8);
@@ -22,16 +21,6 @@ import { getTempRet0 } from 'env';
f64ScratchView[0] = value;
}
- function legalimport$wasm2js_scratch_load_i64() {
- if (typeof setTempRet0 === 'function') setTempRet0(i32ScratchView[1]);
- return i32ScratchView[0];
- }
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function wasm2js_scratch_store_f32(value) {
f32ScratchView[0] = value;
}
@@ -57,7 +46,8 @@ function asmFunc(global, env, buffer) {
var abort = env.abort;
var nan = global.NaN;
var infinity = global.Infinity;
- var getTempRet0 = env.getTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function i32_t0($0, $1) {
$0 = $0 | 0;
@@ -1270,54 +1260,6 @@ function asmFunc(global, env, buffer) {
return $3 | 0;
}
- function legalfunc$wasm2js_scratch_load_i64() {
- var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $8 = 0, $1 = 0, $1$hi = 0, $4$hi = 0;
- i64toi32_i32$0 = 0;
- $1 = legalimport$wasm2js_scratch_load_i64() | 0;
- $1$hi = i64toi32_i32$0;
- i64toi32_i32$0 = 0;
- i64toi32_i32$2 = getTempRet0() | 0;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- $8 = 0;
- } else {
- i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
- $8 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- }
- $4$hi = i64toi32_i32$1;
- i64toi32_i32$1 = $1$hi;
- i64toi32_i32$0 = $1;
- i64toi32_i32$2 = $4$hi;
- i64toi32_i32$3 = $8;
- i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0;
- i64toi32_i32$0 = i64toi32_i32$0 | i64toi32_i32$3 | 0;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$2;
- return i64toi32_i32$0 | 0;
- }
-
- function legalfunc$wasm2js_scratch_store_i64($0, $0$hi) {
- $0 = $0 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2 = $0;
- i64toi32_i32$2 = $0;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -1669,7 +1611,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -1724,7 +1667,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65_1;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -1756,7 +1700,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41_1 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41_1;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -1770,7 +1715,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -1963,7 +1909,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -1988,7 +1935,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -2075,10 +2023,10 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = var$1$hi;
i64toi32_i32$1 = _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$0 = legalfunc$wasm2js_scratch_load_i64() | 0;
- i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
- return i64toi32_i32$0 | 0;
+ i64toi32_i32$0 = __wasm_intrinsics_temp_i64$hi;
+ i64toi32_i32$1 = __wasm_intrinsics_temp_i64;
+ i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
+ return i64toi32_i32$1 | 0;
}
function __wasm_ctz_i32(var$0) {
@@ -2217,7 +2165,7 @@ function asmFunc(global, env, buffer) {
var memasmFunc = new ArrayBuffer(65536);
var bufferView = new Uint8Array(memasmFunc);
-var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },getTempRet0},memasmFunc);
+var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); }},memasmFunc);
export var i32_add = retasmFunc.i32_add;
export var i32_sub = retasmFunc.i32_sub;
export var i32_mul = retasmFunc.i32_mul;
diff --git a/test/wasm2js/traps.2asm.js b/test/wasm2js/traps.2asm.js
index f9070fe34..4b5dbd084 100644
--- a/test/wasm2js/traps.2asm.js
+++ b/test/wasm2js/traps.2asm.js
@@ -1,15 +1,4 @@
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -31,6 +20,8 @@ function asmFunc(global, env, buffer) {
var abort = env.abort;
var nan = global.NaN;
var infinity = global.Infinity;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x, y) {
x = x | 0;
@@ -174,26 +165,6 @@ function asmFunc(global, env, buffer) {
$3($9 | 0, i64toi32_i32$1 | 0, $15 | 0, i64toi32_i32$2 | 0);
}
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Div3div17he78fc483e41d7ec7E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -381,7 +352,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -436,7 +408,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -468,7 +441,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -482,7 +456,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -675,7 +650,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -700,7 +676,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -766,24 +743,7 @@ export var no_dce_i32_div_s = retasmFunc.no_dce_i32_div_s;
export var no_dce_i32_div_u = retasmFunc.no_dce_i32_div_u;
export var no_dce_i64_div_s = retasmFunc.no_dce_i64_div_s;
export var no_dce_i64_div_u = retasmFunc.no_dce_i64_div_u;
-import { getTempRet0 } from 'env';
-
- var scratchBuffer = new ArrayBuffer(8);
- var i32ScratchView = new Int32Array(scratchBuffer);
- var f32ScratchView = new Float32Array(scratchBuffer);
- var f64ScratchView = new Float64Array(scratchBuffer);
-
- function legalimport$wasm2js_scratch_load_i64() {
- if (typeof setTempRet0 === 'function') setTempRet0(i32ScratchView[1]);
- return i32ScratchView[0];
- }
-
- function legalimport$wasm2js_scratch_store_i64(low, high) {
- i32ScratchView[0] = low;
- i32ScratchView[1] = high;
- }
-
function asmFunc(global, env, buffer) {
var HEAP8 = new global.Int8Array(buffer);
var HEAP16 = new global.Int16Array(buffer);
@@ -805,7 +765,8 @@ function asmFunc(global, env, buffer) {
var abort = env.abort;
var nan = global.NaN;
var infinity = global.Infinity;
- var getTempRet0 = env.getTempRet0;
+ var __wasm_intrinsics_temp_i64 = 0;
+ var __wasm_intrinsics_temp_i64$hi = 0;
var i64toi32_i32$HIGH_BITS = 0;
function $0(x, y) {
x = x | 0;
@@ -949,54 +910,6 @@ function asmFunc(global, env, buffer) {
$3($9 | 0, i64toi32_i32$1 | 0, $15 | 0, i64toi32_i32$2 | 0);
}
- function legalfunc$wasm2js_scratch_load_i64() {
- var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $8 = 0, $1_1 = 0, $1$hi = 0, $4$hi = 0;
- i64toi32_i32$0 = 0;
- $1_1 = legalimport$wasm2js_scratch_load_i64() | 0;
- $1$hi = i64toi32_i32$0;
- i64toi32_i32$0 = 0;
- i64toi32_i32$2 = getTempRet0() | 0;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- $8 = 0;
- } else {
- i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
- $8 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
- }
- $4$hi = i64toi32_i32$1;
- i64toi32_i32$1 = $1$hi;
- i64toi32_i32$0 = $1_1;
- i64toi32_i32$2 = $4$hi;
- i64toi32_i32$3 = $8;
- i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0;
- i64toi32_i32$0 = i64toi32_i32$0 | i64toi32_i32$3 | 0;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$2;
- return i64toi32_i32$0 | 0;
- }
-
- function legalfunc$wasm2js_scratch_store_i64($0_1, $0$hi) {
- $0_1 = $0_1 | 0;
- $0$hi = $0$hi | 0;
- var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $2_1 = 0, i64toi32_i32$2 = 0;
- i64toi32_i32$0 = $0$hi;
- $2_1 = $0_1;
- i64toi32_i32$2 = $0_1;
- i64toi32_i32$1 = 0;
- i64toi32_i32$3 = 32;
- i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = 0;
- $8 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- } else {
- i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
- $8 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
- }
- legalimport$wasm2js_scratch_store_i64($2_1 | 0, $8 | 0);
- }
-
function _ZN17compiler_builtins3int4sdiv3Mod4mod_17h2cbb7bbf36e41d68E(var$0, var$0$hi, var$1, var$1$hi) {
var$0 = var$0 | 0;
var$0$hi = var$0$hi | 0;
@@ -1164,7 +1077,8 @@ function asmFunc(global, env, buffer) {
var$3 = var$1;
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
i64toi32_i32$1 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$2;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -1219,7 +1133,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = $65$hi;
i64toi32_i32$0 = $65;
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
- legalfunc$wasm2js_scratch_store_i64(i64toi32_i32$3 | i64toi32_i32$0 | 0 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -1251,7 +1166,8 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
}
- legalfunc$wasm2js_scratch_store_i64($41 | 0, i64toi32_i32$1 | 0);
+ __wasm_intrinsics_temp_i64 = $41;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
i64toi32_i32$1 = 0;
i64toi32_i32$2 = var$4;
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
@@ -1265,7 +1181,8 @@ function asmFunc(global, env, buffer) {
}
i64toi32_i32$2 = var$0$hi;
i64toi32_i32$2 = 0;
- legalfunc$wasm2js_scratch_store_i64(var$4 & var$0 | 0 | 0, i64toi32_i32$2 | 0);
+ __wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
if ((var$3 | 0) == (1 | 0)) {
break label$1
}
@@ -1458,7 +1375,8 @@ function asmFunc(global, env, buffer) {
}
}
i64toi32_i32$3 = var$5$hi;
- legalfunc$wasm2js_scratch_store_i64(var$5 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$5;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = var$0$hi;
i64toi32_i32$5 = var$0;
i64toi32_i32$2 = 0;
@@ -1483,7 +1401,8 @@ function asmFunc(global, env, buffer) {
return i64toi32_i32$3 | 0;
}
i64toi32_i32$3 = var$0$hi;
- legalfunc$wasm2js_scratch_store_i64(var$0 | 0, i64toi32_i32$3 | 0);
+ __wasm_intrinsics_temp_i64 = var$0;
+ __wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
i64toi32_i32$3 = 0;
var$0 = 0;
var$0$hi = i64toi32_i32$3;
@@ -1522,10 +1441,10 @@ function asmFunc(global, env, buffer) {
i64toi32_i32$1 = var$1$hi;
i64toi32_i32$1 = _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$0 = legalfunc$wasm2js_scratch_load_i64() | 0;
- i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
- i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
- return i64toi32_i32$0 | 0;
+ i64toi32_i32$0 = __wasm_intrinsics_temp_i64$hi;
+ i64toi32_i32$1 = __wasm_intrinsics_temp_i64;
+ i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
+ return i64toi32_i32$1 | 0;
}
function __wasm_ctz_i32(var$0) {
@@ -1546,7 +1465,7 @@ function asmFunc(global, env, buffer) {
}
var memasmFunc = new ArrayBuffer(65536);
-var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },getTempRet0},memasmFunc);
+var retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); }},memasmFunc);
export var no_dce_i32_rem_s = retasmFunc.no_dce_i32_rem_s;
export var no_dce_i32_rem_u = retasmFunc.no_dce_i32_rem_u;
export var no_dce_i64_rem_s = retasmFunc.no_dce_i64_rem_s;