diff options
author | Alon Zakai <alonzakai@gmail.com> | 2019-04-22 14:00:35 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-22 14:00:35 -0700 |
commit | ff710e63eaed7cf8fbf3042843f6243597da49be (patch) | |
tree | 204c03398c17c136690a2798d099554e6698f4f2 /test/wasm2js | |
parent | f87de2ae0d430f8d4204df8fceb194c24e29b413 (diff) | |
download | binaryen-ff710e63eaed7cf8fbf3042843f6243597da49be.tar.gz binaryen-ff710e63eaed7cf8fbf3042843f6243597da49be.tar.bz2 binaryen-ff710e63eaed7cf8fbf3042843f6243597da49be.zip |
wasm2js: unreachability fixes (#2037)
Also test in pass-debug mode, for better coverage.
Diffstat (limited to 'test/wasm2js')
-rw-r--r-- | test/wasm2js/block.2asm.js | 12 | ||||
-rw-r--r-- | test/wasm2js/br.2asm.js | 15 | ||||
-rw-r--r-- | test/wasm2js/br_table.2asm.js | 6 | ||||
-rw-r--r-- | test/wasm2js/br_table_temp.2asm.js | 1 | ||||
-rw-r--r-- | test/wasm2js/i64.2asm.js | 242 | ||||
-rw-r--r-- | test/wasm2js/int_exprs.2asm.js | 2662 | ||||
-rw-r--r-- | test/wasm2js/left-to-right.2asm.js | 242 | ||||
-rw-r--r-- | test/wasm2js/loop.2asm.js | 8 | ||||
-rw-r--r-- | test/wasm2js/traps.2asm.js | 484 | ||||
-rw-r--r-- | test/wasm2js/unreachable-insts.2asm.js | 31 | ||||
-rw-r--r-- | test/wasm2js/unreachable-insts.wast | 13 | ||||
-rw-r--r-- | test/wasm2js/unreachable.2asm.js | 522 |
12 files changed, 2382 insertions, 1856 deletions
diff --git a/test/wasm2js/block.2asm.js b/test/wasm2js/block.2asm.js index cff354c48..3bb752e61 100644 --- a/test/wasm2js/block.2asm.js +++ b/test/wasm2js/block.2asm.js @@ -135,10 +135,8 @@ function asmFunc(global, env, buffer) { $0 = 0; $1_1 = $0; block : { - block47 : { - $2_1 = 1; - break block; - } + $2_1 = 1; + break block; } $0 = $1_1 + $2_1 | 0; $5_1 = $0; @@ -151,10 +149,8 @@ function asmFunc(global, env, buffer) { $0 = $9_1 + $10_1 | 0; $13_1 = $0; block51 : { - block52 : { - $14_1 = 8; - break block51; - } + $14_1 = 8; + break block51; } $0 = $13_1 + $14_1 | 0; return $0 | 0; diff --git a/test/wasm2js/br.2asm.js b/test/wasm2js/br.2asm.js index 1aa2f3edc..83401094a 100644 --- a/test/wasm2js/br.2asm.js +++ b/test/wasm2js/br.2asm.js @@ -449,15 +449,14 @@ function asmFunc(global, env, buffer) { } function $47() { - var i64toi32_i32$0 = 0, $0 = 0, $0$hi = 0; + var $0 = 0, $0$hi = 0, i64toi32_i32$1 = 0; block : { - i64toi32_i32$0 = 0; $0 = 45; - $0$hi = i64toi32_i32$0; + $0$hi = 0; break block; } - i64toi32_i32$0 = $0$hi; - i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + i64toi32_i32$1 = $0$hi; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; return $0 | 0; } @@ -519,10 +518,8 @@ function asmFunc(global, env, buffer) { function $54() { var $0 = 0; block : { - block0 : { - $0 = 8; - break block; - } + $0 = 8; + break block; } return 1 + $0 | 0 | 0; } diff --git a/test/wasm2js/br_table.2asm.js b/test/wasm2js/br_table.2asm.js index bd66eb523..849d11945 100644 --- a/test/wasm2js/br_table.2asm.js +++ b/test/wasm2js/br_table.2asm.js @@ -49973,7 +49973,7 @@ function asmFunc(global, env, buffer) { } function $54() { - var i64toi32_i32$0 = 0, $1_1 = 0, $1$hi = 0; + var i64toi32_i32$0 = 0, $1_1 = 0, $1$hi = 0, i64toi32_i32$1 = 0; block : { i64toi32_i32$0 = 0; $1_1 = 45; @@ -49983,8 +49983,8 @@ function asmFunc(global, env, buffer) { break block; }; } - i64toi32_i32$0 = $1$hi; - i64toi32_i32$HIGH_BITS = i64toi32_i32$0; + i64toi32_i32$1 = $1$hi; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; return $1_1 | 0; } diff --git a/test/wasm2js/br_table_temp.2asm.js b/test/wasm2js/br_table_temp.2asm.js index e6e397f01..a5f423d22 100644 --- a/test/wasm2js/br_table_temp.2asm.js +++ b/test/wasm2js/br_table_temp.2asm.js @@ -49977,7 +49977,6 @@ function asmFunc(global, env, buffer) { break block; }; } - i64toi32_i32$0 = $1$hi; return $1_1 | 0; } diff --git a/test/wasm2js/i64.2asm.js b/test/wasm2js/i64.2asm.js index 73a67a79a..a92057d30 100644 --- a/test/wasm2js/i64.2asm.js +++ b/test/wasm2js/i64.2asm.js @@ -3094,141 +3094,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -3347,7 +3345,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; diff --git a/test/wasm2js/int_exprs.2asm.js b/test/wasm2js/int_exprs.2asm.js index ee8b7da4d..09dd71093 100644 --- a/test/wasm2js/int_exprs.2asm.js +++ b/test/wasm2js/int_exprs.2asm.js @@ -1368,141 +1368,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { - { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + 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); i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } + } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -1621,7 +1619,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -2311,141 +2309,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + 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); i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } + } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -2564,7 +2560,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -3110,141 +3106,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { - { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } + } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -3363,7 +3357,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -3888,141 +3882,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { - { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } + } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -4141,7 +4133,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -4707,141 +4699,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -4960,7 +4950,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -5544,141 +5534,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + 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); i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } + } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -5797,7 +5785,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -6381,141 +6369,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + 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); i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } + } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -6634,7 +6620,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -7218,141 +7204,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } + } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -7471,7 +7455,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -8070,141 +8054,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { - { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -8323,7 +8305,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -8924,141 +8906,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + 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); i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -9177,7 +9157,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -9778,141 +9758,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -10031,7 +10009,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; diff --git a/test/wasm2js/left-to-right.2asm.js b/test/wasm2js/left-to-right.2asm.js index 490293751..2b669abf7 100644 --- a/test/wasm2js/left-to-right.2asm.js +++ b/test/wasm2js/left-to-right.2asm.js @@ -1772,141 +1772,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37_1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37_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; - } - } - var$2 = $37_1; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38_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; - } - } - var$4 = $38_1; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39_1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37_1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37_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; } } - var$3 = $39_1; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37_1; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40_1 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38_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; + } + } + var$4 = $38_1; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65_1 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40_1; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39_1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39_1; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40_1 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65_1 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40_1; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -2025,7 +2023,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; diff --git a/test/wasm2js/loop.2asm.js b/test/wasm2js/loop.2asm.js index 84646905b..eb891c8b4 100644 --- a/test/wasm2js/loop.2asm.js +++ b/test/wasm2js/loop.2asm.js @@ -293,10 +293,8 @@ function asmFunc(global, env, buffer) { $1_1 = $0; block : { loop_in : do { - block54 : { - $2_1 = 1; - break block; - } + $2_1 = 1; + break block; break loop_in; } while (1); } @@ -351,7 +349,7 @@ function asmFunc(global, env, buffer) { } function $14() { - var $0 = 0, $1_1 = 0, $6_1 = 0, $2_1 = 0, $7_1 = 0, $3_1 = 0, $8_1 = 0, $5_1 = 0, wasm2js_i32$0 = 0; + var $0 = 0, $1_1 = 0, $2_1 = 0, $3_1 = 0, $5_1 = 0, wasm2js_i32$0 = 0; $0 = 0; $1_1 = $0; loop_in : do { diff --git a/test/wasm2js/traps.2asm.js b/test/wasm2js/traps.2asm.js index 85b1c6a3f..4dd6c2536 100644 --- a/test/wasm2js/traps.2asm.js +++ b/test/wasm2js/traps.2asm.js @@ -416,141 +416,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -669,7 +667,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; @@ -1344,141 +1342,139 @@ function asmFunc(global, env, buffer) { label$7 : { label$8 : { label$9 : { - label$10 : { - label$11 : { - i64toi32_i32$0 = var$0$hi; - i64toi32_i32$2 = var$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; - $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; - $37 = (((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; - } - } - var$2 = $37; - if (var$2) { - block : { - i64toi32_i32$1 = var$1$hi; - var$3 = var$1; - if ((var$3 | 0) == (0 | 0)) { - break label$11 - } - i64toi32_i32$1 = var$1$hi; - i64toi32_i32$0 = var$1; - 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; - $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - } - } else { - { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; - $38 = (((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; - } - } - var$4 = $38; - if ((var$4 | 0) == (0 | 0)) { - break label$9 - } - var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; - if (var$2 >>> 0 <= 31 >>> 0) { - break label$8 - } - break label$2; - } - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$1 = var$1; - i64toi32_i32$0 = 1; - i64toi32_i32$3 = 0; - if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { - break label$2 - } - i64toi32_i32$1 = var$0$hi; - var$2 = var$0; - i64toi32_i32$1 = var$1$hi; - 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); - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$2; - i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2 | 0; - } - i64toi32_i32$2 = var$1$hi; - i64toi32_i32$3 = var$1; + label$11 : { + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$2 = var$0; i64toi32_i32$1 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 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$1 = 0; - $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; - $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $37 = (((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; } } - var$3 = $39; - i64toi32_i32$1 = var$0$hi; - if ((var$0 | 0) == (0 | 0)) { - break label$7 - } - if ((var$3 | 0) == (0 | 0)) { - break label$6 - } - var$4 = var$3 + 4294967295 | 0; - if (var$4 & var$3 | 0) { - break label$6 - } - i64toi32_i32$1 = 0; - i64toi32_i32$2 = var$4 & var$2 | 0; - i64toi32_i32$3 = 0; - i64toi32_i32$0 = 32; - i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; - if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + var$2 = $37; + if (var$2) { { - i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; - $40 = 0; - } - } else { - { - i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; - $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + if ((var$3 | 0) == (0 | 0)) { + break label$11 + } + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$0 = var$1; + 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; + $38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $38 = (((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; + } + } + var$4 = $38; + if ((var$4 | 0) == (0 | 0)) { + break label$9 + } + var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0; + if (var$2 >>> 0 <= 31 >>> 0) { + break label$8 + } + break label$2; } } - $63$hi = i64toi32_i32$3; - i64toi32_i32$3 = var$0$hi; - i64toi32_i32$1 = var$0; - i64toi32_i32$2 = 0; - i64toi32_i32$0 = 4294967295; - i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; - $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; - $65$hi = i64toi32_i32$2; - i64toi32_i32$2 = $63$hi; - i64toi32_i32$3 = $40; - 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); + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$1 = var$1; + i64toi32_i32$0 = 1; + i64toi32_i32$3 = 0; + if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) { + break label$2 + } + i64toi32_i32$1 = var$0$hi; + var$2 = var$0; + i64toi32_i32$1 = var$1$hi; + var$3 = var$1; + var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0; i64toi32_i32$1 = 0; - i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0; + legalfunc$wasm2js_scratch_store_i64(var$0 - Math_imul(var$2, var$3) | 0 | 0, i64toi32_i32$1 | 0); + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$2; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$3 | 0; + return i64toi32_i32$2 | 0; + } + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$1 = 0; + $39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0; + $39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0; + } + } + var$3 = $39; + i64toi32_i32$1 = var$0$hi; + if ((var$0 | 0) == (0 | 0)) { + break label$7 + } + if ((var$3 | 0) == (0 | 0)) { + break label$6 + } + var$4 = var$3 + 4294967295 | 0; + if (var$4 & var$3 | 0) { + break label$6 + } + i64toi32_i32$1 = 0; + i64toi32_i32$2 = var$4 & var$2 | 0; + i64toi32_i32$3 = 0; + i64toi32_i32$0 = 32; + i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) { + { + i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $40 = 0; + } + } else { + { + i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $40 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } } + $63$hi = i64toi32_i32$3; + i64toi32_i32$3 = var$0$hi; + i64toi32_i32$1 = var$0; + i64toi32_i32$2 = 0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0; + $65 = i64toi32_i32$1 & i64toi32_i32$0 | 0; + $65$hi = i64toi32_i32$2; + i64toi32_i32$2 = $63$hi; + i64toi32_i32$3 = $40; + 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); + 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; + return i64toi32_i32$3 | 0; } var$4 = var$3 + 4294967295 | 0; if ((var$4 & var$3 | 0 | 0) == (0 | 0)) { @@ -1597,7 +1593,7 @@ function asmFunc(global, env, buffer) { var$0$hi = i64toi32_i32$2; label$13 : { if (var$2) { - block3 : { + { i64toi32_i32$2 = var$1$hi; i64toi32_i32$1 = var$1; i64toi32_i32$3 = 4294967295; diff --git a/test/wasm2js/unreachable-insts.2asm.js b/test/wasm2js/unreachable-insts.2asm.js new file mode 100644 index 000000000..a88a82e9e --- /dev/null +++ b/test/wasm2js/unreachable-insts.2asm.js @@ -0,0 +1,31 @@ + +function asmFunc(global, env, buffer) { + "almost asm"; + var HEAP8 = new global.Int8Array(buffer); + var HEAP16 = new global.Int16Array(buffer); + var HEAP32 = new global.Int32Array(buffer); + var HEAPU8 = new global.Uint8Array(buffer); + var HEAPU16 = new global.Uint16Array(buffer); + var HEAPU32 = new global.Uint32Array(buffer); + var HEAPF32 = new global.Float32Array(buffer); + var HEAPF64 = new global.Float64Array(buffer); + var Math_imul = global.Math.imul; + var Math_fround = global.Math.fround; + var Math_abs = global.Math.abs; + var Math_clz32 = global.Math.clz32; + var Math_min = global.Math.min; + var Math_max = global.Math.max; + var Math_floor = global.Math.floor; + var Math_ceil = global.Math.ceil; + var Math_sqrt = global.Math.sqrt; + var abort = env.abort; + var nan = global.NaN; + var infinity = global.Infinity; + var FUNCTION_TABLE = []; + return { + + }; +} + +const memasmFunc = new ArrayBuffer(65536); +const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); }},memasmFunc); diff --git a/test/wasm2js/unreachable-insts.wast b/test/wasm2js/unreachable-insts.wast new file mode 100644 index 000000000..1e3d31439 --- /dev/null +++ b/test/wasm2js/unreachable-insts.wast @@ -0,0 +1,13 @@ +(module + (type $0 (func (param f64 f64 f32))) + (memory $0 1 1) + (func $0 (; 0 ;) (type $0) (param $0 f64) (param $1 f64) (param $2 f32) + (f64.store offset=22 align=1 + (block $label$1 (result i32) + (unreachable) + ) + (f64.const 1) + ) + ) +) + diff --git a/test/wasm2js/unreachable.2asm.js b/test/wasm2js/unreachable.2asm.js new file mode 100644 index 000000000..0f4aef7a6 --- /dev/null +++ b/test/wasm2js/unreachable.2asm.js @@ -0,0 +1,522 @@ +import { setTempRet0 } from 'env'; + +function asmFunc(global, env, buffer) { + "almost asm"; + var HEAP8 = new global.Int8Array(buffer); + var HEAP16 = new global.Int16Array(buffer); + var HEAP32 = new global.Int32Array(buffer); + var HEAPU8 = new global.Uint8Array(buffer); + var HEAPU16 = new global.Uint16Array(buffer); + var HEAPU32 = new global.Uint32Array(buffer); + var HEAPF32 = new global.Float32Array(buffer); + var HEAPF64 = new global.Float64Array(buffer); + var Math_imul = global.Math.imul; + var Math_fround = global.Math.fround; + var Math_abs = global.Math.abs; + var Math_clz32 = global.Math.clz32; + var Math_min = global.Math.min; + var Math_max = global.Math.max; + var Math_floor = global.Math.floor; + var Math_ceil = global.Math.ceil; + var Math_sqrt = global.Math.sqrt; + var abort = env.abort; + var nan = global.NaN; + var infinity = global.Infinity; + var setTempRet0 = env.setTempRet0; + var i64toi32_i32$HIGH_BITS = 0; + function dummy() { + + } + + function dummy3($0, $1, $2_1) { + $0 = $0 | 0; + $1 = $1 | 0; + $2_1 = $2_1 | 0; + } + + function $2() { + return abort() | 0; + } + + function $3() { + return abort() | 0; + } + + function $4() { + return +abort(); + } + + function $5() { + return +abort(); + } + + function $6() { + var $0 = 0; + return abort() | 0; + } + + function $7() { + var $0 = 0, wasm2js_i32$0 = 0; + dummy(); + wasm2js_i32$0 = abort(); + return wasm2js_i32$0 | 0; + } + + function $8() { + dummy(); + abort(); + } + + function $9() { + var wasm2js_i32$0 = 0; + dummy(); + wasm2js_i32$0 = abort(); + return wasm2js_i32$0 | 0; + } + + function $10() { + var $0 = 0; + return abort() | 0; + } + + function $11() { + var $0 = 0, wasm2js_i32$0 = 0; + dummy(); + wasm2js_i32$0 = abort(); + return wasm2js_i32$0 | 0; + } + + function $12() { + dummy(); + abort(); + } + + function $13() { + var wasm2js_i32$0 = 0; + dummy(); + wasm2js_i32$0 = abort(); + return wasm2js_i32$0 | 0; + } + + function $14() { + var $0 = 0; + block : { + dummy(); + $0 = 1; + break block; + } + return $0 | 0; + } + + function $15() { + var $0 = 0, $2_1 = 0, wasm2js_i32$0 = 0; + loop_in : do { + abort(); + break loop_in; + } while (1); + return wasm2js_i32$0 | 0; + } + + function $16() { + var $0 = 0, $2_1 = 0, wasm2js_i32$0 = 0; + loop_in : do { + dummy(); + wasm2js_i32$0 = abort(); + break loop_in; + } while (1); + return wasm2js_i32$0 | 0; + } + + function $17() { + loop_in : do { + dummy(); + abort(); + break loop_in; + } while (1); + } + + function $18() { + var $0 = 0; + block : { + loop_in : do { + dummy(); + $0 = 1; + break block; + break loop_in; + } while (1); + } + return $0 | 0; + } + + function $19() { + return abort() | 0; + } + + function $20() { + abort(); + } + + function $21() { + var $0 = 0; + return abort() | 0; + } + + function $22() { + var $0 = 0; + return abort() | 0; + } + + function $23() { + abort(); + } + + function $24() { + var $0 = 0; + return abort() | 0; + } + + function $25() { + var $1 = 0; + return abort() | 0; + } + + function $26() { + return abort() | 0; + } + + function $27() { + var $0 = 0; + return abort() | 0; + } + + function $28($0, $1) { + $0 = $0 | 0; + $1 = $1 | 0; + var $4_1 = 0; + if ($0) { + abort() + } else { + $4_1 = $1 + } + return $4_1 | 0; + } + + function $29($0, $1) { + $0 = $0 | 0; + $1 = $1 | 0; + var $4_1 = 0; + if ($0) { + $4_1 = $1 + } else { + abort() + } + return $4_1 | 0; + } + + function $30($0, $1) { + $0 = $0 | 0; + $1 = $1 | 0; + var $2_1 = 0, $3_1 = 0; + return abort() | 0; + } + + function $31($0, $1) { + $0 = $0 | 0; + $1 = $1 | 0; + var $2_1 = 0, $3_1 = 0, wasm2js_i32$0 = 0; + $2_1 = $0; + wasm2js_i32$0 = abort(); + return wasm2js_i32$0 | 0; + } + + function $32() { + return abort() | 0; + } + + function $33() { + abort(); + } + + function $34() { + abort(); + } + + function $35() { + abort(); + } + + function $36() { + abort(); + } + + function $37() { + abort(); + } + + function $38() { + abort(); + } + + function $39() { + abort(); + } + + function $40() { + abort(); + } + + function $41() { + return Math_fround(abort()); + } + + function $42() { + return abort() | 0; + } + + function $43() { + abort(); + } + + function $44() { + abort(); + } + + function $45() { + abort(); + } + + function $46() { + abort(); + } + + function $47() { + return Math_fround(abort()); + } + + function $48() { + return abort() | 0; + } + + function $49() { + return abort() | 0; + } + + function $50() { + return abort() | 0; + } + + function $51() { + return abort() | 0; + } + + function $52() { + return abort() | 0; + } + + function $53() { + return abort() | 0; + } + + function $54() { + return abort() | 0; + } + + function legalstub$26() { + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7_1 = 0, $0 = 0, $0$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $26() | 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_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $7_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } + } + setTempRet0($7_1 | 0); + i64toi32_i32$0 = $0$hi; + return $0 | 0; + } + + function legalstub$41() { + return +(+Math_fround($41())); + } + + function legalstub$42() { + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7_1 = 0, $0 = 0, $0$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $42() | 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_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $7_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } + } + setTempRet0($7_1 | 0); + i64toi32_i32$0 = $0$hi; + return $0 | 0; + } + + function legalstub$47() { + return +(+Math_fround($47())); + } + + function legalstub$49() { + var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $7_1 = 0, $0 = 0, $0$hi = 0, i64toi32_i32$2 = 0; + i64toi32_i32$0 = $49() | 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_1 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } + } else { + { + i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $7_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0; + } + } + setTempRet0($7_1 | 0); + i64toi32_i32$0 = $0$hi; + return $0 | 0; + } + + var FUNCTION_TABLE = []; + return { + type_i32: $2, + type_i64: $3, + type_f32: $4, + type_f64: $5, + as_func_first: $6, + as_func_mid: $7, + as_func_last: $8, + as_func_value: $9, + as_block_first: $10, + as_block_mid: $11, + as_block_last: $12, + as_block_value: $13, + as_block_broke: $14, + as_loop_first: $15, + as_loop_mid: $16, + as_loop_last: $17, + as_loop_broke: $18, + as_br_value: $19, + as_br_if_cond: $20, + as_br_if_value: $21, + as_br_if_value_cond: $22, + as_br_table_index: $23, + as_br_table_value: $24, + as_br_table_value_index: $25, + as_return_value: legalstub$26, + as_if_cond: $27, + as_if_then: $28, + as_if_else: $29, + as_select_first: $30, + as_select_second: $31, + as_select_cond: $32, + as_call_first: $33, + as_call_mid: $34, + as_call_last: $35, + as_call_indirect_func: $36, + as_call_indirect_first: $37, + as_call_indirect_mid: $38, + as_call_indirect_last: $39, + as_local_set_value: $40, + as_load_address: legalstub$41, + as_loadN_address: legalstub$42, + as_store_address: $43, + as_store_value: $44, + as_storeN_address: $45, + as_storeN_value: $46, + as_unary_operand: legalstub$47, + as_binary_left: $48, + as_binary_right: legalstub$49, + as_test_operand: $50, + as_compare_left: $51, + as_compare_right: $52, + as_convert_operand: $53, + as_grow_memory_size: $54 + }; +} + +const memasmFunc = new ArrayBuffer(65536); +const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); },setTempRet0},memasmFunc); +export const type_i32 = retasmFunc.type_i32; +export const type_i64 = retasmFunc.type_i64; +export const type_f32 = retasmFunc.type_f32; +export const type_f64 = retasmFunc.type_f64; +export const as_func_first = retasmFunc.as_func_first; +export const as_func_mid = retasmFunc.as_func_mid; +export const as_func_last = retasmFunc.as_func_last; +export const as_func_value = retasmFunc.as_func_value; +export const as_block_first = retasmFunc.as_block_first; +export const as_block_mid = retasmFunc.as_block_mid; +export const as_block_last = retasmFunc.as_block_last; +export const as_block_value = retasmFunc.as_block_value; +export const as_block_broke = retasmFunc.as_block_broke; +export const as_loop_first = retasmFunc.as_loop_first; +export const as_loop_mid = retasmFunc.as_loop_mid; +export const as_loop_last = retasmFunc.as_loop_last; +export const as_loop_broke = retasmFunc.as_loop_broke; +export const as_br_value = retasmFunc.as_br_value; +export const as_br_if_cond = retasmFunc.as_br_if_cond; +export const as_br_if_value = retasmFunc.as_br_if_value; +export const as_br_if_value_cond = retasmFunc.as_br_if_value_cond; +export const as_br_table_index = retasmFunc.as_br_table_index; +export const as_br_table_value = retasmFunc.as_br_table_value; +export const as_br_table_value_index = retasmFunc.as_br_table_value_index; +export const as_return_value = retasmFunc.as_return_value; +export const as_if_cond = retasmFunc.as_if_cond; +export const as_if_then = retasmFunc.as_if_then; +export const as_if_else = retasmFunc.as_if_else; +export const as_select_first = retasmFunc.as_select_first; +export const as_select_second = retasmFunc.as_select_second; +export const as_select_cond = retasmFunc.as_select_cond; +export const as_call_first = retasmFunc.as_call_first; +export const as_call_mid = retasmFunc.as_call_mid; +export const as_call_last = retasmFunc.as_call_last; +export const as_call_indirect_func = retasmFunc.as_call_indirect_func; +export const as_call_indirect_first = retasmFunc.as_call_indirect_first; +export const as_call_indirect_mid = retasmFunc.as_call_indirect_mid; +export const as_call_indirect_last = retasmFunc.as_call_indirect_last; +export const as_local_set_value = retasmFunc.as_local_set_value; +export const as_load_address = retasmFunc.as_load_address; +export const as_loadN_address = retasmFunc.as_loadN_address; +export const as_store_address = retasmFunc.as_store_address; +export const as_store_value = retasmFunc.as_store_value; +export const as_storeN_address = retasmFunc.as_storeN_address; +export const as_storeN_value = retasmFunc.as_storeN_value; +export const as_unary_operand = retasmFunc.as_unary_operand; +export const as_binary_left = retasmFunc.as_binary_left; +export const as_binary_right = retasmFunc.as_binary_right; +export const as_test_operand = retasmFunc.as_test_operand; +export const as_compare_left = retasmFunc.as_compare_left; +export const as_compare_right = retasmFunc.as_compare_right; +export const as_convert_operand = retasmFunc.as_convert_operand; +export const as_grow_memory_size = retasmFunc.as_grow_memory_size; |