1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
function asmFunc(env) {
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 abort = env.abort;
var nan = NaN;
var infinity = Infinity;
function $1($0, $1_1, $2_1, $3, $4) {
$0 = $0 | 0;
$1_1 = $1_1 | 0;
$2_1 = $2_1 | 0;
$3 = $3 | 0;
$4 = $4 | 0;
var $5 = 0;
$5 = $2_1 & 31;
if (($2_1 & 63) >>> 0 >= 32) {
$1_1 = $0 << $5;
$0 = 0;
} else {
$1_1 = (1 << $5) - 1 & $0 >>> 32 - $5 | $1_1 << $5;
$0 = $0 << $5;
}
return ($0 | 0) == ($3 | 0) & ($1_1 | 0) == ($4 | 0);
}
function $2($0, $1_1, $2_1, $3, $4) {
$0 = $0 | 0;
$1_1 = $1_1 | 0;
$2_1 = $2_1 | 0;
$3 = $3 | 0;
$4 = $4 | 0;
var $5 = 0;
$5 = $2_1 & 31;
if (($2_1 & 63) >>> 0 >= 32) {
$2_1 = $1_1 >> 31;
$0 = $1_1 >> $5;
} else {
$2_1 = $1_1 >> $5;
$0 = ((1 << $5) - 1 & $1_1) << 32 - $5 | $0 >>> $5;
}
return ($0 | 0) == ($3 | 0) & ($2_1 | 0) == ($4 | 0);
}
function legalstub$1($0, $1_1, $2_1, $3, $4, $5) {
return $1($0, $1_1, $2_1, $4, $5);
}
function legalstub$2($0, $1_1, $2_1, $3, $4, $5) {
return $2($0, $1_1, $2_1, $4, $5);
}
return {
"shl_i64": legalstub$1,
"shr_i64": legalstub$2
};
}
var retasmFunc = asmFunc( { abort: function() { throw new Error('abort'); }
});
export var shl_i64 = retasmFunc.shl_i64;
export var shr_i64 = retasmFunc.shr_i64;
|