summaryrefslogtreecommitdiff
path: root/test/wasm2js/i64.2asm.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/wasm2js/i64.2asm.js')
-rw-r--r--test/wasm2js/i64.2asm.js452
1 files changed, 229 insertions, 223 deletions
diff --git a/test/wasm2js/i64.2asm.js b/test/wasm2js/i64.2asm.js
index c4b408bb2..f96e46577 100644
--- a/test/wasm2js/i64.2asm.js
+++ b/test/wasm2js/i64.2asm.js
@@ -2738,121 +2738,125 @@ function asmFunc(global, env, buffer) {
label$7 : {
label$8 : {
label$9 : {
- 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) {
+ label$10 : {
+ label$11 : {
+ i64toi32_i32$0 = var$0$hi;
+ i64toi32_i32$2 = var$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) {
- i64toi32_i32$1 = var$1$hi;
- var$3 = var$1;
- if (!var$3) {
- 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;
+ i64toi32_i32$1 = 0;
+ $37 = i64toi32_i32$0 >>> 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;
+ 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$4 = $38;
- if (!var$4) {
- break label$9
+ var$2 = $37;
+ if (var$2) {
+ block : {
+ i64toi32_i32$1 = var$1$hi;
+ var$3 = var$1;
+ if (!var$3) {
+ 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) {
+ 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;
+ }
}
- var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0;
- if (var$2 >>> 0 <= 31 >>> 0) {
- break label$8
+ 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
}
- 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$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$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;
- var$2 = var$0;
- i64toi32_i32$1 = var$1$hi;
- var$3 = var$1;
- var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
+ if (!var$0) {
+ break label$7
+ }
+ if (!var$3) {
+ break label$6
+ }
+ var$4 = var$3 + -1 | 0;
+ if (var$4 & var$3 | 0) {
+ break label$6
+ }
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$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 = -1;
+ 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$2 = var$2;
+ 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$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) {
- break label$7
- }
- if (!var$3) {
- break label$6
- }
- var$4 = var$3 + -1 | 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;
+ return i64toi32_i32$3 | 0;
}
- $63$hi = i64toi32_i32$3;
- i64toi32_i32$3 = var$0$hi;
- i64toi32_i32$1 = var$0;
- i64toi32_i32$2 = 0;
- i64toi32_i32$0 = -1;
- 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 + -1 | 0;
if (!(var$4 & var$3 | 0)) {
@@ -2955,132 +2959,134 @@ function asmFunc(global, env, buffer) {
var$0$hi = i64toi32_i32$2;
label$13 : {
if (var$2) {
- i64toi32_i32$2 = var$1$hi;
- i64toi32_i32$1 = var$1;
- i64toi32_i32$3 = -1;
- i64toi32_i32$0 = -1;
- i64toi32_i32$4 = i64toi32_i32$1 + i64toi32_i32$0 | 0;
- i64toi32_i32$5 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
- if (i64toi32_i32$4 >>> 0 < i64toi32_i32$0 >>> 0) {
- i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
- }
- var$8 = i64toi32_i32$4;
- var$8$hi = i64toi32_i32$5;
- label$15 : while (1) {
- i64toi32_i32$5 = var$5$hi;
- i64toi32_i32$2 = var$5;
- i64toi32_i32$1 = 0;
- i64toi32_i32$0 = 1;
- i64toi32_i32$3 = i64toi32_i32$0 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
- i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$3 | 0;
- $45 = 0;
- } else {
- i64toi32_i32$1 = ((1 << i64toi32_i32$3 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$3 | 0) | 0) | 0 | (i64toi32_i32$5 << i64toi32_i32$3 | 0) | 0;
- $45 = i64toi32_i32$2 << i64toi32_i32$3 | 0;
- }
- $140 = $45;
- $140$hi = i64toi32_i32$1;
- i64toi32_i32$1 = var$0$hi;
- i64toi32_i32$5 = var$0;
- i64toi32_i32$2 = 0;
- i64toi32_i32$0 = 63;
- i64toi32_i32$3 = i64toi32_i32$0 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
- i64toi32_i32$2 = 0;
- $46 = i64toi32_i32$1 >>> i64toi32_i32$3 | 0;
- } else {
- i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$3 | 0;
- $46 = (((1 << i64toi32_i32$3 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$3 | 0) | 0 | (i64toi32_i32$5 >>> i64toi32_i32$3 | 0) | 0;
- }
- $142$hi = i64toi32_i32$2;
- i64toi32_i32$2 = $140$hi;
- i64toi32_i32$1 = $140;
- i64toi32_i32$5 = $142$hi;
- i64toi32_i32$0 = $46;
- i64toi32_i32$5 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
- var$5 = i64toi32_i32$1 | i64toi32_i32$0 | 0;
- var$5$hi = i64toi32_i32$5;
- $144 = var$5;
- $144$hi = i64toi32_i32$5;
- i64toi32_i32$5 = var$8$hi;
- i64toi32_i32$5 = var$5$hi;
- i64toi32_i32$5 = var$8$hi;
- i64toi32_i32$2 = var$8;
- i64toi32_i32$1 = var$5$hi;
- i64toi32_i32$0 = var$5;
- i64toi32_i32$3 = i64toi32_i32$2 - i64toi32_i32$0 | 0;
- i64toi32_i32$6 = i64toi32_i32$2 >>> 0 < i64toi32_i32$0 >>> 0;
- i64toi32_i32$4 = i64toi32_i32$6 + i64toi32_i32$1 | 0;
- i64toi32_i32$4 = i64toi32_i32$5 - i64toi32_i32$4 | 0;
- i64toi32_i32$5 = i64toi32_i32$3;
- i64toi32_i32$2 = 0;
- i64toi32_i32$0 = 63;
- i64toi32_i32$1 = i64toi32_i32$0 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
- i64toi32_i32$2 = i64toi32_i32$4 >> 31 | 0;
- $47 = i64toi32_i32$4 >> i64toi32_i32$1 | 0;
- } else {
- i64toi32_i32$2 = i64toi32_i32$4 >> i64toi32_i32$1 | 0;
- $47 = (((1 << i64toi32_i32$1 | 0) - 1 | 0) & i64toi32_i32$4 | 0) << (32 - i64toi32_i32$1 | 0) | 0 | (i64toi32_i32$5 >>> i64toi32_i32$1 | 0) | 0;
- }
- var$6 = $47;
- var$6$hi = i64toi32_i32$2;
+ block3 : {
i64toi32_i32$2 = var$1$hi;
- i64toi32_i32$2 = var$6$hi;
- i64toi32_i32$4 = var$6;
- i64toi32_i32$5 = var$1$hi;
- i64toi32_i32$0 = var$1;
- i64toi32_i32$5 = i64toi32_i32$2 & i64toi32_i32$5 | 0;
- $151 = i64toi32_i32$4 & i64toi32_i32$0 | 0;
- $151$hi = i64toi32_i32$5;
- i64toi32_i32$5 = $144$hi;
- i64toi32_i32$2 = $144;
- i64toi32_i32$4 = $151$hi;
- i64toi32_i32$0 = $151;
- i64toi32_i32$1 = i64toi32_i32$2 - i64toi32_i32$0 | 0;
- i64toi32_i32$6 = i64toi32_i32$2 >>> 0 < i64toi32_i32$0 >>> 0;
- i64toi32_i32$3 = i64toi32_i32$6 + i64toi32_i32$4 | 0;
- i64toi32_i32$3 = i64toi32_i32$5 - i64toi32_i32$3 | 0;
- var$5 = i64toi32_i32$1;
- var$5$hi = i64toi32_i32$3;
- i64toi32_i32$3 = var$0$hi;
- i64toi32_i32$5 = var$0;
- i64toi32_i32$2 = 0;
- i64toi32_i32$0 = 1;
- i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
- if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
- i64toi32_i32$2 = i64toi32_i32$5 << i64toi32_i32$4 | 0;
- $48 = 0;
- } else {
- i64toi32_i32$2 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$5 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
- $48 = i64toi32_i32$5 << i64toi32_i32$4 | 0;
- }
- $154$hi = i64toi32_i32$2;
- i64toi32_i32$2 = var$7$hi;
- i64toi32_i32$2 = $154$hi;
- i64toi32_i32$3 = $48;
- i64toi32_i32$5 = var$7$hi;
- i64toi32_i32$0 = var$7;
- i64toi32_i32$5 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
- var$0 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
- var$0$hi = i64toi32_i32$5;
- i64toi32_i32$5 = var$6$hi;
- i64toi32_i32$2 = var$6;
- i64toi32_i32$3 = 0;
- i64toi32_i32$0 = 1;
- i64toi32_i32$3 = i64toi32_i32$5 & i64toi32_i32$3 | 0;
- var$6 = i64toi32_i32$2 & i64toi32_i32$0 | 0;
- var$6$hi = i64toi32_i32$3;
- var$7 = var$6;
- var$7$hi = i64toi32_i32$3;
- var$2 = var$2 + -1 | 0;
- if (var$2) {
- continue label$15
+ i64toi32_i32$1 = var$1;
+ i64toi32_i32$3 = -1;
+ i64toi32_i32$0 = -1;
+ i64toi32_i32$4 = i64toi32_i32$1 + i64toi32_i32$0 | 0;
+ i64toi32_i32$5 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
+ if (i64toi32_i32$4 >>> 0 < i64toi32_i32$0 >>> 0) {
+ i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
}
- break label$15;
- };
- break label$13;
+ var$8 = i64toi32_i32$4;
+ var$8$hi = i64toi32_i32$5;
+ label$15 : while (1) {
+ i64toi32_i32$5 = var$5$hi;
+ i64toi32_i32$2 = var$5;
+ i64toi32_i32$1 = 0;
+ i64toi32_i32$0 = 1;
+ i64toi32_i32$3 = i64toi32_i32$0 & 31 | 0;
+ if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
+ i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$3 | 0;
+ $45 = 0;
+ } else {
+ i64toi32_i32$1 = ((1 << i64toi32_i32$3 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$3 | 0) | 0) | 0 | (i64toi32_i32$5 << i64toi32_i32$3 | 0) | 0;
+ $45 = i64toi32_i32$2 << i64toi32_i32$3 | 0;
+ }
+ $140 = $45;
+ $140$hi = i64toi32_i32$1;
+ i64toi32_i32$1 = var$0$hi;
+ i64toi32_i32$5 = var$0;
+ i64toi32_i32$2 = 0;
+ i64toi32_i32$0 = 63;
+ i64toi32_i32$3 = i64toi32_i32$0 & 31 | 0;
+ if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
+ i64toi32_i32$2 = 0;
+ $46 = i64toi32_i32$1 >>> i64toi32_i32$3 | 0;
+ } else {
+ i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$3 | 0;
+ $46 = (((1 << i64toi32_i32$3 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$3 | 0) | 0 | (i64toi32_i32$5 >>> i64toi32_i32$3 | 0) | 0;
+ }
+ $142$hi = i64toi32_i32$2;
+ i64toi32_i32$2 = $140$hi;
+ i64toi32_i32$1 = $140;
+ i64toi32_i32$5 = $142$hi;
+ i64toi32_i32$0 = $46;
+ i64toi32_i32$5 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
+ var$5 = i64toi32_i32$1 | i64toi32_i32$0 | 0;
+ var$5$hi = i64toi32_i32$5;
+ $144 = var$5;
+ $144$hi = i64toi32_i32$5;
+ i64toi32_i32$5 = var$8$hi;
+ i64toi32_i32$5 = var$5$hi;
+ i64toi32_i32$5 = var$8$hi;
+ i64toi32_i32$2 = var$8;
+ i64toi32_i32$1 = var$5$hi;
+ i64toi32_i32$0 = var$5;
+ i64toi32_i32$3 = i64toi32_i32$2 - i64toi32_i32$0 | 0;
+ i64toi32_i32$6 = i64toi32_i32$2 >>> 0 < i64toi32_i32$0 >>> 0;
+ i64toi32_i32$4 = i64toi32_i32$6 + i64toi32_i32$1 | 0;
+ i64toi32_i32$4 = i64toi32_i32$5 - i64toi32_i32$4 | 0;
+ i64toi32_i32$5 = i64toi32_i32$3;
+ i64toi32_i32$2 = 0;
+ i64toi32_i32$0 = 63;
+ i64toi32_i32$1 = i64toi32_i32$0 & 31 | 0;
+ if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
+ i64toi32_i32$2 = i64toi32_i32$4 >> 31 | 0;
+ $47 = i64toi32_i32$4 >> i64toi32_i32$1 | 0;
+ } else {
+ i64toi32_i32$2 = i64toi32_i32$4 >> i64toi32_i32$1 | 0;
+ $47 = (((1 << i64toi32_i32$1 | 0) - 1 | 0) & i64toi32_i32$4 | 0) << (32 - i64toi32_i32$1 | 0) | 0 | (i64toi32_i32$5 >>> i64toi32_i32$1 | 0) | 0;
+ }
+ var$6 = $47;
+ var$6$hi = i64toi32_i32$2;
+ i64toi32_i32$2 = var$1$hi;
+ i64toi32_i32$2 = var$6$hi;
+ i64toi32_i32$4 = var$6;
+ i64toi32_i32$5 = var$1$hi;
+ i64toi32_i32$0 = var$1;
+ i64toi32_i32$5 = i64toi32_i32$2 & i64toi32_i32$5 | 0;
+ $151 = i64toi32_i32$4 & i64toi32_i32$0 | 0;
+ $151$hi = i64toi32_i32$5;
+ i64toi32_i32$5 = $144$hi;
+ i64toi32_i32$2 = $144;
+ i64toi32_i32$4 = $151$hi;
+ i64toi32_i32$0 = $151;
+ i64toi32_i32$1 = i64toi32_i32$2 - i64toi32_i32$0 | 0;
+ i64toi32_i32$6 = i64toi32_i32$2 >>> 0 < i64toi32_i32$0 >>> 0;
+ i64toi32_i32$3 = i64toi32_i32$6 + i64toi32_i32$4 | 0;
+ i64toi32_i32$3 = i64toi32_i32$5 - i64toi32_i32$3 | 0;
+ var$5 = i64toi32_i32$1;
+ var$5$hi = i64toi32_i32$3;
+ i64toi32_i32$3 = var$0$hi;
+ i64toi32_i32$5 = var$0;
+ i64toi32_i32$2 = 0;
+ i64toi32_i32$0 = 1;
+ i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
+ if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
+ i64toi32_i32$2 = i64toi32_i32$5 << i64toi32_i32$4 | 0;
+ $48 = 0;
+ } else {
+ i64toi32_i32$2 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$5 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
+ $48 = i64toi32_i32$5 << i64toi32_i32$4 | 0;
+ }
+ $154$hi = i64toi32_i32$2;
+ i64toi32_i32$2 = var$7$hi;
+ i64toi32_i32$2 = $154$hi;
+ i64toi32_i32$3 = $48;
+ i64toi32_i32$5 = var$7$hi;
+ i64toi32_i32$0 = var$7;
+ i64toi32_i32$5 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
+ var$0 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
+ var$0$hi = i64toi32_i32$5;
+ i64toi32_i32$5 = var$6$hi;
+ i64toi32_i32$2 = var$6;
+ i64toi32_i32$3 = 0;
+ i64toi32_i32$0 = 1;
+ i64toi32_i32$3 = i64toi32_i32$5 & i64toi32_i32$3 | 0;
+ var$6 = i64toi32_i32$2 & i64toi32_i32$0 | 0;
+ var$6$hi = i64toi32_i32$3;
+ var$7 = var$6;
+ var$7$hi = i64toi32_i32$3;
+ var$2 = var$2 + -1 | 0;
+ if (var$2) {
+ continue label$15
+ }
+ break label$15;
+ };
+ break label$13;
+ }
}
}
i64toi32_i32$3 = var$5$hi;