diff options
Diffstat (limited to 'test/wasm2asm/i64-rotate.2asm.js')
-rw-r--r-- | test/wasm2asm/i64-rotate.2asm.js | 292 |
1 files changed, 234 insertions, 58 deletions
diff --git a/test/wasm2asm/i64-rotate.2asm.js b/test/wasm2asm/i64-rotate.2asm.js index 860ad7fbb..7c18f699c 100644 --- a/test/wasm2asm/i64-rotate.2asm.js +++ b/test/wasm2asm/i64-rotate.2asm.js @@ -29,20 +29,19 @@ function asmFunc(global, env, buffer) { $1$hi = $1$hi | 0; $2 = $2 | 0; $2$hi = $2$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, $5$hi = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5$hi = 0, i64toi32_i32$2 = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = $1$hi; i64toi32_i32$0 = $0$hi; i64toi32_i32$1 = $1$hi; - i64toi32_i32$3 = $1; - i64toi32_i32$4 = __wasm_rotl_i64($0 | 0, i64toi32_i32$0 | 0, i64toi32_i32$3 & 63 | 0 | 0) | 0; - i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; - $5$hi = i64toi32_i32$1; + i64toi32_i32$1 = __wasm_rotl_i64($0 | 0, i64toi32_i32$0 | 0, $1 | 0, i64toi32_i32$1 | 0) | 0; + i64toi32_i32$0 = i64toi32_i32$HIGH_BITS; + $5$hi = i64toi32_i32$0; + i64toi32_i32$0 = $2$hi; + i64toi32_i32$0 = $5$hi; + i64toi32_i32$2 = i64toi32_i32$1; i64toi32_i32$1 = $2$hi; - i64toi32_i32$1 = $5$hi; - i64toi32_i32$0 = i64toi32_i32$4; - i64toi32_i32$3 = $2; - return (i64toi32_i32$0 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$1 | 0) == ($2$hi | 0) | 0 | 0; + return (i64toi32_i32$2 | 0) == ($2 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) | 0 | 0; } function $2($0, $0$hi, $1, $1$hi, $2, $2$hi) { @@ -52,68 +51,245 @@ function asmFunc(global, env, buffer) { $1$hi = $1$hi | 0; $2 = $2 | 0; $2$hi = $2$hi | 0; - var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, $5$hi = 0; + var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5$hi = 0, i64toi32_i32$2 = 0; i64toi32_i32$0 = $0$hi; i64toi32_i32$0 = $1$hi; i64toi32_i32$0 = $0$hi; i64toi32_i32$1 = $1$hi; - i64toi32_i32$3 = $1; - i64toi32_i32$4 = __wasm_rotr_i64($0 | 0, i64toi32_i32$0 | 0, i64toi32_i32$3 & 63 | 0 | 0) | 0; - i64toi32_i32$1 = i64toi32_i32$HIGH_BITS; - $5$hi = i64toi32_i32$1; + i64toi32_i32$1 = __wasm_rotr_i64($0 | 0, i64toi32_i32$0 | 0, $1 | 0, i64toi32_i32$1 | 0) | 0; + i64toi32_i32$0 = i64toi32_i32$HIGH_BITS; + $5$hi = i64toi32_i32$0; + i64toi32_i32$0 = $2$hi; + i64toi32_i32$0 = $5$hi; + i64toi32_i32$2 = i64toi32_i32$1; i64toi32_i32$1 = $2$hi; - i64toi32_i32$1 = $5$hi; - i64toi32_i32$0 = i64toi32_i32$4; - i64toi32_i32$3 = $2; - return (i64toi32_i32$0 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$1 | 0) == ($2$hi | 0) | 0 | 0; + return (i64toi32_i32$2 | 0) == ($2 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) | 0 | 0; } - function __wasm_rotl_i64($0, $1, $2) { - $0 = $0 | 0; - $1 = $1 | 0; - $2 = $2 | 0; - var $3 = 0, $4 = 0, $5 = 0; - if (($2 | 0) == (32 | 0)) { - i64toi32_i32$HIGH_BITS = $0; - $4 = $1; + function __wasm_rotl_i64(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$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, i64toi32_i32$4 = 0, var$2$hi = 0, var$2 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $6$hi = 0, $8$hi = 0, $10 = 0, $10$hi = 0, $15$hi = 0, $17$hi = 0, $19$hi = 0; + i64toi32_i32$0 = var$1$hi; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$2 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$3 = 63; + i64toi32_i32$1 = i64toi32_i32$0 & i64toi32_i32$1 | 0; + i64toi32_i32$1 = i64toi32_i32$1; + var$2 = i64toi32_i32$2 & i64toi32_i32$3 | 0; + var$2$hi = i64toi32_i32$1; + i64toi32_i32$1 = i64toi32_i32$1; + i64toi32_i32$1 = 4294967295; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = var$2$hi; + i64toi32_i32$3 = var$2; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + i64toi32_i32$2 = 0; + $19 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + } else { + i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0; + $19 = (((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; + } + $6$hi = i64toi32_i32$2; + i64toi32_i32$2 = var$0$hi; + i64toi32_i32$2 = $6$hi; + i64toi32_i32$1 = $19; + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$3 = var$0; + i64toi32_i32$0 = i64toi32_i32$2 & i64toi32_i32$0 | 0; + $8$hi = i64toi32_i32$0; + i64toi32_i32$0 = var$2$hi; + i64toi32_i32$0 = $8$hi; + i64toi32_i32$2 = i64toi32_i32$1 & i64toi32_i32$3 | 0; + i64toi32_i32$1 = var$2$hi; + i64toi32_i32$3 = var$2; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + $20 = 0; + } else { + i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0; + $20 = i64toi32_i32$2 << i64toi32_i32$4 | 0; + } + $10 = $20; + $10$hi = i64toi32_i32$1; + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$4 = i64toi32_i32$0 - i64toi32_i32$3 | 0; + i64toi32_i32$5 = (i64toi32_i32$0 >>> 0 < i64toi32_i32$3 >>> 0) + i64toi32_i32$2 | 0; + i64toi32_i32$5 = i64toi32_i32$1 - i64toi32_i32$5 | 0; + i64toi32_i32$5 = i64toi32_i32$5; + i64toi32_i32$1 = i64toi32_i32$4; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 63; + i64toi32_i32$0 = i64toi32_i32$5 & i64toi32_i32$0 | 0; + i64toi32_i32$0 = i64toi32_i32$0; + var$1 = i64toi32_i32$1 & i64toi32_i32$3 | 0; + var$1$hi = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$5 = 4294967295; + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$2 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + i64toi32_i32$1 = i64toi32_i32$5 << i64toi32_i32$2 | 0; + $21 = 0; + } else { + i64toi32_i32$1 = ((1 << i64toi32_i32$2 | 0) - 1 | 0) & (i64toi32_i32$5 >>> (32 - i64toi32_i32$2 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$2 | 0) | 0; + $21 = i64toi32_i32$5 << i64toi32_i32$2 | 0; + } + $15$hi = i64toi32_i32$1; + i64toi32_i32$1 = var$0$hi; + i64toi32_i32$1 = $15$hi; + i64toi32_i32$0 = $21; + i64toi32_i32$5 = var$0$hi; + i64toi32_i32$3 = var$0; + i64toi32_i32$5 = i64toi32_i32$1 & i64toi32_i32$5 | 0; + $17$hi = i64toi32_i32$5; + i64toi32_i32$5 = var$1$hi; + i64toi32_i32$5 = $17$hi; + i64toi32_i32$1 = i64toi32_i32$0 & i64toi32_i32$3 | 0; + i64toi32_i32$0 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$2 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + i64toi32_i32$0 = 0; + $22 = i64toi32_i32$5 >>> i64toi32_i32$2 | 0; } else { - if ($2 >>> 0 >= 32 >>> 0) { - $2 = $2 - 32 | 0; - $3 = 32 - $2 | 0; - i64toi32_i32$HIGH_BITS = $0 << $2 | 0 | ($1 >>> $3 | 0) | 0; - $5 = $1 << $2 | 0 | ($0 >>> $3 | 0) | 0; - } else { - $3 = 32 - $2 | 0; - i64toi32_i32$HIGH_BITS = $1 << $2 | 0 | ($0 >>> $3 | 0) | 0; - $5 = $0 << $2 | 0 | ($1 >>> $3 | 0) | 0; - } - $4 = $5; + i64toi32_i32$0 = i64toi32_i32$5 >>> i64toi32_i32$2 | 0; + $22 = (((1 << i64toi32_i32$2 | 0) - 1 | 0) & i64toi32_i32$5 | 0) << (32 - i64toi32_i32$2 | 0) | 0 | (i64toi32_i32$1 >>> i64toi32_i32$2 | 0) | 0; } - return $4 | 0; + $19$hi = i64toi32_i32$0; + i64toi32_i32$0 = $10$hi; + i64toi32_i32$5 = $10; + i64toi32_i32$1 = $19$hi; + i64toi32_i32$3 = $22; + i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1 | 0; + i64toi32_i32$1 = i64toi32_i32$1; + i64toi32_i32$5 = i64toi32_i32$5 | i64toi32_i32$3 | 0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; + return i64toi32_i32$5 | 0; } - function __wasm_rotr_i64($0, $1, $2) { - $0 = $0 | 0; - $1 = $1 | 0; - $2 = $2 | 0; - var $3 = 0, $4 = 0, $5 = 0; - if (($2 | 0) == (32 | 0)) { - i64toi32_i32$HIGH_BITS = $0; - $4 = $1; + function __wasm_rotr_i64(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$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, i64toi32_i32$4 = 0, var$2$hi = 0, var$2 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $6$hi = 0, $8$hi = 0, $10 = 0, $10$hi = 0, $15$hi = 0, $17$hi = 0, $19$hi = 0; + i64toi32_i32$0 = var$1$hi; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$2 = var$1; + i64toi32_i32$1 = 0; + i64toi32_i32$3 = 63; + i64toi32_i32$1 = i64toi32_i32$0 & i64toi32_i32$1 | 0; + i64toi32_i32$1 = i64toi32_i32$1; + var$2 = i64toi32_i32$2 & i64toi32_i32$3 | 0; + var$2$hi = i64toi32_i32$1; + i64toi32_i32$1 = i64toi32_i32$1; + i64toi32_i32$1 = 4294967295; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$2 = var$2$hi; + i64toi32_i32$3 = var$2; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + i64toi32_i32$2 = i64toi32_i32$0 << i64toi32_i32$4 | 0; + $19 = 0; + } else { + i64toi32_i32$2 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$0 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0; + $19 = i64toi32_i32$0 << i64toi32_i32$4 | 0; + } + $6$hi = i64toi32_i32$2; + i64toi32_i32$2 = var$0$hi; + i64toi32_i32$2 = $6$hi; + i64toi32_i32$1 = $19; + i64toi32_i32$0 = var$0$hi; + i64toi32_i32$3 = var$0; + i64toi32_i32$0 = i64toi32_i32$2 & i64toi32_i32$0 | 0; + $8$hi = i64toi32_i32$0; + i64toi32_i32$0 = var$2$hi; + i64toi32_i32$0 = $8$hi; + i64toi32_i32$2 = i64toi32_i32$1 & i64toi32_i32$3 | 0; + i64toi32_i32$1 = var$2$hi; + i64toi32_i32$3 = var$2; + i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + i64toi32_i32$1 = 0; + $20 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + } else { + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; + $20 = (((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; + } + $10 = $20; + $10$hi = i64toi32_i32$1; + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$1 = 0; + i64toi32_i32$0 = 0; + i64toi32_i32$2 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$4 = i64toi32_i32$0 - i64toi32_i32$3 | 0; + i64toi32_i32$5 = (i64toi32_i32$0 >>> 0 < i64toi32_i32$3 >>> 0) + i64toi32_i32$2 | 0; + i64toi32_i32$5 = i64toi32_i32$1 - i64toi32_i32$5 | 0; + i64toi32_i32$5 = i64toi32_i32$5; + i64toi32_i32$1 = i64toi32_i32$4; + i64toi32_i32$0 = 0; + i64toi32_i32$3 = 63; + i64toi32_i32$0 = i64toi32_i32$5 & i64toi32_i32$0 | 0; + i64toi32_i32$0 = i64toi32_i32$0; + var$1 = i64toi32_i32$1 & i64toi32_i32$3 | 0; + var$1$hi = i64toi32_i32$0; + i64toi32_i32$0 = i64toi32_i32$0; + i64toi32_i32$0 = 4294967295; + i64toi32_i32$5 = 4294967295; + i64toi32_i32$1 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$2 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + i64toi32_i32$1 = 0; + $21 = i64toi32_i32$0 >>> i64toi32_i32$2 | 0; + } else { + i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$2 | 0; + $21 = (((1 << i64toi32_i32$2 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$2 | 0) | 0 | (i64toi32_i32$5 >>> i64toi32_i32$2 | 0) | 0; + } + $15$hi = i64toi32_i32$1; + i64toi32_i32$1 = var$0$hi; + i64toi32_i32$1 = $15$hi; + i64toi32_i32$0 = $21; + i64toi32_i32$5 = var$0$hi; + i64toi32_i32$3 = var$0; + i64toi32_i32$5 = i64toi32_i32$1 & i64toi32_i32$5 | 0; + $17$hi = i64toi32_i32$5; + i64toi32_i32$5 = var$1$hi; + i64toi32_i32$5 = $17$hi; + i64toi32_i32$1 = i64toi32_i32$0 & i64toi32_i32$3 | 0; + i64toi32_i32$0 = var$1$hi; + i64toi32_i32$3 = var$1; + i64toi32_i32$2 = i64toi32_i32$3 & 31 | 0; + if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { + i64toi32_i32$0 = i64toi32_i32$1 << i64toi32_i32$2 | 0; + $22 = 0; } else { - if ($2 >>> 0 >= 32 >>> 0) { - $2 = $2 - 32 | 0; - $3 = 32 - $2 | 0; - i64toi32_i32$HIGH_BITS = $0 >>> $2 | 0 | ($1 << $3 | 0) | 0; - $5 = $1 >>> $2 | 0 | ($0 << $3 | 0) | 0; - } else { - $3 = 32 - $2 | 0; - i64toi32_i32$HIGH_BITS = $1 >>> $2 | 0 | ($0 << $3 | 0) | 0; - $5 = $0 >>> $2 | 0 | ($1 << $3 | 0) | 0; - } - $4 = $5; + i64toi32_i32$0 = ((1 << i64toi32_i32$2 | 0) - 1 | 0) & (i64toi32_i32$1 >>> (32 - i64toi32_i32$2 | 0) | 0) | 0 | (i64toi32_i32$5 << i64toi32_i32$2 | 0) | 0; + $22 = i64toi32_i32$1 << i64toi32_i32$2 | 0; } - return $4 | 0; + $19$hi = i64toi32_i32$0; + i64toi32_i32$0 = $10$hi; + i64toi32_i32$5 = $10; + i64toi32_i32$1 = $19$hi; + i64toi32_i32$3 = $22; + i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1 | 0; + i64toi32_i32$1 = i64toi32_i32$1; + i64toi32_i32$5 = i64toi32_i32$5 | i64toi32_i32$3 | 0; + i64toi32_i32$HIGH_BITS = i64toi32_i32$1; + return i64toi32_i32$5 | 0; } return { |