Integrate examples into tests

This commit is contained in:
dcodeIO 2017-12-14 12:30:58 +01:00
parent c6c36613e6
commit 6bea116b3e
13 changed files with 522 additions and 314 deletions

1
examples/.gitignore vendored
View File

@ -1,2 +1,3 @@
*.wast
*.wasm
node_modules/

View File

@ -6,10 +6,10 @@ An AssemblyScript example.
Instructions
------------
To build `assembly/game-of-life.ts` to `game-of-life.wasm`, run:
To build [assembly/game-of-life.ts](./assembly/game-of-life.ts) to an untouched and an optimized `.wasm` including their respective `.wast` representations, run:
```
$> npm run build
```
Afterwards, open `game-of-life.html` in a browser (ideally one that allows `fetch`ing the `.wasm` from the local filesystem).
Afterwards, open [game-of-life.html](./game-of-life.html) in a browser (ideally one that allows `fetch`ing the `.wasm` from the local filesystem).

View File

@ -1,7 +1,7 @@
<canvas id="canvas" width="640" height="480"></canvas><script>
// Fetch the .wasm
fetch("game-of-life.wasm").then(response => response.arrayBuffer()).then(binary => {
fetch("game-of-life.optimized.wasm").then(response => response.arrayBuffer()).then(binary => {
// Instantiate the module
var module = new WebAssembly.Module(binary);

View File

@ -3,7 +3,9 @@
"version": "1.0.0",
"private": true,
"scripts": {
"build": "asc assembly/game-of-life.ts -t assembly/game-of-life.wast -c && asc assembly/game-of-life.ts -b game-of-life.wasm -t assembly/game-of-life.optimized.wast -O -c",
"build": "npm run build:untouched && npm run build:optimized",
"build:untouched": "asc assembly/game-of-life.ts -b game-of-life.untouched.wasm -t game-of-life.untouched.wast --validate",
"build:optimized": "asc -O assembly/game-of-life.ts -b game-of-life.optimized.wasm -t game-of-life.optimized.wast --validate",
"browser": "game-of-life.html"
}
}

View File

@ -6,10 +6,10 @@ An AssemblyScript example.
Instructions
------------
To build `assembly/i64.ts` to `i64.wasm`, run:
To build [assembly/i64.ts](./assembly/i64.ts) to an untouched and an optimized `.wasm` including their respective `.wast` representations, run:
```
$> npm run build
```
Afterwards, `require` the node module as usual (entry point is `index.js`).
Afterwards, `require` the node module as usual (CommonJS entry point is [index.js](./index.js)).

View File

@ -1,7 +1,7 @@
var fs = require("fs");
// Instantiate the module
var mod = new WebAssembly.Module(fs.readFileSync(__dirname + "/i64.wasm"));
var mod = new WebAssembly.Module(fs.readFileSync(__dirname + "/i64.optimized.wasm"));
var ins = new WebAssembly.Instance(mod, { /* no imports */ });
// Export its exports

View File

@ -3,6 +3,8 @@
"version": "1.0.0",
"private": true,
"scripts": {
"build": "asc assembly/i64.ts -t assembly/i64.wast -c && asc assembly/i64.ts -b i64.wasm -t assembly/i64.optimized.wast -O -c"
"build": "npm run build:untouched && npm run build:optimized",
"build:untouched": "asc assembly/i64.ts -t i64.untouched.wast -b i64.untouched.wasm --validate",
"build:optimized": "asc -O assembly/i64.ts -b i64.optimized.wasm -t i64.optimized.wast --validdate"
}
}

View File

@ -1,28 +1,28 @@
(module
(type $iiv (func (param i32 i32)))
(type $v (func))
(global $assembly/game-of-life/w (mut i32) (i32.const 0))
(global $assembly/game-of-life/h (mut i32) (i32.const 0))
(global $assembly/game-of-life/s (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/w (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/h (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/s (mut i32) (i32.const 0))
(memory $0 1)
(export "init" (func $assembly/game-of-life/init))
(export "step" (func $assembly/game-of-life/step))
(export "init" (func $../../examples/game-of-life/assembly/game-of-life/init))
(export "step" (func $../../examples/game-of-life/assembly/game-of-life/step))
(export "memory" (memory $0))
(func $assembly/game-of-life/init (; 0 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $assembly/game-of-life/w
(func $../../examples/game-of-life/assembly/game-of-life/init (; 0 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $../../examples/game-of-life/assembly/game-of-life/w
(get_local $0)
)
(set_global $assembly/game-of-life/h
(set_global $../../examples/game-of-life/assembly/game-of-life/h
(get_local $1)
)
(set_global $assembly/game-of-life/s
(set_global $../../examples/game-of-life/assembly/game-of-life/s
(i32.mul
(get_global $assembly/game-of-life/w)
(get_global $assembly/game-of-life/h)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
)
)
)
(func $assembly/game-of-life/step (; 1 ;) (type $v)
(func $../../examples/game-of-life/assembly/game-of-life/step (; 1 ;) (type $v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -33,13 +33,13 @@
(local $7 i32)
(set_local $6
(i32.sub
(get_global $assembly/game-of-life/h)
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
(i32.const 1)
)
)
(set_local $7
(i32.sub
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
(i32.const 1)
)
)
@ -50,7 +50,7 @@
(if
(i32.lt_u
(get_local $0)
(get_global $assembly/game-of-life/h)
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
)
(block
(set_local $4
@ -83,7 +83,7 @@
(if
(i32.lt_u
(get_local $1)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(block
(set_local $2
@ -98,7 +98,7 @@
(i32.add
(i32.mul
(get_local $4)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(tee_local $2
(select
@ -116,7 +116,7 @@
(i32.add
(i32.mul
(get_local $4)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $1)
)
@ -126,7 +126,7 @@
(i32.add
(i32.mul
(get_local $4)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(tee_local $3
(select
@ -148,7 +148,7 @@
(i32.add
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $2)
)
@ -158,7 +158,7 @@
(i32.add
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $3)
)
@ -168,7 +168,7 @@
(i32.add
(i32.mul
(get_local $5)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $2)
)
@ -178,7 +178,7 @@
(i32.add
(i32.mul
(get_local $5)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $1)
)
@ -188,7 +188,7 @@
(i32.add
(i32.mul
(get_local $5)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $3)
)
@ -200,7 +200,7 @@
(i32.add
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $1)
)
@ -222,10 +222,10 @@
(i32.store8
(i32.add
(i32.add
(get_global $assembly/game-of-life/s)
(get_global $../../examples/game-of-life/assembly/game-of-life/s)
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
)
(get_local $1)
@ -241,10 +241,10 @@
(i32.store8
(i32.add
(i32.add
(get_global $assembly/game-of-life/s)
(get_global $../../examples/game-of-life/assembly/game-of-life/s)
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
)
(get_local $1)

View File

@ -0,0 +1 @@
export { init, step } from "../../examples/game-of-life/assembly/game-of-life";

View File

@ -1,29 +1,29 @@
(module
(type $iiv (func (param i32 i32)))
(type $v (func))
(global $assembly/game-of-life/w (mut i32) (i32.const 0))
(global $assembly/game-of-life/h (mut i32) (i32.const 0))
(global $assembly/game-of-life/s (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/w (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/h (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/s (mut i32) (i32.const 0))
(global $HEAP_START i32 (i32.const 4))
(memory $0 1)
(export "init" (func $assembly/game-of-life/init))
(export "step" (func $assembly/game-of-life/step))
(export "init" (func $../../examples/game-of-life/assembly/game-of-life/init))
(export "step" (func $../../examples/game-of-life/assembly/game-of-life/step))
(export "memory" (memory $0))
(func $assembly/game-of-life/init (; 0 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $assembly/game-of-life/w
(func $../../examples/game-of-life/assembly/game-of-life/init (; 0 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $../../examples/game-of-life/assembly/game-of-life/w
(get_local $0)
)
(set_global $assembly/game-of-life/h
(set_global $../../examples/game-of-life/assembly/game-of-life/h
(get_local $1)
)
(set_global $assembly/game-of-life/s
(set_global $../../examples/game-of-life/assembly/game-of-life/s
(i32.mul
(get_global $assembly/game-of-life/w)
(get_global $assembly/game-of-life/h)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
)
)
)
(func $assembly/game-of-life/step (; 1 ;) (type $v)
(func $../../examples/game-of-life/assembly/game-of-life/step (; 1 ;) (type $v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
@ -41,13 +41,13 @@
(block
(set_local $6
(i32.sub
(get_global $assembly/game-of-life/h)
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
(i32.const 1)
)
)
(set_local $7
(i32.sub
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
(i32.const 1)
)
)
@ -65,7 +65,7 @@
(if
(i32.lt_u
(get_local $0)
(get_global $assembly/game-of-life/h)
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
)
(block
(block
@ -103,7 +103,7 @@
(if
(i32.lt_u
(get_local $3)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(block
(block
@ -145,7 +145,7 @@
(i32.add
(i32.mul
(get_local $1)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $4)
)
@ -154,7 +154,7 @@
(i32.add
(i32.mul
(get_local $1)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $3)
)
@ -164,7 +164,7 @@
(i32.add
(i32.mul
(get_local $1)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $5)
)
@ -174,7 +174,7 @@
(i32.add
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $4)
)
@ -184,7 +184,7 @@
(i32.add
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $5)
)
@ -194,7 +194,7 @@
(i32.add
(i32.mul
(get_local $2)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $4)
)
@ -204,7 +204,7 @@
(i32.add
(i32.mul
(get_local $2)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $3)
)
@ -214,7 +214,7 @@
(i32.add
(i32.mul
(get_local $2)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $5)
)
@ -226,7 +226,7 @@
(i32.add
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $3)
)
@ -251,10 +251,10 @@
(i32.store8
(i32.add
(i32.add
(get_global $assembly/game-of-life/s)
(get_global $../../examples/game-of-life/assembly/game-of-life/s)
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
)
(get_local $3)
@ -270,10 +270,10 @@
(i32.store8
(i32.add
(i32.add
(get_global $assembly/game-of-life/s)
(get_global $../../examples/game-of-life/assembly/game-of-life/s)
(i32.mul
(get_local $0)
(get_global $assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
)
(get_local $3)
@ -308,3 +308,44 @@
)
)
)
(;
[program.elements]
clz
ctz
popcnt
rotl
rotr
abs
ceil
copysign
floor
max
min
nearest
sqrt
trunc
current_memory
grow_memory
unreachable
load
store
reinterpret
select
sizeof
changetype
isNaN
isFinite
assert
parseInt
parseFloat
../../examples/game-of-life/assembly/game-of-life/w
../../examples/game-of-life/assembly/game-of-life/h
../../examples/game-of-life/assembly/game-of-life/s
../../examples/game-of-life/assembly/game-of-life/init
../../examples/game-of-life/assembly/game-of-life/step
[program.exports]
../../examples/game-of-life/assembly/game-of-life/init
../../examples/game-of-life/assembly/game-of-life/step
game-of-life/init
game-of-life/step
;)

View File

@ -2,49 +2,49 @@
(type $i (func (result i32)))
(type $iiv (func (param i32 i32)))
(type $iiiiv (func (param i32 i32 i32 i32)))
(global $assembly/i64/lo (mut i32) (i32.const 0))
(global $assembly/i64/hi (mut i32) (i32.const 0))
(global $../../examples/i64-polyfill/assembly/i64/hi (mut i32) (i32.const 0))
(global $../../examples/i64-polyfill/assembly/i64/lo (mut i32) (i32.const 0))
(memory $0 1)
(export "getLo" (func $assembly/i64/getLo))
(export "getHi" (func $assembly/i64/getHi))
(export "clz" (func $assembly/i64/clz_))
(export "ctz" (func $assembly/i64/ctz_))
(export "popcnt" (func $assembly/i64/popcnt_))
(export "eqz" (func $assembly/i64/eqz))
(export "add" (func $assembly/i64/add))
(export "sub" (func $assembly/i64/sub))
(export "mul" (func $assembly/i64/mul))
(export "div_s" (func $assembly/i64/div_s))
(export "div_u" (func $assembly/i64/div_u))
(export "rem_s" (func $assembly/i64/rem_s))
(export "rem_u" (func $assembly/i64/rem_u))
(export "and" (func $assembly/i64/and))
(export "or" (func $assembly/i64/or))
(export "xor" (func $assembly/i64/xor))
(export "shl" (func $assembly/i64/shl))
(export "shr_s" (func $assembly/i64/shr_s))
(export "shr_u" (func $assembly/i64/shr_u))
(export "rotl" (func $assembly/i64/rotl_))
(export "rotr" (func $assembly/i64/rotr_))
(export "eq" (func $assembly/i64/eq))
(export "ne" (func $assembly/i64/ne))
(export "lt_s" (func $assembly/i64/lt_s))
(export "lt_u" (func $assembly/i64/lt_u))
(export "le_s" (func $assembly/i64/le_s))
(export "le_u" (func $assembly/i64/le_u))
(export "gt_s" (func $assembly/i64/gt_s))
(export "gt_u" (func $assembly/i64/gt_u))
(export "ge_s" (func $assembly/i64/ge_s))
(export "ge_u" (func $assembly/i64/ge_u))
(export "getHi" (func $../../examples/i64-polyfill/assembly/i64/getHi))
(export "getLo" (func $../../examples/i64-polyfill/assembly/i64/getLo))
(export "clz" (func $../../examples/i64-polyfill/assembly/i64/clz_))
(export "ctz" (func $../../examples/i64-polyfill/assembly/i64/ctz_))
(export "popcnt" (func $../../examples/i64-polyfill/assembly/i64/popcnt_))
(export "eqz" (func $../../examples/i64-polyfill/assembly/i64/eqz))
(export "add" (func $../../examples/i64-polyfill/assembly/i64/add))
(export "sub" (func $../../examples/i64-polyfill/assembly/i64/sub))
(export "mul" (func $../../examples/i64-polyfill/assembly/i64/mul))
(export "div_s" (func $../../examples/i64-polyfill/assembly/i64/div_s))
(export "div_u" (func $../../examples/i64-polyfill/assembly/i64/div_u))
(export "rem_s" (func $../../examples/i64-polyfill/assembly/i64/rem_s))
(export "rem_u" (func $../../examples/i64-polyfill/assembly/i64/rem_u))
(export "and" (func $../../examples/i64-polyfill/assembly/i64/and))
(export "or" (func $../../examples/i64-polyfill/assembly/i64/or))
(export "xor" (func $../../examples/i64-polyfill/assembly/i64/xor))
(export "shl" (func $../../examples/i64-polyfill/assembly/i64/shl))
(export "shr_s" (func $../../examples/i64-polyfill/assembly/i64/shr_s))
(export "shr_u" (func $../../examples/i64-polyfill/assembly/i64/shr_u))
(export "rotl" (func $../../examples/i64-polyfill/assembly/i64/rotl_))
(export "rotr" (func $../../examples/i64-polyfill/assembly/i64/rotr_))
(export "eq" (func $../../examples/i64-polyfill/assembly/i64/eq))
(export "ne" (func $../../examples/i64-polyfill/assembly/i64/ne))
(export "lt_s" (func $../../examples/i64-polyfill/assembly/i64/lt_s))
(export "lt_u" (func $../../examples/i64-polyfill/assembly/i64/lt_u))
(export "le_s" (func $../../examples/i64-polyfill/assembly/i64/le_s))
(export "le_u" (func $../../examples/i64-polyfill/assembly/i64/le_u))
(export "gt_s" (func $../../examples/i64-polyfill/assembly/i64/gt_s))
(export "gt_u" (func $../../examples/i64-polyfill/assembly/i64/gt_u))
(export "ge_s" (func $../../examples/i64-polyfill/assembly/i64/ge_s))
(export "ge_u" (func $../../examples/i64-polyfill/assembly/i64/ge_u))
(export "memory" (memory $0))
(func $assembly/i64/getLo (; 0 ;) (type $i) (result i32)
(get_global $assembly/i64/lo)
(func $../../examples/i64-polyfill/assembly/i64/getHi (; 0 ;) (type $i) (result i32)
(get_global $../../examples/i64-polyfill/assembly/i64/hi)
)
(func $assembly/i64/getHi (; 1 ;) (type $i) (result i32)
(get_global $assembly/i64/hi)
(func $../../examples/i64-polyfill/assembly/i64/getLo (; 1 ;) (type $i) (result i32)
(get_global $../../examples/i64-polyfill/assembly/i64/lo)
)
(func $assembly/i64/clz_ (; 2 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/clz_ (; 2 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(i64.clz
(i64.or
@ -61,12 +61,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/ctz_ (; 3 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/ctz_ (; 3 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(i64.ctz
(i64.or
@ -83,12 +83,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/popcnt_ (; 4 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/popcnt_ (; 4 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(i64.popcnt
(i64.or
@ -105,12 +105,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/eqz (; 5 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/eqz (; 5 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.eqz
(i64.or
(i64.extend_u/i32
@ -125,13 +125,13 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/add (; 6 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/add (; 6 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.add
@ -161,7 +161,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -170,9 +170,9 @@
)
)
)
(func $assembly/i64/sub (; 7 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/sub (; 7 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.sub
@ -202,7 +202,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -211,9 +211,9 @@
)
)
)
(func $assembly/i64/mul (; 8 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/mul (; 8 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.mul
@ -243,7 +243,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -252,9 +252,9 @@
)
)
)
(func $assembly/i64/div_s (; 9 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/div_s (; 9 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.div_s
@ -284,7 +284,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -293,9 +293,9 @@
)
)
)
(func $assembly/i64/div_u (; 10 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/div_u (; 10 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.div_u
@ -325,7 +325,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -334,9 +334,9 @@
)
)
)
(func $assembly/i64/rem_s (; 11 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rem_s (; 11 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.rem_s
@ -366,7 +366,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -375,9 +375,9 @@
)
)
)
(func $assembly/i64/rem_u (; 12 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rem_u (; 12 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.rem_u
@ -407,7 +407,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -416,9 +416,9 @@
)
)
)
(func $assembly/i64/and (; 13 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/and (; 13 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.and
@ -448,7 +448,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -457,9 +457,9 @@
)
)
)
(func $assembly/i64/or (; 14 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/or (; 14 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.or
@ -489,7 +489,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -498,9 +498,9 @@
)
)
)
(func $assembly/i64/xor (; 15 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/xor (; 15 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.xor
@ -530,7 +530,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -539,9 +539,9 @@
)
)
)
(func $assembly/i64/shl (; 16 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/shl (; 16 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.shl
@ -571,7 +571,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -580,9 +580,9 @@
)
)
)
(func $assembly/i64/shr_s (; 17 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/shr_s (; 17 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.shr_s
@ -612,7 +612,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -621,9 +621,9 @@
)
)
)
(func $assembly/i64/shr_u (; 18 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/shr_u (; 18 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.shr_u
@ -653,7 +653,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -662,9 +662,9 @@
)
)
)
(func $assembly/i64/rotl_ (; 19 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rotl_ (; 19 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.rotl
@ -694,7 +694,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -703,9 +703,9 @@
)
)
)
(func $assembly/i64/rotr_ (; 20 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rotr_ (; 20 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(tee_local $4
(i64.rotr
@ -735,7 +735,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -744,8 +744,8 @@
)
)
)
(func $assembly/i64/eq (; 21 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/eq (; 21 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.eq
(i64.or
(i64.extend_u/i32
@ -771,12 +771,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/ne (; 22 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/ne (; 22 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.ne
(i64.or
(i64.extend_u/i32
@ -802,12 +802,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/lt_s (; 23 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/lt_s (; 23 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.lt_s
(i64.or
(i64.extend_u/i32
@ -833,12 +833,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/lt_u (; 24 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/lt_u (; 24 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.lt_u
(i64.or
(i64.extend_u/i32
@ -864,12 +864,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/le_s (; 25 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/le_s (; 25 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.le_s
(i64.or
(i64.extend_u/i32
@ -895,12 +895,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/le_u (; 26 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/le_u (; 26 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.le_u
(i64.or
(i64.extend_u/i32
@ -926,12 +926,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/gt_s (; 27 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/gt_s (; 27 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.gt_s
(i64.or
(i64.extend_u/i32
@ -957,12 +957,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/gt_u (; 28 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/gt_u (; 28 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.gt_u
(i64.or
(i64.extend_u/i32
@ -988,12 +988,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/ge_s (; 29 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/ge_s (; 29 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.ge_s
(i64.or
(i64.extend_u/i32
@ -1019,12 +1019,12 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/ge_u (; 30 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $assembly/i64/lo
(func $../../examples/i64-polyfill/assembly/i64/ge_u (; 30 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i64.ge_u
(i64.or
(i64.extend_u/i32
@ -1050,7 +1050,7 @@
)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)

34
tests/compiler/i64.ts Normal file
View File

@ -0,0 +1,34 @@
export {
getHi,
getLo,
clz,
ctz,
popcnt,
eqz,
add,
sub,
mul,
div_s,
div_u,
rem_s,
rem_u,
and,
or,
xor,
shl,
shr_s,
shr_u,
rotl,
rotr,
eq,
ne,
lt_s,
lt_u,
le_s,
le_u,
gt_s,
gt_u,
ge_s,
ge_u
} from "../../examples/i64-polyfill/assembly/i64";

View File

@ -2,53 +2,53 @@
(type $i (func (result i32)))
(type $iiv (func (param i32 i32)))
(type $iiiiv (func (param i32 i32 i32 i32)))
(global $assembly/i64/lo (mut i32) (i32.const 0))
(global $assembly/i64/hi (mut i32) (i32.const 0))
(global $../../examples/i64-polyfill/assembly/i64/hi (mut i32) (i32.const 0))
(global $../../examples/i64-polyfill/assembly/i64/lo (mut i32) (i32.const 0))
(global $HEAP_START i32 (i32.const 4))
(memory $0 1)
(export "getLo" (func $assembly/i64/getLo))
(export "getHi" (func $assembly/i64/getHi))
(export "clz" (func $assembly/i64/clz_))
(export "ctz" (func $assembly/i64/ctz_))
(export "popcnt" (func $assembly/i64/popcnt_))
(export "eqz" (func $assembly/i64/eqz))
(export "add" (func $assembly/i64/add))
(export "sub" (func $assembly/i64/sub))
(export "mul" (func $assembly/i64/mul))
(export "div_s" (func $assembly/i64/div_s))
(export "div_u" (func $assembly/i64/div_u))
(export "rem_s" (func $assembly/i64/rem_s))
(export "rem_u" (func $assembly/i64/rem_u))
(export "and" (func $assembly/i64/and))
(export "or" (func $assembly/i64/or))
(export "xor" (func $assembly/i64/xor))
(export "shl" (func $assembly/i64/shl))
(export "shr_s" (func $assembly/i64/shr_s))
(export "shr_u" (func $assembly/i64/shr_u))
(export "rotl" (func $assembly/i64/rotl_))
(export "rotr" (func $assembly/i64/rotr_))
(export "eq" (func $assembly/i64/eq))
(export "ne" (func $assembly/i64/ne))
(export "lt_s" (func $assembly/i64/lt_s))
(export "lt_u" (func $assembly/i64/lt_u))
(export "le_s" (func $assembly/i64/le_s))
(export "le_u" (func $assembly/i64/le_u))
(export "gt_s" (func $assembly/i64/gt_s))
(export "gt_u" (func $assembly/i64/gt_u))
(export "ge_s" (func $assembly/i64/ge_s))
(export "ge_u" (func $assembly/i64/ge_u))
(export "getHi" (func $../../examples/i64-polyfill/assembly/i64/getHi))
(export "getLo" (func $../../examples/i64-polyfill/assembly/i64/getLo))
(export "clz" (func $../../examples/i64-polyfill/assembly/i64/clz_))
(export "ctz" (func $../../examples/i64-polyfill/assembly/i64/ctz_))
(export "popcnt" (func $../../examples/i64-polyfill/assembly/i64/popcnt_))
(export "eqz" (func $../../examples/i64-polyfill/assembly/i64/eqz))
(export "add" (func $../../examples/i64-polyfill/assembly/i64/add))
(export "sub" (func $../../examples/i64-polyfill/assembly/i64/sub))
(export "mul" (func $../../examples/i64-polyfill/assembly/i64/mul))
(export "div_s" (func $../../examples/i64-polyfill/assembly/i64/div_s))
(export "div_u" (func $../../examples/i64-polyfill/assembly/i64/div_u))
(export "rem_s" (func $../../examples/i64-polyfill/assembly/i64/rem_s))
(export "rem_u" (func $../../examples/i64-polyfill/assembly/i64/rem_u))
(export "and" (func $../../examples/i64-polyfill/assembly/i64/and))
(export "or" (func $../../examples/i64-polyfill/assembly/i64/or))
(export "xor" (func $../../examples/i64-polyfill/assembly/i64/xor))
(export "shl" (func $../../examples/i64-polyfill/assembly/i64/shl))
(export "shr_s" (func $../../examples/i64-polyfill/assembly/i64/shr_s))
(export "shr_u" (func $../../examples/i64-polyfill/assembly/i64/shr_u))
(export "rotl" (func $../../examples/i64-polyfill/assembly/i64/rotl_))
(export "rotr" (func $../../examples/i64-polyfill/assembly/i64/rotr_))
(export "eq" (func $../../examples/i64-polyfill/assembly/i64/eq))
(export "ne" (func $../../examples/i64-polyfill/assembly/i64/ne))
(export "lt_s" (func $../../examples/i64-polyfill/assembly/i64/lt_s))
(export "lt_u" (func $../../examples/i64-polyfill/assembly/i64/lt_u))
(export "le_s" (func $../../examples/i64-polyfill/assembly/i64/le_s))
(export "le_u" (func $../../examples/i64-polyfill/assembly/i64/le_u))
(export "gt_s" (func $../../examples/i64-polyfill/assembly/i64/gt_s))
(export "gt_u" (func $../../examples/i64-polyfill/assembly/i64/gt_u))
(export "ge_s" (func $../../examples/i64-polyfill/assembly/i64/ge_s))
(export "ge_u" (func $../../examples/i64-polyfill/assembly/i64/ge_u))
(export "memory" (memory $0))
(func $assembly/i64/getLo (; 0 ;) (type $i) (result i32)
(func $../../examples/i64-polyfill/assembly/i64/getHi (; 0 ;) (type $i) (result i32)
(return
(get_global $assembly/i64/lo)
(get_global $../../examples/i64-polyfill/assembly/i64/hi)
)
)
(func $assembly/i64/getHi (; 1 ;) (type $i) (result i32)
(func $../../examples/i64-polyfill/assembly/i64/getLo (; 1 ;) (type $i) (result i32)
(return
(get_global $assembly/i64/hi)
(get_global $../../examples/i64-polyfill/assembly/i64/lo)
)
)
(func $assembly/i64/clz_ (; 2 ;) (type $iiv) (param $0 i32) (param $1 i32)
(func $../../examples/i64-polyfill/assembly/i64/clz_ (; 2 ;) (type $iiv) (param $0 i32) (param $1 i32)
(local $2 i64)
(block
(set_local $2
@ -67,16 +67,16 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $2)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/ctz_ (; 3 ;) (type $iiv) (param $0 i32) (param $1 i32)
(func $../../examples/i64-polyfill/assembly/i64/ctz_ (; 3 ;) (type $iiv) (param $0 i32) (param $1 i32)
(local $2 i64)
(block
(set_local $2
@ -95,16 +95,16 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $2)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/popcnt_ (; 4 ;) (type $iiv) (param $0 i32) (param $1 i32)
(func $../../examples/i64-polyfill/assembly/i64/popcnt_ (; 4 ;) (type $iiv) (param $0 i32) (param $1 i32)
(local $2 i64)
(block
(set_local $2
@ -123,16 +123,16 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $2)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/eqz (; 5 ;) (type $iiv) (param $0 i32) (param $1 i32)
(func $../../examples/i64-polyfill/assembly/i64/eqz (; 5 ;) (type $iiv) (param $0 i32) (param $1 i32)
(local $2 i32)
(block
(set_local $2
@ -151,14 +151,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $2)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/add (; 6 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/add (; 6 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -188,12 +188,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -202,7 +202,7 @@
)
)
)
(func $assembly/i64/sub (; 7 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/sub (; 7 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -232,12 +232,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -246,7 +246,7 @@
)
)
)
(func $assembly/i64/mul (; 8 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/mul (; 8 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -276,12 +276,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -290,7 +290,7 @@
)
)
)
(func $assembly/i64/div_s (; 9 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/div_s (; 9 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -320,12 +320,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -334,7 +334,7 @@
)
)
)
(func $assembly/i64/div_u (; 10 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/div_u (; 10 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -364,12 +364,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -378,7 +378,7 @@
)
)
)
(func $assembly/i64/rem_s (; 11 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rem_s (; 11 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -408,12 +408,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -422,7 +422,7 @@
)
)
)
(func $assembly/i64/rem_u (; 12 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rem_u (; 12 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -452,12 +452,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -466,7 +466,7 @@
)
)
)
(func $assembly/i64/and (; 13 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/and (; 13 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -496,12 +496,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -510,7 +510,7 @@
)
)
)
(func $assembly/i64/or (; 14 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/or (; 14 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -540,12 +540,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -554,7 +554,7 @@
)
)
)
(func $assembly/i64/xor (; 15 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/xor (; 15 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -584,12 +584,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -598,7 +598,7 @@
)
)
)
(func $assembly/i64/shl (; 16 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/shl (; 16 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -628,12 +628,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -642,7 +642,7 @@
)
)
)
(func $assembly/i64/shr_s (; 17 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/shr_s (; 17 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -672,12 +672,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -686,7 +686,7 @@
)
)
)
(func $assembly/i64/shr_u (; 18 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/shr_u (; 18 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -716,12 +716,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -730,7 +730,7 @@
)
)
)
(func $assembly/i64/rotl_ (; 19 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rotl_ (; 19 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -760,12 +760,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -774,7 +774,7 @@
)
)
)
(func $assembly/i64/rotr_ (; 20 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/rotr_ (; 20 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i64)
(block
(set_local $4
@ -804,12 +804,12 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(i32.wrap/i64
(get_local $4)
)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.wrap/i64
(i64.shr_u
(get_local $4)
@ -818,7 +818,7 @@
)
)
)
(func $assembly/i64/eq (; 21 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/eq (; 21 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -848,14 +848,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/ne (; 22 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/ne (; 22 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -885,14 +885,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/lt_s (; 23 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/lt_s (; 23 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -922,14 +922,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/lt_u (; 24 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/lt_u (; 24 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -959,14 +959,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/le_s (; 25 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/le_s (; 25 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -996,14 +996,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/le_u (; 26 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/le_u (; 26 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -1033,14 +1033,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/gt_s (; 27 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/gt_s (; 27 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -1070,14 +1070,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/gt_u (; 28 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/gt_u (; 28 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -1107,14 +1107,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/ge_s (; 29 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/ge_s (; 29 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -1144,14 +1144,14 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
(func $assembly/i64/ge_u (; 30 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(func $../../examples/i64-polyfill/assembly/i64/ge_u (; 30 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32)
(block
(set_local $4
@ -1181,11 +1181,138 @@
)
)
)
(set_global $assembly/i64/lo
(set_global $../../examples/i64-polyfill/assembly/i64/lo
(get_local $4)
)
(set_global $assembly/i64/hi
(set_global $../../examples/i64-polyfill/assembly/i64/hi
(i32.const 0)
)
)
)
(;
[program.elements]
clz
ctz
popcnt
rotl
rotr
abs
ceil
copysign
floor
max
min
nearest
sqrt
trunc
current_memory
grow_memory
unreachable
load
store
reinterpret
select
sizeof
changetype
isNaN
isFinite
assert
parseInt
parseFloat
../../examples/i64-polyfill/assembly/i64/lo
../../examples/i64-polyfill/assembly/i64/hi
../../examples/i64-polyfill/assembly/i64/getLo
../../examples/i64-polyfill/assembly/i64/getHi
../../examples/i64-polyfill/assembly/i64/clz_
../../examples/i64-polyfill/assembly/i64/ctz_
../../examples/i64-polyfill/assembly/i64/popcnt_
../../examples/i64-polyfill/assembly/i64/eqz
../../examples/i64-polyfill/assembly/i64/add
../../examples/i64-polyfill/assembly/i64/sub
../../examples/i64-polyfill/assembly/i64/mul
../../examples/i64-polyfill/assembly/i64/div_s
../../examples/i64-polyfill/assembly/i64/div_u
../../examples/i64-polyfill/assembly/i64/rem_s
../../examples/i64-polyfill/assembly/i64/rem_u
../../examples/i64-polyfill/assembly/i64/and
../../examples/i64-polyfill/assembly/i64/or
../../examples/i64-polyfill/assembly/i64/xor
../../examples/i64-polyfill/assembly/i64/shl
../../examples/i64-polyfill/assembly/i64/shr_s
../../examples/i64-polyfill/assembly/i64/shr_u
../../examples/i64-polyfill/assembly/i64/rotl_
../../examples/i64-polyfill/assembly/i64/rotr_
../../examples/i64-polyfill/assembly/i64/eq
../../examples/i64-polyfill/assembly/i64/ne
../../examples/i64-polyfill/assembly/i64/lt_s
../../examples/i64-polyfill/assembly/i64/lt_u
../../examples/i64-polyfill/assembly/i64/le_s
../../examples/i64-polyfill/assembly/i64/le_u
../../examples/i64-polyfill/assembly/i64/gt_s
../../examples/i64-polyfill/assembly/i64/gt_u
../../examples/i64-polyfill/assembly/i64/ge_s
../../examples/i64-polyfill/assembly/i64/ge_u
[program.exports]
../../examples/i64-polyfill/assembly/i64/getLo
../../examples/i64-polyfill/assembly/i64/getHi
../../examples/i64-polyfill/assembly/i64/clz
../../examples/i64-polyfill/assembly/i64/ctz
../../examples/i64-polyfill/assembly/i64/popcnt
../../examples/i64-polyfill/assembly/i64/eqz
../../examples/i64-polyfill/assembly/i64/add
../../examples/i64-polyfill/assembly/i64/sub
../../examples/i64-polyfill/assembly/i64/mul
../../examples/i64-polyfill/assembly/i64/div_s
../../examples/i64-polyfill/assembly/i64/div_u
../../examples/i64-polyfill/assembly/i64/rem_s
../../examples/i64-polyfill/assembly/i64/rem_u
../../examples/i64-polyfill/assembly/i64/and
../../examples/i64-polyfill/assembly/i64/or
../../examples/i64-polyfill/assembly/i64/xor
../../examples/i64-polyfill/assembly/i64/shl
../../examples/i64-polyfill/assembly/i64/shr_s
../../examples/i64-polyfill/assembly/i64/shr_u
../../examples/i64-polyfill/assembly/i64/rotl
../../examples/i64-polyfill/assembly/i64/rotr
../../examples/i64-polyfill/assembly/i64/eq
../../examples/i64-polyfill/assembly/i64/ne
../../examples/i64-polyfill/assembly/i64/lt_s
../../examples/i64-polyfill/assembly/i64/lt_u
../../examples/i64-polyfill/assembly/i64/le_s
../../examples/i64-polyfill/assembly/i64/le_u
../../examples/i64-polyfill/assembly/i64/gt_s
../../examples/i64-polyfill/assembly/i64/gt_u
../../examples/i64-polyfill/assembly/i64/ge_s
../../examples/i64-polyfill/assembly/i64/ge_u
i64/getHi
i64/getLo
i64/clz
i64/ctz
i64/popcnt
i64/eqz
i64/add
i64/sub
i64/mul
i64/div_s
i64/div_u
i64/rem_s
i64/rem_u
i64/and
i64/or
i64/xor
i64/shl
i64/shr_s
i64/shr_u
i64/rotl
i64/rotr
i64/eq
i64/ne
i64/lt_s
i64/lt_u
i64/le_s
i64/le_u
i64/gt_s
i64/gt_u
i64/ge_s
i64/ge_u
;)