diff options
author | Alon Zakai <azakai@google.com> | 2019-05-01 17:18:04 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-01 17:18:04 -0700 |
commit | af459403bc6e1bb99468ad05f351665143193082 (patch) | |
tree | fd6b0c2e0bd14822c3e3bb1e0f4a3b42c78bb56c /test/wasm2js/conversions-modified.2asm.js | |
parent | 2bd3758a22131cfd6925b3fd995657b211095c90 (diff) | |
download | binaryen-af459403bc6e1bb99468ad05f351665143193082.tar.gz binaryen-af459403bc6e1bb99468ad05f351665143193082.tar.bz2 binaryen-af459403bc6e1bb99468ad05f351665143193082.zip |
wasm2js: don't run coalesce-locals if not optimizing (#2076)
That pass is very slow on unoptimized code (super-linear on the number of locals, which if unoptimized can be massive due to flatten).
Diffstat (limited to 'test/wasm2js/conversions-modified.2asm.js')
-rw-r--r-- | test/wasm2js/conversions-modified.2asm.js | 742 |
1 files changed, 433 insertions, 309 deletions
diff --git a/test/wasm2js/conversions-modified.2asm.js b/test/wasm2js/conversions-modified.2asm.js index 54aaf02a3..5dd0ca074 100644 --- a/test/wasm2js/conversions-modified.2asm.js +++ b/test/wasm2js/conversions-modified.2asm.js @@ -54,484 +54,608 @@ function asmFunc(global, env, buffer) { var infinity = global.Infinity; var setTempRet0 = env.setTempRet0; var i64toi32_i32$HIGH_BITS = 0; - function $0($0_1) { - $0_1 = $0_1 | 0; - var $1_1 = 0; - $1_1 = $0_1 >> 31 | 0; - i64toi32_i32$HIGH_BITS = $1_1; - return $0_1 | 0; + function $0(x) { + x = x | 0; + var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0; + i64toi32_i32$1 = x; + i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + return i64toi32_i32$1 | 0; } - function $1($0_1) { - $0_1 = $0_1 | 0; - var $1_1 = 0; - $1_1 = 0; - i64toi32_i32$HIGH_BITS = $1_1; - return $0_1 | 0; + function $1(x) { + x = x | 0; + var i64toi32_i32$0 = 0; + i64toi32_i32$0 = 0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + return x | 0; } - function $2($0_1, $1_1) { - $0_1 = $0_1 | 0; - $1_1 = $1_1 | 0; - return $0_1 | 0; + function $2(x, x$hi) { + x = x | 0; + x$hi = x$hi | 0; + return x | 0; } - function $3($0_1) { - $0_1 = Math_fround($0_1); - return ~~$0_1 | 0; + function $3(x) { + x = Math_fround(x); + return ~~x | 0; } - function $4($0_1) { - $0_1 = Math_fround($0_1); - return ~~$0_1 >>> 0 | 0; + function $4(x) { + x = Math_fround(x); + return ~~x >>> 0 | 0; } - function $5($0_1) { - $0_1 = +$0_1; - return ~~$0_1 | 0; + function $5(x) { + x = +x; + return ~~x | 0; } - function $6($0_1) { - $0_1 = +$0_1; - return ~~$0_1 >>> 0 | 0; + function $6(x) { + x = +x; + return ~~x >>> 0 | 0; } - function $7($0_1) { - $0_1 = Math_fround($0_1); - var $1_1 = 0, $2_1 = 0; - if (Math_fround(Math_abs($0_1)) >= Math_fround(1.0)) { - if ($0_1 > Math_fround(0.0)) { - $1_1 = ~~Math_fround(Math_min(Math_fround(Math_floor(Math_fround($0_1 / Math_fround(4294967296.0)))), Math_fround(Math_fround(4294967296.0) - Math_fround(1.0)))) >>> 0 - } else { - $1_1 = ~~Math_fround(Math_ceil(Math_fround(Math_fround($0_1 - Math_fround(~~$0_1 >>> 0 >>> 0)) / Math_fround(4294967296.0)))) >>> 0 + function $7(x) { + x = Math_fround(x); + var i64toi32_i32$0 = Math_fround(0), $4_1 = 0, $5_1 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = x; + if (Math_fround(Math_abs(i64toi32_i32$0)) >= Math_fround(1.0)) { + { + if (i64toi32_i32$0 > Math_fround(0.0)) { + $4_1 = ~~Math_fround(Math_min(Math_fround(Math_floor(Math_fround(i64toi32_i32$0 / Math_fround(4294967296.0)))), Math_fround(Math_fround(4294967296.0) - Math_fround(1.0)))) >>> 0 + } else { + $4_1 = ~~Math_fround(Math_ceil(Math_fround(Math_fround(i64toi32_i32$0 - Math_fround(~~i64toi32_i32$0 >>> 0 >>> 0)) / Math_fround(4294967296.0)))) >>> 0 + } + $5_1 = $4_1; } } else { - $1_1 = 0 + $5_1 = 0 } - $2_1 = ~~$0_1 >>> 0; - i64toi32_i32$HIGH_BITS = $1_1; - return $2_1 | 0; + i64toi32_i32$1 = $5_1; + i64toi32_i32$2 = ~~i64toi32_i32$0 >>> 0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; + return i64toi32_i32$2 | 0; } - function $8($0_1) { - $0_1 = Math_fround($0_1); - var $1_1 = 0, $2_1 = 0; - if (Math_fround(Math_abs($0_1)) >= Math_fround(1.0)) { - if ($0_1 > Math_fround(0.0)) { - $1_1 = ~~Math_fround(Math_min(Math_fround(Math_floor(Math_fround($0_1 / Math_fround(4294967296.0)))), Math_fround(Math_fround(4294967296.0) - Math_fround(1.0)))) >>> 0 - } else { - $1_1 = ~~Math_fround(Math_ceil(Math_fround(Math_fround($0_1 - Math_fround(~~$0_1 >>> 0 >>> 0)) / Math_fround(4294967296.0)))) >>> 0 + function $8(x) { + x = Math_fround(x); + var i64toi32_i32$0 = Math_fround(0), $4_1 = 0, $5_1 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = x; + if (Math_fround(Math_abs(i64toi32_i32$0)) >= Math_fround(1.0)) { + { + if (i64toi32_i32$0 > Math_fround(0.0)) { + $4_1 = ~~Math_fround(Math_min(Math_fround(Math_floor(Math_fround(i64toi32_i32$0 / Math_fround(4294967296.0)))), Math_fround(Math_fround(4294967296.0) - Math_fround(1.0)))) >>> 0 + } else { + $4_1 = ~~Math_fround(Math_ceil(Math_fround(Math_fround(i64toi32_i32$0 - Math_fround(~~i64toi32_i32$0 >>> 0 >>> 0)) / Math_fround(4294967296.0)))) >>> 0 + } + $5_1 = $4_1; } } else { - $1_1 = 0 + $5_1 = 0 } - $2_1 = ~~$0_1 >>> 0; - i64toi32_i32$HIGH_BITS = $1_1; - return $2_1 | 0; + i64toi32_i32$1 = $5_1; + i64toi32_i32$2 = ~~i64toi32_i32$0 >>> 0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; + return i64toi32_i32$2 | 0; } - function $9($0_1) { - $0_1 = +$0_1; - var $1_1 = 0, $2_1 = 0; - if (Math_abs($0_1) >= 1.0) { - if ($0_1 > 0.0) { - $1_1 = ~~Math_min(Math_floor($0_1 / 4294967296.0), 4294967296.0 - 1.0) >>> 0 - } else { - $1_1 = ~~Math_ceil(($0_1 - +(~~$0_1 >>> 0 >>> 0)) / 4294967296.0) >>> 0 + function $9(x) { + x = +x; + var i64toi32_i32$0 = 0.0, $4_1 = 0, $5_1 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = x; + if (Math_abs(i64toi32_i32$0) >= 1.0) { + { + if (i64toi32_i32$0 > 0.0) { + $4_1 = ~~Math_min(Math_floor(i64toi32_i32$0 / 4294967296.0), 4294967296.0 - 1.0) >>> 0 + } else { + $4_1 = ~~Math_ceil((i64toi32_i32$0 - +(~~i64toi32_i32$0 >>> 0 >>> 0)) / 4294967296.0) >>> 0 + } + $5_1 = $4_1; } } else { - $1_1 = 0 + $5_1 = 0 } - $2_1 = ~~$0_1 >>> 0; - i64toi32_i32$HIGH_BITS = $1_1; - return $2_1 | 0; + i64toi32_i32$1 = $5_1; + i64toi32_i32$2 = ~~i64toi32_i32$0 >>> 0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; + return i64toi32_i32$2 | 0; } - function $10($0_1) { - $0_1 = +$0_1; - var $1_1 = 0, $2_1 = 0; - if (Math_abs($0_1) >= 1.0) { - if ($0_1 > 0.0) { - $1_1 = ~~Math_min(Math_floor($0_1 / 4294967296.0), 4294967296.0 - 1.0) >>> 0 - } else { - $1_1 = ~~Math_ceil(($0_1 - +(~~$0_1 >>> 0 >>> 0)) / 4294967296.0) >>> 0 + function $10(x) { + x = +x; + var i64toi32_i32$0 = 0.0, $4_1 = 0, $5_1 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = x; + if (Math_abs(i64toi32_i32$0) >= 1.0) { + { + if (i64toi32_i32$0 > 0.0) { + $4_1 = ~~Math_min(Math_floor(i64toi32_i32$0 / 4294967296.0), 4294967296.0 - 1.0) >>> 0 + } else { + $4_1 = ~~Math_ceil((i64toi32_i32$0 - +(~~i64toi32_i32$0 >>> 0 >>> 0)) / 4294967296.0) >>> 0 + } + $5_1 = $4_1; } } else { - $1_1 = 0 + $5_1 = 0 } - $2_1 = ~~$0_1 >>> 0; - i64toi32_i32$HIGH_BITS = $1_1; - return $2_1 | 0; + i64toi32_i32$1 = $5_1; + i64toi32_i32$2 = ~~i64toi32_i32$0 >>> 0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; + return i64toi32_i32$2 | 0; } - function $11($0_1) { - $0_1 = $0_1 | 0; - return Math_fround(Math_fround($0_1 | 0)); + function $11(x) { + x = x | 0; + return Math_fround(Math_fround(x | 0)); } - function $12($0_1, $1_1) { - $0_1 = $0_1 | 0; - $1_1 = $1_1 | 0; - return Math_fround(Math_fround(+($0_1 >>> 0) + 4294967296.0 * +($1_1 | 0))); + function $12(x, x$hi) { + x = x | 0; + x$hi = x$hi | 0; + var i64toi32_i32$0 = 0; + i64toi32_i32$0 = x$hi; + return Math_fround(Math_fround(+(x >>> 0) + 4294967296.0 * +(i64toi32_i32$0 | 0))); } - function $13($0_1) { - $0_1 = $0_1 | 0; - return +(+($0_1 | 0)); + function $13(x) { + x = x | 0; + return +(+(x | 0)); } - function $14($0_1, $1_1) { - $0_1 = $0_1 | 0; - $1_1 = $1_1 | 0; - return +(+($0_1 >>> 0) + 4294967296.0 * +($1_1 | 0)); + function $14(x, x$hi) { + x = x | 0; + x$hi = x$hi | 0; + var i64toi32_i32$0 = 0; + i64toi32_i32$0 = x$hi; + return +(+(x >>> 0) + 4294967296.0 * +(i64toi32_i32$0 | 0)); } - function $15($0_1) { - $0_1 = $0_1 | 0; - return Math_fround(Math_fround($0_1 >>> 0)); + function $15(x) { + x = x | 0; + return Math_fround(Math_fround(x >>> 0)); } - function $16($0_1, $1_1) { - $0_1 = $0_1 | 0; - $1_1 = $1_1 | 0; - return Math_fround(Math_fround(+($0_1 >>> 0) + 4294967296.0 * +($1_1 >>> 0))); + function $16(x, x$hi) { + x = x | 0; + x$hi = x$hi | 0; + var i64toi32_i32$0 = 0; + i64toi32_i32$0 = x$hi; + return Math_fround(Math_fround(+(x >>> 0) + 4294967296.0 * +(i64toi32_i32$0 >>> 0))); } - function $17($0_1) { - $0_1 = $0_1 | 0; - return +(+($0_1 >>> 0)); + function $17(x) { + x = x | 0; + return +(+(x >>> 0)); } - function $18($0_1, $1_1) { - $0_1 = $0_1 | 0; - $1_1 = $1_1 | 0; - return +(+($0_1 >>> 0) + 4294967296.0 * +($1_1 >>> 0)); + function $18(x, x$hi) { + x = x | 0; + x$hi = x$hi | 0; + var i64toi32_i32$0 = 0; + i64toi32_i32$0 = x$hi; + return +(+(x >>> 0) + 4294967296.0 * +(i64toi32_i32$0 >>> 0)); } - function $19($0_1) { - $0_1 = Math_fround($0_1); - return +(+$0_1); + function $19(x) { + x = Math_fround(x); + return +(+x); } - function $20($0_1) { - $0_1 = +$0_1; - return Math_fround(Math_fround($0_1)); + function $20(x) { + x = +x; + return Math_fround(Math_fround(x)); } - function $21($0_1) { - $0_1 = $0_1 | 0; - return Math_fround((wasm2js_scratch_store_i32(0, $0_1), wasm2js_scratch_load_f32())); + function $21(x) { + x = x | 0; + return Math_fround((wasm2js_scratch_store_i32(0, x), wasm2js_scratch_load_f32())); } - function $22($0_1, $1_1) { - $0_1 = $0_1 | 0; - $1_1 = $1_1 | 0; - wasm2js_scratch_store_i32(0 | 0, $0_1 | 0); - wasm2js_scratch_store_i32(1 | 0, $1_1 | 0); + function $22(x, x$hi) { + x = x | 0; + x$hi = x$hi | 0; + var i64toi32_i32$0 = 0; + i64toi32_i32$0 = x$hi; + wasm2js_scratch_store_i32(0 | 0, x | 0); + wasm2js_scratch_store_i32(1 | 0, i64toi32_i32$0 | 0); return +(+wasm2js_scratch_load_f64()); } - function $23($0_1) { - $0_1 = Math_fround($0_1); - return (wasm2js_scratch_store_f32($0_1), wasm2js_scratch_load_i32(0)) | 0; + function $23(x) { + x = Math_fround(x); + return (wasm2js_scratch_store_f32(x), wasm2js_scratch_load_i32(0)) | 0; } - function $24($0_1) { - $0_1 = +$0_1; - var $1_1 = 0, $2_1 = 0; - wasm2js_scratch_store_f64(+$0_1); - $1_1 = wasm2js_scratch_load_i32(1 | 0) | 0; - $2_1 = wasm2js_scratch_load_i32(0 | 0) | 0; - i64toi32_i32$HIGH_BITS = $1_1; - return $2_1 | 0; + function $24(x) { + x = +x; + var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0; + wasm2js_scratch_store_f64(+x); + i64toi32_i32$0 = wasm2js_scratch_load_i32(1 | 0) | 0; + i64toi32_i32$1 = wasm2js_scratch_load_i32(0 | 0) | 0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + return i64toi32_i32$1 | 0; } function legalstub$0($0_1) { $0_1 = $0_1 | 0; - var $1_1 = 0, $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0; - $0_1 = $0($0_1 | 0) | 0; - $2_1 = i64toi32_i32$HIGH_BITS; - $4_1 = $0_1; - $5_1 = $2_1; - $3_1 = 32; - $1_1 = $3_1 & 31 | 0; - if (32 >>> 0 <= ($3_1 & 63 | 0) >>> 0) { - $0_1 = $2_1 >>> $1_1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8_1 = 0, $1_1 = 0, $1$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $0($0_1 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $1_1 = i64toi32_i32$0; + $1$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $8_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0_1 = (((1 << $1_1 | 0) - 1 | 0) & $2_1 | 0) << (32 - $1_1 | 0) | 0 | ($0_1 >>> $1_1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $8_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } } - setTempRet0($0_1 | 0); - return $4_1 | 0; + setTempRet0($8_1 | 0); + i64toi32_i32$0 = $1$hi; + return $1_1 | 0; } function legalstub$1($0_1) { $0_1 = $0_1 | 0; - var $1_1 = 0, $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0; - $0_1 = $1($0_1 | 0) | 0; - $2_1 = i64toi32_i32$HIGH_BITS; - $4_1 = $0_1; - $5_1 = $2_1; - $3_1 = 32; - $1_1 = $3_1 & 31 | 0; - if (32 >>> 0 <= ($3_1 & 63 | 0) >>> 0) { - $0_1 = $2_1 >>> $1_1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8_1 = 0, $1_1 = 0, $1$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $1($0_1 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $1_1 = i64toi32_i32$0; + $1$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $8_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0_1 = (((1 << $1_1 | 0) - 1 | 0) & $2_1 | 0) << (32 - $1_1 | 0) | 0 | ($0_1 >>> $1_1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $8_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } } - setTempRet0($0_1 | 0); - return $4_1 | 0; + setTempRet0($8_1 | 0); + i64toi32_i32$0 = $1$hi; + return $1_1 | 0; } function legalstub$2($0_1, $1_1) { $0_1 = $0_1 | 0; $1_1 = $1_1 | 0; - var $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $2_1 = 0; - $6_1 = $2_1; - $2_1 = 0; - $3_1 = 32; - $4_1 = $3_1 & 31 | 0; - if (32 >>> 0 <= ($3_1 & 63 | 0) >>> 0) { + var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $10_1 = 0, $3_1 = 0, $3$hi = 0, $6$hi = 0; + i64toi32_i32$0 = 0; + $3_1 = $0_1; + $3$hi = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = $1_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) { { - $5_1 = $1_1 << $4_1 | 0; - $3_1 = 0; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $10_1 = 0; } } else { { - $5_1 = ((1 << $4_1 | 0) - 1 | 0) & ($1_1 >>> (32 - $4_1 | 0) | 0) | 0 | ($2_1 << $4_1 | 0) | 0; - $3_1 = $1_1 << $4_1 | 0; + 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; + $10_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } - $1_1 = $5_1; - $5_1 = $6_1; - $2_1 = $0_1; - $1_1 = $5_1 | $1_1 | 0; - return $2($2_1 | $3_1 | 0 | 0, $1_1 | 0) | 0 | 0; + $6$hi = i64toi32_i32$1; + i64toi32_i32$1 = $3$hi; + i64toi32_i32$0 = $3_1; + i64toi32_i32$2 = $6$hi; + i64toi32_i32$3 = $10_1; + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + return $2(i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0) | 0 | 0; } function legalstub$7($0_1) { $0_1 = Math_fround($0_1); - var $1_1 = 0, $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $1_1 = $7(Math_fround($0_1)) | 0; - $3_1 = i64toi32_i32$HIGH_BITS; - $5_1 = $1_1; - $6_1 = $3_1; - $4_1 = 32; - $2_1 = $4_1 & 31 | 0; - if (32 >>> 0 <= ($4_1 & 63 | 0) >>> 0) { - $1_1 = $3_1 >>> $2_1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8_1 = 0, $1_1 = 0, $1$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $7(Math_fround($0_1)) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $1_1 = i64toi32_i32$0; + $1$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $8_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $1_1 = (((1 << $2_1 | 0) - 1 | 0) & $3_1 | 0) << (32 - $2_1 | 0) | 0 | ($1_1 >>> $2_1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $8_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } } - setTempRet0($1_1 | 0); - return $5_1 | 0; + setTempRet0($8_1 | 0); + i64toi32_i32$0 = $1$hi; + return $1_1 | 0; } function legalstub$8($0_1) { $0_1 = Math_fround($0_1); - var $1_1 = 0, $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $1_1 = $8(Math_fround($0_1)) | 0; - $3_1 = i64toi32_i32$HIGH_BITS; - $5_1 = $1_1; - $6_1 = $3_1; - $4_1 = 32; - $2_1 = $4_1 & 31 | 0; - if (32 >>> 0 <= ($4_1 & 63 | 0) >>> 0) { - $1_1 = $3_1 >>> $2_1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8_1 = 0, $1_1 = 0, $1$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $8(Math_fround($0_1)) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $1_1 = i64toi32_i32$0; + $1$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $8_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $1_1 = (((1 << $2_1 | 0) - 1 | 0) & $3_1 | 0) << (32 - $2_1 | 0) | 0 | ($1_1 >>> $2_1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $8_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } } - setTempRet0($1_1 | 0); - return $5_1 | 0; + setTempRet0($8_1 | 0); + i64toi32_i32$0 = $1$hi; + return $1_1 | 0; } function legalstub$9($0_1) { $0_1 = +$0_1; - var $1_1 = 0, $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $1_1 = $9(+$0_1) | 0; - $3_1 = i64toi32_i32$HIGH_BITS; - $5_1 = $1_1; - $6_1 = $3_1; - $4_1 = 32; - $2_1 = $4_1 & 31 | 0; - if (32 >>> 0 <= ($4_1 & 63 | 0) >>> 0) { - $1_1 = $3_1 >>> $2_1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8_1 = 0, $1_1 = 0, $1$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $9(+$0_1) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $1_1 = i64toi32_i32$0; + $1$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $8_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $1_1 = (((1 << $2_1 | 0) - 1 | 0) & $3_1 | 0) << (32 - $2_1 | 0) | 0 | ($1_1 >>> $2_1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $8_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } } - setTempRet0($1_1 | 0); - return $5_1 | 0; + setTempRet0($8_1 | 0); + i64toi32_i32$0 = $1$hi; + return $1_1 | 0; } function legalstub$10($0_1) { $0_1 = +$0_1; - var $1_1 = 0, $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $1_1 = $10(+$0_1) | 0; - $3_1 = i64toi32_i32$HIGH_BITS; - $5_1 = $1_1; - $6_1 = $3_1; - $4_1 = 32; - $2_1 = $4_1 & 31 | 0; - if (32 >>> 0 <= ($4_1 & 63 | 0) >>> 0) { - $1_1 = $3_1 >>> $2_1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8_1 = 0, $1_1 = 0, $1$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $10(+$0_1) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $1_1 = i64toi32_i32$0; + $1$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $8_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $1_1 = (((1 << $2_1 | 0) - 1 | 0) & $3_1 | 0) << (32 - $2_1 | 0) | 0 | ($1_1 >>> $2_1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $8_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } } - setTempRet0($1_1 | 0); - return $5_1 | 0; + setTempRet0($8_1 | 0); + i64toi32_i32$0 = $1$hi; + return $1_1 | 0; } function legalstub$12($0_1, $1_1) { $0_1 = $0_1 | 0; $1_1 = $1_1 | 0; - var $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $2_1 = 0; - $6_1 = $2_1; - $2_1 = 0; - $3_1 = 32; - $4_1 = $3_1 & 31 | 0; - if (32 >>> 0 <= ($3_1 & 63 | 0) >>> 0) { + var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $10_1 = 0, $3_1 = 0, $3$hi = 0, $6$hi = 0; + i64toi32_i32$0 = 0; + $3_1 = $0_1; + $3$hi = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = $1_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) { { - $5_1 = $1_1 << $4_1 | 0; - $3_1 = 0; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $10_1 = 0; } } else { { - $5_1 = ((1 << $4_1 | 0) - 1 | 0) & ($1_1 >>> (32 - $4_1 | 0) | 0) | 0 | ($2_1 << $4_1 | 0) | 0; - $3_1 = $1_1 << $4_1 | 0; + 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; + $10_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } - $1_1 = $5_1; - $5_1 = $6_1; - $2_1 = $0_1; - $1_1 = $5_1 | $1_1 | 0; - return Math_fround(Math_fround($12($2_1 | $3_1 | 0 | 0, $1_1 | 0))); + $6$hi = i64toi32_i32$1; + i64toi32_i32$1 = $3$hi; + i64toi32_i32$0 = $3_1; + i64toi32_i32$2 = $6$hi; + i64toi32_i32$3 = $10_1; + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + return Math_fround(Math_fround($12(i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0))); } function legalstub$14($0_1, $1_1) { $0_1 = $0_1 | 0; $1_1 = $1_1 | 0; - var $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $2_1 = 0; - $6_1 = $2_1; - $2_1 = 0; - $3_1 = 32; - $4_1 = $3_1 & 31 | 0; - if (32 >>> 0 <= ($3_1 & 63 | 0) >>> 0) { + var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $10_1 = 0, $3_1 = 0, $3$hi = 0, $6$hi = 0; + i64toi32_i32$0 = 0; + $3_1 = $0_1; + $3$hi = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = $1_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) { { - $5_1 = $1_1 << $4_1 | 0; - $3_1 = 0; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $10_1 = 0; } } else { { - $5_1 = ((1 << $4_1 | 0) - 1 | 0) & ($1_1 >>> (32 - $4_1 | 0) | 0) | 0 | ($2_1 << $4_1 | 0) | 0; - $3_1 = $1_1 << $4_1 | 0; + 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; + $10_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } - $1_1 = $5_1; - $5_1 = $6_1; - $2_1 = $0_1; - $1_1 = $5_1 | $1_1 | 0; - return +(+$14($2_1 | $3_1 | 0 | 0, $1_1 | 0)); + $6$hi = i64toi32_i32$1; + i64toi32_i32$1 = $3$hi; + i64toi32_i32$0 = $3_1; + i64toi32_i32$2 = $6$hi; + i64toi32_i32$3 = $10_1; + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + return +(+$14(i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0)); } function legalstub$16($0_1, $1_1) { $0_1 = $0_1 | 0; $1_1 = $1_1 | 0; - var $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $2_1 = 0; - $6_1 = $2_1; - $2_1 = 0; - $3_1 = 32; - $4_1 = $3_1 & 31 | 0; - if (32 >>> 0 <= ($3_1 & 63 | 0) >>> 0) { + var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $10_1 = 0, $3_1 = 0, $3$hi = 0, $6$hi = 0; + i64toi32_i32$0 = 0; + $3_1 = $0_1; + $3$hi = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = $1_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) { { - $5_1 = $1_1 << $4_1 | 0; - $3_1 = 0; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $10_1 = 0; } } else { { - $5_1 = ((1 << $4_1 | 0) - 1 | 0) & ($1_1 >>> (32 - $4_1 | 0) | 0) | 0 | ($2_1 << $4_1 | 0) | 0; - $3_1 = $1_1 << $4_1 | 0; + 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; + $10_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } - $1_1 = $5_1; - $5_1 = $6_1; - $2_1 = $0_1; - $1_1 = $5_1 | $1_1 | 0; - return Math_fround(Math_fround($16($2_1 | $3_1 | 0 | 0, $1_1 | 0))); + $6$hi = i64toi32_i32$1; + i64toi32_i32$1 = $3$hi; + i64toi32_i32$0 = $3_1; + i64toi32_i32$2 = $6$hi; + i64toi32_i32$3 = $10_1; + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + return Math_fround(Math_fround($16(i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0))); } function legalstub$18($0_1, $1_1) { $0_1 = $0_1 | 0; $1_1 = $1_1 | 0; - var $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $2_1 = 0; - $6_1 = $2_1; - $2_1 = 0; - $3_1 = 32; - $4_1 = $3_1 & 31 | 0; - if (32 >>> 0 <= ($3_1 & 63 | 0) >>> 0) { + var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $10_1 = 0, $3_1 = 0, $3$hi = 0, $6$hi = 0; + i64toi32_i32$0 = 0; + $3_1 = $0_1; + $3$hi = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = $1_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) { { - $5_1 = $1_1 << $4_1 | 0; - $3_1 = 0; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $10_1 = 0; } } else { { - $5_1 = ((1 << $4_1 | 0) - 1 | 0) & ($1_1 >>> (32 - $4_1 | 0) | 0) | 0 | ($2_1 << $4_1 | 0) | 0; - $3_1 = $1_1 << $4_1 | 0; + 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; + $10_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } - $1_1 = $5_1; - $5_1 = $6_1; - $2_1 = $0_1; - $1_1 = $5_1 | $1_1 | 0; - return +(+$18($2_1 | $3_1 | 0 | 0, $1_1 | 0)); + $6$hi = i64toi32_i32$1; + i64toi32_i32$1 = $3$hi; + i64toi32_i32$0 = $3_1; + i64toi32_i32$2 = $6$hi; + i64toi32_i32$3 = $10_1; + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + return +(+$18(i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0)); } function legalstub$22($0_1, $1_1) { $0_1 = $0_1 | 0; $1_1 = $1_1 | 0; - var $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $2_1 = 0; - $6_1 = $2_1; - $2_1 = 0; - $3_1 = 32; - $4_1 = $3_1 & 31 | 0; - if (32 >>> 0 <= ($3_1 & 63 | 0) >>> 0) { + var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $10_1 = 0, $3_1 = 0, $3$hi = 0, $6$hi = 0; + i64toi32_i32$0 = 0; + $3_1 = $0_1; + $3$hi = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = $1_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) { { - $5_1 = $1_1 << $4_1 | 0; - $3_1 = 0; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $10_1 = 0; } } else { { - $5_1 = ((1 << $4_1 | 0) - 1 | 0) & ($1_1 >>> (32 - $4_1 | 0) | 0) | 0 | ($2_1 << $4_1 | 0) | 0; - $3_1 = $1_1 << $4_1 | 0; + 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; + $10_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } - $1_1 = $5_1; - $5_1 = $6_1; - $2_1 = $0_1; - $1_1 = $5_1 | $1_1 | 0; - return +(+$22($2_1 | $3_1 | 0 | 0, $1_1 | 0)); + $6$hi = i64toi32_i32$1; + i64toi32_i32$1 = $3$hi; + i64toi32_i32$0 = $3_1; + i64toi32_i32$2 = $6$hi; + i64toi32_i32$3 = $10_1; + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + return +(+$22(i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0)); } function legalstub$24($0_1) { $0_1 = +$0_1; - var $1_1 = 0, $2_1 = 0, $3_1 = 0, $4_1 = 0, $5_1 = 0, $6_1 = 0; - $1_1 = $24(+$0_1) | 0; - $3_1 = i64toi32_i32$HIGH_BITS; - $5_1 = $1_1; - $6_1 = $3_1; - $4_1 = 32; - $2_1 = $4_1 & 31 | 0; - if (32 >>> 0 <= ($4_1 & 63 | 0) >>> 0) { - $1_1 = $3_1 >>> $2_1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8_1 = 0, $1_1 = 0, $1$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $24(+$0_1) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $1_1 = i64toi32_i32$0; + $1$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $8_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $1_1 = (((1 << $2_1 | 0) - 1 | 0) & $3_1 | 0) << (32 - $2_1 | 0) | 0 | ($1_1 >>> $2_1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $8_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } } - setTempRet0($1_1 | 0); - return $5_1 | 0; + setTempRet0($8_1 | 0); + i64toi32_i32$0 = $1$hi; + return $1_1 | 0; } var FUNCTION_TABLE = []; |