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/func.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/func.2asm.js')
-rw-r--r-- | test/wasm2js/func.2asm.js | 637 |
1 files changed, 372 insertions, 265 deletions
diff --git a/test/wasm2js/func.2asm.js b/test/wasm2js/func.2asm.js index 4759ccdb7..67211433e 100644 --- a/test/wasm2js/func.2asm.js +++ b/test/wasm2js/func.2asm.js @@ -42,9 +42,10 @@ function asmFunc(global, env, buffer) { } function $24() { - var $0 = 0, $1 = 0; - i64toi32_i32$HIGH_BITS = $0; - return $1 | 0; + var i64toi32_i32$0 = 0, $0$hi = 0, $0 = 0; + i64toi32_i32$0 = $0$hi; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + return $0 | 0; } function $25() { @@ -58,29 +59,31 @@ function asmFunc(global, env, buffer) { } function $27() { - var $0 = 0; - return $0 | 0; + var $1 = 0; + return $1 | 0; } function $28() { - var $0 = 0, $1 = 0; - i64toi32_i32$HIGH_BITS = $0; + var i64toi32_i32$0 = 0, $1$hi = 0, $1 = 0; + i64toi32_i32$0 = $1$hi; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; return $1 | 0; } function $29() { - var $0 = Math_fround(0); - return Math_fround($0); + var $1 = Math_fround(0); + return Math_fround($1); } function $30() { - var $0 = 0.0; - return +$0; + var $1 = 0.0; + return +$1; } function $31() { - var $0 = 0.0, $1 = Math_fround(0), $2_1 = 0, $3 = 0, $4 = 0, $5 = 0, $6 = 0; - return +$0; + var i64toi32_i32$0 = 0, $4 = 0.0, $0 = Math_fround(0), x = 0, $2$hi = 0, $2_1 = 0, $3 = 0, $5 = 0; + i64toi32_i32$0 = $2$hi; + return +$4; } function $32($0, $1) { @@ -89,12 +92,14 @@ function asmFunc(global, env, buffer) { return $0 | 0; } - function $33($0, $1, $2_1, $3) { + function $33($0, $0$hi, $1, $1$hi) { $0 = $0 | 0; + $0$hi = $0$hi | 0; $1 = $1 | 0; - $2_1 = $2_1 | 0; - $3 = $3 | 0; - i64toi32_i32$HIGH_BITS = $1; + $1$hi = $1$hi | 0; + var i64toi32_i32$0 = 0; + i64toi32_i32$0 = $0$hi; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; return $0 | 0; } @@ -116,13 +121,15 @@ function asmFunc(global, env, buffer) { return $1 | 0; } - function $37($0, $1, $2_1, $3) { + function $37($0, $0$hi, $1, $1$hi) { $0 = $0 | 0; + $0$hi = $0$hi | 0; $1 = $1 | 0; - $2_1 = $2_1 | 0; - $3 = $3 | 0; - i64toi32_i32$HIGH_BITS = $3; - return $2_1 | 0; + $1$hi = $1$hi | 0; + var i64toi32_i32$0 = 0; + i64toi32_i32$0 = $1$hi; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + return $1 | 0; } function $38($0, $1) { @@ -137,15 +144,17 @@ function asmFunc(global, env, buffer) { return +$1; } - function $40($0, $1, $2_1, $3, $4, $5, $6) { + function $40($0, $1, x, x$hi, $3, $4, $5) { $0 = Math_fround($0); $1 = $1 | 0; - $2_1 = $2_1 | 0; + x = x | 0; + x$hi = x$hi | 0; $3 = $3 | 0; - $4 = $4 | 0; - $5 = +$5; - $6 = $6 | 0; - return +$5; + $4 = +$4; + $5 = $5 | 0; + var i64toi32_i32$0 = 0; + i64toi32_i32$0 = x$hi; + return +$4; } function $41() { @@ -223,14 +232,16 @@ function asmFunc(global, env, buffer) { } function $57() { - var $0 = 0, $1 = 0; + var i64toi32_i32$0 = 0, $0 = 0, $0$hi = 0; fake_return_waka123 : { - $0 = 0; - $1 = 7979; + i64toi32_i32$0 = 0; + $0 = 7979; + $0$hi = i64toi32_i32$0; break fake_return_waka123; } - i64toi32_i32$HIGH_BITS = $0; - return $1 | 0; + i64toi32_i32$0 = $0$hi; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + return $0 | 0; } function $58() { @@ -252,13 +263,13 @@ function asmFunc(global, env, buffer) { } function $60() { - var $0 = 0; + var $2_1 = 0; fake_return_waka123 : { dummy(); - $0 = 77; + $2_1 = 77; break fake_return_waka123; } - return $0 | 0; + return $2_1 | 0; } function $61($0) { @@ -267,15 +278,15 @@ function asmFunc(global, env, buffer) { function $62($0) { $0 = $0 | 0; - var $1 = 0; - $1 = 50; + var $2_1 = 0; + $2_1 = 50; fake_return_waka123 : { if ($0) { break fake_return_waka123 } - $1 = 51; + $2_1 = 51; } - return $1 | 0; + return $2_1 | 0; } function $63($0) { @@ -284,15 +295,15 @@ function asmFunc(global, env, buffer) { function $64($0) { $0 = $0 | 0; - var $1 = 0; + var $3 = 0; fake_return_waka123 : { - $1 = 50; + $3 = 50; switch ($0 | 0) { default: break fake_return_waka123; }; } - return $1 | 0; + return $3 | 0; } function $65($0) { @@ -301,11 +312,12 @@ function asmFunc(global, env, buffer) { function $66($0) { $0 = $0 | 0; - var $1 = 0, $2_1 = 0; + var $2_1 = 0, $3 = 0, $4 = 0; fake_return_waka123 : { block : { - $1 = 50; - $2_1 = $1; + $2_1 = 50; + $3 = $2_1; + $4 = $2_1; switch ($0 | 0) { case 1: break fake_return_waka123; @@ -313,9 +325,9 @@ function asmFunc(global, env, buffer) { break block; }; } - $1 = $2_1 + 2 | 0; + $4 = $3 + 2 | 0; } - return $1 | 0; + return $4 | 0; } function $67() { @@ -324,9 +336,10 @@ function asmFunc(global, env, buffer) { } function $68() { - var $0 = 0, $1 = 0; - i64toi32_i32$HIGH_BITS = $0; - return $1 | 0; + var i64toi32_i32$0 = 0, $0$hi = 0, $0 = 0; + i64toi32_i32$0 = $0$hi; + i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + return $0 | 0; } function $69() { @@ -343,36 +356,36 @@ function asmFunc(global, env, buffer) { } - function complex_sig_1($0, $1, $2_1, $3, $4, $5, $6, $7, $8, $9, $10) { + function complex_sig_1($0, $1, $1$hi, $2_1, $3, $3$hi, $4, $5, $5$hi, $6, $7) { $0 = +$0; $1 = $1 | 0; - $2_1 = $2_1 | 0; - $3 = +$3; - $4 = $4 | 0; + $1$hi = $1$hi | 0; + $2_1 = +$2_1; + $3 = $3 | 0; + $3$hi = $3$hi | 0; + $4 = +$4; $5 = $5 | 0; - $6 = +$6; + $5$hi = $5$hi | 0; + $6 = Math_fround($6); $7 = $7 | 0; - $8 = $8 | 0; - $9 = Math_fround($9); - $10 = $10 | 0; } function empty_sig_2() { } - function complex_sig_3($0, $1, $2_1, $3, $4, $5, $6, $7, $8, $9, $10) { + function complex_sig_3($0, $1, $1$hi, $2_1, $3, $3$hi, $4, $5, $5$hi, $6, $7) { $0 = +$0; $1 = $1 | 0; - $2_1 = $2_1 | 0; - $3 = +$3; - $4 = $4 | 0; + $1$hi = $1$hi | 0; + $2_1 = +$2_1; + $3 = $3 | 0; + $3$hi = $3$hi | 0; + $4 = +$4; $5 = $5 | 0; - $6 = +$6; + $5$hi = $5$hi | 0; + $6 = Math_fround($6); $7 = $7 | 0; - $8 = $8 | 0; - $9 = Math_fround($9); - $10 = $10 | 0; } function $76() { @@ -381,19 +394,19 @@ function asmFunc(global, env, buffer) { } function $77() { - var $0 = 0, $1 = 0, $2_1 = 0; - $0 = 0; - $1 = 0; - $2_1 = 0; - FUNCTION_TABLE[0](0.0, 0, $0, 0.0, 0, $1, 0.0, 0, $2_1, Math_fround(0.0), 0); - $2_1 = 0; - $1 = 0; - $0 = 0; - FUNCTION_TABLE[2](0.0, 0, $2_1, 0.0, 0, $1, 0.0, 0, $0, Math_fround(0.0), 0); - $0 = 0; - $1 = 0; - $2_1 = 0; - FUNCTION_TABLE[3](0.0, 0, $0, 0.0, 0, $1, 0.0, 0, $2_1, Math_fround(0.0), 0); + var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = 0; + i64toi32_i32$1 = 0; + i64toi32_i32$2 = 0; + FUNCTION_TABLE[0](0.0, 0, i64toi32_i32$0, 0.0, 0, i64toi32_i32$1, 0.0, 0, i64toi32_i32$2, Math_fround(0.0), 0); + i64toi32_i32$2 = 0; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 0; + FUNCTION_TABLE[2](0.0, 0, i64toi32_i32$2, 0.0, 0, i64toi32_i32$1, 0.0, 0, i64toi32_i32$0, Math_fround(0.0), 0); + i64toi32_i32$0 = 0; + i64toi32_i32$1 = 0; + i64toi32_i32$2 = 0; + FUNCTION_TABLE[3](0.0, 0, i64toi32_i32$0, 0.0, 0, i64toi32_i32$1, 0.0, 0, i64toi32_i32$2, Math_fround(0.0), 0); } function $78() { @@ -405,37 +418,55 @@ function asmFunc(global, env, buffer) { } function legalstub$24() { - var $0 = 0, $1 = 0, $2_1 = 0, $3 = 0, $4 = 0, $5 = 0; - $0 = $24() | 0; - $2_1 = i64toi32_i32$HIGH_BITS; - $4 = $0; - $5 = $2_1; - $3 = 32; - $1 = $3 & 31 | 0; - if (32 >>> 0 <= ($3 & 63 | 0) >>> 0) { - $0 = $2_1 >>> $1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7 = 0, $0 = 0, $0$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $24() | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $0 = i64toi32_i32$0; + $0$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $7 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0 = (((1 << $1 | 0) - 1 | 0) & $2_1 | 0) << (32 - $1 | 0) | 0 | ($0 >>> $1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $7 = (((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 | 0); - return $4 | 0; + setTempRet0($7 | 0); + i64toi32_i32$0 = $0$hi; + return $0 | 0; } function legalstub$28() { - var $0 = 0, $1 = 0, $2_1 = 0, $3 = 0, $4 = 0, $5 = 0; - $0 = $28() | 0; - $2_1 = i64toi32_i32$HIGH_BITS; - $4 = $0; - $5 = $2_1; - $3 = 32; - $1 = $3 & 31 | 0; - if (32 >>> 0 <= ($3 & 63 | 0) >>> 0) { - $0 = $2_1 >>> $1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7 = 0, $0 = 0, $0$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $28() | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $0 = i64toi32_i32$0; + $0$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $7 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0 = (((1 << $1 | 0) - 1 | 0) & $2_1 | 0) << (32 - $1 | 0) | 0 | ($0 >>> $1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $7 = (((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 | 0); - return $4 | 0; + setTempRet0($7 | 0); + i64toi32_i32$0 = $0$hi; + return $0 | 0; } function legalstub$33($0, $1, $2_1, $3) { @@ -443,68 +474,85 @@ function asmFunc(global, env, buffer) { $1 = $1 | 0; $2_1 = $2_1 | 0; $3 = $3 | 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - $6 = 0; - $7 = $0; - $8 = $6; - $6 = 0; - $5 = 32; - $4 = $5 & 31 | 0; - if (32 >>> 0 <= ($5 & 63 | 0) >>> 0) { + var i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$3 = 0, $21 = 0, $22 = 0, $23_1 = 0, $6 = 0, $6$hi = 0, $9$hi = 0, $10 = 0, $10$hi = 0, $12 = 0, $12$hi = 0, $15$hi = 0, $16 = 0, $16$hi = 0, $4 = 0, $4$hi = 0; + i64toi32_i32$0 = 0; + $6 = $0; + $6$hi = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = $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) { { - $0 = $1 << $4 | 0; - $5 = 0; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $21 = 0; } } else { { - $0 = ((1 << $4 | 0) - 1 | 0) & ($1 >>> (32 - $4 | 0) | 0) | 0 | ($6 << $4 | 0) | 0; - $5 = $1 << $4 | 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; + $21 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } - $1 = $0; - $0 = $8; - $6 = $7; - $1 = $0 | $1 | 0; - $9 = $6 | $5 | 0; - $7 = $1; - $1 = 0; - $8 = $1; - $1 = 0; - $0 = $3; - $5 = 32; - $4 = $5 & 31 | 0; - if (32 >>> 0 <= ($5 & 63 | 0) >>> 0) { + $9$hi = i64toi32_i32$1; + i64toi32_i32$1 = $6$hi; + i64toi32_i32$0 = $6; + i64toi32_i32$2 = $9$hi; + i64toi32_i32$3 = $21; + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + $10 = i64toi32_i32$0 | i64toi32_i32$3 | 0; + $10$hi = i64toi32_i32$2; + i64toi32_i32$2 = 0; + $12 = $2_1; + $12$hi = i64toi32_i32$2; + i64toi32_i32$2 = 0; + i64toi32_i32$1 = $3; + 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) { { - $6 = $0 << $4 | 0; - $5 = 0; + i64toi32_i32$0 = i64toi32_i32$1 << i64toi32_i32$4 | 0; + $22 = 0; } } else { { - $6 = ((1 << $4 | 0) - 1 | 0) & ($0 >>> (32 - $4 | 0) | 0) | 0 | ($1 << $4 | 0) | 0; - $5 = $0 << $4 | 0; + i64toi32_i32$0 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$1 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$2 << i64toi32_i32$4 | 0) | 0; + $22 = i64toi32_i32$1 << i64toi32_i32$4 | 0; } } - $0 = $6; - $6 = $8; - $1 = $2_1; - $0 = $6 | $0 | 0; - $2_1 = $1 | $5 | 0; - $1 = $0; - $0 = $7; - $1 = $33($9 | 0, $0 | 0, $2_1 | 0, $1 | 0) | 0; - $0 = i64toi32_i32$HIGH_BITS; - $3 = $1; - $2_1 = $0; - $6 = $1; - $5 = 32; - $4 = $5 & 31 | 0; - if (32 >>> 0 <= ($5 & 63 | 0) >>> 0) { - $0 = $0 >>> $4 | 0 + $15$hi = i64toi32_i32$0; + i64toi32_i32$0 = $12$hi; + i64toi32_i32$2 = $12; + i64toi32_i32$1 = $15$hi; + i64toi32_i32$3 = $22; + i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1 | 0; + $16 = i64toi32_i32$2 | i64toi32_i32$3 | 0; + $16$hi = i64toi32_i32$1; + i64toi32_i32$1 = $10$hi; + i64toi32_i32$2 = $16$hi; + i64toi32_i32$2 = $33($10 | 0, i64toi32_i32$1 | 0, $16 | 0, i64toi32_i32$2 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $4 = i64toi32_i32$2; + $4$hi = i64toi32_i32$1; + i64toi32_i32$0 = i64toi32_i32$2; + i64toi32_i32$2 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$2 = 0; + $23_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0 = (((1 << $4 | 0) - 1 | 0) & $0 | 0) << (32 - $4 | 0) | 0 | ($6 >>> $4 | 0) | 0 + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $23_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$0 >>> i64toi32_i32$4 | 0) | 0; + } } - setTempRet0($0 | 0); - return $3 | 0; + setTempRet0($23_1 | 0); + i64toi32_i32$2 = $4$hi; + return $4 | 0; } function legalstub$37($0, $1, $2_1, $3) { @@ -512,68 +560,85 @@ function asmFunc(global, env, buffer) { $1 = $1 | 0; $2_1 = $2_1 | 0; $3 = $3 | 0; - var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; - $6 = 0; - $7 = $0; - $8 = $6; - $6 = 0; - $5 = 32; - $4 = $5 & 31 | 0; - if (32 >>> 0 <= ($5 & 63 | 0) >>> 0) { + var i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$3 = 0, $21 = 0, $22 = 0, $23_1 = 0, $6 = 0, $6$hi = 0, $9$hi = 0, $10 = 0, $10$hi = 0, $12 = 0, $12$hi = 0, $15$hi = 0, $16 = 0, $16$hi = 0, $4 = 0, $4$hi = 0; + i64toi32_i32$0 = 0; + $6 = $0; + $6$hi = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = $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) { { - $0 = $1 << $4 | 0; - $5 = 0; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $21 = 0; } } else { { - $0 = ((1 << $4 | 0) - 1 | 0) & ($1 >>> (32 - $4 | 0) | 0) | 0 | ($6 << $4 | 0) | 0; - $5 = $1 << $4 | 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; + $21 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } - $1 = $0; - $0 = $8; - $6 = $7; - $1 = $0 | $1 | 0; - $9 = $6 | $5 | 0; - $7 = $1; - $1 = 0; - $8 = $1; - $1 = 0; - $0 = $3; - $5 = 32; - $4 = $5 & 31 | 0; - if (32 >>> 0 <= ($5 & 63 | 0) >>> 0) { + $9$hi = i64toi32_i32$1; + i64toi32_i32$1 = $6$hi; + i64toi32_i32$0 = $6; + i64toi32_i32$2 = $9$hi; + i64toi32_i32$3 = $21; + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + $10 = i64toi32_i32$0 | i64toi32_i32$3 | 0; + $10$hi = i64toi32_i32$2; + i64toi32_i32$2 = 0; + $12 = $2_1; + $12$hi = i64toi32_i32$2; + i64toi32_i32$2 = 0; + i64toi32_i32$1 = $3; + 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) { { - $6 = $0 << $4 | 0; - $5 = 0; + i64toi32_i32$0 = i64toi32_i32$1 << i64toi32_i32$4 | 0; + $22 = 0; } } else { { - $6 = ((1 << $4 | 0) - 1 | 0) & ($0 >>> (32 - $4 | 0) | 0) | 0 | ($1 << $4 | 0) | 0; - $5 = $0 << $4 | 0; + i64toi32_i32$0 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$1 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$2 << i64toi32_i32$4 | 0) | 0; + $22 = i64toi32_i32$1 << i64toi32_i32$4 | 0; } } - $0 = $6; - $6 = $8; - $1 = $2_1; - $0 = $6 | $0 | 0; - $2_1 = $1 | $5 | 0; - $1 = $0; - $0 = $7; - $1 = $37($9 | 0, $0 | 0, $2_1 | 0, $1 | 0) | 0; - $0 = i64toi32_i32$HIGH_BITS; - $3 = $1; - $2_1 = $0; - $6 = $1; - $5 = 32; - $4 = $5 & 31 | 0; - if (32 >>> 0 <= ($5 & 63 | 0) >>> 0) { - $0 = $0 >>> $4 | 0 + $15$hi = i64toi32_i32$0; + i64toi32_i32$0 = $12$hi; + i64toi32_i32$2 = $12; + i64toi32_i32$1 = $15$hi; + i64toi32_i32$3 = $22; + i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1 | 0; + $16 = i64toi32_i32$2 | i64toi32_i32$3 | 0; + $16$hi = i64toi32_i32$1; + i64toi32_i32$1 = $10$hi; + i64toi32_i32$2 = $16$hi; + i64toi32_i32$2 = $37($10 | 0, i64toi32_i32$1 | 0, $16 | 0, i64toi32_i32$2 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $4 = i64toi32_i32$2; + $4$hi = i64toi32_i32$1; + i64toi32_i32$0 = i64toi32_i32$2; + i64toi32_i32$2 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$2 = 0; + $23_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0 = (((1 << $4 | 0) - 1 | 0) & $0 | 0) << (32 - $4 | 0) | 0 | ($6 >>> $4 | 0) | 0 + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $23_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$0 >>> i64toi32_i32$4 | 0) | 0; + } } - setTempRet0($0 | 0); - return $3 | 0; + setTempRet0($23_1 | 0); + i64toi32_i32$2 = $4$hi; + return $4 | 0; } function legalstub$40($0, $1, $2_1, $3, $4, $5, $6) { @@ -584,97 +649,139 @@ function asmFunc(global, env, buffer) { $4 = $4 | 0; $5 = +$5; $6 = $6 | 0; - var $7 = 0, $8 = 0, $9 = 0, $10 = 0, $11 = 0; - $11 = $1; - $7 = 0; - $1 = $7; - $7 = 0; - $8 = 32; - $9 = $8 & 31 | 0; - if (32 >>> 0 <= ($8 & 63 | 0) >>> 0) { + var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $17 = 0, $7 = Math_fround(0), $8 = 0, $10 = 0, $10$hi = 0, $13$hi = 0; + $7 = $0; + $8 = $1; + i64toi32_i32$0 = 0; + $10 = $2_1; + $10$hi = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = $3; + 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) { { - $10 = $3 << $9 | 0; - $8 = 0; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $17 = 0; } } else { { - $10 = ((1 << $9 | 0) - 1 | 0) & ($3 >>> (32 - $9 | 0) | 0) | 0 | ($7 << $9 | 0) | 0; - $8 = $3 << $9 | 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; + $17 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } - $3 = $10; - $10 = $1; - $7 = $2_1; - $3 = $10 | $3 | 0; - return +(+$40(Math_fround($0), $11 | 0, $7 | $8 | 0 | 0, $3 | 0, $4 | 0, +$5, $6 | 0)); + $13$hi = i64toi32_i32$1; + i64toi32_i32$1 = $10$hi; + i64toi32_i32$0 = $10; + i64toi32_i32$2 = $13$hi; + i64toi32_i32$3 = $17; + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + return +(+$40(Math_fround($7), $8 | 0, i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0, $4 | 0, +$5, $6 | 0)); } function legalstub$44() { - var $0 = 0, $1 = 0, $2_1 = 0, $3 = 0, $4 = 0, $5 = 0; - $0 = $44() | 0; - $2_1 = i64toi32_i32$HIGH_BITS; - $4 = $0; - $5 = $2_1; - $3 = 32; - $1 = $3 & 31 | 0; - if (32 >>> 0 <= ($3 & 63 | 0) >>> 0) { - $0 = $2_1 >>> $1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7 = 0, $0 = 0, $0$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $44() | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $0 = i64toi32_i32$0; + $0$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $7 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0 = (((1 << $1 | 0) - 1 | 0) & $2_1 | 0) << (32 - $1 | 0) | 0 | ($0 >>> $1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $7 = (((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 | 0); - return $4 | 0; + setTempRet0($7 | 0); + i64toi32_i32$0 = $0$hi; + return $0 | 0; } function legalstub$51() { - var $0 = 0, $1 = 0, $2_1 = 0, $3 = 0, $4 = 0, $5 = 0; - $0 = $51() | 0; - $2_1 = i64toi32_i32$HIGH_BITS; - $4 = $0; - $5 = $2_1; - $3 = 32; - $1 = $3 & 31 | 0; - if (32 >>> 0 <= ($3 & 63 | 0) >>> 0) { - $0 = $2_1 >>> $1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7 = 0, $0 = 0, $0$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $51() | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $0 = i64toi32_i32$0; + $0$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $7 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0 = (((1 << $1 | 0) - 1 | 0) & $2_1 | 0) << (32 - $1 | 0) | 0 | ($0 >>> $1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $7 = (((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 | 0); - return $4 | 0; + setTempRet0($7 | 0); + i64toi32_i32$0 = $0$hi; + return $0 | 0; } function legalstub$57() { - var $0 = 0, $1 = 0, $2_1 = 0, $3 = 0, $4 = 0, $5 = 0; - $0 = $57() | 0; - $2_1 = i64toi32_i32$HIGH_BITS; - $4 = $0; - $5 = $2_1; - $3 = 32; - $1 = $3 & 31 | 0; - if (32 >>> 0 <= ($3 & 63 | 0) >>> 0) { - $0 = $2_1 >>> $1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7 = 0, $0 = 0, $0$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $57() | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $0 = i64toi32_i32$0; + $0$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $7 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0 = (((1 << $1 | 0) - 1 | 0) & $2_1 | 0) << (32 - $1 | 0) | 0 | ($0 >>> $1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $7 = (((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 | 0); - return $4 | 0; + setTempRet0($7 | 0); + i64toi32_i32$0 = $0$hi; + return $0 | 0; } function legalstub$68() { - var $0 = 0, $1 = 0, $2_1 = 0, $3 = 0, $4 = 0, $5 = 0; - $0 = $68() | 0; - $2_1 = i64toi32_i32$HIGH_BITS; - $4 = $0; - $5 = $2_1; - $3 = 32; - $1 = $3 & 31 | 0; - if (32 >>> 0 <= ($3 & 63 | 0) >>> 0) { - $0 = $2_1 >>> $1 | 0 + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7 = 0, $0 = 0, $0$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $68() | 0; + i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; + $0 = i64toi32_i32$0; + $0$hi = i64toi32_i32$1; + i64toi32_i32$2 = i64toi32_i32$0; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 32; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + { + i64toi32_i32$0 = 0; + $7 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } } else { - $0 = (((1 << $1 | 0) - 1 | 0) & $2_1 | 0) << (32 - $1 | 0) | 0 | ($0 >>> $1 | 0) | 0 + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $7 = (((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 | 0); - return $4 | 0; + setTempRet0($7 | 0); + i64toi32_i32$0 = $0$hi; + return $0 | 0; } var FUNCTION_TABLE = [complex_sig_3, empty_sig_2, complex_sig_1, complex_sig_3, empty_sig_1]; |