summaryrefslogtreecommitdiff
path: root/test/wasm2js/stack-modified.2asm.js.opt
blob: 60758cce0176978dce0173e0c2de9f0641e698b8 (plain)
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
70
71
72
73
74
75
76
77
78
import { setTempRet0 } from 'env';

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;
 var setTempRet0 = env.setTempRet0;
 var i64toi32_i32$HIGH_BITS = 0;
 function $0($0_1, $1) {
  $0_1 = $0_1 | 0;
  $1 = $1 | 0;
  var $2 = 0, $3 = 0, $4 = 0;
  $2 = $1;
  $3 = 1;
  while (1) {
   if ($0_1 | $2) {
    $3 = _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE($0_1, $2, $3, $4);
    $4 = i64toi32_i32$HIGH_BITS;
    $1 = $0_1;
    $0_1 = $0_1 - 1 | 0;
    $2 = $2 - ($1 >>> 0 < 1) | 0;
    continue;
   }
   break;
  };
  i64toi32_i32$HIGH_BITS = $4;
  return $3 | 0;
 }
 
 function legalstub$0($0_1, $1) {
  $0_1 = $0($0_1, $1);
  setTempRet0(i64toi32_i32$HIGH_BITS | 0);
  return $0_1;
 }
 
 function _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE($0_1, $1, $2, $3) {
  var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0;
  $4 = $2 >>> 16 | 0;
  $5 = $0_1 >>> 16 | 0;
  $9 = Math_imul($4, $5);
  $6 = $2 & 65535;
  $7 = $0_1 & 65535;
  $8 = Math_imul($6, $7);
  $5 = ($8 >>> 16 | 0) + Math_imul($5, $6) | 0;
  $4 = ($5 & 65535) + Math_imul($4, $7) | 0;
  $0_1 = (Math_imul($1, $2) + $9 | 0) + Math_imul($0_1, $3) + ($5 >>> 16) + ($4 >>> 16) | 0;
  $1 = $8 & 65535 | $4 << 16;
  i64toi32_i32$HIGH_BITS = $0_1;
  return $1;
 }
 
 return {
  "fac_expr": legalstub$0, 
  "fac_stack": legalstub$0, 
  "fac_stack_raw": legalstub$0, 
  "fac_mixed": legalstub$0, 
  "fac_mixed_raw": legalstub$0
 };
}

var retasmFunc = asmFunc(  { abort: function() { throw new Error('abort'); },
    setTempRet0
  });
export var fac_expr = retasmFunc.fac_expr;
export var fac_stack = retasmFunc.fac_stack;
export var fac_stack_raw = retasmFunc.fac_stack_raw;
export var fac_mixed = retasmFunc.fac_mixed;
export var fac_mixed_raw = retasmFunc.fac_mixed_raw;