diff options
Diffstat (limited to 'test/wasm2js/loop.2asm.js')
-rw-r--r-- | test/wasm2js/loop.2asm.js | 147 |
1 files changed, 80 insertions, 67 deletions
diff --git a/test/wasm2js/loop.2asm.js b/test/wasm2js/loop.2asm.js index 7d94fe051..6ba7086ea 100644 --- a/test/wasm2js/loop.2asm.js +++ b/test/wasm2js/loop.2asm.js @@ -90,7 +90,7 @@ function asmFunc(global, env, buffer) { var $2_1 = 0; dummy(); $2_1 = 13; - return __wasm_ctz_i32($2_1) | 0; + return __wasm_ctz_i32($2_1 | 0) | 0 | 0; } function $7() { @@ -206,7 +206,7 @@ function asmFunc(global, env, buffer) { var $0 = 0, $1_1 = 0, $2_1 = 0, $3_1 = 0, $5_1 = 0; $0 = 0; $1_1 = $0; - loop_in : while (1) continue; + loop_in : while (1) continue loop_in; } function fx() { @@ -231,14 +231,14 @@ function asmFunc(global, env, buffer) { block : { loop_in : while (1) { i64toi32_i32$0 = $0$hi; - if (!($0 | i64toi32_i32$0)) { + if (!($0 | i64toi32_i32$0 | 0)) { break block } i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = $1$hi; i64toi32_i32$0 = $0$hi; i64toi32_i32$1 = $1$hi; - i64toi32_i32$1 = __wasm_i64_mul($0, i64toi32_i32$0, $1_1, $1$hi); + i64toi32_i32$1 = __wasm_i64_mul($0 | 0, i64toi32_i32$0 | 0, $1_1 | 0, $1$hi | 0) | 0; i64toi32_i32$0 = i64toi32_i32$HIGH_BITS; $1_1 = i64toi32_i32$1; $1$hi = i64toi32_i32$0; @@ -249,7 +249,7 @@ function asmFunc(global, env, buffer) { i64toi32_i32$5 = i64toi32_i32$0 - i64toi32_i32$5 | 0; $0 = $0 - i64toi32_i32$3 | 0; $0$hi = i64toi32_i32$5; - continue; + continue loop_in; }; } i64toi32_i32$5 = $1$hi; @@ -273,11 +273,11 @@ function asmFunc(global, env, buffer) { i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = $2$hi; i64toi32_i32$1 = $0$hi; - if (i64toi32_i32$0 >>> 0 > i64toi32_i32$1 >>> 0 | (i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & $2_1 >>> 0 > $0 >>> 0) { + if (i64toi32_i32$0 >>> 0 > i64toi32_i32$1 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & $2_1 >>> 0 > $0 >>> 0 | 0) | 0) { break block } i64toi32_i32$0 = $2$hi; - i64toi32_i32$0 = __wasm_i64_mul($1_1, $1$hi, $2_1, i64toi32_i32$0); + i64toi32_i32$0 = __wasm_i64_mul($1_1 | 0, $1$hi | 0, $2_1 | 0, i64toi32_i32$0 | 0) | 0; $1_1 = i64toi32_i32$0; $1$hi = i64toi32_i32$HIGH_BITS; i64toi32_i32$0 = 0; @@ -289,7 +289,7 @@ function asmFunc(global, env, buffer) { } $2_1 = i64toi32_i32$4; $2$hi = i64toi32_i32$5; - continue; + continue loop_in; }; } i64toi32_i32$5 = $1$hi; @@ -317,18 +317,20 @@ function asmFunc(global, env, buffer) { } $3_1 = Math_fround($3_1 + $2_1); $2_1 = Math_fround($2_1 - Math_fround(2.0)); - continue; + continue loop_in72; }; } $3_1 = Math_fround($3_1 / $0); $0 = Math_fround($0 - Math_fround(1.0)); - continue; + continue loop_in; }; } return Math_fround($3_1); } function legalstub$16($0, $1_1) { + $0 = $0 | 0; + $1_1 = $1_1 | 0; var i64toi32_i32$2 = 0, i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $12_1 = 0, $13_1 = 0, $4_1 = 0, $4$hi = 0, $7$hi = 0, $2_1 = 0, $2$hi = 0; i64toi32_i32$0 = 0; $4_1 = $0; @@ -337,16 +339,16 @@ function asmFunc(global, env, buffer) { i64toi32_i32$2 = $1_1; i64toi32_i32$1 = 0; i64toi32_i32$3 = 32; - i64toi32_i32$4 = i64toi32_i32$3 & 31; - if (32 >>> 0 <= (i64toi32_i32$3 & 63) >>> 0) { + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { { - i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; $12_1 = 0; } } else { { - i64toi32_i32$1 = (1 << i64toi32_i32$4) - 1 & i64toi32_i32$2 >>> 32 - i64toi32_i32$4 | i64toi32_i32$0 << i64toi32_i32$4; - $12_1 = i64toi32_i32$2 << i64toi32_i32$4; + i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0; + $12_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } $7$hi = i64toi32_i32$1; @@ -354,32 +356,34 @@ function asmFunc(global, env, buffer) { i64toi32_i32$0 = $4_1; i64toi32_i32$2 = $7$hi; i64toi32_i32$3 = $12_1; - i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2; - i64toi32_i32$2 = $16(i64toi32_i32$0 | i64toi32_i32$3, i64toi32_i32$2); + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + i64toi32_i32$2 = $16(i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0) | 0; i64toi32_i32$0 = i64toi32_i32$HIGH_BITS; $2_1 = i64toi32_i32$2; $2$hi = i64toi32_i32$0; i64toi32_i32$1 = i64toi32_i32$2; i64toi32_i32$2 = 0; i64toi32_i32$3 = 32; - i64toi32_i32$4 = i64toi32_i32$3 & 31; - if (32 >>> 0 <= (i64toi32_i32$3 & 63) >>> 0) { + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { { i64toi32_i32$2 = 0; - $13_1 = i64toi32_i32$0 >>> i64toi32_i32$4; + $13_1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$2 = i64toi32_i32$0 >>> i64toi32_i32$4; - $13_1 = ((1 << i64toi32_i32$4) - 1 & i64toi32_i32$0) << 32 - i64toi32_i32$4 | i64toi32_i32$1 >>> i64toi32_i32$4; + i64toi32_i32$2 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $13_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$1 >>> i64toi32_i32$4 | 0) | 0; } } setTempRet0($13_1 | 0); i64toi32_i32$2 = $2$hi; - return $2_1; + return $2_1 | 0; } function legalstub$17($0, $1_1) { + $0 = $0 | 0; + $1_1 = $1_1 | 0; var i64toi32_i32$2 = 0, i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $12_1 = 0, $13_1 = 0, $4_1 = 0, $4$hi = 0, $7$hi = 0, $2_1 = 0, $2$hi = 0; i64toi32_i32$0 = 0; $4_1 = $0; @@ -388,16 +392,16 @@ function asmFunc(global, env, buffer) { i64toi32_i32$2 = $1_1; i64toi32_i32$1 = 0; i64toi32_i32$3 = 32; - i64toi32_i32$4 = i64toi32_i32$3 & 31; - if (32 >>> 0 <= (i64toi32_i32$3 & 63) >>> 0) { + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { { - i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4; + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; $12_1 = 0; } } else { { - i64toi32_i32$1 = (1 << i64toi32_i32$4) - 1 & i64toi32_i32$2 >>> 32 - i64toi32_i32$4 | i64toi32_i32$0 << i64toi32_i32$4; - $12_1 = i64toi32_i32$2 << i64toi32_i32$4; + i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0; + $12_1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; } } $7$hi = i64toi32_i32$1; @@ -405,54 +409,58 @@ function asmFunc(global, env, buffer) { i64toi32_i32$0 = $4_1; i64toi32_i32$2 = $7$hi; i64toi32_i32$3 = $12_1; - i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2; - i64toi32_i32$2 = $17(i64toi32_i32$0 | i64toi32_i32$3, i64toi32_i32$2); + i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; + i64toi32_i32$2 = $17(i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0) | 0; i64toi32_i32$0 = i64toi32_i32$HIGH_BITS; $2_1 = i64toi32_i32$2; $2$hi = i64toi32_i32$0; i64toi32_i32$1 = i64toi32_i32$2; i64toi32_i32$2 = 0; i64toi32_i32$3 = 32; - i64toi32_i32$4 = i64toi32_i32$3 & 31; - if (32 >>> 0 <= (i64toi32_i32$3 & 63) >>> 0) { + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { { i64toi32_i32$2 = 0; - $13_1 = i64toi32_i32$0 >>> i64toi32_i32$4; + $13_1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$2 = i64toi32_i32$0 >>> i64toi32_i32$4; - $13_1 = ((1 << i64toi32_i32$4) - 1 & i64toi32_i32$0) << 32 - i64toi32_i32$4 | i64toi32_i32$1 >>> i64toi32_i32$4; + i64toi32_i32$2 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $13_1 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$1 >>> i64toi32_i32$4 | 0) | 0; } } setTempRet0($13_1 | 0); i64toi32_i32$2 = $2$hi; - return $2_1; + return $2_1 | 0; } function _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE(var$0, var$0$hi, var$1, var$1$hi) { + var$0 = var$0 | 0; + var$0$hi = var$0$hi | 0; + var$1 = var$1 | 0; + var$1$hi = var$1$hi | 0; var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, var$2 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, var$3 = 0, var$4 = 0, var$5 = 0, $21 = 0, $22 = 0, var$6 = 0, $24 = 0, $17_1 = 0, $18_1 = 0, $23 = 0, $29 = 0, $45 = 0, $56$hi = 0, $62$hi = 0; i64toi32_i32$0 = var$1$hi; var$2 = var$1; - var$4 = var$2 >>> 16; + var$4 = var$2 >>> 16 | 0; i64toi32_i32$0 = var$0$hi; var$3 = var$0; - var$5 = var$3 >>> 16; + var$5 = var$3 >>> 16 | 0; $17_1 = Math_imul(var$4, var$5); $18_1 = var$2; i64toi32_i32$2 = var$3; i64toi32_i32$1 = 0; i64toi32_i32$3 = 32; - i64toi32_i32$4 = i64toi32_i32$3 & 31; - if (32 >>> 0 <= (i64toi32_i32$3 & 63) >>> 0) { + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { { i64toi32_i32$1 = 0; - $21 = i64toi32_i32$0 >>> i64toi32_i32$4; + $21 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4; - $21 = ((1 << i64toi32_i32$4) - 1 & i64toi32_i32$0) << 32 - i64toi32_i32$4 | i64toi32_i32$2 >>> i64toi32_i32$4; + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $21 = (((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; } } $23 = $17_1 + Math_imul($18_1, $21) | 0; @@ -460,39 +468,39 @@ function asmFunc(global, env, buffer) { i64toi32_i32$0 = var$1; i64toi32_i32$2 = 0; i64toi32_i32$3 = 32; - i64toi32_i32$4 = i64toi32_i32$3 & 31; - if (32 >>> 0 <= (i64toi32_i32$3 & 63) >>> 0) { + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { { i64toi32_i32$2 = 0; - $22 = i64toi32_i32$1 >>> i64toi32_i32$4; + $22 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; } } else { { - i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4; - $22 = ((1 << i64toi32_i32$4) - 1 & i64toi32_i32$1) << 32 - i64toi32_i32$4 | i64toi32_i32$0 >>> i64toi32_i32$4; + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $22 = (((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; } } $29 = $23 + Math_imul($22, var$3) | 0; - var$2 = var$2 & 65535; - var$3 = var$3 & 65535; + var$2 = var$2 & 65535 | 0; + var$3 = var$3 & 65535 | 0; var$6 = Math_imul(var$2, var$3); - var$2 = (var$6 >>> 16) + Math_imul(var$2, var$5) | 0; - $45 = $29 + (var$2 >>> 16) | 0; - var$2 = (var$2 & 65535) + Math_imul(var$4, var$3) | 0; + var$2 = (var$6 >>> 16 | 0) + Math_imul(var$2, var$5) | 0; + $45 = $29 + (var$2 >>> 16 | 0) | 0; + var$2 = (var$2 & 65535 | 0) + Math_imul(var$4, var$3) | 0; i64toi32_i32$2 = 0; - i64toi32_i32$1 = $45 + (var$2 >>> 16) | 0; + i64toi32_i32$1 = $45 + (var$2 >>> 16 | 0) | 0; i64toi32_i32$0 = 0; i64toi32_i32$3 = 32; - i64toi32_i32$4 = i64toi32_i32$3 & 31; - if (32 >>> 0 <= (i64toi32_i32$3 & 63) >>> 0) { + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { { - i64toi32_i32$0 = i64toi32_i32$1 << i64toi32_i32$4; + i64toi32_i32$0 = i64toi32_i32$1 << i64toi32_i32$4 | 0; $24 = 0; } } else { { - i64toi32_i32$0 = (1 << i64toi32_i32$4) - 1 & i64toi32_i32$1 >>> 32 - i64toi32_i32$4 | i64toi32_i32$2 << i64toi32_i32$4; - $24 = i64toi32_i32$1 << i64toi32_i32$4; + i64toi32_i32$0 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$1 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$2 << i64toi32_i32$4 | 0) | 0; + $24 = i64toi32_i32$1 << i64toi32_i32$4 | 0; } } $56$hi = i64toi32_i32$0; @@ -501,30 +509,35 @@ function asmFunc(global, env, buffer) { i64toi32_i32$0 = $56$hi; i64toi32_i32$2 = $24; i64toi32_i32$1 = $62$hi; - i64toi32_i32$3 = var$2 << 16 | var$6 & 65535; - i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1; - i64toi32_i32$2 = i64toi32_i32$2 | i64toi32_i32$3; + i64toi32_i32$3 = var$2 << 16 | 0 | (var$6 & 65535 | 0) | 0; + i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1 | 0; + i64toi32_i32$2 = i64toi32_i32$2 | i64toi32_i32$3 | 0; i64toi32_i32$HIGH_BITS = i64toi32_i32$1; - return i64toi32_i32$2; + return i64toi32_i32$2 | 0; } function __wasm_ctz_i32(var$0) { + var$0 = var$0 | 0; if (var$0) { - return 31 - Math_clz32(var$0 + -1 ^ var$0) | 0 + return 31 - Math_clz32((var$0 + -1 | 0) ^ var$0 | 0) | 0 | 0 } - return 32; + return 32 | 0; } function __wasm_i64_mul(var$0, var$0$hi, var$1, var$1$hi) { + var$0 = var$0 | 0; + var$0$hi = var$0$hi | 0; + var$1 = var$1 | 0; + var$1$hi = var$1$hi | 0; var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0; i64toi32_i32$0 = var$0$hi; i64toi32_i32$0 = var$1$hi; i64toi32_i32$0 = var$0$hi; i64toi32_i32$1 = var$1$hi; - i64toi32_i32$1 = _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE(var$0, i64toi32_i32$0, var$1, i64toi32_i32$1); + i64toi32_i32$1 = _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0; i64toi32_i32$0 = i64toi32_i32$HIGH_BITS; i64toi32_i32$HIGH_BITS = i64toi32_i32$0; - return i64toi32_i32$1; + return i64toi32_i32$1 | 0; } var FUNCTION_TABLE = []; |