| import * as env from 'env'; | |
| function asmFunc(imports) { | |
| var Math_imul = Math.imul; | |
| var Math_fround = Math.fround; | |
| var Math_abs = Math.abs; | |
| var Math_clz32 = Math.clz32; | |
| var Math_min = Math.min; | |
| var Math_max = Math.max; | |
| var Math_floor = Math.floor; | |
| var Math_ceil = Math.ceil; | |
| var Math_trunc = Math.trunc; | |
| var Math_sqrt = Math.sqrt; | |
| var env = imports.env; | |
| var setTempRet0 = env.setTempRet0; | |
| var i64toi32_i32$HIGH_BITS = 0; | |
| function $0(i) { | |
| i = i | 0; | |
| var j = 0, $7 = 0; | |
| j = 100; | |
| switch_ : { | |
| $7 : { | |
| switch (i | 0) { | |
| case 0: | |
| return i | 0; | |
| case 1: | |
| case 2: | |
| case 3: | |
| j = 0 - i | 0; | |
| break switch_; | |
| case 4: | |
| break switch_; | |
| case 5: | |
| j = 101; | |
| break switch_; | |
| case 6: | |
| j = 101; | |
| default: | |
| j = 102; | |
| break; | |
| case 7: | |
| break $7; | |
| }; | |
| } | |
| } | |
| return j | 0; | |
| } | |
| function $1(i, i$hi) { | |
| i = i | 0; | |
| i$hi = i$hi | 0; | |
| var i64toi32_i32$5 = 0, i64toi32_i32$2 = 0, $7 = 0, $7$hi = 0, j = 0, j$hi = 0, $10$hi = 0, $10 = 0; | |
| j = 100; | |
| j$hi = 0; | |
| switch_ : { | |
| $7 : { | |
| switch (i | 0) { | |
| case 0: | |
| i64toi32_i32$HIGH_BITS = i$hi; | |
| return i | 0; | |
| case 1: | |
| case 2: | |
| case 3: | |
| i64toi32_i32$2 = 0; | |
| i64toi32_i32$5 = (i64toi32_i32$2 >>> 0 < i >>> 0) + i$hi | 0; | |
| i64toi32_i32$5 = 0 - i64toi32_i32$5 | 0; | |
| $7 = i64toi32_i32$2 - i | 0; | |
| $7$hi = i64toi32_i32$5; | |
| break switch_; | |
| case 6: | |
| i64toi32_i32$5 = 0; | |
| j = 101; | |
| j$hi = i64toi32_i32$5; | |
| case 5: | |
| case 4: | |
| default: | |
| i64toi32_i32$5 = j$hi; | |
| $7 = j; | |
| $7$hi = i64toi32_i32$5; | |
| break switch_; | |
| case 7: | |
| break $7; | |
| }; | |
| } | |
| i64toi32_i32$5 = -1; | |
| $7 = -5; | |
| $7$hi = i64toi32_i32$5; | |
| } | |
| i64toi32_i32$5 = $7$hi; | |
| i64toi32_i32$2 = $7; | |
| i64toi32_i32$HIGH_BITS = i64toi32_i32$5; | |
| return i64toi32_i32$2 | 0; | |
| } | |
| function $2(i) { | |
| i = i | 0; | |
| var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0; | |
| $2 : { | |
| $1 : { | |
| $0 : { | |
| default_ : { | |
| $5 = Math_imul(2, i); | |
| $6 = $5; | |
| $7 = $5; | |
| $8 = $5; | |
| $9 = $5; | |
| switch (3 & i | 0 | 0) { | |
| case 0: | |
| break $0; | |
| case 1: | |
| break $1; | |
| case 2: | |
| break $2; | |
| default: | |
| break default_; | |
| }; | |
| } | |
| $6 = 1e3 + $9 | 0; | |
| } | |
| $7 = 100 + $6 | 0; | |
| } | |
| $8 = 10 + $7 | 0; | |
| } | |
| return $8 | 0; | |
| } | |
| function $3() { | |
| return 1 | 0; | |
| } | |
| function legalstub$1($0_1, $1_1) { | |
| $0_1 = $0_1 | 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 = 0, $13 = 0, $4 = 0, $4$hi = 0, $7$hi = 0, $2_1 = 0, $2$hi = 0; | |
| i64toi32_i32$0 = 0; | |
| $4 = $0_1; | |
| $4$hi = i64toi32_i32$0; | |
| i64toi32_i32$0 = 0; | |
| i64toi32_i32$2 = $1_1; | |
| i64toi32_i32$1 = 0; | |
| i64toi32_i32$3 = 32; | |
| i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0; | |
| if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { | |
| i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0; | |
| $12 = 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; | |
| $12 = i64toi32_i32$2 << i64toi32_i32$4 | 0; | |
| } | |
| $7$hi = i64toi32_i32$1; | |
| i64toi32_i32$1 = $4$hi; | |
| i64toi32_i32$0 = $4; | |
| i64toi32_i32$2 = $7$hi; | |
| i64toi32_i32$3 = $12; | |
| i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0; | |
| i64toi32_i32$2 = $1(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 | 0; | |
| if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) { | |
| i64toi32_i32$2 = 0; | |
| $13 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; | |
| } else { | |
| i64toi32_i32$2 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0; | |
| $13 = (((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 | 0); | |
| i64toi32_i32$2 = $2$hi; | |
| return $2_1 | 0; | |
| } | |
| return { | |
| "stmt": $0, | |
| "expr": legalstub$1, | |
| "arg": $2, | |
| "corner": $3 | |
| }; | |
| } | |
| var retasmFunc = asmFunc({ | |
| "env": env, | |
| }); | |
| export var stmt = retasmFunc.stmt; | |
| export var expr = retasmFunc.expr; | |
| export var arg = retasmFunc.arg; | |
| export var corner = retasmFunc.corner; |