mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-04-25 07:02:13 +00:00
Update Binaryen to latest and rebuild dist files
This commit is contained in:
parent
c95c0f5fbe
commit
cd1cfe6957
2
dist/asc.js
vendored
2
dist/asc.js
vendored
File diff suppressed because one or more lines are too long
2
dist/asc.js.map
vendored
2
dist/asc.js.map
vendored
File diff suppressed because one or more lines are too long
4
dist/assemblyscript.js
vendored
4
dist/assemblyscript.js
vendored
File diff suppressed because one or more lines are too long
2
dist/assemblyscript.js.map
vendored
2
dist/assemblyscript.js.map
vendored
File diff suppressed because one or more lines are too long
1528
package-lock.json
generated
1528
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -12,7 +12,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@protobufjs/utf8": "^1.1.0",
|
||||
"binaryen": "63.0.0-nightly.20190107",
|
||||
"binaryen": "67.0.0-nightly.20190203",
|
||||
"glob": "^7.1.3",
|
||||
"long": "^4.0.0"
|
||||
},
|
||||
|
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\06\00\00\00a\00b\00i\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $abi/condition (mut i32) (i32.const 0))
|
||||
(global $abi/y (mut i32) (i32.const 0))
|
||||
@ -20,10 +20,10 @@
|
||||
)
|
||||
(func $start (; 2 ;) (type $v)
|
||||
i32.const 1
|
||||
set_global $abi/condition
|
||||
global.set $abi/condition
|
||||
i32.const 0
|
||||
set_global $abi/y
|
||||
get_global $abi/y
|
||||
global.set $abi/y
|
||||
global.get $abi/y
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
|
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\06\00\00\00a\00b\00i\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $abi/condition (mut i32) (i32.const 0))
|
||||
(global $abi/y (mut i32) (i32.const 0))
|
||||
@ -43,11 +43,11 @@
|
||||
drop
|
||||
i32.const 0
|
||||
i32.eqz
|
||||
set_global $abi/condition
|
||||
global.set $abi/condition
|
||||
block
|
||||
i32.const 256
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.shl
|
||||
i32.const 24
|
||||
@ -65,28 +65,28 @@
|
||||
end
|
||||
block
|
||||
i32.const 256
|
||||
set_local $0
|
||||
get_global $abi/condition
|
||||
local.set $0
|
||||
global.get $abi/condition
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.shl
|
||||
i32.const 24
|
||||
i32.shr_s
|
||||
i32.const 2
|
||||
i32.div_s
|
||||
set_local $0
|
||||
local.set $0
|
||||
else
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.shl
|
||||
i32.const 24
|
||||
i32.shr_s
|
||||
i32.const 2
|
||||
i32.div_s
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.shl
|
||||
i32.const 24
|
||||
@ -104,24 +104,24 @@
|
||||
end
|
||||
block
|
||||
i32.const 256
|
||||
set_local $0
|
||||
get_global $abi/condition
|
||||
local.set $0
|
||||
global.get $abi/condition
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.shl
|
||||
i32.const 24
|
||||
i32.shr_s
|
||||
i32.const 24
|
||||
i32.shr_s
|
||||
set_local $0
|
||||
local.set $0
|
||||
else
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 127
|
||||
i32.and
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
i32.eqz
|
||||
if
|
||||
@ -139,8 +139,8 @@
|
||||
i32.shl
|
||||
i32.const 24
|
||||
i32.shr_s
|
||||
set_global $abi/y
|
||||
get_global $abi/y
|
||||
global.set $abi/y
|
||||
global.get $abi/y
|
||||
i32.eqz
|
||||
i32.eqz
|
||||
if
|
||||
@ -155,8 +155,8 @@
|
||||
block
|
||||
i32.const 2
|
||||
i32.ctz
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.eqz
|
||||
@ -170,8 +170,8 @@
|
||||
end
|
||||
i32.const 1
|
||||
i32.clz
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.eqz
|
||||
@ -185,8 +185,8 @@
|
||||
end
|
||||
i32.const 2
|
||||
i32.ctz
|
||||
set_local $1
|
||||
get_local $1
|
||||
local.set $1
|
||||
local.get $1
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
@ -198,8 +198,8 @@
|
||||
end
|
||||
i32.const 1
|
||||
i32.clz
|
||||
set_local $1
|
||||
get_local $1
|
||||
local.set $1
|
||||
local.get $1
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $ASC_TARGET i32 (i32.const 0))
|
||||
(global $ASC_NO_TREESHAKING i32 (i32.const 0))
|
||||
|
@ -3,7 +3,7 @@
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\t\00\00\00a\00s\00s\00e\00r\00t\00.\00t\00s")
|
||||
(data (i32.const 32) "\0c\00\00\00m\00u\00s\00t\00 \00b\00e\00 \00t\00r\00u\00e")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -5,7 +5,7 @@
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\t\00\00\00a\00s\00s\00e\00r\00t\00.\00t\00s\00")
|
||||
(data (i32.const 32) "\0c\00\00\00m\00u\00s\00t\00 \00b\00e\00 \00t\00r\00u\00e\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 60))
|
||||
(export "memory" (memory $0))
|
||||
@ -91,9 +91,9 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
if (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
else
|
||||
i32.const 32
|
||||
i32.const 8
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\07\00\00\00b\00o\00o\00l\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $bool/i (mut i32) (i32.const 2))
|
||||
(global $bool/I (mut i64) (i64.const 2))
|
||||
@ -17,7 +17,7 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $start (; 1 ;) (type $v)
|
||||
get_global $bool/i
|
||||
global.get $bool/i
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.const 1
|
||||
@ -30,7 +30,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/I
|
||||
global.get $bool/I
|
||||
i64.const 0
|
||||
i64.ne
|
||||
i32.const 1
|
||||
@ -43,7 +43,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/u
|
||||
global.get $bool/u
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.const 1
|
||||
@ -56,7 +56,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/U
|
||||
global.get $bool/U
|
||||
i64.const 0
|
||||
i64.ne
|
||||
i32.const 1
|
||||
@ -69,7 +69,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/f
|
||||
global.get $bool/f
|
||||
f32.const 0
|
||||
f32.ne
|
||||
i32.const 1
|
||||
@ -82,7 +82,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/F
|
||||
global.get $bool/F
|
||||
f64.const 0
|
||||
f64.ne
|
||||
i32.const 1
|
||||
@ -95,7 +95,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/uu
|
||||
global.get $bool/uu
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.const 1
|
||||
|
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\07\00\00\00b\00o\00o\00l\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $bool/i (mut i32) (i32.const 2))
|
||||
(global $bool/I (mut i64) (i64.const 2))
|
||||
@ -18,7 +18,7 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $start (; 1 ;) (type $v)
|
||||
get_global $bool/i
|
||||
global.get $bool/i
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.const 1
|
||||
@ -32,7 +32,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/I
|
||||
global.get $bool/I
|
||||
i64.const 0
|
||||
i64.ne
|
||||
i32.const 1
|
||||
@ -46,7 +46,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/u
|
||||
global.get $bool/u
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.const 1
|
||||
@ -60,7 +60,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/U
|
||||
global.get $bool/U
|
||||
i64.const 0
|
||||
i64.ne
|
||||
i32.const 1
|
||||
@ -74,7 +74,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/f
|
||||
global.get $bool/f
|
||||
f32.const 0
|
||||
f32.ne
|
||||
i32.const 1
|
||||
@ -88,7 +88,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/F
|
||||
global.get $bool/F
|
||||
f64.const 0
|
||||
f64.ne
|
||||
i32.const 1
|
||||
@ -102,7 +102,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $bool/uu
|
||||
global.get $bool/uu
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.const 1
|
||||
|
@ -6,7 +6,7 @@
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0b\00\00\00b\00u\00i\00l\00t\00i\00n\00s\00.\00t\00s")
|
||||
(data (i32.const 40) "\01\00\00\001")
|
||||
(table $0 2 anyfunc)
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $builtins/test $start~anonymous|1)
|
||||
(global $builtins/b (mut i32) (i32.const 0))
|
||||
(global $builtins/i (mut i32) (i32.const 0))
|
||||
@ -29,18 +29,18 @@
|
||||
)
|
||||
(func $start (; 3 ;) (type $v)
|
||||
i32.const 31
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 0
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 1
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 2
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const -2147483648
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 42
|
||||
set_global $builtins/i
|
||||
get_global $builtins/i
|
||||
global.set $builtins/i
|
||||
global.get $builtins/i
|
||||
i32.const 42
|
||||
i32.ne
|
||||
if
|
||||
@ -52,8 +52,8 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $builtins/i
|
||||
get_global $builtins/i
|
||||
global.set $builtins/i
|
||||
global.get $builtins/i
|
||||
i32.const 2
|
||||
i32.ne
|
||||
if
|
||||
@ -65,8 +65,8 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
set_global $builtins/i
|
||||
get_global $builtins/i
|
||||
global.set $builtins/i
|
||||
global.get $builtins/i
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
@ -78,18 +78,18 @@
|
||||
unreachable
|
||||
end
|
||||
i64.const 63
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i64.const 0
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i64.const 1
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i64.const 2
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i64.const -9223372036854775808
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i64.const 42
|
||||
set_global $builtins/I
|
||||
get_global $builtins/I
|
||||
global.set $builtins/I
|
||||
global.get $builtins/I
|
||||
i64.const 42
|
||||
i64.ne
|
||||
if
|
||||
@ -101,8 +101,8 @@
|
||||
unreachable
|
||||
end
|
||||
i64.const 2
|
||||
set_global $builtins/I
|
||||
get_global $builtins/I
|
||||
global.set $builtins/I
|
||||
global.get $builtins/I
|
||||
i64.const 2
|
||||
i64.ne
|
||||
if
|
||||
@ -114,8 +114,8 @@
|
||||
unreachable
|
||||
end
|
||||
i64.const 1
|
||||
set_global $builtins/I
|
||||
get_global $builtins/i
|
||||
global.set $builtins/I
|
||||
global.get $builtins/i
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
@ -127,62 +127,62 @@
|
||||
unreachable
|
||||
end
|
||||
f32.const nan:0x400000
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const inf
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const 1.25
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const 2
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const 1.25
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const 1
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const 2.5
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const 1.25
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const 1
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const 1.1180340051651
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f32.const 1
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
i32.const 0
|
||||
set_global $builtins/b
|
||||
global.set $builtins/b
|
||||
i32.const 1
|
||||
set_global $builtins/b
|
||||
global.set $builtins/b
|
||||
f64.const nan:0x8000000000000
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const inf
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const 1.25
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const 2
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const 1.25
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const 1
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const 2.5
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const 1.25
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const 1
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const 1.118033988749895
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
f64.const 1
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
i32.const 0
|
||||
set_global $builtins/b
|
||||
global.set $builtins/b
|
||||
i32.const 1
|
||||
set_global $builtins/b
|
||||
global.set $builtins/b
|
||||
i32.const 8
|
||||
i32.load
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 8
|
||||
get_global $builtins/i
|
||||
global.get $builtins/i
|
||||
i32.store
|
||||
i32.const 8
|
||||
i32.const 8
|
||||
@ -190,9 +190,9 @@
|
||||
i32.store
|
||||
i32.const 8
|
||||
i64.load
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i32.const 8
|
||||
get_global $builtins/I
|
||||
global.get $builtins/I
|
||||
i64.store
|
||||
i32.const 8
|
||||
i32.const 8
|
||||
@ -200,9 +200,9 @@
|
||||
i64.store
|
||||
i32.const 8
|
||||
f32.load
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
i32.const 8
|
||||
get_global $builtins/f
|
||||
global.get $builtins/f
|
||||
f32.store
|
||||
i32.const 8
|
||||
i32.const 8
|
||||
@ -210,9 +210,9 @@
|
||||
f32.store
|
||||
i32.const 8
|
||||
f64.load
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
i32.const 8
|
||||
get_global $builtins/F
|
||||
global.get $builtins/F
|
||||
f64.store
|
||||
i32.const 8
|
||||
i32.const 8
|
||||
@ -220,9 +220,9 @@
|
||||
f64.store
|
||||
i32.const 8
|
||||
i32.load
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 8
|
||||
get_global $builtins/i
|
||||
global.get $builtins/i
|
||||
i32.store
|
||||
i32.const 8
|
||||
i32.const 8
|
||||
@ -230,9 +230,9 @@
|
||||
i32.store
|
||||
i32.const 8
|
||||
i64.load
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i32.const 8
|
||||
get_global $builtins/I
|
||||
global.get $builtins/I
|
||||
i64.store
|
||||
i32.const 8
|
||||
i32.const 8
|
||||
@ -240,9 +240,9 @@
|
||||
i64.store
|
||||
i32.const 8
|
||||
f32.load
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
i32.const 8
|
||||
get_global $builtins/f
|
||||
global.get $builtins/f
|
||||
f32.store
|
||||
i32.const 8
|
||||
i32.const 8
|
||||
@ -250,9 +250,9 @@
|
||||
f32.store
|
||||
i32.const 8
|
||||
f64.load
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
i32.const 8
|
||||
get_global $builtins/F
|
||||
global.get $builtins/F
|
||||
f64.store
|
||||
i32.const 8
|
||||
i32.const 8
|
||||
@ -260,64 +260,64 @@
|
||||
f64.store
|
||||
i32.const 8
|
||||
i32.load8_s
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 8
|
||||
i32.load16_s
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 8
|
||||
i32.load
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 8
|
||||
i32.load8_u
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 8
|
||||
i32.load16_u
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 8
|
||||
i32.load
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i32.const 8
|
||||
i32.load8_u
|
||||
set_global $builtins/u
|
||||
global.set $builtins/u
|
||||
i32.const 8
|
||||
i32.load16_u
|
||||
set_global $builtins/u
|
||||
global.set $builtins/u
|
||||
i32.const 8
|
||||
i32.load
|
||||
set_global $builtins/u
|
||||
global.set $builtins/u
|
||||
i32.const 8
|
||||
i32.load8_s
|
||||
set_global $builtins/u
|
||||
global.set $builtins/u
|
||||
i32.const 8
|
||||
i32.load16_s
|
||||
set_global $builtins/u
|
||||
global.set $builtins/u
|
||||
i32.const 8
|
||||
i32.load
|
||||
set_global $builtins/u
|
||||
global.set $builtins/u
|
||||
i32.const 8
|
||||
i64.load8_s
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i32.const 8
|
||||
i64.load16_s
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i32.const 8
|
||||
i64.load32_s
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i32.const 8
|
||||
i64.load
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
i32.const 8
|
||||
i64.load8_u
|
||||
set_global $builtins/U
|
||||
global.set $builtins/U
|
||||
i32.const 8
|
||||
i64.load16_u
|
||||
set_global $builtins/U
|
||||
global.set $builtins/U
|
||||
i32.const 8
|
||||
i64.load32_u
|
||||
set_global $builtins/U
|
||||
global.set $builtins/U
|
||||
i32.const 8
|
||||
i64.load
|
||||
set_global $builtins/U
|
||||
global.set $builtins/U
|
||||
i32.const 8
|
||||
i32.const 1
|
||||
i32.store8
|
||||
@ -343,39 +343,39 @@
|
||||
i64.const 1
|
||||
i64.store
|
||||
i32.const 1067450368
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
f32.const 3.5032461608120427e-44
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
i64.const 4608308318706860032
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
f64.const 1.24e-322
|
||||
set_global $builtins/F
|
||||
global.set $builtins/F
|
||||
current_memory
|
||||
drop
|
||||
i32.const 1
|
||||
grow_memory
|
||||
drop
|
||||
current_memory
|
||||
set_global $builtins/s
|
||||
global.set $builtins/s
|
||||
i32.const 1
|
||||
grow_memory
|
||||
set_global $builtins/s
|
||||
global.set $builtins/s
|
||||
i32.const 10
|
||||
set_global $builtins/i
|
||||
global.set $builtins/i
|
||||
i64.const 200
|
||||
set_global $builtins/I
|
||||
global.set $builtins/I
|
||||
f32.const 1.25
|
||||
set_global $builtins/f
|
||||
global.set $builtins/f
|
||||
f64.const 25
|
||||
set_global $builtins/F
|
||||
get_global $builtins/i
|
||||
global.set $builtins/F
|
||||
global.get $builtins/i
|
||||
i32.eqz
|
||||
if
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
i32.const 2
|
||||
get_global $builtins/fn
|
||||
global.get $builtins/fn
|
||||
call_indirect (type $iiv)
|
||||
i32.const 8
|
||||
i32.load8_s
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -2,7 +2,7 @@
|
||||
(type $v (func))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\10\00\00\00c\00a\00l\00l\00-\00i\00n\00f\00e\00r\00r\00e\00d\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -7,23 +7,23 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\10\00\00\00c\00a\00l\00l\00-\00i\00n\00f\00e\00r\00r\00e\00d\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 44))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $call-inferred/foo<i32> (; 1 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-inferred/foo<f64> (; 2 ;) (type $FF) (param $0 f64) (result f64)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-inferred/foo<f32> (; 3 ;) (type $ff) (param $0 f32) (result f32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-inferred/bar<f32> (; 4 ;) (type $ff) (param $0 f32) (result f32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $start (; 5 ;) (type $v)
|
||||
i32.const 42
|
||||
|
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\10\00\00\00c\00a\00l\00l\00-\00o\00p\00t\00i\00o\00n\00a\00l\00.\00t\00s")
|
||||
(table $0 2 anyfunc)
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $null $call-optional/opt|trampoline)
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
(global $call-optional/optIndirect (mut i32) (i32.const 1))
|
||||
@ -17,7 +17,7 @@
|
||||
block $1of2
|
||||
block $0of2
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $0of2 $1of2 $2of2 $outOfRange
|
||||
@ -25,27 +25,27 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const -1
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
i32.const -2
|
||||
set_local $2
|
||||
local.set $2
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.add
|
||||
)
|
||||
(func $start (; 2 ;) (type $v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
block $2of2
|
||||
block $1of2
|
||||
block $0of2
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $0of2 $1of2 $2of2 $outOfRange
|
||||
@ -53,15 +53,15 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const -1
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
i32.const -2
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 3
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.add
|
||||
if
|
||||
i32.const 0
|
||||
@ -72,16 +72,16 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 4
|
||||
set_local $0
|
||||
local.set $0
|
||||
i32.const 0
|
||||
set_local $1
|
||||
local.set $1
|
||||
block $2of21
|
||||
block $1of22
|
||||
block $0of23
|
||||
block $outOfRange4
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $0of23 $1of22 $2of21 $outOfRange4
|
||||
@ -89,15 +89,15 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const -1
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
i32.const -2
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 3
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.add
|
||||
i32.const 5
|
||||
i32.ne
|
||||
@ -110,11 +110,11 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 3
|
||||
i32.const 0
|
||||
i32.const 0
|
||||
get_global $call-optional/optIndirect
|
||||
global.get $call-optional/optIndirect
|
||||
call_indirect (type $iiii)
|
||||
if
|
||||
i32.const 0
|
||||
@ -125,11 +125,11 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 3
|
||||
i32.const 4
|
||||
i32.const 0
|
||||
get_global $call-optional/optIndirect
|
||||
global.get $call-optional/optIndirect
|
||||
call_indirect (type $iiii)
|
||||
i32.const 5
|
||||
i32.ne
|
||||
@ -142,11 +142,11 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 3
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 3
|
||||
i32.const 4
|
||||
i32.const 5
|
||||
get_global $call-optional/optIndirect
|
||||
global.get $call-optional/optIndirect
|
||||
call_indirect (type $iiii)
|
||||
i32.const 12
|
||||
i32.ne
|
||||
|
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\10\00\00\00c\00a\00l\00l\00-\00o\00p\00t\00i\00o\00n\00a\00l\00.\00t\00s\00")
|
||||
(table $0 2 anyfunc)
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $null $call-optional/opt|trampoline)
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
(global $call-optional/optIndirect (mut i32) (i32.const 1))
|
||||
@ -14,10 +14,10 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $call-optional/opt (; 1 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.add
|
||||
)
|
||||
(func $call-optional/opt|trampoline (; 2 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
@ -25,7 +25,7 @@
|
||||
block $1of2
|
||||
block $0of2
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $0of2 $1of2 $2of2 $outOfRange
|
||||
@ -33,20 +33,20 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const -1
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
i32.const -2
|
||||
set_local $2
|
||||
local.set $2
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
call $call-optional/opt
|
||||
)
|
||||
(func $start (; 3 ;) (type $v)
|
||||
block (result i32)
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 3
|
||||
i32.const 0
|
||||
i32.const 0
|
||||
@ -65,7 +65,7 @@
|
||||
end
|
||||
block (result i32)
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 3
|
||||
i32.const 4
|
||||
i32.const 0
|
||||
@ -99,11 +99,11 @@
|
||||
end
|
||||
block (result i32)
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 3
|
||||
i32.const 0
|
||||
i32.const 0
|
||||
get_global $call-optional/optIndirect
|
||||
global.get $call-optional/optIndirect
|
||||
call_indirect (type $iiii)
|
||||
end
|
||||
i32.const 0
|
||||
@ -119,11 +119,11 @@
|
||||
end
|
||||
block (result i32)
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 3
|
||||
i32.const 4
|
||||
i32.const 0
|
||||
get_global $call-optional/optIndirect
|
||||
global.get $call-optional/optIndirect
|
||||
call_indirect (type $iiii)
|
||||
end
|
||||
i32.const 5
|
||||
@ -139,11 +139,11 @@
|
||||
end
|
||||
block (result i32)
|
||||
i32.const 3
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 3
|
||||
i32.const 4
|
||||
i32.const 5
|
||||
get_global $call-optional/optIndirect
|
||||
global.get $call-optional/optIndirect
|
||||
call_indirect (type $iiii)
|
||||
end
|
||||
i32.const 12
|
||||
|
@ -6,7 +6,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0d\00\00\00c\00a\00l\00l\00-\00s\00u\00p\00e\00r\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -17,17 +17,17 @@
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1073741824
|
||||
i32.gt_u
|
||||
if
|
||||
unreachable
|
||||
end
|
||||
get_global $~lib/allocator/arena/offset
|
||||
tee_local $1
|
||||
get_local $0
|
||||
global.get $~lib/allocator/arena/offset
|
||||
local.tee $1
|
||||
local.get $0
|
||||
i32.const 1
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.gt_u
|
||||
select
|
||||
@ -36,16 +36,16 @@
|
||||
i32.add
|
||||
i32.const -8
|
||||
i32.and
|
||||
tee_local $2
|
||||
local.tee $2
|
||||
current_memory
|
||||
tee_local $3
|
||||
local.tee $3
|
||||
i32.const 16
|
||||
i32.shl
|
||||
i32.gt_u
|
||||
if
|
||||
get_local $3
|
||||
get_local $2
|
||||
get_local $1
|
||||
local.get $3
|
||||
local.get $2
|
||||
local.get $1
|
||||
i32.sub
|
||||
i32.const 65535
|
||||
i32.add
|
||||
@ -53,16 +53,16 @@
|
||||
i32.and
|
||||
i32.const 16
|
||||
i32.shr_u
|
||||
tee_local $0
|
||||
get_local $3
|
||||
get_local $0
|
||||
local.tee $0
|
||||
local.get $3
|
||||
local.get $0
|
||||
i32.gt_s
|
||||
select
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
@ -71,22 +71,22 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $2
|
||||
set_global $~lib/allocator/arena/offset
|
||||
get_local $1
|
||||
local.get $2
|
||||
global.set $~lib/allocator/arena/offset
|
||||
local.get $1
|
||||
)
|
||||
(func $call-super/A#constructor (; 2 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -98,17 +98,17 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/B#constructor (; 3 ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
i32.const 8
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
call $call-super/A#constructor
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
i32.const 2
|
||||
i32.store offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -120,7 +120,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.ne
|
||||
@ -132,12 +132,12 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/test1 (; 4 ;) (type $v)
|
||||
(local $0 i32)
|
||||
call $call-super/B#constructor
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -149,7 +149,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.ne
|
||||
@ -163,27 +163,27 @@
|
||||
end
|
||||
)
|
||||
(func $call-super/C#constructor (; 5 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/D#constructor (; 6 ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
i32.const 8
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
call $call-super/C#constructor
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
i32.const 2
|
||||
i32.store offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -195,7 +195,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.ne
|
||||
@ -207,12 +207,12 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/test2 (; 7 ;) (type $v)
|
||||
(local $0 i32)
|
||||
call $call-super/D#constructor
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -224,7 +224,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.ne
|
||||
@ -238,17 +238,17 @@
|
||||
end
|
||||
)
|
||||
(func $call-super/E#constructor (; 8 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -260,17 +260,17 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/test3 (; 9 ;) (type $v)
|
||||
(local $0 i32)
|
||||
i32.const 8
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
call $call-super/E#constructor
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
i32.const 2
|
||||
i32.store offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -282,7 +282,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.ne
|
||||
@ -300,15 +300,15 @@
|
||||
i32.const 8
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
call $call-super/C#constructor
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
i32.const 2
|
||||
i32.store offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/test4 (; 11 ;) (type $v)
|
||||
(local $0 i32)
|
||||
call $call-super/H#constructor
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -320,7 +320,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.ne
|
||||
@ -336,7 +336,7 @@
|
||||
(func $call-super/test5 (; 12 ;) (type $v)
|
||||
(local $0 i32)
|
||||
call $call-super/H#constructor
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -348,7 +348,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.ne
|
||||
@ -363,9 +363,9 @@
|
||||
)
|
||||
(func $start (; 13 ;) (type $v)
|
||||
i32.const 40
|
||||
set_global $~lib/allocator/arena/startOffset
|
||||
get_global $~lib/allocator/arena/startOffset
|
||||
set_global $~lib/allocator/arena/offset
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
global.get $~lib/allocator/arena/startOffset
|
||||
global.set $~lib/allocator/arena/offset
|
||||
call $call-super/test1
|
||||
call $call-super/test2
|
||||
call $call-super/test3
|
||||
|
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0d\00\00\00c\00a\00l\00l\00-\00s\00u\00p\00e\00r\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/internal/allocator/AL_BITS i32 (i32.const 3))
|
||||
(global $~lib/internal/allocator/AL_SIZE i32 (i32.const 8))
|
||||
@ -24,41 +24,41 @@
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
get_local $0
|
||||
get_global $~lib/internal/allocator/MAX_SIZE_32
|
||||
local.get $0
|
||||
global.get $~lib/internal/allocator/MAX_SIZE_32
|
||||
i32.gt_u
|
||||
if
|
||||
unreachable
|
||||
end
|
||||
get_global $~lib/allocator/arena/offset
|
||||
set_local $1
|
||||
get_local $1
|
||||
get_local $0
|
||||
tee_local $2
|
||||
global.get $~lib/allocator/arena/offset
|
||||
local.set $1
|
||||
local.get $1
|
||||
local.get $0
|
||||
local.tee $2
|
||||
i32.const 1
|
||||
tee_local $3
|
||||
get_local $2
|
||||
get_local $3
|
||||
local.tee $3
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.gt_u
|
||||
select
|
||||
i32.add
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.add
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
set_local $4
|
||||
local.set $4
|
||||
current_memory
|
||||
set_local $5
|
||||
get_local $4
|
||||
get_local $5
|
||||
local.set $5
|
||||
local.get $4
|
||||
local.get $5
|
||||
i32.const 16
|
||||
i32.shl
|
||||
i32.gt_u
|
||||
if
|
||||
get_local $4
|
||||
get_local $1
|
||||
local.get $4
|
||||
local.get $1
|
||||
i32.sub
|
||||
i32.const 65535
|
||||
i32.add
|
||||
@ -68,22 +68,22 @@
|
||||
i32.and
|
||||
i32.const 16
|
||||
i32.shr_u
|
||||
set_local $2
|
||||
get_local $5
|
||||
tee_local $3
|
||||
get_local $2
|
||||
tee_local $6
|
||||
get_local $3
|
||||
get_local $6
|
||||
local.set $2
|
||||
local.get $5
|
||||
local.tee $3
|
||||
local.get $2
|
||||
local.tee $6
|
||||
local.get $3
|
||||
local.get $6
|
||||
i32.gt_s
|
||||
select
|
||||
set_local $3
|
||||
get_local $3
|
||||
local.set $3
|
||||
local.get $3
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
if
|
||||
get_local $2
|
||||
local.get $2
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
@ -92,28 +92,28 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $4
|
||||
set_global $~lib/allocator/arena/offset
|
||||
get_local $1
|
||||
local.get $4
|
||||
global.set $~lib/allocator/arena/offset
|
||||
local.get $1
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 2 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
return
|
||||
)
|
||||
(func $call-super/A#constructor (; 3 ;) (type $ii) (param $0 i32) (result i32)
|
||||
block (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
end
|
||||
i32.load
|
||||
i32.const 1
|
||||
@ -127,22 +127,22 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/B#constructor (; 4 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
if (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
else
|
||||
i32.const 8
|
||||
call $~lib/memory/memory.allocate
|
||||
end
|
||||
call $call-super/A#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.store offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -155,7 +155,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.eq
|
||||
@ -168,14 +168,14 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/test1 (; 5 ;) (type $v)
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
call $call-super/B#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -188,7 +188,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.eq
|
||||
@ -203,32 +203,32 @@
|
||||
end
|
||||
)
|
||||
(func $call-super/C#constructor (; 6 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/D#constructor (; 7 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
if (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
else
|
||||
i32.const 8
|
||||
call $~lib/memory/memory.allocate
|
||||
end
|
||||
call $call-super/C#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.store offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -241,7 +241,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.eq
|
||||
@ -254,14 +254,14 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/test2 (; 8 ;) (type $v)
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
call $call-super/D#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -274,7 +274,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.eq
|
||||
@ -290,17 +290,17 @@
|
||||
)
|
||||
(func $call-super/E#constructor (; 9 ;) (type $ii) (param $0 i32) (result i32)
|
||||
block (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
end
|
||||
i32.load
|
||||
i32.const 1
|
||||
@ -314,30 +314,30 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/F#constructor (; 10 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 8
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
call $call-super/E#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.store offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/test3 (; 11 ;) (type $v)
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
call $call-super/F#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -350,7 +350,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.eq
|
||||
@ -365,40 +365,40 @@
|
||||
end
|
||||
)
|
||||
(func $call-super/G#constructor (; 12 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/H#constructor (; 13 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 8
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
call $call-super/G#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.store offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/test4 (; 14 ;) (type $v)
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
call $call-super/H#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -411,7 +411,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.eq
|
||||
@ -426,40 +426,40 @@
|
||||
end
|
||||
)
|
||||
(func $call-super/I#constructor (; 15 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/J#constructor (; 16 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 8
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
call $call-super/I#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.store offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $call-super/test5 (; 17 ;) (type $v)
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
call $call-super/J#constructor
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -472,7 +472,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
i32.const 2
|
||||
i32.eq
|
||||
@ -487,16 +487,16 @@
|
||||
end
|
||||
)
|
||||
(func $start (; 18 ;) (type $v)
|
||||
get_global $HEAP_BASE
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $HEAP_BASE
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.add
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
set_global $~lib/allocator/arena/startOffset
|
||||
get_global $~lib/allocator/arena/startOffset
|
||||
set_global $~lib/allocator/arena/offset
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
global.get $~lib/allocator/arena/startOffset
|
||||
global.set $~lib/allocator/arena/offset
|
||||
call $call-super/test1
|
||||
call $call-super/test2
|
||||
call $call-super/test3
|
||||
|
@ -2,22 +2,22 @@
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(export "test" (func $class-extends/test))
|
||||
(func $class-extends/test (; 0 ;) (type $iv) (param $0 i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load16_s offset=4
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 3
|
||||
i32.store16 offset=4
|
||||
)
|
||||
|
@ -2,23 +2,23 @@
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(export "test" (func $class-extends/test))
|
||||
(func $class-extends/test (; 0 ;) (type $iv) (param $0 i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load16_s offset=4
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 3
|
||||
i32.store16 offset=4
|
||||
)
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
@ -13,7 +13,7 @@
|
||||
nop
|
||||
)
|
||||
(func $class-overloading/test (; 1 ;) (type $iv) (param $0 i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
call $class-overloading/Foo#baz
|
||||
)
|
||||
(func $start (; 2 ;) (type $v)
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $i (func (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $i (func (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
@ -10,10 +10,10 @@
|
||||
(export "test" (func $class-with-boolean-field/test))
|
||||
(func $class-with-boolean-field/test (; 0 ;) (type $i) (result i32)
|
||||
(local $0 i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store8
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load8_u
|
||||
i32.const 0
|
||||
i32.ne
|
||||
|
@ -3,31 +3,31 @@
|
||||
(type $v (func))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\08\00\00\00c\00l\00a\00s\00s\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(export "test" (func $class/test))
|
||||
(func $class/test (; 0 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load16_s offset=4
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load8_s offset=6
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.store16 offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 3
|
||||
i32.store8 offset=6
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $start (; 1 ;) (type $v)
|
||||
nop
|
||||
|
@ -9,7 +9,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\08\00\00\00c\00l\00a\00s\00s\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $class/Animal.ONE (mut i32) (i32.const 1))
|
||||
(global $HEAP_BASE i32 (i32.const 28))
|
||||
@ -18,79 +18,79 @@
|
||||
(export "test" (func $class/test))
|
||||
(start $start)
|
||||
(func $class/Animal.add (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
get_global $class/Animal.ONE
|
||||
global.get $class/Animal.ONE
|
||||
i32.add
|
||||
)
|
||||
(func $class/Animal.sub<f32> (; 2 ;) (type $fff) (param $0 f32) (param $1 f32) (result f32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
f32.sub
|
||||
get_global $class/Animal.ONE
|
||||
f32.convert_s/i32
|
||||
global.get $class/Animal.ONE
|
||||
f32.convert_i32_s
|
||||
f32.add
|
||||
)
|
||||
(func $class/Animal<f64>#instanceAdd (; 3 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
get_global $class/Animal.ONE
|
||||
global.get $class/Animal.ONE
|
||||
i32.add
|
||||
)
|
||||
(func $class/Animal<f64>#instanceSub<f32> (; 4 ;) (type $ifff) (param $0 i32) (param $1 f32) (param $2 f32) (result f32)
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
f32.sub
|
||||
get_global $class/Animal.ONE
|
||||
f32.convert_s/i32
|
||||
global.get $class/Animal.ONE
|
||||
f32.convert_i32_s
|
||||
f32.add
|
||||
)
|
||||
(func $class/test (; 5 ;) (type $ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.const 2
|
||||
call $class/Animal<f64>#instanceAdd
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
f32.const 1
|
||||
f32.const 2
|
||||
call $class/Animal<f64>#instanceSub<f32>
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load16_s offset=4
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load8_s offset=6
|
||||
drop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.const 1
|
||||
i32.add
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.const 1
|
||||
i32.add
|
||||
i32.store16 offset=4
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.const 1
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.add
|
||||
i32.store8 offset=6
|
||||
get_local $0
|
||||
set_local $1
|
||||
get_local $1
|
||||
set_local $2
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.set $1
|
||||
local.get $1
|
||||
local.set $2
|
||||
local.get $2
|
||||
)
|
||||
(func $start (; 6 ;) (type $v)
|
||||
i32.const 4
|
||||
@ -105,7 +105,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $class/Animal.ONE
|
||||
global.get $class/Animal.ONE
|
||||
drop
|
||||
i32.const 1
|
||||
i32.const 2
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
|
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\08\00\00\00c\00o\00m\00m\00a\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $comma/a (mut i32) (i32.const 0))
|
||||
(global $comma/b (mut i32) (i32.const 0))
|
||||
@ -13,14 +13,14 @@
|
||||
(start $start)
|
||||
(func $start (; 1 ;) (type $v)
|
||||
(local $0 i32)
|
||||
get_global $comma/a
|
||||
tee_local $0
|
||||
global.get $comma/a
|
||||
local.tee $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $comma/a
|
||||
get_local $0
|
||||
set_global $comma/b
|
||||
get_global $comma/a
|
||||
global.set $comma/a
|
||||
local.get $0
|
||||
global.set $comma/b
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
@ -31,7 +31,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/b
|
||||
global.get $comma/b
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
@ -40,14 +40,14 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $comma/a
|
||||
get_global $comma/a
|
||||
tee_local $0
|
||||
set_global $comma/b
|
||||
get_local $0
|
||||
global.set $comma/a
|
||||
global.get $comma/a
|
||||
local.tee $0
|
||||
global.set $comma/b
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.ne
|
||||
if
|
||||
@ -58,7 +58,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/b
|
||||
global.get $comma/b
|
||||
i32.const 2
|
||||
i32.ne
|
||||
if
|
||||
@ -70,17 +70,17 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
set_global $comma/b
|
||||
get_global $comma/b
|
||||
set_global $comma/a
|
||||
get_global $comma/a
|
||||
global.set $comma/b
|
||||
global.get $comma/b
|
||||
global.set $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $comma/a
|
||||
get_global $comma/a
|
||||
tee_local $0
|
||||
set_global $comma/b
|
||||
get_local $0
|
||||
global.set $comma/a
|
||||
global.get $comma/a
|
||||
local.tee $0
|
||||
global.set $comma/b
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
@ -91,7 +91,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/b
|
||||
global.get $comma/b
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
@ -102,15 +102,15 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $comma/a
|
||||
get_global $comma/a
|
||||
set_global $comma/b
|
||||
get_global $comma/b
|
||||
set_global $comma/a
|
||||
get_global $comma/a
|
||||
global.set $comma/a
|
||||
global.get $comma/a
|
||||
global.set $comma/b
|
||||
global.get $comma/b
|
||||
global.set $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 2
|
||||
i32.ne
|
||||
if
|
||||
@ -121,7 +121,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/b
|
||||
global.get $comma/b
|
||||
i32.const 2
|
||||
i32.ne
|
||||
if
|
||||
@ -133,25 +133,25 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
set_local $0
|
||||
local.set $0
|
||||
loop $repeat|0
|
||||
block $break|0
|
||||
get_local $0
|
||||
get_global $comma/a
|
||||
local.get $0
|
||||
global.get $comma/a
|
||||
i32.ge_s
|
||||
br_if $break|0
|
||||
get_global $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $comma/a
|
||||
get_local $0
|
||||
global.set $comma/a
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
local.set $0
|
||||
br $repeat|0
|
||||
end
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
|
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\08\00\00\00c\00o\00m\00m\00a\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $comma/a (mut i32) (i32.const 0))
|
||||
(global $comma/b (mut i32) (i32.const 0))
|
||||
@ -17,18 +17,18 @@
|
||||
(local $1 i32)
|
||||
block
|
||||
block (result i32)
|
||||
get_global $comma/a
|
||||
tee_local $0
|
||||
global.get $comma/a
|
||||
local.tee $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $comma/a
|
||||
get_local $0
|
||||
global.set $comma/a
|
||||
local.get $0
|
||||
end
|
||||
set_global $comma/b
|
||||
get_global $comma/a
|
||||
global.set $comma/b
|
||||
global.get $comma/a
|
||||
drop
|
||||
end
|
||||
get_global $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -40,7 +40,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/b
|
||||
global.get $comma/b
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -53,14 +53,14 @@
|
||||
unreachable
|
||||
end
|
||||
block
|
||||
get_global $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $comma/a
|
||||
get_global $comma/a
|
||||
set_global $comma/b
|
||||
global.set $comma/a
|
||||
global.get $comma/a
|
||||
global.set $comma/b
|
||||
end
|
||||
get_global $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 2
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -72,7 +72,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/b
|
||||
global.get $comma/b
|
||||
i32.const 2
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -86,19 +86,19 @@
|
||||
end
|
||||
block (result i32)
|
||||
i32.const 0
|
||||
set_global $comma/b
|
||||
get_global $comma/b
|
||||
global.set $comma/b
|
||||
global.get $comma/b
|
||||
end
|
||||
set_global $comma/a
|
||||
global.set $comma/a
|
||||
block (result i32)
|
||||
get_global $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $comma/a
|
||||
get_global $comma/a
|
||||
global.set $comma/a
|
||||
global.get $comma/a
|
||||
end
|
||||
set_global $comma/b
|
||||
get_global $comma/a
|
||||
global.set $comma/b
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -110,7 +110,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/b
|
||||
global.get $comma/b
|
||||
i32.const 1
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -123,18 +123,18 @@
|
||||
unreachable
|
||||
end
|
||||
block (result i32)
|
||||
get_global $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $comma/a
|
||||
global.set $comma/a
|
||||
block (result i32)
|
||||
get_global $comma/a
|
||||
set_global $comma/b
|
||||
get_global $comma/b
|
||||
global.get $comma/a
|
||||
global.set $comma/b
|
||||
global.get $comma/b
|
||||
end
|
||||
end
|
||||
set_global $comma/a
|
||||
get_global $comma/a
|
||||
global.set $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 2
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -146,7 +146,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $comma/b
|
||||
global.get $comma/b
|
||||
i32.const 2
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -160,30 +160,30 @@
|
||||
end
|
||||
block $break|0
|
||||
i32.const 0
|
||||
set_local $1
|
||||
local.set $1
|
||||
loop $repeat|0
|
||||
get_local $1
|
||||
get_global $comma/a
|
||||
local.get $1
|
||||
global.get $comma/a
|
||||
i32.lt_s
|
||||
i32.eqz
|
||||
br_if $break|0
|
||||
nop
|
||||
block
|
||||
get_global $comma/a
|
||||
global.get $comma/a
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $comma/a
|
||||
get_local $1
|
||||
global.set $comma/a
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
br $repeat|0
|
||||
unreachable
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.eq
|
||||
i32.eqz
|
||||
|
@ -8,14 +8,14 @@
|
||||
(import "declare" "my.externalFunction" (func $declare/my.externalFunction))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\n\00\00\00d\00e\00c\00l\00a\00r\00e\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $start (; 3 ;) (type $v)
|
||||
call $declare/externalFunction
|
||||
get_global $declare/externalConstant
|
||||
global.get $declare/externalConstant
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
@ -27,7 +27,7 @@
|
||||
unreachable
|
||||
end
|
||||
call $declare/my.externalFunction
|
||||
get_global $declare/my.externalConstant
|
||||
global.get $declare/my.externalConstant
|
||||
i32.const 2
|
||||
i32.ne
|
||||
if
|
||||
|
@ -8,7 +8,7 @@
|
||||
(import "declare" "my.externalFunction" (func $declare/my.externalFunction))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\n\00\00\00d\00e\00c\00l\00a\00r\00e\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 32))
|
||||
(export "memory" (memory $0))
|
||||
@ -16,7 +16,7 @@
|
||||
(start $start)
|
||||
(func $start (; 3 ;) (type $v)
|
||||
call $declare/externalFunction
|
||||
get_global $declare/externalConstant
|
||||
global.get $declare/externalConstant
|
||||
i32.const 1
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -29,7 +29,7 @@
|
||||
unreachable
|
||||
end
|
||||
call $declare/my.externalFunction
|
||||
get_global $declare/my.externalConstant
|
||||
global.get $declare/my.externalConstant
|
||||
i32.const 2
|
||||
i32.eq
|
||||
i32.eqz
|
||||
|
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\05\00\00\00d\00o\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $do/n (mut i32) (i32.const 10))
|
||||
(global $do/m (mut i32) (i32.const 0))
|
||||
@ -15,18 +15,18 @@
|
||||
(func $start (; 1 ;) (type $v)
|
||||
(local $0 i32)
|
||||
loop $continue|0
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $do/n
|
||||
get_global $do/m
|
||||
global.set $do/n
|
||||
global.get $do/m
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $do/m
|
||||
get_global $do/n
|
||||
global.set $do/m
|
||||
global.get $do/n
|
||||
br_if $continue|0
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
@ -35,7 +35,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $do/m
|
||||
global.get $do/m
|
||||
i32.const 10
|
||||
i32.ne
|
||||
if
|
||||
@ -47,17 +47,17 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 10
|
||||
set_global $do/n
|
||||
global.set $do/n
|
||||
loop $continue|1
|
||||
get_global $do/n
|
||||
tee_local $0
|
||||
global.get $do/n
|
||||
local.tee $0
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $do/n
|
||||
get_local $0
|
||||
global.set $do/n
|
||||
local.get $0
|
||||
br_if $continue|1
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const -1
|
||||
i32.ne
|
||||
if
|
||||
@ -69,31 +69,31 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 10
|
||||
set_global $do/n
|
||||
global.set $do/n
|
||||
i32.const 0
|
||||
set_global $do/m
|
||||
global.set $do/m
|
||||
loop $continue|2
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $do/n
|
||||
get_global $do/m
|
||||
global.set $do/n
|
||||
global.get $do/m
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $do/m
|
||||
global.set $do/m
|
||||
loop $continue|3
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $do/n
|
||||
get_global $do/o
|
||||
global.set $do/n
|
||||
global.get $do/o
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $do/o
|
||||
get_global $do/n
|
||||
global.set $do/o
|
||||
global.get $do/n
|
||||
br_if $continue|3
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
@ -102,7 +102,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $do/o
|
||||
global.get $do/o
|
||||
i32.const 9
|
||||
i32.ne
|
||||
if
|
||||
@ -113,10 +113,10 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
br_if $continue|2
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
@ -125,7 +125,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $do/m
|
||||
global.get $do/m
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
@ -136,7 +136,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $do/o
|
||||
global.get $do/o
|
||||
i32.const 9
|
||||
i32.ne
|
||||
if
|
||||
|
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\05\00\00\00d\00o\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $do/n (mut i32) (i32.const 10))
|
||||
(global $do/m (mut i32) (i32.const 0))
|
||||
@ -18,20 +18,20 @@
|
||||
block $break|0
|
||||
loop $continue|0
|
||||
block
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $do/n
|
||||
get_global $do/m
|
||||
global.set $do/n
|
||||
global.get $do/m
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $do/m
|
||||
global.set $do/m
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
br_if $continue|0
|
||||
end
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -43,7 +43,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $do/m
|
||||
global.get $do/m
|
||||
i32.const 10
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -56,22 +56,22 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 10
|
||||
set_global $do/n
|
||||
global.set $do/n
|
||||
block $break|1
|
||||
loop $continue|1
|
||||
nop
|
||||
block (result i32)
|
||||
get_global $do/n
|
||||
tee_local $0
|
||||
global.get $do/n
|
||||
local.tee $0
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $do/n
|
||||
get_local $0
|
||||
global.set $do/n
|
||||
local.get $0
|
||||
end
|
||||
br_if $continue|1
|
||||
end
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const -1
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -84,37 +84,37 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 10
|
||||
set_global $do/n
|
||||
global.set $do/n
|
||||
i32.const 0
|
||||
set_global $do/m
|
||||
global.set $do/m
|
||||
block $break|2
|
||||
loop $continue|2
|
||||
block
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $do/n
|
||||
get_global $do/m
|
||||
global.set $do/n
|
||||
global.get $do/m
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $do/m
|
||||
global.set $do/m
|
||||
block $break|3
|
||||
loop $continue|3
|
||||
block
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $do/n
|
||||
get_global $do/o
|
||||
global.set $do/n
|
||||
global.get $do/o
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $do/o
|
||||
global.set $do/o
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
br_if $continue|3
|
||||
end
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -126,7 +126,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $do/o
|
||||
global.get $do/o
|
||||
i32.const 9
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -139,11 +139,11 @@
|
||||
unreachable
|
||||
end
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
br_if $continue|2
|
||||
end
|
||||
end
|
||||
get_global $do/n
|
||||
global.get $do/n
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -155,7 +155,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $do/m
|
||||
global.get $do/m
|
||||
i32.const 1
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -167,7 +167,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $do/o
|
||||
global.get $do/o
|
||||
i32.const 9
|
||||
i32.eq
|
||||
i32.eqz
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $enum/Implicit.ZERO i32 (i32.const 0))
|
||||
(global $enum/Implicit.ONE i32 (i32.const 1))
|
||||
@ -38,9 +38,9 @@
|
||||
(start $start)
|
||||
(func $start (; 0 ;) (type $v)
|
||||
i32.const 0
|
||||
set_global $enum/NonConstant.ZERO
|
||||
global.set $enum/NonConstant.ZERO
|
||||
i32.const 1
|
||||
set_global $enum/NonConstant.ONE
|
||||
global.set $enum/NonConstant.ONE
|
||||
)
|
||||
(func $null (; 1 ;) (type $v)
|
||||
nop
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $i (func (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $enum/Implicit.ZERO i32 (i32.const 0))
|
||||
(global $enum/Implicit.ONE i32 (i32.const 1))
|
||||
@ -44,14 +44,14 @@
|
||||
)
|
||||
(func $start (; 1 ;) (type $v)
|
||||
call $enum/getZero
|
||||
set_global $enum/NonConstant.ZERO
|
||||
global.set $enum/NonConstant.ZERO
|
||||
call $enum/getZero
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $enum/NonConstant.ONE
|
||||
get_global $enum/NonConstant.ZERO
|
||||
global.set $enum/NonConstant.ONE
|
||||
global.get $enum/NonConstant.ZERO
|
||||
drop
|
||||
get_global $enum/NonConstant.ONE
|
||||
global.get $enum/NonConstant.ONE
|
||||
drop
|
||||
)
|
||||
(func $null (; 2 ;) (type $v)
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $export/ns.two)
|
||||
(global $export/a i32 (i32.const 1))
|
||||
(global $export/b i32 (i32.const 2))
|
||||
@ -17,18 +17,18 @@
|
||||
(export "renamed_c" (global $export/c))
|
||||
(export "ns.two" (func $export/ns.two))
|
||||
(func $export/add (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
)
|
||||
(func $export/sub (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.sub
|
||||
)
|
||||
(func $export/mul (; 2 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.mul
|
||||
)
|
||||
(func $export/ns.two (; 3 ;) (type $v)
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $export/a i32 (i32.const 1))
|
||||
(global $export/b i32 (i32.const 2))
|
||||
@ -18,18 +18,18 @@
|
||||
(export "renamed_c" (global $export/c))
|
||||
(export "ns.two" (func $export/ns.two))
|
||||
(func $export/add (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
)
|
||||
(func $export/sub (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.sub
|
||||
)
|
||||
(func $export/mul (; 2 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.mul
|
||||
)
|
||||
(func $export/ns.two (; 3 ;) (type $v)
|
||||
|
@ -6,7 +6,7 @@
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -47,13 +47,13 @@
|
||||
(export "outer.inner.a" (global $exports/outer.inner.a))
|
||||
(start $start)
|
||||
(func $exports/add (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
)
|
||||
(func $exports/subOpt (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.sub
|
||||
)
|
||||
(func $exports/Car.getNumTires (; 2 ;) (type $i) (result i32)
|
||||
@ -63,17 +63,17 @@
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1073741824
|
||||
i32.gt_u
|
||||
if
|
||||
unreachable
|
||||
end
|
||||
get_global $~lib/allocator/arena/offset
|
||||
tee_local $1
|
||||
get_local $0
|
||||
global.get $~lib/allocator/arena/offset
|
||||
local.tee $1
|
||||
local.get $0
|
||||
i32.const 1
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.gt_u
|
||||
select
|
||||
@ -82,16 +82,16 @@
|
||||
i32.add
|
||||
i32.const -8
|
||||
i32.and
|
||||
tee_local $2
|
||||
local.tee $2
|
||||
current_memory
|
||||
tee_local $3
|
||||
local.tee $3
|
||||
i32.const 16
|
||||
i32.shl
|
||||
i32.gt_u
|
||||
if
|
||||
get_local $3
|
||||
get_local $2
|
||||
get_local $1
|
||||
local.get $3
|
||||
local.get $2
|
||||
local.get $1
|
||||
i32.sub
|
||||
i32.const 65535
|
||||
i32.add
|
||||
@ -99,16 +99,16 @@
|
||||
i32.and
|
||||
i32.const 16
|
||||
i32.shr_u
|
||||
tee_local $0
|
||||
get_local $3
|
||||
get_local $0
|
||||
local.tee $0
|
||||
local.get $3
|
||||
local.get $0
|
||||
i32.gt_s
|
||||
select
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
@ -117,17 +117,17 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $2
|
||||
set_global $~lib/allocator/arena/offset
|
||||
get_local $1
|
||||
local.get $2
|
||||
global.set $~lib/allocator/arena/offset
|
||||
local.get $1
|
||||
)
|
||||
(func $exports/Car#get:numDoors (; 4 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
)
|
||||
(func $exports/Car#set:numDoors (; 5 ;) (type $iiv) (param $0 i32) (param $1 i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store
|
||||
)
|
||||
(func $exports/Car#openDoors (; 6 ;) (type $iv) (param $0 i32)
|
||||
@ -135,9 +135,9 @@
|
||||
)
|
||||
(func $start (; 7 ;) (type $v)
|
||||
i32.const 8
|
||||
set_global $~lib/allocator/arena/startOffset
|
||||
get_global $~lib/allocator/arena/startOffset
|
||||
set_global $~lib/allocator/arena/offset
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
global.get $~lib/allocator/arena/startOffset
|
||||
global.set $~lib/allocator/arena/offset
|
||||
)
|
||||
(func $null (; 8 ;) (type $v)
|
||||
nop
|
||||
@ -146,7 +146,7 @@
|
||||
block $1of1
|
||||
block $0of1
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $0of1 $1of1 $outOfRange
|
||||
@ -154,41 +154,41 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.sub
|
||||
)
|
||||
(func $~setargc (; 10 ;) (type $iv) (param $0 i32)
|
||||
get_local $0
|
||||
set_global $~argc
|
||||
local.get $0
|
||||
global.set $~argc
|
||||
)
|
||||
(func $exports/Car#constructor|trampoline (; 11 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
block $1of1
|
||||
block $0of1
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
br_table $0of1 $1of1 $outOfRange
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
)
|
||||
|
@ -6,7 +6,7 @@
|
||||
(type $iv (func (param i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/internal/allocator/AL_BITS i32 (i32.const 3))
|
||||
(global $~lib/internal/allocator/AL_SIZE i32 (i32.const 8))
|
||||
@ -52,22 +52,22 @@
|
||||
(export "outer.inner.a" (global $exports/outer.inner.a))
|
||||
(start $start)
|
||||
(func $exports/add (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
)
|
||||
(func $exports/subOpt (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.sub
|
||||
)
|
||||
(func $exports/math.sub (; 2 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.sub
|
||||
)
|
||||
(func $exports/Car.getNumTires (; 3 ;) (type $i) (result i32)
|
||||
get_global $exports/Car.TIRES
|
||||
global.get $exports/Car.TIRES
|
||||
)
|
||||
(func $~lib/allocator/arena/__memory_allocate (; 4 ;) (type $ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
@ -76,41 +76,41 @@
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
get_local $0
|
||||
get_global $~lib/internal/allocator/MAX_SIZE_32
|
||||
local.get $0
|
||||
global.get $~lib/internal/allocator/MAX_SIZE_32
|
||||
i32.gt_u
|
||||
if
|
||||
unreachable
|
||||
end
|
||||
get_global $~lib/allocator/arena/offset
|
||||
set_local $1
|
||||
get_local $1
|
||||
get_local $0
|
||||
tee_local $2
|
||||
global.get $~lib/allocator/arena/offset
|
||||
local.set $1
|
||||
local.get $1
|
||||
local.get $0
|
||||
local.tee $2
|
||||
i32.const 1
|
||||
tee_local $3
|
||||
get_local $2
|
||||
get_local $3
|
||||
local.tee $3
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.gt_u
|
||||
select
|
||||
i32.add
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.add
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
set_local $4
|
||||
local.set $4
|
||||
current_memory
|
||||
set_local $5
|
||||
get_local $4
|
||||
get_local $5
|
||||
local.set $5
|
||||
local.get $4
|
||||
local.get $5
|
||||
i32.const 16
|
||||
i32.shl
|
||||
i32.gt_u
|
||||
if
|
||||
get_local $4
|
||||
get_local $1
|
||||
local.get $4
|
||||
local.get $1
|
||||
i32.sub
|
||||
i32.const 65535
|
||||
i32.add
|
||||
@ -120,22 +120,22 @@
|
||||
i32.and
|
||||
i32.const 16
|
||||
i32.shr_u
|
||||
set_local $2
|
||||
get_local $5
|
||||
tee_local $3
|
||||
get_local $2
|
||||
tee_local $6
|
||||
get_local $3
|
||||
get_local $6
|
||||
local.set $2
|
||||
local.get $5
|
||||
local.tee $3
|
||||
local.get $2
|
||||
local.tee $6
|
||||
local.get $3
|
||||
local.get $6
|
||||
i32.gt_s
|
||||
select
|
||||
set_local $3
|
||||
get_local $3
|
||||
local.set $3
|
||||
local.get $3
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
if
|
||||
get_local $2
|
||||
local.get $2
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
@ -144,89 +144,89 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $4
|
||||
set_global $~lib/allocator/arena/offset
|
||||
get_local $1
|
||||
local.get $4
|
||||
global.set $~lib/allocator/arena/offset
|
||||
local.get $1
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 5 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
return
|
||||
)
|
||||
(func $exports/Car#constructor (; 6 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
block (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
end
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $exports/Car#get:numDoors (; 7 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
)
|
||||
(func $exports/Car#set:numDoors (; 8 ;) (type $iiv) (param $0 i32) (param $1 i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store
|
||||
)
|
||||
(func $exports/Car#openDoors (; 9 ;) (type $iv) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $exports/vehicles.Car.getNumTires (; 10 ;) (type $i) (result i32)
|
||||
get_global $exports/vehicles.Car.TIRES
|
||||
global.get $exports/vehicles.Car.TIRES
|
||||
)
|
||||
(func $exports/vehicles.Car#constructor (; 11 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
block (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
end
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $exports/vehicles.Car#get:numDoors (; 12 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
)
|
||||
(func $exports/vehicles.Car#set:numDoors (; 13 ;) (type $iiv) (param $0 i32) (param $1 i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store
|
||||
)
|
||||
(func $exports/vehicles.Car#openDoors (; 14 ;) (type $iv) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $start (; 15 ;) (type $v)
|
||||
get_global $HEAP_BASE
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $HEAP_BASE
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.add
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
set_global $~lib/allocator/arena/startOffset
|
||||
get_global $~lib/allocator/arena/startOffset
|
||||
set_global $~lib/allocator/arena/offset
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
global.get $~lib/allocator/arena/startOffset
|
||||
global.set $~lib/allocator/arena/offset
|
||||
)
|
||||
(func $null (; 16 ;) (type $v)
|
||||
)
|
||||
@ -234,7 +234,7 @@
|
||||
block $1of1
|
||||
block $0of1
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $0of1 $1of1 $outOfRange
|
||||
@ -242,64 +242,64 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $exports/subOpt
|
||||
)
|
||||
(func $~setargc (; 18 ;) (type $iv) (param $0 i32)
|
||||
get_local $0
|
||||
set_global $~argc
|
||||
local.get $0
|
||||
global.set $~argc
|
||||
)
|
||||
(func $exports/Car#constructor|trampoline (; 19 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
block $1of1
|
||||
block $0of1
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
br_table $0of1 $1of1 $outOfRange
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $exports/Car#constructor
|
||||
)
|
||||
(func $Car#get:doors (; 20 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
)
|
||||
(func $Car#set:doors (; 21 ;) (type $iiv) (param $0 i32) (param $1 i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store
|
||||
)
|
||||
(func $exports/vehicles.Car#constructor|trampoline (; 22 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
block $1of1
|
||||
block $0of1
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
br_table $0of1 $1of1 $outOfRange
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $exports/vehicles.Car#constructor
|
||||
)
|
||||
(func $vehicles.Car#get:doors (; 23 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.load
|
||||
)
|
||||
(func $vehicles.Car#set:doors (; 24 ;) (type $iiv) (param $0 i32) (param $1 i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store
|
||||
)
|
||||
)
|
||||
|
@ -6,7 +6,7 @@
|
||||
(import "external" "bar" (func $external/two))
|
||||
(import "foo" "baz" (func $external/three))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -6,7 +6,7 @@
|
||||
(import "external" "bar" (func $external/two))
|
||||
(import "foo" "baz" (func $external/three))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
|
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\06\00\00\00f\00o\00r\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $for/i (mut i32) (i32.const 0))
|
||||
(export "memory" (memory $0))
|
||||
@ -14,21 +14,21 @@
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
i32.const 0
|
||||
set_global $for/i
|
||||
global.set $for/i
|
||||
loop $repeat|0
|
||||
block $break|0
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 10
|
||||
i32.ge_s
|
||||
br_if $break|0
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $for/i
|
||||
global.set $for/i
|
||||
br $repeat|0
|
||||
end
|
||||
end
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 10
|
||||
i32.ne
|
||||
if
|
||||
@ -41,31 +41,31 @@
|
||||
end
|
||||
loop $repeat|1
|
||||
block $break|1
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 10
|
||||
i32.ge_s
|
||||
br_if $break|1
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
local.set $0
|
||||
br $repeat|1
|
||||
end
|
||||
end
|
||||
loop $repeat|2
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 0
|
||||
i32.le_s
|
||||
i32.eqz
|
||||
if
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $for/i
|
||||
global.set $for/i
|
||||
br $repeat|2
|
||||
end
|
||||
end
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
@ -75,42 +75,42 @@
|
||||
unreachable
|
||||
end
|
||||
loop $repeat|3
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 10
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $for/i
|
||||
global.set $for/i
|
||||
br $repeat|3
|
||||
end
|
||||
end
|
||||
loop $repeat|4
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $for/i
|
||||
get_global $for/i
|
||||
global.set $for/i
|
||||
global.get $for/i
|
||||
br_if $repeat|4
|
||||
end
|
||||
i32.const 0
|
||||
set_local $0
|
||||
local.set $0
|
||||
loop $repeat|5
|
||||
block $break|5
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 10
|
||||
i32.ge_s
|
||||
br_if $break|5
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
local.set $0
|
||||
br $repeat|5
|
||||
end
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 10
|
||||
i32.ne
|
||||
if
|
||||
@ -122,38 +122,38 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
set_local $0
|
||||
local.set $0
|
||||
loop $repeat|6
|
||||
block $break|6
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 10
|
||||
i32.ge_s
|
||||
br_if $break|6
|
||||
i32.const 0
|
||||
set_local $1
|
||||
local.set $1
|
||||
loop $repeat|7
|
||||
block $break|7
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 10
|
||||
i32.ge_s
|
||||
br_if $break|7
|
||||
block $continue|7
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.eq
|
||||
br_if $continue|7
|
||||
end
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $1
|
||||
local.set $1
|
||||
br $repeat|7
|
||||
end
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
local.set $0
|
||||
br $repeat|6
|
||||
end
|
||||
end
|
||||
|
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\06\00\00\00f\00o\00r\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $for/i (mut i32) (i32.const 0))
|
||||
(global $HEAP_BASE i32 (i32.const 24))
|
||||
@ -18,24 +18,24 @@
|
||||
(local $3 i32)
|
||||
block $break|0
|
||||
i32.const 0
|
||||
set_global $for/i
|
||||
global.set $for/i
|
||||
loop $repeat|0
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 10
|
||||
i32.lt_s
|
||||
i32.eqz
|
||||
br_if $break|0
|
||||
nop
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $for/i
|
||||
global.set $for/i
|
||||
br $repeat|0
|
||||
unreachable
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 10
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -49,18 +49,18 @@
|
||||
end
|
||||
block $break|1
|
||||
i32.const 0
|
||||
set_local $0
|
||||
local.set $0
|
||||
loop $repeat|1
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 10
|
||||
i32.lt_s
|
||||
i32.eqz
|
||||
br_if $break|1
|
||||
nop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
local.set $0
|
||||
br $repeat|1
|
||||
unreachable
|
||||
end
|
||||
@ -68,22 +68,22 @@
|
||||
end
|
||||
block $break|2
|
||||
loop $repeat|2
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 0
|
||||
i32.gt_s
|
||||
i32.eqz
|
||||
br_if $break|2
|
||||
nop
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $for/i
|
||||
global.set $for/i
|
||||
br $repeat|2
|
||||
unreachable
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -100,16 +100,16 @@
|
||||
i32.const 1
|
||||
i32.eqz
|
||||
br_if $break|3
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 10
|
||||
i32.eq
|
||||
if
|
||||
br $break|3
|
||||
end
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_global $for/i
|
||||
global.set $for/i
|
||||
br $repeat|3
|
||||
unreachable
|
||||
end
|
||||
@ -121,11 +121,11 @@
|
||||
i32.eqz
|
||||
br_if $break|4
|
||||
block (result i32)
|
||||
get_global $for/i
|
||||
global.get $for/i
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_global $for/i
|
||||
get_global $for/i
|
||||
global.set $for/i
|
||||
global.get $for/i
|
||||
end
|
||||
i32.const 0
|
||||
i32.eq
|
||||
@ -139,26 +139,26 @@
|
||||
end
|
||||
block $break|5
|
||||
i32.const 0
|
||||
set_local $1
|
||||
local.set $1
|
||||
loop $repeat|5
|
||||
block $continue|5
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 10
|
||||
i32.lt_s
|
||||
i32.eqz
|
||||
br_if $break|5
|
||||
br $continue|5
|
||||
end
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $1
|
||||
local.set $1
|
||||
br $repeat|5
|
||||
unreachable
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 10
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -172,43 +172,43 @@
|
||||
end
|
||||
block $break|6
|
||||
i32.const 0
|
||||
set_local $2
|
||||
local.set $2
|
||||
loop $repeat|6
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 10
|
||||
i32.lt_s
|
||||
i32.eqz
|
||||
br_if $break|6
|
||||
block $break|7
|
||||
i32.const 0
|
||||
set_local $3
|
||||
local.set $3
|
||||
loop $repeat|7
|
||||
block $continue|7
|
||||
get_local $3
|
||||
local.get $3
|
||||
i32.const 10
|
||||
i32.lt_s
|
||||
i32.eqz
|
||||
br_if $break|7
|
||||
get_local $2
|
||||
get_local $3
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.eq
|
||||
if
|
||||
br $continue|7
|
||||
end
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $3
|
||||
local.set $3
|
||||
br $repeat|7
|
||||
unreachable
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $2
|
||||
local.set $2
|
||||
br $repeat|6
|
||||
unreachable
|
||||
end
|
||||
|
@ -6,7 +6,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\16\00\00\00f\00u\00n\00c\00t\00i\00o\00n\00-\00e\00x\00p\00r\00e\00s\00s\00i\00o\00n\00.\00t\00s")
|
||||
(table $0 5 anyfunc)
|
||||
(table $0 5 funcref)
|
||||
(elem (i32.const 0) $start~someName|3 $start~anonymous|1 $start~anonymous|1 $start~someName|3 $start~anonymous|4)
|
||||
(global $function-expression/f1 (mut i32) (i32.const 1))
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
@ -17,7 +17,7 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $start~anonymous|1 (; 1 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $start~someName|3 (; 2 ;) (type $v)
|
||||
nop
|
||||
@ -27,9 +27,9 @@
|
||||
)
|
||||
(func $start (; 4 ;) (type $v)
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 1
|
||||
get_global $function-expression/f1
|
||||
global.get $function-expression/f1
|
||||
call_indirect (type $ii)
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -42,9 +42,9 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 2
|
||||
get_global $function-expression/f2
|
||||
global.get $function-expression/f2
|
||||
call_indirect (type $ii)
|
||||
i32.const 2
|
||||
i32.ne
|
||||
@ -57,12 +57,12 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
set_global $~argc
|
||||
get_global $function-expression/f3
|
||||
global.set $~argc
|
||||
global.get $function-expression/f3
|
||||
call_indirect (type $v)
|
||||
i32.const 0
|
||||
set_global $~argc
|
||||
get_global $function-expression/f4
|
||||
global.set $~argc
|
||||
global.get $function-expression/f4
|
||||
call_indirect (type $i)
|
||||
i32.const 1
|
||||
i32.ne
|
||||
|
@ -6,7 +6,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\16\00\00\00f\00u\00n\00c\00t\00i\00o\00n\00-\00e\00x\00p\00r\00e\00s\00s\00i\00o\00n\00.\00t\00s\00")
|
||||
(table $0 5 anyfunc)
|
||||
(table $0 5 funcref)
|
||||
(elem (i32.const 0) $null $start~anonymous|1 $start~anonymous|2 $start~someName|3 $start~anonymous|4)
|
||||
(global $function-expression/f1 (mut i32) (i32.const 1))
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
@ -18,10 +18,10 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $start~anonymous|1 (; 1 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $start~anonymous|2 (; 2 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $start~someName|3 (; 3 ;) (type $v)
|
||||
nop
|
||||
@ -32,9 +32,9 @@
|
||||
(func $start (; 5 ;) (type $v)
|
||||
block (result i32)
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 1
|
||||
get_global $function-expression/f1
|
||||
global.get $function-expression/f1
|
||||
call_indirect (type $ii)
|
||||
end
|
||||
i32.const 1
|
||||
@ -50,9 +50,9 @@
|
||||
end
|
||||
block (result i32)
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 2
|
||||
get_global $function-expression/f2
|
||||
global.get $function-expression/f2
|
||||
call_indirect (type $ii)
|
||||
end
|
||||
i32.const 2
|
||||
@ -68,14 +68,14 @@
|
||||
end
|
||||
block
|
||||
i32.const 0
|
||||
set_global $~argc
|
||||
get_global $function-expression/f3
|
||||
global.set $~argc
|
||||
global.get $function-expression/f3
|
||||
call_indirect (type $v)
|
||||
end
|
||||
block (result i32)
|
||||
i32.const 0
|
||||
set_global $~argc
|
||||
get_global $function-expression/f4
|
||||
global.set $~argc
|
||||
global.get $function-expression/f4
|
||||
call_indirect (type $i)
|
||||
end
|
||||
i32.const 1
|
||||
|
@ -7,7 +7,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\11\00\00\00f\00u\00n\00c\00t\00i\00o\00n\00-\00t\00y\00p\00e\00s\00.\00t\00s")
|
||||
(table $0 5 anyfunc)
|
||||
(table $0 5 funcref)
|
||||
(elem (i32.const 0) $null $function-types/makeAdder<i32>~anonymous|1 $function-types/makeAdder<i64>~anonymous|2 $function-types/makeAdder<f64>~anonymous|3 $function-types/makeAdder<i32>~anonymous|1)
|
||||
(global $function-types/i32Adder (mut i32) (i32.const 0))
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
@ -16,29 +16,29 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $function-types/makeAdder<i32>~anonymous|1 (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
)
|
||||
(func $function-types/makeAdder<i64>~anonymous|2 (; 2 ;) (type $III) (param $0 i64) (param $1 i64) (result i64)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i64.add
|
||||
)
|
||||
(func $function-types/makeAdder<f64>~anonymous|3 (; 3 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
f64.add
|
||||
)
|
||||
(func $start (; 4 ;) (type $v)
|
||||
(local $0 i32)
|
||||
i32.const 1
|
||||
set_global $function-types/i32Adder
|
||||
global.set $function-types/i32Adder
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 1
|
||||
i32.const 2
|
||||
get_global $function-types/i32Adder
|
||||
global.get $function-types/i32Adder
|
||||
call_indirect (type $iii)
|
||||
i32.const 3
|
||||
i32.ne
|
||||
@ -51,12 +51,12 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $function-types/i64Adder
|
||||
global.set $function-types/i64Adder
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i64.const 10
|
||||
i64.const 20
|
||||
get_global $function-types/i64Adder
|
||||
global.get $function-types/i64Adder
|
||||
call_indirect (type $III)
|
||||
i64.const 30
|
||||
i64.ne
|
||||
@ -69,7 +69,7 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
f64.const 1.5
|
||||
f64.const 2.5
|
||||
i32.const 3
|
||||
@ -85,10 +85,10 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 2
|
||||
i32.const 3
|
||||
get_global $function-types/i32Adder
|
||||
global.get $function-types/i32Adder
|
||||
call_indirect (type $iii)
|
||||
i32.const 5
|
||||
i32.ne
|
||||
@ -101,7 +101,7 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 3
|
||||
i32.const 4
|
||||
i32.const 1
|
||||
@ -117,7 +117,7 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 4
|
||||
i32.const 5
|
||||
i32.const 4
|
||||
@ -133,11 +133,11 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
block $1of1
|
||||
block $0of1
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
i32.const 2
|
||||
i32.sub
|
||||
br_table $0of1 $1of1 $outOfRange
|
||||
@ -145,13 +145,13 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 1
|
||||
i32.const 2
|
||||
get_local $0
|
||||
local.get $0
|
||||
call_indirect (type $iii)
|
||||
i32.const 3
|
||||
i32.ne
|
||||
@ -164,7 +164,7 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 1
|
||||
i32.const 2
|
||||
i32.const 1
|
||||
|
@ -9,7 +9,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\11\00\00\00f\00u\00n\00c\00t\00i\00o\00n\00-\00t\00y\00p\00e\00s\00.\00t\00s\00")
|
||||
(table $0 5 anyfunc)
|
||||
(table $0 5 funcref)
|
||||
(elem (i32.const 0) $null $function-types/makeAdder<i32>~anonymous|1 $function-types/makeAdder<i64>~anonymous|2 $function-types/makeAdder<f64>~anonymous|3 $function-types/addI32)
|
||||
(global $function-types/i32Adder (mut i32) (i32.const 0))
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
@ -19,24 +19,24 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $function-types/makeAdder<i32>~anonymous|1 (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
)
|
||||
(func $function-types/makeAdder<i32> (; 2 ;) (type $i) (result i32)
|
||||
i32.const 1
|
||||
)
|
||||
(func $function-types/makeAdder<i64>~anonymous|2 (; 3 ;) (type $III) (param $0 i64) (param $1 i64) (result i64)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i64.add
|
||||
)
|
||||
(func $function-types/makeAdder<i64> (; 4 ;) (type $i) (result i32)
|
||||
i32.const 2
|
||||
)
|
||||
(func $function-types/makeAdder<f64>~anonymous|3 (; 5 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
f64.add
|
||||
)
|
||||
(func $function-types/makeAdder<f64> (; 6 ;) (type $i) (result i32)
|
||||
@ -44,38 +44,38 @@
|
||||
)
|
||||
(func $function-types/doAddWithFn<i32> (; 7 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
get_local $0
|
||||
get_local $1
|
||||
get_local $2
|
||||
global.set $~argc
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
call_indirect (type $iii)
|
||||
)
|
||||
(func $function-types/doAdd<i32> (; 8 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
get_local $0
|
||||
get_local $1
|
||||
global.set $~argc
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $function-types/makeAdder<i32>
|
||||
call_indirect (type $iii)
|
||||
)
|
||||
(func $function-types/addI32 (; 9 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
)
|
||||
(func $function-types/makeAndAdd<i32> (; 10 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
get_local $0
|
||||
get_local $1
|
||||
get_local $2
|
||||
global.set $~argc
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
call_indirect (type $iii)
|
||||
)
|
||||
(func $function-types/makeAndAdd<i32>|trampoline (; 11 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
block $1of1
|
||||
block $0of1
|
||||
block $outOfRange
|
||||
get_global $~argc
|
||||
global.get $~argc
|
||||
i32.const 2
|
||||
i32.sub
|
||||
br_table $0of1 $1of1 $outOfRange
|
||||
@ -83,23 +83,23 @@
|
||||
unreachable
|
||||
end
|
||||
call $function-types/makeAdder<i32>
|
||||
set_local $2
|
||||
local.set $2
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
call $function-types/makeAndAdd<i32>
|
||||
)
|
||||
(func $start (; 12 ;) (type $v)
|
||||
nop
|
||||
call $function-types/makeAdder<i32>
|
||||
set_global $function-types/i32Adder
|
||||
global.set $function-types/i32Adder
|
||||
block (result i32)
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 1
|
||||
i32.const 2
|
||||
get_global $function-types/i32Adder
|
||||
global.get $function-types/i32Adder
|
||||
call_indirect (type $iii)
|
||||
end
|
||||
i32.const 3
|
||||
@ -114,13 +114,13 @@
|
||||
unreachable
|
||||
end
|
||||
call $function-types/makeAdder<i64>
|
||||
set_global $function-types/i64Adder
|
||||
global.set $function-types/i64Adder
|
||||
block (result i64)
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i64.const 10
|
||||
i64.const 20
|
||||
get_global $function-types/i64Adder
|
||||
global.get $function-types/i64Adder
|
||||
call_indirect (type $III)
|
||||
end
|
||||
i64.const 30
|
||||
@ -136,7 +136,7 @@
|
||||
end
|
||||
block (result f64)
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
f64.const 1.5
|
||||
f64.const 2.5
|
||||
call $function-types/makeAdder<f64>
|
||||
@ -155,7 +155,7 @@
|
||||
end
|
||||
i32.const 2
|
||||
i32.const 3
|
||||
get_global $function-types/i32Adder
|
||||
global.get $function-types/i32Adder
|
||||
call $function-types/doAddWithFn<i32>
|
||||
i32.const 5
|
||||
i32.eq
|
||||
@ -199,7 +199,7 @@
|
||||
end
|
||||
block (result i32)
|
||||
i32.const 2
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 1
|
||||
i32.const 2
|
||||
i32.const 0
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -15,7 +15,7 @@
|
||||
(type $fff (func (param f32 f32) (result f32)))
|
||||
(type $FFF (func (param f64 f64) (result f64)))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
@ -40,39 +40,39 @@
|
||||
nop
|
||||
)
|
||||
(func $function/ii (; 6 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $function/II (; 7 ;) (type $II) (param $0 i64) (result i64)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $function/ff (; 8 ;) (type $ff) (param $0 f32) (result f32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $function/FF (; 9 ;) (type $FF) (param $0 f64) (result f64)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $function/iiv (; 10 ;) (type $iiv) (param $0 i32) (param $1 i32)
|
||||
nop
|
||||
)
|
||||
(func $function/iii (; 11 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
)
|
||||
(func $function/III (; 12 ;) (type $IiI) (param $0 i64) (param $1 i32) (result i64)
|
||||
get_local $0
|
||||
get_local $1
|
||||
i64.extend_s/i32
|
||||
local.get $0
|
||||
local.get $1
|
||||
i64.extend_i32_s
|
||||
i64.add
|
||||
)
|
||||
(func $function/fff (; 13 ;) (type $fff) (param $0 f32) (param $1 f32) (result f32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
f32.add
|
||||
)
|
||||
(func $function/FFF (; 14 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
f64.add
|
||||
)
|
||||
(func $start (; 15 ;) (type $v)
|
||||
|
@ -3,7 +3,7 @@
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 2 anyfunc)
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $null $getter-call/C#get:x~anonymous|1)
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
@ -16,17 +16,17 @@
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1073741824
|
||||
i32.gt_u
|
||||
if
|
||||
unreachable
|
||||
end
|
||||
get_global $~lib/allocator/arena/offset
|
||||
tee_local $1
|
||||
get_local $0
|
||||
global.get $~lib/allocator/arena/offset
|
||||
local.tee $1
|
||||
local.get $0
|
||||
i32.const 1
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.gt_u
|
||||
select
|
||||
@ -35,16 +35,16 @@
|
||||
i32.add
|
||||
i32.const -8
|
||||
i32.and
|
||||
tee_local $2
|
||||
local.tee $2
|
||||
current_memory
|
||||
tee_local $3
|
||||
local.tee $3
|
||||
i32.const 16
|
||||
i32.shl
|
||||
i32.gt_u
|
||||
if
|
||||
get_local $3
|
||||
get_local $2
|
||||
get_local $1
|
||||
local.get $3
|
||||
local.get $2
|
||||
local.get $1
|
||||
i32.sub
|
||||
i32.const 65535
|
||||
i32.add
|
||||
@ -52,16 +52,16 @@
|
||||
i32.and
|
||||
i32.const 16
|
||||
i32.shr_u
|
||||
tee_local $0
|
||||
get_local $3
|
||||
get_local $0
|
||||
local.tee $0
|
||||
local.get $3
|
||||
local.get $0
|
||||
i32.gt_s
|
||||
select
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
@ -70,9 +70,9 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $2
|
||||
set_global $~lib/allocator/arena/offset
|
||||
get_local $1
|
||||
local.get $2
|
||||
global.set $~lib/allocator/arena/offset
|
||||
local.get $1
|
||||
)
|
||||
(func $getter-call/C#get:x~anonymous|1 (; 1 ;) (type $i) (result i32)
|
||||
i32.const 42
|
||||
@ -82,15 +82,15 @@
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
drop
|
||||
i32.const 0
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 1
|
||||
call_indirect (type $i)
|
||||
)
|
||||
(func $start (; 3 ;) (type $v)
|
||||
i32.const 8
|
||||
set_global $~lib/allocator/arena/startOffset
|
||||
get_global $~lib/allocator/arena/startOffset
|
||||
set_global $~lib/allocator/arena/offset
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
global.get $~lib/allocator/arena/startOffset
|
||||
global.set $~lib/allocator/arena/offset
|
||||
)
|
||||
(func $null (; 4 ;) (type $v)
|
||||
nop
|
||||
|
@ -3,7 +3,7 @@
|
||||
(type $ii (func (param i32) (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 2 anyfunc)
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $null $getter-call/C#get:x~anonymous|1)
|
||||
(global $~lib/internal/allocator/AL_BITS i32 (i32.const 3))
|
||||
(global $~lib/internal/allocator/AL_SIZE i32 (i32.const 8))
|
||||
@ -24,41 +24,41 @@
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
get_local $0
|
||||
get_global $~lib/internal/allocator/MAX_SIZE_32
|
||||
local.get $0
|
||||
global.get $~lib/internal/allocator/MAX_SIZE_32
|
||||
i32.gt_u
|
||||
if
|
||||
unreachable
|
||||
end
|
||||
get_global $~lib/allocator/arena/offset
|
||||
set_local $1
|
||||
get_local $1
|
||||
get_local $0
|
||||
tee_local $2
|
||||
global.get $~lib/allocator/arena/offset
|
||||
local.set $1
|
||||
local.get $1
|
||||
local.get $0
|
||||
local.tee $2
|
||||
i32.const 1
|
||||
tee_local $3
|
||||
get_local $2
|
||||
get_local $3
|
||||
local.tee $3
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.gt_u
|
||||
select
|
||||
i32.add
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.add
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
set_local $4
|
||||
local.set $4
|
||||
current_memory
|
||||
set_local $5
|
||||
get_local $4
|
||||
get_local $5
|
||||
local.set $5
|
||||
local.get $4
|
||||
local.get $5
|
||||
i32.const 16
|
||||
i32.shl
|
||||
i32.gt_u
|
||||
if
|
||||
get_local $4
|
||||
get_local $1
|
||||
local.get $4
|
||||
local.get $1
|
||||
i32.sub
|
||||
i32.const 65535
|
||||
i32.add
|
||||
@ -68,22 +68,22 @@
|
||||
i32.and
|
||||
i32.const 16
|
||||
i32.shr_u
|
||||
set_local $2
|
||||
get_local $5
|
||||
tee_local $3
|
||||
get_local $2
|
||||
tee_local $6
|
||||
get_local $3
|
||||
get_local $6
|
||||
local.set $2
|
||||
local.get $5
|
||||
local.tee $3
|
||||
local.get $2
|
||||
local.tee $6
|
||||
local.get $3
|
||||
local.get $6
|
||||
i32.gt_s
|
||||
select
|
||||
set_local $3
|
||||
get_local $3
|
||||
local.set $3
|
||||
local.get $3
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
if
|
||||
get_local $2
|
||||
local.get $2
|
||||
grow_memory
|
||||
i32.const 0
|
||||
i32.lt_s
|
||||
@ -92,24 +92,24 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $4
|
||||
set_global $~lib/allocator/arena/offset
|
||||
get_local $1
|
||||
local.get $4
|
||||
global.set $~lib/allocator/arena/offset
|
||||
local.get $1
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 1 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
call $~lib/allocator/arena/__memory_allocate
|
||||
return
|
||||
)
|
||||
(func $getter-call/C#constructor (; 2 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
call $~lib/memory/memory.allocate
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $getter-call/C#get:x~anonymous|1 (; 3 ;) (type $i) (result i32)
|
||||
i32.const 42
|
||||
@ -121,24 +121,24 @@
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
call $getter-call/C#constructor
|
||||
set_local $0
|
||||
local.set $0
|
||||
i32.const 0
|
||||
set_global $~argc
|
||||
get_local $0
|
||||
global.set $~argc
|
||||
local.get $0
|
||||
call $getter-call/C#get:x
|
||||
call_indirect (type $i)
|
||||
)
|
||||
(func $start (; 6 ;) (type $v)
|
||||
get_global $HEAP_BASE
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $HEAP_BASE
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.add
|
||||
get_global $~lib/internal/allocator/AL_MASK
|
||||
global.get $~lib/internal/allocator/AL_MASK
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
set_global $~lib/allocator/arena/startOffset
|
||||
get_global $~lib/allocator/arena/startOffset
|
||||
set_global $~lib/allocator/arena/offset
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
global.get $~lib/allocator/arena/startOffset
|
||||
global.set $~lib/allocator/arena/offset
|
||||
)
|
||||
(func $null (; 7 ;) (type $v)
|
||||
)
|
||||
|
@ -4,14 +4,14 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\10\00\00\00g\00e\00t\00t\00e\00r\00-\00s\00e\00t\00t\00e\00r\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $getter-setter/Foo._bar (mut i32) (i32.const 0))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $start (; 1 ;) (type $v)
|
||||
get_global $getter-setter/Foo._bar
|
||||
global.get $getter-setter/Foo._bar
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
@ -21,8 +21,8 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
set_global $getter-setter/Foo._bar
|
||||
get_global $getter-setter/Foo._bar
|
||||
global.set $getter-setter/Foo._bar
|
||||
global.get $getter-setter/Foo._bar
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
@ -34,8 +34,8 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 2
|
||||
set_global $getter-setter/Foo._bar
|
||||
get_global $getter-setter/Foo._bar
|
||||
global.set $getter-setter/Foo._bar
|
||||
global.get $getter-setter/Foo._bar
|
||||
i32.const 2
|
||||
i32.ne
|
||||
if
|
||||
|
@ -6,7 +6,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\10\00\00\00g\00e\00t\00t\00e\00r\00-\00s\00e\00t\00t\00e\00r\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $getter-setter/Foo._bar (mut i32) (i32.const 0))
|
||||
(global $HEAP_BASE i32 (i32.const 44))
|
||||
@ -14,11 +14,11 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $getter-setter/Foo.get:bar (; 1 ;) (type $i) (result i32)
|
||||
get_global $getter-setter/Foo._bar
|
||||
global.get $getter-setter/Foo._bar
|
||||
)
|
||||
(func $getter-setter/Foo.set:bar (; 2 ;) (type $iv) (param $0 i32)
|
||||
get_local $0
|
||||
set_global $getter-setter/Foo._bar
|
||||
local.get $0
|
||||
global.set $getter-setter/Foo._bar
|
||||
)
|
||||
(func $start (; 3 ;) (type $v)
|
||||
call $getter-setter/Foo.get:bar
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\05\00\00\00i\00f\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
@ -16,11 +16,11 @@
|
||||
(func $if/ifThenElse (; 1 ;) (type $ii) (param $0 i32) (result i32)
|
||||
i32.const 1
|
||||
i32.const 0
|
||||
get_local $0
|
||||
local.get $0
|
||||
select
|
||||
)
|
||||
(func $if/ifThen (; 2 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
if
|
||||
i32.const 1
|
||||
return
|
||||
@ -28,7 +28,7 @@
|
||||
i32.const 0
|
||||
)
|
||||
(func $if/ifAlwaysReturns (; 3 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
if (result i32)
|
||||
i32.const 1
|
||||
else
|
||||
|
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\05\00\00\00i\00f\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 24))
|
||||
(export "memory" (memory $0))
|
||||
@ -16,7 +16,7 @@
|
||||
(export "ifAlwaysReturns" (func $if/ifAlwaysReturns))
|
||||
(start $start)
|
||||
(func $if/ifThenElse (; 1 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
if
|
||||
i32.const 1
|
||||
return
|
||||
@ -28,7 +28,7 @@
|
||||
unreachable
|
||||
)
|
||||
(func $if/ifThen (; 2 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
if
|
||||
i32.const 1
|
||||
return
|
||||
@ -36,7 +36,7 @@
|
||||
i32.const 0
|
||||
)
|
||||
(func $if/ifThenElseBlock (; 3 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
if
|
||||
i32.const 1
|
||||
return
|
||||
@ -48,7 +48,7 @@
|
||||
unreachable
|
||||
)
|
||||
(func $if/ifAlwaysReturns (; 4 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
if
|
||||
i32.const 1
|
||||
return
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $export/a i32 (i32.const 1))
|
||||
(global $export/b i32 (i32.const 2))
|
||||
@ -12,46 +12,46 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $export/add (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.add
|
||||
)
|
||||
(func $export/sub (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.sub
|
||||
)
|
||||
(func $export/mul (; 2 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.mul
|
||||
)
|
||||
(func $export/ns.two (; 3 ;) (type $v)
|
||||
nop
|
||||
)
|
||||
(func $start (; 4 ;) (type $v)
|
||||
get_global $export/a
|
||||
get_global $export/b
|
||||
global.get $export/a
|
||||
global.get $export/b
|
||||
call $export/add
|
||||
get_global $export/b
|
||||
get_global $export/c
|
||||
global.get $export/b
|
||||
global.get $export/c
|
||||
call $export/sub
|
||||
i32.add
|
||||
get_global $export/c
|
||||
get_global $export/a
|
||||
global.get $export/c
|
||||
global.get $export/a
|
||||
call $export/mul
|
||||
i32.add
|
||||
drop
|
||||
call $export/ns.two
|
||||
get_global $export/a
|
||||
get_global $export/b
|
||||
global.get $export/a
|
||||
global.get $export/b
|
||||
call $export/add
|
||||
get_global $export/b
|
||||
get_global $export/c
|
||||
global.get $export/b
|
||||
global.get $export/c
|
||||
call $export/sub
|
||||
i32.add
|
||||
get_global $export/c
|
||||
get_global $export/a
|
||||
global.get $export/c
|
||||
global.get $export/a
|
||||
call $export/mul
|
||||
i32.add
|
||||
drop
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $v (func))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0d\00\00\00i\00n\00f\00e\00r\00-\00t\00y\00p\00e\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $infer-type/ri (mut i32) (i32.const 0))
|
||||
(global $infer-type/rI (mut i64) (i64.const 0))
|
||||
@ -14,22 +14,22 @@
|
||||
(func $start (; 0 ;) (type $v)
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
set_global $infer-type/ri
|
||||
global.set $infer-type/ri
|
||||
i64.const 0
|
||||
set_global $infer-type/rI
|
||||
global.set $infer-type/rI
|
||||
f32.const 0
|
||||
set_global $infer-type/rf
|
||||
global.set $infer-type/rf
|
||||
f64.const 0
|
||||
set_global $infer-type/rF
|
||||
global.set $infer-type/rF
|
||||
loop $repeat|0
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 10
|
||||
i32.lt_s
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
local.set $0
|
||||
br $repeat|0
|
||||
end
|
||||
end
|
||||
|
@ -8,7 +8,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0d\00\00\00i\00n\00f\00e\00r\00-\00t\00y\00p\00e\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $infer-type/i i32 (i32.const 10))
|
||||
(global $infer-type/I i64 (i64.const 4294967296))
|
||||
@ -31,17 +31,17 @@
|
||||
(local $4 i64)
|
||||
(local $5 f64)
|
||||
i32.const 10
|
||||
set_local $0
|
||||
local.set $0
|
||||
i64.const 4294967296
|
||||
set_local $1
|
||||
local.set $1
|
||||
f64.const 1.5
|
||||
set_local $2
|
||||
get_global $infer-type/i
|
||||
set_local $3
|
||||
get_global $infer-type/I
|
||||
set_local $4
|
||||
get_global $infer-type/F
|
||||
set_local $5
|
||||
local.set $2
|
||||
global.get $infer-type/i
|
||||
local.set $3
|
||||
global.get $infer-type/I
|
||||
local.set $4
|
||||
global.get $infer-type/F
|
||||
local.set $5
|
||||
)
|
||||
(func $infer-type/reti (; 2 ;) (type $i) (result i32)
|
||||
i32.const 0
|
||||
@ -58,47 +58,47 @@
|
||||
(func $start (; 6 ;) (type $v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
get_global $infer-type/i
|
||||
global.get $infer-type/i
|
||||
drop
|
||||
get_global $infer-type/I
|
||||
global.get $infer-type/I
|
||||
drop
|
||||
get_global $infer-type/F
|
||||
global.get $infer-type/F
|
||||
drop
|
||||
call $infer-type/locals
|
||||
call $infer-type/reti
|
||||
set_global $infer-type/ri
|
||||
get_global $infer-type/ri
|
||||
global.set $infer-type/ri
|
||||
global.get $infer-type/ri
|
||||
drop
|
||||
call $infer-type/retI
|
||||
set_global $infer-type/rI
|
||||
get_global $infer-type/rI
|
||||
global.set $infer-type/rI
|
||||
global.get $infer-type/rI
|
||||
drop
|
||||
call $infer-type/retf
|
||||
set_global $infer-type/rf
|
||||
get_global $infer-type/rf
|
||||
global.set $infer-type/rf
|
||||
global.get $infer-type/rf
|
||||
drop
|
||||
call $infer-type/refF
|
||||
set_global $infer-type/rF
|
||||
get_global $infer-type/rF
|
||||
global.set $infer-type/rF
|
||||
global.get $infer-type/rF
|
||||
drop
|
||||
block $break|0
|
||||
block
|
||||
i32.const 0
|
||||
set_local $0
|
||||
local.set $0
|
||||
i32.const 10
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
loop $repeat|0
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.lt_s
|
||||
i32.eqz
|
||||
br_if $break|0
|
||||
nop
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
local.set $0
|
||||
br $repeat|0
|
||||
unreachable
|
||||
end
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
|
@ -6,7 +6,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0b\00\00\00i\00n\00l\00i\00n\00i\00n\00g\00.\00t\00s")
|
||||
(table $0 2 anyfunc)
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $null $inlining/test_funcs~anonymous|1)
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
(export "memory" (memory $0))
|
||||
@ -17,11 +17,11 @@
|
||||
i32.const 3
|
||||
)
|
||||
(func $inlining/test_funcs~anonymous|1 (; 2 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $inlining/test_funcs (; 3 ;) (type $v)
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 2
|
||||
i32.const 1
|
||||
call_indirect (type $ii)
|
||||
|
@ -6,7 +6,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0b\00\00\00i\00n\00l\00i\00n\00i\00n\00g\00.\00t\00s\00")
|
||||
(table $0 2 anyfunc)
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $null $inlining/test_funcs~anonymous|1)
|
||||
(global $inlining/constantGlobal i32 (i32.const 1))
|
||||
(global $~argc (mut i32) (i32.const 0))
|
||||
@ -16,12 +16,12 @@
|
||||
(export "test" (func $inlining/test))
|
||||
(start $start)
|
||||
(func $inlining/test (; 1 ;) (type $i) (result i32)
|
||||
get_global $inlining/constantGlobal
|
||||
global.get $inlining/constantGlobal
|
||||
i32.const 2
|
||||
i32.add
|
||||
)
|
||||
(func $inlining/test_funcs~anonymous|1 (; 2 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $inlining/test_funcs (; 3 ;) (type $v)
|
||||
(local $0 f32)
|
||||
@ -33,20 +33,20 @@
|
||||
(local $6 i32)
|
||||
(local $7 i32)
|
||||
f32.const -1
|
||||
set_local $0
|
||||
local.set $0
|
||||
f64.const -2
|
||||
set_local $1
|
||||
local.set $1
|
||||
block $inlining/func_ii|inlined.0 (result i32)
|
||||
i32.const 42
|
||||
set_local $2
|
||||
get_local $2
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.const 42
|
||||
i32.eq
|
||||
if
|
||||
i32.const 1
|
||||
br $inlining/func_ii|inlined.0
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 42
|
||||
i32.lt_s
|
||||
if (result i32)
|
||||
@ -68,15 +68,15 @@
|
||||
end
|
||||
block $inlining/func_ii|inlined.1 (result i32)
|
||||
i32.const 41
|
||||
set_local $2
|
||||
get_local $2
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.const 42
|
||||
i32.eq
|
||||
if
|
||||
i32.const 1
|
||||
br $inlining/func_ii|inlined.1
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 42
|
||||
i32.lt_s
|
||||
if (result i32)
|
||||
@ -98,15 +98,15 @@
|
||||
end
|
||||
block $inlining/func_ii|inlined.2 (result i32)
|
||||
i32.const 43
|
||||
set_local $2
|
||||
get_local $2
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.const 42
|
||||
i32.eq
|
||||
if
|
||||
i32.const 1
|
||||
br $inlining/func_ii|inlined.2
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 42
|
||||
i32.lt_s
|
||||
if (result i32)
|
||||
@ -128,8 +128,8 @@
|
||||
end
|
||||
block $inlining/func_ii_opt|inlined.0 (result i32)
|
||||
i32.const 0
|
||||
set_local $2
|
||||
get_local $2
|
||||
local.set $2
|
||||
local.get $2
|
||||
end
|
||||
i32.const 0
|
||||
i32.eq
|
||||
@ -144,8 +144,8 @@
|
||||
end
|
||||
block $inlining/func_ii_opt|inlined.1 (result i32)
|
||||
i32.const 1
|
||||
set_local $2
|
||||
get_local $2
|
||||
local.set $2
|
||||
local.get $2
|
||||
end
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -160,20 +160,20 @@
|
||||
end
|
||||
block $inlining/func_ii_loc|inlined.0 (result i32)
|
||||
i32.const 2
|
||||
set_local $2
|
||||
get_local $2
|
||||
set_local $3
|
||||
local.set $2
|
||||
local.get $2
|
||||
local.set $3
|
||||
block
|
||||
get_local $3
|
||||
set_local $5
|
||||
get_local $5
|
||||
set_local $6
|
||||
get_local $6
|
||||
local.get $3
|
||||
local.set $5
|
||||
local.get $5
|
||||
local.set $6
|
||||
local.get $6
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $4
|
||||
local.set $4
|
||||
end
|
||||
get_local $4
|
||||
local.get $4
|
||||
end
|
||||
i32.const 3
|
||||
i32.eq
|
||||
@ -188,20 +188,20 @@
|
||||
end
|
||||
block $inlining/func_ii_loc|inlined.1 (result i32)
|
||||
i32.const 3
|
||||
set_local $4
|
||||
get_local $4
|
||||
set_local $3
|
||||
local.set $4
|
||||
local.get $4
|
||||
local.set $3
|
||||
block
|
||||
get_local $3
|
||||
set_local $6
|
||||
get_local $6
|
||||
set_local $5
|
||||
get_local $5
|
||||
local.get $3
|
||||
local.set $6
|
||||
local.get $6
|
||||
local.set $5
|
||||
local.get $5
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $2
|
||||
local.set $2
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
end
|
||||
i32.const 4
|
||||
i32.eq
|
||||
@ -215,10 +215,10 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
set_local $2
|
||||
local.set $2
|
||||
block (result i32)
|
||||
i32.const 1
|
||||
set_global $~argc
|
||||
global.set $~argc
|
||||
i32.const 2
|
||||
block $inlining/func_fe|inlined.0 (result i32)
|
||||
i32.const 1
|
||||
@ -238,11 +238,11 @@
|
||||
end
|
||||
block $inlining/Foo.method_static|inlined.0 (result i32)
|
||||
i32.const 42
|
||||
set_local $2
|
||||
local.set $2
|
||||
i32.const 2
|
||||
set_local $3
|
||||
get_local $2
|
||||
get_local $3
|
||||
local.set $3
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.add
|
||||
end
|
||||
i32.const 44
|
||||
@ -257,13 +257,13 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 123
|
||||
set_local $7
|
||||
local.set $7
|
||||
block $inlining/Foo#method_this|inlined.0 (result i32)
|
||||
i32.const 43
|
||||
set_local $3
|
||||
local.set $3
|
||||
i32.const 3
|
||||
set_local $2
|
||||
get_local $7
|
||||
local.set $2
|
||||
local.get $7
|
||||
end
|
||||
i32.const 123
|
||||
i32.eq
|
||||
|
@ -4,14 +4,14 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0d\00\00\00i\00n\00s\00t\00a\00n\00c\00e\00o\00f\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $instanceof/an (mut i32) (i32.const 0))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $start (; 1 ;) (type $v)
|
||||
get_global $instanceof/an
|
||||
global.get $instanceof/an
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 8
|
||||
@ -21,8 +21,8 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
set_global $instanceof/an
|
||||
get_global $instanceof/an
|
||||
global.set $instanceof/an
|
||||
global.get $instanceof/an
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
|
@ -6,7 +6,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0d\00\00\00i\00n\00s\00t\00a\00n\00c\00e\00o\00f\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $instanceof/a (mut i32) (i32.const 0))
|
||||
(global $instanceof/b (mut i32) (i32.const 0))
|
||||
@ -236,7 +236,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $instanceof/an
|
||||
global.get $instanceof/an
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.eqz
|
||||
@ -260,8 +260,8 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
set_global $instanceof/an
|
||||
get_global $instanceof/an
|
||||
global.set $instanceof/an
|
||||
global.get $instanceof/an
|
||||
i32.const 0
|
||||
i32.ne
|
||||
i32.eqz
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/builtins/i8.MIN_VALUE i32 (i32.const -128))
|
||||
(global $~lib/builtins/i8.MAX_VALUE i32 (i32.const 127))
|
||||
@ -34,57 +34,57 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $start (; 0 ;) (type $v)
|
||||
get_global $~lib/builtins/i8.MIN_VALUE
|
||||
global.get $~lib/builtins/i8.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/i8.MAX_VALUE
|
||||
global.get $~lib/builtins/i8.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/i16.MIN_VALUE
|
||||
global.get $~lib/builtins/i16.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/i16.MAX_VALUE
|
||||
global.get $~lib/builtins/i16.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/i32.MIN_VALUE
|
||||
global.get $~lib/builtins/i32.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/i32.MAX_VALUE
|
||||
global.get $~lib/builtins/i32.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/i64.MIN_VALUE
|
||||
global.get $~lib/builtins/i64.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/i64.MAX_VALUE
|
||||
global.get $~lib/builtins/i64.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/isize.MIN_VALUE
|
||||
global.get $~lib/builtins/isize.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/isize.MAX_VALUE
|
||||
global.get $~lib/builtins/isize.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/u8.MIN_VALUE
|
||||
global.get $~lib/builtins/u8.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/u8.MAX_VALUE
|
||||
global.get $~lib/builtins/u8.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/u16.MIN_VALUE
|
||||
global.get $~lib/builtins/u16.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/u16.MAX_VALUE
|
||||
global.get $~lib/builtins/u16.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/u32.MIN_VALUE
|
||||
global.get $~lib/builtins/u32.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/u32.MAX_VALUE
|
||||
global.get $~lib/builtins/u32.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/u64.MIN_VALUE
|
||||
global.get $~lib/builtins/u64.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/u64.MAX_VALUE
|
||||
global.get $~lib/builtins/u64.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/usize.MIN_VALUE
|
||||
global.get $~lib/builtins/usize.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/usize.MAX_VALUE
|
||||
global.get $~lib/builtins/usize.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/bool.MIN_VALUE
|
||||
global.get $~lib/builtins/bool.MIN_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/bool.MAX_VALUE
|
||||
global.get $~lib/builtins/bool.MAX_VALUE
|
||||
drop
|
||||
get_global $~lib/builtins/f32.MIN_SAFE_INTEGER
|
||||
global.get $~lib/builtins/f32.MIN_SAFE_INTEGER
|
||||
drop
|
||||
get_global $~lib/builtins/f32.MAX_SAFE_INTEGER
|
||||
global.get $~lib/builtins/f32.MAX_SAFE_INTEGER
|
||||
drop
|
||||
get_global $~lib/builtins/f64.MIN_SAFE_INTEGER
|
||||
global.get $~lib/builtins/f64.MIN_SAFE_INTEGER
|
||||
drop
|
||||
get_global $~lib/builtins/f64.MAX_SAFE_INTEGER
|
||||
global.get $~lib/builtins/f64.MAX_SAFE_INTEGER
|
||||
drop
|
||||
)
|
||||
(func $null (; 1 ;) (type $v)
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
|
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\n\00\00\00l\00o\00g\00i\00c\00a\00l\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $logical/i (mut i32) (i32.const 0))
|
||||
(global $logical/I (mut i64) (i64.const 0))
|
||||
@ -15,8 +15,8 @@
|
||||
(start $start)
|
||||
(func $start (; 1 ;) (type $v)
|
||||
i32.const 2
|
||||
set_global $logical/i
|
||||
get_global $logical/i
|
||||
global.set $logical/i
|
||||
global.get $logical/i
|
||||
i32.const 2
|
||||
i32.ne
|
||||
if
|
||||
@ -28,8 +28,8 @@
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
set_global $logical/i
|
||||
get_global $logical/i
|
||||
global.set $logical/i
|
||||
global.get $logical/i
|
||||
i32.const 1
|
||||
i32.ne
|
||||
if
|
||||
@ -41,8 +41,8 @@
|
||||
unreachable
|
||||
end
|
||||
i64.const 2
|
||||
set_global $logical/I
|
||||
get_global $logical/I
|
||||
global.set $logical/I
|
||||
global.get $logical/I
|
||||
i64.const 2
|
||||
i64.ne
|
||||
if
|
||||
@ -54,8 +54,8 @@
|
||||
unreachable
|
||||
end
|
||||
i64.const 1
|
||||
set_global $logical/I
|
||||
get_global $logical/I
|
||||
global.set $logical/I
|
||||
global.get $logical/I
|
||||
i64.const 1
|
||||
i64.ne
|
||||
if
|
||||
@ -67,8 +67,8 @@
|
||||
unreachable
|
||||
end
|
||||
f32.const 2
|
||||
set_global $logical/f
|
||||
get_global $logical/f
|
||||
global.set $logical/f
|
||||
global.get $logical/f
|
||||
f32.const 2
|
||||
f32.ne
|
||||
if
|
||||
@ -80,8 +80,8 @@
|
||||
unreachable
|
||||
end
|
||||
f32.const 1
|
||||
set_global $logical/f
|
||||
get_global $logical/f
|
||||
global.set $logical/f
|
||||
global.get $logical/f
|
||||
f32.const 1
|
||||
f32.ne
|
||||
if
|
||||
@ -93,8 +93,8 @@
|
||||
unreachable
|
||||
end
|
||||
f64.const 2
|
||||
set_global $logical/F
|
||||
get_global $logical/F
|
||||
global.set $logical/F
|
||||
global.get $logical/F
|
||||
f64.const 2
|
||||
f64.ne
|
||||
if
|
||||
@ -106,8 +106,8 @@
|
||||
unreachable
|
||||
end
|
||||
f64.const 1
|
||||
set_global $logical/F
|
||||
get_global $logical/F
|
||||
global.set $logical/F
|
||||
global.get $logical/F
|
||||
f64.const 1
|
||||
f64.ne
|
||||
if
|
||||
|
@ -4,7 +4,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\n\00\00\00l\00o\00g\00i\00c\00a\00l\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $logical/i (mut i32) (i32.const 0))
|
||||
(global $logical/I (mut i64) (i64.const 0))
|
||||
@ -55,9 +55,9 @@
|
||||
else
|
||||
i32.const 1
|
||||
end
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
if (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
else
|
||||
unreachable
|
||||
end
|
||||
@ -70,11 +70,11 @@
|
||||
else
|
||||
f64.const 1
|
||||
end
|
||||
tee_local $1
|
||||
local.tee $1
|
||||
f64.const 0
|
||||
f64.ne
|
||||
if (result f64)
|
||||
get_local $1
|
||||
local.get $1
|
||||
else
|
||||
unreachable
|
||||
end
|
||||
@ -85,8 +85,8 @@
|
||||
else
|
||||
i32.const 1
|
||||
end
|
||||
set_global $logical/i
|
||||
get_global $logical/i
|
||||
global.set $logical/i
|
||||
global.get $logical/i
|
||||
i32.const 2
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -104,8 +104,8 @@
|
||||
else
|
||||
i32.const 1
|
||||
end
|
||||
set_global $logical/i
|
||||
get_global $logical/i
|
||||
global.set $logical/i
|
||||
global.get $logical/i
|
||||
i32.const 1
|
||||
i32.eq
|
||||
i32.eqz
|
||||
@ -125,8 +125,8 @@
|
||||
else
|
||||
i64.const 1
|
||||
end
|
||||
set_global $logical/I
|
||||
get_global $logical/I
|
||||
global.set $logical/I
|
||||
global.get $logical/I
|
||||
i64.const 2
|
||||
i64.eq
|
||||
i32.eqz
|
||||
@ -146,8 +146,8 @@
|
||||
else
|
||||
i64.const 1
|
||||
end
|
||||
set_global $logical/I
|
||||
get_global $logical/I
|
||||
global.set $logical/I
|
||||
global.get $logical/I
|
||||
i64.const 1
|
||||
i64.eq
|
||||
i32.eqz
|
||||
@ -167,8 +167,8 @@
|
||||
else
|
||||
f32.const 1
|
||||
end
|
||||
set_global $logical/f
|
||||
get_global $logical/f
|
||||
global.set $logical/f
|
||||
global.get $logical/f
|
||||
f32.const 2
|
||||
f32.eq
|
||||
i32.eqz
|
||||
@ -188,8 +188,8 @@
|
||||
else
|
||||
f32.const 1
|
||||
end
|
||||
set_global $logical/f
|
||||
get_global $logical/f
|
||||
global.set $logical/f
|
||||
global.get $logical/f
|
||||
f32.const 1
|
||||
f32.eq
|
||||
i32.eqz
|
||||
@ -209,8 +209,8 @@
|
||||
else
|
||||
f64.const 1
|
||||
end
|
||||
set_global $logical/F
|
||||
get_global $logical/F
|
||||
global.set $logical/F
|
||||
global.get $logical/F
|
||||
f64.const 2
|
||||
f64.eq
|
||||
i32.eqz
|
||||
@ -230,8 +230,8 @@
|
||||
else
|
||||
f64.const 1
|
||||
end
|
||||
set_global $logical/F
|
||||
get_global $logical/F
|
||||
global.set $logical/F
|
||||
global.get $logical/F
|
||||
f64.const 1
|
||||
f64.eq
|
||||
i32.eqz
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $main/code (mut i32) (i32.const 0))
|
||||
(global $~started (mut i32) (i32.const 0))
|
||||
@ -10,15 +10,15 @@
|
||||
(export "table" (table $0))
|
||||
(export "main" (func $main/main))
|
||||
(func $main/main (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_global $~started
|
||||
global.get $~started
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 1
|
||||
set_global $main/code
|
||||
global.set $main/code
|
||||
i32.const 1
|
||||
set_global $~started
|
||||
global.set $~started
|
||||
end
|
||||
get_global $main/code
|
||||
global.get $main/code
|
||||
)
|
||||
(func $null (; 1 ;) (type $v)
|
||||
nop
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $iii (func (param i32 i32) (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $main/code (mut i32) (i32.const 0))
|
||||
(global $~started (mut i32) (i32.const 0))
|
||||
@ -11,18 +11,18 @@
|
||||
(export "table" (table $0))
|
||||
(export "main" (func $main/main))
|
||||
(func $main/main (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
get_global $~started
|
||||
global.get $~started
|
||||
i32.eqz
|
||||
if
|
||||
call $start
|
||||
i32.const 1
|
||||
set_global $~started
|
||||
global.set $~started
|
||||
end
|
||||
get_global $main/code
|
||||
global.get $main/code
|
||||
)
|
||||
(func $start (; 1 ;) (type $v)
|
||||
i32.const 1
|
||||
set_global $main/code
|
||||
global.set $main/code
|
||||
)
|
||||
(func $null (; 2 ;) (type $v)
|
||||
)
|
||||
|
@ -3,7 +3,7 @@
|
||||
(type $FF (func (param f64) (result f64)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
@ -16,139 +16,139 @@
|
||||
(local $5 f64)
|
||||
(local $6 f64)
|
||||
(local $7 f64)
|
||||
get_local $0
|
||||
i64.reinterpret/f64
|
||||
tee_local $4
|
||||
local.get $0
|
||||
i64.reinterpret_f64
|
||||
local.tee $4
|
||||
i64.const 32
|
||||
i64.shr_u
|
||||
i32.wrap/i64
|
||||
tee_local $1
|
||||
i32.wrap_i64
|
||||
local.tee $1
|
||||
i32.const 1048576
|
||||
i32.lt_u
|
||||
tee_local $2
|
||||
local.tee $2
|
||||
i32.eqz
|
||||
if
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 31
|
||||
i32.shr_u
|
||||
set_local $2
|
||||
local.set $2
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
if
|
||||
get_local $4
|
||||
local.get $4
|
||||
i64.const 1
|
||||
i64.shl
|
||||
i64.const 0
|
||||
i64.eq
|
||||
if
|
||||
f64.const -1
|
||||
get_local $0
|
||||
get_local $0
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.mul
|
||||
f64.div
|
||||
return
|
||||
end
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 31
|
||||
i32.shr_u
|
||||
if
|
||||
get_local $0
|
||||
get_local $0
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.sub
|
||||
f64.const 0
|
||||
f64.div
|
||||
return
|
||||
end
|
||||
i32.const -54
|
||||
set_local $3
|
||||
get_local $0
|
||||
local.set $3
|
||||
local.get $0
|
||||
f64.const 18014398509481984
|
||||
f64.mul
|
||||
i64.reinterpret/f64
|
||||
tee_local $4
|
||||
i64.reinterpret_f64
|
||||
local.tee $4
|
||||
i64.const 32
|
||||
i64.shr_u
|
||||
i32.wrap/i64
|
||||
set_local $1
|
||||
i32.wrap_i64
|
||||
local.set $1
|
||||
else
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 2146435072
|
||||
i32.ge_u
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
return
|
||||
else
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 1072693248
|
||||
i32.eq
|
||||
tee_local $2
|
||||
local.tee $2
|
||||
if
|
||||
get_local $4
|
||||
local.get $4
|
||||
i64.const 32
|
||||
i64.shl
|
||||
i64.const 0
|
||||
i64.eq
|
||||
set_local $2
|
||||
local.set $2
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
if
|
||||
f64.const 0
|
||||
return
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 614242
|
||||
i32.add
|
||||
tee_local $1
|
||||
local.tee $1
|
||||
i32.const 20
|
||||
i32.shr_s
|
||||
i32.const 1023
|
||||
i32.sub
|
||||
get_local $3
|
||||
local.get $3
|
||||
i32.add
|
||||
set_local $3
|
||||
get_local $4
|
||||
local.set $3
|
||||
local.get $4
|
||||
i64.const 4294967295
|
||||
i64.and
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 1048575
|
||||
i32.and
|
||||
i32.const 1072079006
|
||||
i32.add
|
||||
i64.extend_u/i32
|
||||
i64.extend_i32_u
|
||||
i64.const 32
|
||||
i64.shl
|
||||
i64.or
|
||||
f64.reinterpret/i64
|
||||
f64.reinterpret_i64
|
||||
f64.const 1
|
||||
f64.sub
|
||||
tee_local $5
|
||||
local.tee $5
|
||||
f64.const 2
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.add
|
||||
f64.div
|
||||
tee_local $6
|
||||
get_local $6
|
||||
local.tee $6
|
||||
local.get $6
|
||||
f64.mul
|
||||
tee_local $7
|
||||
get_local $7
|
||||
local.tee $7
|
||||
local.get $7
|
||||
f64.mul
|
||||
set_local $0
|
||||
get_local $6
|
||||
local.set $0
|
||||
local.get $6
|
||||
f64.const 0.5
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
tee_local $6
|
||||
get_local $7
|
||||
local.tee $6
|
||||
local.get $7
|
||||
f64.const 0.6666666666666735
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.2857142874366239
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.1818357216161805
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.14798198605116586
|
||||
f64.mul
|
||||
f64.add
|
||||
@ -157,11 +157,11 @@
|
||||
f64.mul
|
||||
f64.add
|
||||
f64.mul
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.3999999999940942
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.22222198432149784
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.15313837699209373
|
||||
f64.mul
|
||||
f64.add
|
||||
@ -171,17 +171,17 @@
|
||||
f64.add
|
||||
f64.add
|
||||
f64.mul
|
||||
get_local $3
|
||||
f64.convert_s/i32
|
||||
tee_local $0
|
||||
local.get $3
|
||||
f64.convert_i32_s
|
||||
local.tee $0
|
||||
f64.const 1.9082149292705877e-10
|
||||
f64.mul
|
||||
f64.add
|
||||
get_local $6
|
||||
local.get $6
|
||||
f64.sub
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.add
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.6931471803691238
|
||||
f64.mul
|
||||
f64.add
|
||||
@ -195,151 +195,151 @@
|
||||
(local $6 f64)
|
||||
(local $7 f64)
|
||||
(local $8 f64)
|
||||
get_local $0
|
||||
i64.reinterpret/f64
|
||||
tee_local $5
|
||||
local.get $0
|
||||
i64.reinterpret_f64
|
||||
local.tee $5
|
||||
i64.const 32
|
||||
i64.shr_u
|
||||
i32.wrap/i64
|
||||
tee_local $2
|
||||
i32.wrap_i64
|
||||
local.tee $2
|
||||
i32.const 1048576
|
||||
i32.lt_u
|
||||
tee_local $3
|
||||
local.tee $3
|
||||
i32.eqz
|
||||
if
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 31
|
||||
i32.shr_u
|
||||
set_local $3
|
||||
local.set $3
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
if
|
||||
get_local $5
|
||||
local.get $5
|
||||
i64.const 1
|
||||
i64.shl
|
||||
i64.const 0
|
||||
i64.eq
|
||||
if
|
||||
f64.const -1
|
||||
get_local $0
|
||||
get_local $0
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.mul
|
||||
f64.div
|
||||
return
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 31
|
||||
i32.shr_u
|
||||
if
|
||||
get_local $0
|
||||
get_local $0
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.sub
|
||||
f64.const 0
|
||||
f64.div
|
||||
return
|
||||
end
|
||||
i32.const -54
|
||||
set_local $4
|
||||
get_local $0
|
||||
local.set $4
|
||||
local.get $0
|
||||
f64.const 18014398509481984
|
||||
f64.mul
|
||||
i64.reinterpret/f64
|
||||
tee_local $5
|
||||
i64.reinterpret_f64
|
||||
local.tee $5
|
||||
i64.const 32
|
||||
i64.shr_u
|
||||
i32.wrap/i64
|
||||
set_local $2
|
||||
i32.wrap_i64
|
||||
local.set $2
|
||||
else
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 2146435072
|
||||
i32.ge_u
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
return
|
||||
else
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1072693248
|
||||
i32.eq
|
||||
tee_local $3
|
||||
local.tee $3
|
||||
if
|
||||
get_local $5
|
||||
local.get $5
|
||||
i64.const 32
|
||||
i64.shl
|
||||
i64.const 0
|
||||
i64.eq
|
||||
set_local $3
|
||||
local.set $3
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
if
|
||||
f64.const 0
|
||||
return
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 614242
|
||||
i32.add
|
||||
tee_local $2
|
||||
local.tee $2
|
||||
i32.const 20
|
||||
i32.shr_u
|
||||
i32.const 1023
|
||||
i32.sub
|
||||
get_local $4
|
||||
local.get $4
|
||||
i32.add
|
||||
set_local $4
|
||||
get_local $5
|
||||
local.set $4
|
||||
local.get $5
|
||||
i64.const 4294967295
|
||||
i64.and
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1048575
|
||||
i32.and
|
||||
i32.const 1072079006
|
||||
i32.add
|
||||
i64.extend_u/i32
|
||||
i64.extend_i32_u
|
||||
i64.const 32
|
||||
i64.shl
|
||||
i64.or
|
||||
f64.reinterpret/i64
|
||||
f64.reinterpret_i64
|
||||
f64.const 1
|
||||
f64.sub
|
||||
tee_local $1
|
||||
local.tee $1
|
||||
f64.const 2
|
||||
get_local $1
|
||||
local.get $1
|
||||
f64.add
|
||||
f64.div
|
||||
tee_local $6
|
||||
get_local $6
|
||||
local.tee $6
|
||||
local.get $6
|
||||
f64.mul
|
||||
tee_local $7
|
||||
get_local $7
|
||||
local.tee $7
|
||||
local.get $7
|
||||
f64.mul
|
||||
set_local $0
|
||||
get_local $1
|
||||
get_local $1
|
||||
local.set $0
|
||||
local.get $1
|
||||
local.get $1
|
||||
f64.const 0.5
|
||||
get_local $1
|
||||
local.get $1
|
||||
f64.mul
|
||||
get_local $1
|
||||
local.get $1
|
||||
f64.mul
|
||||
tee_local $1
|
||||
local.tee $1
|
||||
f64.sub
|
||||
i64.reinterpret/f64
|
||||
i64.reinterpret_f64
|
||||
i64.const -4294967296
|
||||
i64.and
|
||||
f64.reinterpret/i64
|
||||
tee_local $8
|
||||
f64.reinterpret_i64
|
||||
local.tee $8
|
||||
f64.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
f64.sub
|
||||
get_local $6
|
||||
get_local $1
|
||||
get_local $7
|
||||
local.get $6
|
||||
local.get $1
|
||||
local.get $7
|
||||
f64.const 0.6666666666666735
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.2857142874366239
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.1818357216161805
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.14798198605116586
|
||||
f64.mul
|
||||
f64.add
|
||||
@ -348,11 +348,11 @@
|
||||
f64.mul
|
||||
f64.add
|
||||
f64.mul
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.3999999999940942
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.22222198432149784
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 0.15313837699209373
|
||||
f64.mul
|
||||
f64.add
|
||||
@ -363,33 +363,33 @@
|
||||
f64.add
|
||||
f64.mul
|
||||
f64.add
|
||||
tee_local $0
|
||||
get_local $8
|
||||
local.tee $0
|
||||
local.get $8
|
||||
f64.add
|
||||
f64.const 1.6751713164886512e-10
|
||||
f64.mul
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.const 1.4426950407214463
|
||||
f64.mul
|
||||
f64.add
|
||||
set_local $6
|
||||
get_local $4
|
||||
f64.convert_s/i32
|
||||
tee_local $7
|
||||
get_local $8
|
||||
local.set $6
|
||||
local.get $4
|
||||
f64.convert_i32_s
|
||||
local.tee $7
|
||||
local.get $8
|
||||
f64.const 1.4426950407214463
|
||||
f64.mul
|
||||
tee_local $1
|
||||
local.tee $1
|
||||
f64.add
|
||||
set_local $0
|
||||
get_local $6
|
||||
get_local $7
|
||||
get_local $0
|
||||
local.set $0
|
||||
local.get $6
|
||||
local.get $7
|
||||
local.get $0
|
||||
f64.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
f64.add
|
||||
f64.add
|
||||
get_local $0
|
||||
local.get $0
|
||||
f64.add
|
||||
)
|
||||
(func $../../examples/mandelbrot/assembly/index/computeLine (; 2 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
|
||||
@ -406,183 +406,183 @@
|
||||
(local $14 f64)
|
||||
f64.const 10
|
||||
f64.const 3
|
||||
get_local $1
|
||||
f64.convert_u/i32
|
||||
tee_local $8
|
||||
local.get $1
|
||||
f64.convert_i32_u
|
||||
local.tee $8
|
||||
f64.mul
|
||||
f64.const 4
|
||||
get_local $2
|
||||
f64.convert_u/i32
|
||||
tee_local $4
|
||||
local.get $2
|
||||
f64.convert_i32_u
|
||||
local.tee $4
|
||||
f64.mul
|
||||
f64.min
|
||||
f64.div
|
||||
set_local $9
|
||||
get_local $0
|
||||
f64.convert_u/i32
|
||||
get_local $4
|
||||
local.set $9
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
local.get $4
|
||||
f64.const 0.5
|
||||
f64.mul
|
||||
f64.sub
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.mul
|
||||
set_local $10
|
||||
get_local $8
|
||||
local.set $10
|
||||
local.get $8
|
||||
f64.const 0.625
|
||||
f64.mul
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.mul
|
||||
set_local $12
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.set $12
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.mul
|
||||
i32.const 1
|
||||
i32.shl
|
||||
set_local $0
|
||||
local.set $0
|
||||
f64.const 1
|
||||
get_local $3
|
||||
f64.convert_u/i32
|
||||
tee_local $6
|
||||
local.get $3
|
||||
f64.convert_i32_u
|
||||
local.tee $6
|
||||
f64.div
|
||||
set_local $13
|
||||
local.set $13
|
||||
f64.const 8
|
||||
get_local $6
|
||||
local.get $6
|
||||
f64.min
|
||||
set_local $8
|
||||
local.set $8
|
||||
loop $repeat|0
|
||||
get_local $7
|
||||
get_local $1
|
||||
local.get $7
|
||||
local.get $1
|
||||
i32.lt_u
|
||||
if
|
||||
get_local $7
|
||||
f64.convert_u/i32
|
||||
get_local $9
|
||||
local.get $7
|
||||
f64.convert_i32_u
|
||||
local.get $9
|
||||
f64.mul
|
||||
get_local $12
|
||||
local.get $12
|
||||
f64.sub
|
||||
set_local $11
|
||||
local.set $11
|
||||
f64.const 0
|
||||
set_local $4
|
||||
local.set $4
|
||||
f64.const 0
|
||||
set_local $5
|
||||
local.set $5
|
||||
i32.const 0
|
||||
set_local $2
|
||||
local.set $2
|
||||
loop $continue|1
|
||||
get_local $4
|
||||
get_local $4
|
||||
local.get $4
|
||||
local.get $4
|
||||
f64.mul
|
||||
tee_local $14
|
||||
get_local $5
|
||||
get_local $5
|
||||
local.tee $14
|
||||
local.get $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
tee_local $6
|
||||
local.tee $6
|
||||
f64.add
|
||||
f64.const 4
|
||||
f64.le
|
||||
if
|
||||
block $break|1
|
||||
f64.const 2
|
||||
get_local $4
|
||||
local.get $4
|
||||
f64.mul
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
get_local $10
|
||||
local.get $10
|
||||
f64.add
|
||||
set_local $5
|
||||
get_local $14
|
||||
get_local $6
|
||||
local.set $5
|
||||
local.get $14
|
||||
local.get $6
|
||||
f64.sub
|
||||
get_local $11
|
||||
local.get $11
|
||||
f64.add
|
||||
set_local $4
|
||||
get_local $2
|
||||
get_local $3
|
||||
local.set $4
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.ge_u
|
||||
br_if $break|1
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $2
|
||||
local.set $2
|
||||
br $continue|1
|
||||
end
|
||||
end
|
||||
end
|
||||
loop $continue|2
|
||||
get_local $2
|
||||
f64.convert_u/i32
|
||||
get_local $8
|
||||
local.get $2
|
||||
f64.convert_i32_u
|
||||
local.get $8
|
||||
f64.lt
|
||||
if
|
||||
get_local $4
|
||||
get_local $4
|
||||
local.get $4
|
||||
local.get $4
|
||||
f64.mul
|
||||
get_local $5
|
||||
get_local $5
|
||||
local.get $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
f64.sub
|
||||
get_local $11
|
||||
local.get $11
|
||||
f64.add
|
||||
set_local $6
|
||||
local.set $6
|
||||
f64.const 2
|
||||
get_local $4
|
||||
local.get $4
|
||||
f64.mul
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
get_local $10
|
||||
local.get $10
|
||||
f64.add
|
||||
set_local $5
|
||||
get_local $6
|
||||
set_local $4
|
||||
get_local $2
|
||||
local.set $5
|
||||
local.get $6
|
||||
local.set $4
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $2
|
||||
local.set $2
|
||||
br $continue|2
|
||||
end
|
||||
end
|
||||
get_local $7
|
||||
local.get $7
|
||||
i32.const 1
|
||||
i32.shl
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.add
|
||||
get_local $4
|
||||
get_local $4
|
||||
local.get $4
|
||||
local.get $4
|
||||
f64.mul
|
||||
get_local $5
|
||||
get_local $5
|
||||
local.get $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
f64.add
|
||||
tee_local $6
|
||||
local.tee $6
|
||||
f64.const 1
|
||||
f64.gt
|
||||
if (result i32)
|
||||
f64.const 2047
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.add
|
||||
f64.convert_u/i32
|
||||
f64.convert_i32_u
|
||||
f64.const 0.5
|
||||
get_local $6
|
||||
local.get $6
|
||||
call $~lib/math/NativeMath.log
|
||||
f64.mul
|
||||
call $~lib/math/NativeMath.log2
|
||||
f64.sub
|
||||
get_local $13
|
||||
local.get $13
|
||||
f64.mul
|
||||
f64.const 0
|
||||
f64.max
|
||||
f64.const 1
|
||||
f64.min
|
||||
f64.mul
|
||||
i32.trunc_u/f64
|
||||
i32.trunc_f64_u
|
||||
else
|
||||
i32.const 2047
|
||||
end
|
||||
i32.store16
|
||||
get_local $7
|
||||
local.get $7
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $7
|
||||
local.set $7
|
||||
br $repeat|0
|
||||
end
|
||||
end
|
||||
|
@ -4,7 +4,7 @@
|
||||
(type $FFFF (func (param f64 f64 f64) (result f64)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $../../examples/mandelbrot/assembly/index/NUM_COLORS i32 (i32.const 2048))
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
@ -25,88 +25,88 @@
|
||||
(local $11 f64)
|
||||
(local $12 f64)
|
||||
(local $13 i32)
|
||||
get_local $0
|
||||
i64.reinterpret/f64
|
||||
set_local $1
|
||||
get_local $1
|
||||
local.get $0
|
||||
i64.reinterpret_f64
|
||||
local.set $1
|
||||
local.get $1
|
||||
i64.const 32
|
||||
i64.shr_u
|
||||
i32.wrap/i64
|
||||
set_local $2
|
||||
i32.wrap_i64
|
||||
local.set $2
|
||||
i32.const 0
|
||||
set_local $3
|
||||
get_local $2
|
||||
local.set $3
|
||||
local.get $2
|
||||
i32.const 1048576
|
||||
i32.lt_u
|
||||
tee_local $4
|
||||
local.tee $4
|
||||
if (result i32)
|
||||
get_local $4
|
||||
local.get $4
|
||||
else
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 31
|
||||
i32.shr_u
|
||||
end
|
||||
if
|
||||
get_local $1
|
||||
local.get $1
|
||||
i64.const 1
|
||||
i64.shl
|
||||
i64.const 0
|
||||
i64.eq
|
||||
if
|
||||
f64.const -1
|
||||
get_local $0
|
||||
get_local $0
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.mul
|
||||
f64.div
|
||||
return
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 31
|
||||
i32.shr_u
|
||||
if
|
||||
get_local $0
|
||||
get_local $0
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.sub
|
||||
f64.const 0
|
||||
f64.div
|
||||
return
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
i32.const 54
|
||||
i32.sub
|
||||
set_local $3
|
||||
get_local $0
|
||||
local.set $3
|
||||
local.get $0
|
||||
f64.const 18014398509481984
|
||||
f64.mul
|
||||
set_local $0
|
||||
get_local $0
|
||||
i64.reinterpret/f64
|
||||
set_local $1
|
||||
get_local $1
|
||||
local.set $0
|
||||
local.get $0
|
||||
i64.reinterpret_f64
|
||||
local.set $1
|
||||
local.get $1
|
||||
i64.const 32
|
||||
i64.shr_u
|
||||
i32.wrap/i64
|
||||
set_local $2
|
||||
i32.wrap_i64
|
||||
local.set $2
|
||||
else
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 2146435072
|
||||
i32.ge_u
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
return
|
||||
else
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1072693248
|
||||
i32.eq
|
||||
tee_local $4
|
||||
local.tee $4
|
||||
if (result i32)
|
||||
get_local $1
|
||||
local.get $1
|
||||
i64.const 32
|
||||
i64.shl
|
||||
i64.const 0
|
||||
i64.eq
|
||||
else
|
||||
get_local $4
|
||||
local.get $4
|
||||
end
|
||||
if
|
||||
f64.const 0
|
||||
@ -114,81 +114,81 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1072693248
|
||||
i32.const 1072079006
|
||||
i32.sub
|
||||
i32.add
|
||||
set_local $2
|
||||
get_local $3
|
||||
get_local $2
|
||||
local.set $2
|
||||
local.get $3
|
||||
local.get $2
|
||||
i32.const 20
|
||||
i32.shr_s
|
||||
i32.const 1023
|
||||
i32.sub
|
||||
i32.add
|
||||
set_local $3
|
||||
get_local $2
|
||||
local.set $3
|
||||
local.get $2
|
||||
i32.const 1048575
|
||||
i32.and
|
||||
i32.const 1072079006
|
||||
i32.add
|
||||
set_local $2
|
||||
get_local $2
|
||||
i64.extend_u/i32
|
||||
local.set $2
|
||||
local.get $2
|
||||
i64.extend_i32_u
|
||||
i64.const 32
|
||||
i64.shl
|
||||
get_local $1
|
||||
local.get $1
|
||||
i64.const 4294967295
|
||||
i64.and
|
||||
i64.or
|
||||
set_local $1
|
||||
get_local $1
|
||||
f64.reinterpret/i64
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $1
|
||||
local.get $1
|
||||
f64.reinterpret_i64
|
||||
local.set $0
|
||||
local.get $0
|
||||
f64.const 1
|
||||
f64.sub
|
||||
set_local $5
|
||||
local.set $5
|
||||
f64.const 0.5
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
set_local $6
|
||||
get_local $5
|
||||
local.set $6
|
||||
local.get $5
|
||||
f64.const 2
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.add
|
||||
f64.div
|
||||
set_local $7
|
||||
get_local $7
|
||||
get_local $7
|
||||
local.set $7
|
||||
local.get $7
|
||||
local.get $7
|
||||
f64.mul
|
||||
set_local $8
|
||||
get_local $8
|
||||
get_local $8
|
||||
local.set $8
|
||||
local.get $8
|
||||
local.get $8
|
||||
f64.mul
|
||||
set_local $9
|
||||
get_local $9
|
||||
local.set $9
|
||||
local.get $9
|
||||
f64.const 0.3999999999940942
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.22222198432149784
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.15313837699209373
|
||||
f64.mul
|
||||
f64.add
|
||||
f64.mul
|
||||
f64.add
|
||||
f64.mul
|
||||
set_local $10
|
||||
get_local $8
|
||||
local.set $10
|
||||
local.get $8
|
||||
f64.const 0.6666666666666735
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.2857142874366239
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.1818357216161805
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.14798198605116586
|
||||
f64.mul
|
||||
f64.add
|
||||
@ -197,29 +197,29 @@
|
||||
f64.mul
|
||||
f64.add
|
||||
f64.mul
|
||||
set_local $11
|
||||
get_local $11
|
||||
get_local $10
|
||||
local.set $11
|
||||
local.get $11
|
||||
local.get $10
|
||||
f64.add
|
||||
set_local $12
|
||||
get_local $3
|
||||
set_local $13
|
||||
get_local $7
|
||||
get_local $6
|
||||
get_local $12
|
||||
local.set $12
|
||||
local.get $3
|
||||
local.set $13
|
||||
local.get $7
|
||||
local.get $6
|
||||
local.get $12
|
||||
f64.add
|
||||
f64.mul
|
||||
get_local $13
|
||||
f64.convert_s/i32
|
||||
local.get $13
|
||||
f64.convert_i32_s
|
||||
f64.const 1.9082149292705877e-10
|
||||
f64.mul
|
||||
f64.add
|
||||
get_local $6
|
||||
local.get $6
|
||||
f64.sub
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.add
|
||||
get_local $13
|
||||
f64.convert_s/i32
|
||||
local.get $13
|
||||
f64.convert_i32_s
|
||||
f64.const 0.6931471803691238
|
||||
f64.mul
|
||||
f64.add
|
||||
@ -242,88 +242,88 @@
|
||||
(local $15 f64)
|
||||
(local $16 f64)
|
||||
(local $17 f64)
|
||||
get_local $0
|
||||
i64.reinterpret/f64
|
||||
set_local $1
|
||||
get_local $1
|
||||
local.get $0
|
||||
i64.reinterpret_f64
|
||||
local.set $1
|
||||
local.get $1
|
||||
i64.const 32
|
||||
i64.shr_u
|
||||
i32.wrap/i64
|
||||
set_local $2
|
||||
i32.wrap_i64
|
||||
local.set $2
|
||||
i32.const 0
|
||||
set_local $3
|
||||
get_local $2
|
||||
local.set $3
|
||||
local.get $2
|
||||
i32.const 1048576
|
||||
i32.lt_u
|
||||
tee_local $4
|
||||
local.tee $4
|
||||
if (result i32)
|
||||
get_local $4
|
||||
local.get $4
|
||||
else
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 31
|
||||
i32.shr_u
|
||||
end
|
||||
if
|
||||
get_local $1
|
||||
local.get $1
|
||||
i64.const 1
|
||||
i64.shl
|
||||
i64.const 0
|
||||
i64.eq
|
||||
if
|
||||
f64.const -1
|
||||
get_local $0
|
||||
get_local $0
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.mul
|
||||
f64.div
|
||||
return
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 31
|
||||
i32.shr_u
|
||||
if
|
||||
get_local $0
|
||||
get_local $0
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.sub
|
||||
f64.const 0
|
||||
f64.div
|
||||
return
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
i32.const 54
|
||||
i32.sub
|
||||
set_local $3
|
||||
get_local $0
|
||||
local.set $3
|
||||
local.get $0
|
||||
f64.const 18014398509481984
|
||||
f64.mul
|
||||
set_local $0
|
||||
get_local $0
|
||||
i64.reinterpret/f64
|
||||
set_local $1
|
||||
get_local $1
|
||||
local.set $0
|
||||
local.get $0
|
||||
i64.reinterpret_f64
|
||||
local.set $1
|
||||
local.get $1
|
||||
i64.const 32
|
||||
i64.shr_u
|
||||
i32.wrap/i64
|
||||
set_local $2
|
||||
i32.wrap_i64
|
||||
local.set $2
|
||||
else
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 2146435072
|
||||
i32.ge_u
|
||||
if
|
||||
get_local $0
|
||||
local.get $0
|
||||
return
|
||||
else
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1072693248
|
||||
i32.eq
|
||||
tee_local $4
|
||||
local.tee $4
|
||||
if (result i32)
|
||||
get_local $1
|
||||
local.get $1
|
||||
i64.const 32
|
||||
i64.shl
|
||||
i64.const 0
|
||||
i64.eq
|
||||
else
|
||||
get_local $4
|
||||
local.get $4
|
||||
end
|
||||
if
|
||||
f64.const 0
|
||||
@ -331,81 +331,81 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1072693248
|
||||
i32.const 1072079006
|
||||
i32.sub
|
||||
i32.add
|
||||
set_local $2
|
||||
get_local $3
|
||||
get_local $2
|
||||
local.set $2
|
||||
local.get $3
|
||||
local.get $2
|
||||
i32.const 20
|
||||
i32.shr_u
|
||||
i32.const 1023
|
||||
i32.sub
|
||||
i32.add
|
||||
set_local $3
|
||||
get_local $2
|
||||
local.set $3
|
||||
local.get $2
|
||||
i32.const 1048575
|
||||
i32.and
|
||||
i32.const 1072079006
|
||||
i32.add
|
||||
set_local $2
|
||||
get_local $2
|
||||
i64.extend_u/i32
|
||||
local.set $2
|
||||
local.get $2
|
||||
i64.extend_i32_u
|
||||
i64.const 32
|
||||
i64.shl
|
||||
get_local $1
|
||||
local.get $1
|
||||
i64.const 4294967295
|
||||
i64.and
|
||||
i64.or
|
||||
set_local $1
|
||||
get_local $1
|
||||
f64.reinterpret/i64
|
||||
set_local $0
|
||||
get_local $0
|
||||
local.set $1
|
||||
local.get $1
|
||||
f64.reinterpret_i64
|
||||
local.set $0
|
||||
local.get $0
|
||||
f64.const 1
|
||||
f64.sub
|
||||
set_local $5
|
||||
local.set $5
|
||||
f64.const 0.5
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.mul
|
||||
set_local $6
|
||||
get_local $5
|
||||
local.set $6
|
||||
local.get $5
|
||||
f64.const 2
|
||||
get_local $5
|
||||
local.get $5
|
||||
f64.add
|
||||
f64.div
|
||||
set_local $7
|
||||
get_local $7
|
||||
get_local $7
|
||||
local.set $7
|
||||
local.get $7
|
||||
local.get $7
|
||||
f64.mul
|
||||
set_local $8
|
||||
get_local $8
|
||||
get_local $8
|
||||
local.set $8
|
||||
local.get $8
|
||||
local.get $8
|
||||
f64.mul
|
||||
set_local $9
|
||||
get_local $9
|
||||
local.set $9
|
||||
local.get $9
|
||||
f64.const 0.3999999999940942
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.22222198432149784
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.15313837699209373
|
||||
f64.mul
|
||||
f64.add
|
||||
f64.mul
|
||||
f64.add
|
||||
f64.mul
|
||||
set_local $10
|
||||
get_local $8
|
||||
local.set $10
|
||||
local.get $8
|
||||
f64.const 0.6666666666666735
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.2857142874366239
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.1818357216161805
|
||||
get_local $9
|
||||
local.get $9
|
||||
f64.const 0.14798198605116586
|
||||
f64.mul
|
||||
f64.add
|
||||
@ -414,77 +414,77 @@
|
||||
f64.mul
|
||||
f64.add
|
||||
f64.mul
|
||||
set_local $11
|
||||
get_local $11
|
||||
get_local $10
|
||||
local.set $11
|
||||
local.get $11
|
||||
local.get $10
|
||||
f64.add
|
||||
set_local $12
|
||||
get_local $5
|
||||
get_local $6
|
||||
local.set $12
|
||||
local.get $5
|
||||
local.get $6
|
||||
f64.sub
|
||||
set_local $13
|
||||
get_local $13
|
||||
i64.reinterpret/f64
|
||||
set_local $1
|
||||
get_local $1
|
||||
local.set $13
|
||||
local.get $13
|
||||
i64.reinterpret_f64
|
||||
local.set $1
|
||||
local.get $1
|
||||
i64.const -4294967296
|
||||
i64.and
|
||||
set_local $1
|
||||
get_local $1
|
||||
f64.reinterpret/i64
|
||||
set_local $13
|
||||
get_local $5
|
||||
get_local $13
|
||||
local.set $1
|
||||
local.get $1
|
||||
f64.reinterpret_i64
|
||||
local.set $13
|
||||
local.get $5
|
||||
local.get $13
|
||||
f64.sub
|
||||
get_local $6
|
||||
local.get $6
|
||||
f64.sub
|
||||
get_local $7
|
||||
get_local $6
|
||||
get_local $12
|
||||
local.get $7
|
||||
local.get $6
|
||||
local.get $12
|
||||
f64.add
|
||||
f64.mul
|
||||
f64.add
|
||||
set_local $14
|
||||
get_local $13
|
||||
local.set $14
|
||||
local.get $13
|
||||
f64.const 1.4426950407214463
|
||||
f64.mul
|
||||
set_local $15
|
||||
get_local $14
|
||||
get_local $13
|
||||
local.set $15
|
||||
local.get $14
|
||||
local.get $13
|
||||
f64.add
|
||||
f64.const 1.6751713164886512e-10
|
||||
f64.mul
|
||||
get_local $14
|
||||
local.get $14
|
||||
f64.const 1.4426950407214463
|
||||
f64.mul
|
||||
f64.add
|
||||
set_local $16
|
||||
get_local $3
|
||||
f64.convert_s/i32
|
||||
set_local $17
|
||||
get_local $17
|
||||
get_local $15
|
||||
local.set $16
|
||||
local.get $3
|
||||
f64.convert_i32_s
|
||||
local.set $17
|
||||
local.get $17
|
||||
local.get $15
|
||||
f64.add
|
||||
set_local $9
|
||||
get_local $16
|
||||
get_local $17
|
||||
get_local $9
|
||||
local.set $9
|
||||
local.get $16
|
||||
local.get $17
|
||||
local.get $9
|
||||
f64.sub
|
||||
get_local $15
|
||||
local.get $15
|
||||
f64.add
|
||||
f64.add
|
||||
set_local $16
|
||||
get_local $9
|
||||
set_local $15
|
||||
get_local $16
|
||||
get_local $15
|
||||
local.set $16
|
||||
local.get $9
|
||||
local.set $15
|
||||
local.get $16
|
||||
local.get $15
|
||||
f64.add
|
||||
)
|
||||
(func $../../examples/mandelbrot/assembly/index/clamp<f64> (; 2 ;) (type $FFFF) (param $0 f64) (param $1 f64) (param $2 f64) (result f64)
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
f64.max
|
||||
get_local $2
|
||||
local.get $2
|
||||
f64.min
|
||||
)
|
||||
(func $../../examples/mandelbrot/assembly/index/computeLine (; 3 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
|
||||
@ -506,121 +506,121 @@
|
||||
(local $19 f64)
|
||||
(local $20 i32)
|
||||
(local $21 f64)
|
||||
get_local $1
|
||||
f64.convert_u/i32
|
||||
local.get $1
|
||||
f64.convert_i32_u
|
||||
f64.const 1
|
||||
f64.const 1.6
|
||||
f64.div
|
||||
f64.mul
|
||||
set_local $4
|
||||
get_local $2
|
||||
f64.convert_u/i32
|
||||
local.set $4
|
||||
local.get $2
|
||||
f64.convert_i32_u
|
||||
f64.const 1
|
||||
f64.const 2
|
||||
f64.div
|
||||
f64.mul
|
||||
set_local $5
|
||||
local.set $5
|
||||
f64.const 10
|
||||
f64.const 3
|
||||
get_local $1
|
||||
f64.convert_u/i32
|
||||
local.get $1
|
||||
f64.convert_i32_u
|
||||
f64.mul
|
||||
f64.const 4
|
||||
get_local $2
|
||||
f64.convert_u/i32
|
||||
local.get $2
|
||||
f64.convert_i32_u
|
||||
f64.mul
|
||||
f64.min
|
||||
f64.div
|
||||
set_local $6
|
||||
get_local $0
|
||||
f64.convert_u/i32
|
||||
get_local $5
|
||||
local.set $6
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
local.get $5
|
||||
f64.sub
|
||||
get_local $6
|
||||
local.get $6
|
||||
f64.mul
|
||||
set_local $7
|
||||
get_local $4
|
||||
get_local $6
|
||||
local.set $7
|
||||
local.get $4
|
||||
local.get $6
|
||||
f64.mul
|
||||
set_local $8
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.set $8
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.mul
|
||||
i32.const 1
|
||||
i32.shl
|
||||
set_local $9
|
||||
local.set $9
|
||||
f64.const 1
|
||||
get_local $3
|
||||
f64.convert_u/i32
|
||||
local.get $3
|
||||
f64.convert_i32_u
|
||||
f64.div
|
||||
set_local $10
|
||||
local.set $10
|
||||
f64.const 8
|
||||
get_local $3
|
||||
f64.convert_u/i32
|
||||
local.get $3
|
||||
f64.convert_i32_u
|
||||
f64.min
|
||||
set_local $11
|
||||
local.set $11
|
||||
block $break|0
|
||||
i32.const 0
|
||||
set_local $12
|
||||
local.set $12
|
||||
loop $repeat|0
|
||||
get_local $12
|
||||
get_local $1
|
||||
local.get $12
|
||||
local.get $1
|
||||
i32.lt_u
|
||||
i32.eqz
|
||||
br_if $break|0
|
||||
block
|
||||
get_local $12
|
||||
f64.convert_u/i32
|
||||
get_local $6
|
||||
local.get $12
|
||||
f64.convert_i32_u
|
||||
local.get $6
|
||||
f64.mul
|
||||
get_local $8
|
||||
local.get $8
|
||||
f64.sub
|
||||
set_local $13
|
||||
local.set $13
|
||||
f64.const 0
|
||||
set_local $14
|
||||
local.set $14
|
||||
f64.const 0
|
||||
set_local $15
|
||||
local.set $15
|
||||
i32.const 0
|
||||
set_local $18
|
||||
local.set $18
|
||||
block $break|1
|
||||
loop $continue|1
|
||||
get_local $14
|
||||
get_local $14
|
||||
local.get $14
|
||||
local.get $14
|
||||
f64.mul
|
||||
tee_local $16
|
||||
get_local $15
|
||||
get_local $15
|
||||
local.tee $16
|
||||
local.get $15
|
||||
local.get $15
|
||||
f64.mul
|
||||
tee_local $17
|
||||
local.tee $17
|
||||
f64.add
|
||||
f64.const 4
|
||||
f64.le
|
||||
if
|
||||
block
|
||||
f64.const 2
|
||||
get_local $14
|
||||
local.get $14
|
||||
f64.mul
|
||||
get_local $15
|
||||
local.get $15
|
||||
f64.mul
|
||||
get_local $7
|
||||
local.get $7
|
||||
f64.add
|
||||
set_local $15
|
||||
get_local $16
|
||||
get_local $17
|
||||
local.set $15
|
||||
local.get $16
|
||||
local.get $17
|
||||
f64.sub
|
||||
get_local $13
|
||||
local.get $13
|
||||
f64.add
|
||||
set_local $14
|
||||
get_local $18
|
||||
get_local $3
|
||||
local.set $14
|
||||
local.get $18
|
||||
local.get $3
|
||||
i32.ge_u
|
||||
if
|
||||
br $break|1
|
||||
end
|
||||
get_local $18
|
||||
local.get $18
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $18
|
||||
local.set $18
|
||||
end
|
||||
br $continue|1
|
||||
end
|
||||
@ -628,94 +628,94 @@
|
||||
end
|
||||
block $break|2
|
||||
loop $continue|2
|
||||
get_local $18
|
||||
f64.convert_u/i32
|
||||
get_local $11
|
||||
local.get $18
|
||||
f64.convert_i32_u
|
||||
local.get $11
|
||||
f64.lt
|
||||
if
|
||||
block
|
||||
get_local $14
|
||||
get_local $14
|
||||
local.get $14
|
||||
local.get $14
|
||||
f64.mul
|
||||
get_local $15
|
||||
get_local $15
|
||||
local.get $15
|
||||
local.get $15
|
||||
f64.mul
|
||||
f64.sub
|
||||
get_local $13
|
||||
local.get $13
|
||||
f64.add
|
||||
set_local $19
|
||||
local.set $19
|
||||
f64.const 2
|
||||
get_local $14
|
||||
local.get $14
|
||||
f64.mul
|
||||
get_local $15
|
||||
local.get $15
|
||||
f64.mul
|
||||
get_local $7
|
||||
local.get $7
|
||||
f64.add
|
||||
set_local $15
|
||||
get_local $19
|
||||
set_local $14
|
||||
get_local $18
|
||||
local.set $15
|
||||
local.get $19
|
||||
local.set $14
|
||||
local.get $18
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $18
|
||||
local.set $18
|
||||
end
|
||||
br $continue|2
|
||||
end
|
||||
end
|
||||
end
|
||||
get_global $../../examples/mandelbrot/assembly/index/NUM_COLORS
|
||||
global.get $../../examples/mandelbrot/assembly/index/NUM_COLORS
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_local $20
|
||||
get_local $14
|
||||
get_local $14
|
||||
local.set $20
|
||||
local.get $14
|
||||
local.get $14
|
||||
f64.mul
|
||||
get_local $15
|
||||
get_local $15
|
||||
local.get $15
|
||||
local.get $15
|
||||
f64.mul
|
||||
f64.add
|
||||
set_local $19
|
||||
get_local $19
|
||||
local.set $19
|
||||
local.get $19
|
||||
f64.const 1
|
||||
f64.gt
|
||||
if
|
||||
f64.const 0.5
|
||||
get_local $19
|
||||
local.get $19
|
||||
call $~lib/math/NativeMath.log
|
||||
f64.mul
|
||||
call $~lib/math/NativeMath.log2
|
||||
set_local $21
|
||||
get_global $../../examples/mandelbrot/assembly/index/NUM_COLORS
|
||||
local.set $21
|
||||
global.get $../../examples/mandelbrot/assembly/index/NUM_COLORS
|
||||
i32.const 1
|
||||
i32.sub
|
||||
f64.convert_s/i32
|
||||
get_local $18
|
||||
f64.convert_i32_s
|
||||
local.get $18
|
||||
i32.const 1
|
||||
i32.add
|
||||
f64.convert_u/i32
|
||||
get_local $21
|
||||
f64.convert_i32_u
|
||||
local.get $21
|
||||
f64.sub
|
||||
get_local $10
|
||||
local.get $10
|
||||
f64.mul
|
||||
f64.const 0
|
||||
f64.const 1
|
||||
call $../../examples/mandelbrot/assembly/index/clamp<f64>
|
||||
f64.mul
|
||||
i32.trunc_u/f64
|
||||
set_local $20
|
||||
i32.trunc_f64_u
|
||||
local.set $20
|
||||
end
|
||||
get_local $9
|
||||
get_local $12
|
||||
local.get $9
|
||||
local.get $12
|
||||
i32.const 1
|
||||
i32.shl
|
||||
i32.add
|
||||
get_local $20
|
||||
local.get $20
|
||||
i32.store16
|
||||
end
|
||||
get_local $12
|
||||
local.get $12
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $12
|
||||
local.set $12
|
||||
br $repeat|0
|
||||
unreachable
|
||||
end
|
||||
|
@ -3,17 +3,17 @@
|
||||
(type $v (func))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\0e\00\00\00m\00a\00n\00y\00-\00l\00o\00c\00a\00l\00s\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(export "testI32" (func $many-locals/testI32))
|
||||
(export "testI8" (func $many-locals/testI8))
|
||||
(func $many-locals/testI32 (; 0 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
)
|
||||
(func $many-locals/testI8 (; 1 ;) (type $ii) (param $0 i32) (result i32)
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.shl
|
||||
i32.const 24
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\n\00\00\00m\00e\00m\00m\00o\00v\00e\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $memmove/dest (mut i32) (i32.const 0))
|
||||
(export "memory" (memory $0))
|
||||
@ -15,138 +15,138 @@
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
get_local $0
|
||||
set_local $3
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.set $3
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.eq
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.lt_u
|
||||
if
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 7
|
||||
i32.and
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 7
|
||||
i32.and
|
||||
i32.eq
|
||||
if
|
||||
loop $continue|0
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 7
|
||||
i32.and
|
||||
if
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.eqz
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $0
|
||||
tee_local $4
|
||||
local.set $2
|
||||
local.get $0
|
||||
local.tee $4
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
get_local $1
|
||||
tee_local $5
|
||||
local.set $0
|
||||
local.get $1
|
||||
local.tee $5
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $1
|
||||
get_local $4
|
||||
get_local $5
|
||||
local.set $1
|
||||
local.get $4
|
||||
local.get $5
|
||||
i32.load8_u
|
||||
i32.store8
|
||||
br $continue|0
|
||||
end
|
||||
end
|
||||
loop $continue|1
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.ge_u
|
||||
if
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i64.load
|
||||
i64.store
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $0
|
||||
local.set $2
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.add
|
||||
set_local $0
|
||||
get_local $1
|
||||
local.set $0
|
||||
local.get $1
|
||||
i32.const 8
|
||||
i32.add
|
||||
set_local $1
|
||||
local.set $1
|
||||
br $continue|1
|
||||
end
|
||||
end
|
||||
end
|
||||
loop $continue|2
|
||||
get_local $2
|
||||
local.get $2
|
||||
if
|
||||
get_local $0
|
||||
tee_local $4
|
||||
local.get $0
|
||||
local.tee $4
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
get_local $1
|
||||
tee_local $5
|
||||
local.set $0
|
||||
local.get $1
|
||||
local.tee $5
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $1
|
||||
get_local $4
|
||||
get_local $5
|
||||
local.set $1
|
||||
local.get $4
|
||||
local.get $5
|
||||
i32.load8_u
|
||||
i32.store8
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_local $2
|
||||
local.set $2
|
||||
br $continue|2
|
||||
end
|
||||
end
|
||||
else
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 7
|
||||
i32.and
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 7
|
||||
i32.and
|
||||
i32.eq
|
||||
if
|
||||
loop $continue|3
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 7
|
||||
i32.and
|
||||
if
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.eqz
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.sub
|
||||
tee_local $2
|
||||
get_local $0
|
||||
local.tee $2
|
||||
local.get $0
|
||||
i32.add
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.load8_u
|
||||
i32.store8
|
||||
@ -154,18 +154,18 @@
|
||||
end
|
||||
end
|
||||
loop $continue|4
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.ge_u
|
||||
if
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.sub
|
||||
tee_local $2
|
||||
get_local $0
|
||||
local.tee $2
|
||||
local.get $0
|
||||
i32.add
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
i64.load
|
||||
i64.store
|
||||
@ -174,16 +174,16 @@
|
||||
end
|
||||
end
|
||||
loop $continue|5
|
||||
get_local $2
|
||||
local.get $2
|
||||
if
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.sub
|
||||
tee_local $2
|
||||
get_local $0
|
||||
local.tee $2
|
||||
local.get $0
|
||||
i32.add
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.load8_u
|
||||
i32.store8
|
||||
@ -191,7 +191,7 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
)
|
||||
(func $start (; 2 ;) (type $v)
|
||||
i32.const 8
|
||||
@ -210,8 +210,8 @@
|
||||
i32.const 24
|
||||
i32.const 4
|
||||
call $memmove/memmove
|
||||
set_global $memmove/dest
|
||||
get_global $memmove/dest
|
||||
global.set $memmove/dest
|
||||
global.get $memmove/dest
|
||||
i32.const 9
|
||||
i32.ne
|
||||
if
|
||||
@ -238,8 +238,8 @@
|
||||
i32.const 8
|
||||
i32.const 32
|
||||
call $memmove/memmove
|
||||
set_global $memmove/dest
|
||||
get_global $memmove/dest
|
||||
global.set $memmove/dest
|
||||
global.get $memmove/dest
|
||||
i32.const 8
|
||||
i32.ne
|
||||
if
|
||||
@ -302,7 +302,7 @@
|
||||
i32.const 36
|
||||
i32.const 3
|
||||
call $memmove/memmove
|
||||
set_global $memmove/dest
|
||||
global.set $memmove/dest
|
||||
i32.const 8
|
||||
i64.load
|
||||
i64.const 4919131679688438545
|
||||
@ -319,7 +319,7 @@
|
||||
i32.const 24
|
||||
i32.const 15
|
||||
call $memmove/memmove
|
||||
set_global $memmove/dest
|
||||
global.set $memmove/dest
|
||||
i32.const 8
|
||||
i64.load
|
||||
i64.const 4919131679688438545
|
||||
|
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\n\00\00\00m\00e\00m\00m\00o\00v\00e\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $memmove/base i32 (i32.const 8))
|
||||
(global $memmove/dest (mut i32) (i32.const 0))
|
||||
@ -16,59 +16,59 @@
|
||||
(func $memmove/memmove (; 1 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
get_local $0
|
||||
set_local $3
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.set $3
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.eq
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.lt_u
|
||||
if
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 8
|
||||
i32.rem_u
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.rem_u
|
||||
i32.eq
|
||||
if
|
||||
block $break|0
|
||||
loop $continue|0
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.rem_u
|
||||
if
|
||||
block
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.eqz
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_local $2
|
||||
local.set $2
|
||||
block (result i32)
|
||||
get_local $0
|
||||
tee_local $4
|
||||
local.get $0
|
||||
local.tee $4
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
get_local $4
|
||||
local.set $0
|
||||
local.get $4
|
||||
end
|
||||
block (result i32)
|
||||
get_local $1
|
||||
tee_local $4
|
||||
local.get $1
|
||||
local.tee $4
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $1
|
||||
get_local $4
|
||||
local.set $1
|
||||
local.get $4
|
||||
end
|
||||
i32.load8_u
|
||||
i32.store8
|
||||
@ -79,27 +79,27 @@
|
||||
end
|
||||
block $break|1
|
||||
loop $continue|1
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.ge_u
|
||||
if
|
||||
block
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i64.load
|
||||
i64.store
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $0
|
||||
local.set $2
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.add
|
||||
set_local $0
|
||||
get_local $1
|
||||
local.set $0
|
||||
local.get $1
|
||||
i32.const 8
|
||||
i32.add
|
||||
set_local $1
|
||||
local.set $1
|
||||
end
|
||||
br $continue|1
|
||||
end
|
||||
@ -108,68 +108,68 @@
|
||||
end
|
||||
block $break|2
|
||||
loop $continue|2
|
||||
get_local $2
|
||||
local.get $2
|
||||
if
|
||||
block
|
||||
block (result i32)
|
||||
get_local $0
|
||||
tee_local $4
|
||||
local.get $0
|
||||
local.tee $4
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $0
|
||||
get_local $4
|
||||
local.set $0
|
||||
local.get $4
|
||||
end
|
||||
block (result i32)
|
||||
get_local $1
|
||||
tee_local $4
|
||||
local.get $1
|
||||
local.tee $4
|
||||
i32.const 1
|
||||
i32.add
|
||||
set_local $1
|
||||
get_local $4
|
||||
local.set $1
|
||||
local.get $4
|
||||
end
|
||||
i32.load8_u
|
||||
i32.store8
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.sub
|
||||
set_local $2
|
||||
local.set $2
|
||||
end
|
||||
br $continue|2
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 8
|
||||
i32.rem_u
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.rem_u
|
||||
i32.eq
|
||||
if
|
||||
block $break|3
|
||||
loop $continue|3
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 8
|
||||
i32.rem_u
|
||||
if
|
||||
block
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.eqz
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.sub
|
||||
tee_local $2
|
||||
local.tee $2
|
||||
i32.add
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.load8_u
|
||||
i32.store8
|
||||
@ -180,20 +180,20 @@
|
||||
end
|
||||
block $break|4
|
||||
loop $continue|4
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.ge_u
|
||||
if
|
||||
block
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.set $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
i64.load
|
||||
i64.store
|
||||
@ -205,16 +205,16 @@
|
||||
end
|
||||
block $break|5
|
||||
loop $continue|5
|
||||
get_local $2
|
||||
local.get $2
|
||||
if
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.const 1
|
||||
i32.sub
|
||||
tee_local $2
|
||||
local.tee $2
|
||||
i32.add
|
||||
get_local $1
|
||||
get_local $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.load8_u
|
||||
i32.store8
|
||||
@ -223,38 +223,38 @@
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
)
|
||||
(func $start (; 2 ;) (type $v)
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i64.const 1229782938247303441
|
||||
i64.store
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 8
|
||||
i32.add
|
||||
i64.const 2459565876494606882
|
||||
i64.store
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 16
|
||||
i32.add
|
||||
i64.const 3689348814741910323
|
||||
i64.store
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 24
|
||||
i32.add
|
||||
i64.const 4919131752989213764
|
||||
i64.store
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 1
|
||||
i32.add
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 4
|
||||
call $memmove/memmove
|
||||
set_global $memmove/dest
|
||||
get_global $memmove/dest
|
||||
get_global $memmove/base
|
||||
global.set $memmove/dest
|
||||
global.get $memmove/dest
|
||||
global.get $memmove/base
|
||||
i32.const 1
|
||||
i32.add
|
||||
i32.eq
|
||||
@ -267,7 +267,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i64.load
|
||||
i64.const 1229783084848853777
|
||||
i64.eq
|
||||
@ -280,13 +280,13 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 32
|
||||
call $memmove/memmove
|
||||
set_global $memmove/dest
|
||||
get_global $memmove/dest
|
||||
get_global $memmove/base
|
||||
global.set $memmove/dest
|
||||
global.get $memmove/dest
|
||||
global.get $memmove/base
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
@ -297,7 +297,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i64.load
|
||||
i64.const 1229783084848853777
|
||||
i64.eq
|
||||
@ -310,7 +310,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 8
|
||||
i32.add
|
||||
i64.load
|
||||
@ -325,7 +325,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 16
|
||||
i32.add
|
||||
i64.load
|
||||
@ -340,7 +340,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 24
|
||||
i32.add
|
||||
i64.load
|
||||
@ -355,16 +355,16 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 5
|
||||
i32.add
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 28
|
||||
i32.add
|
||||
i32.const 3
|
||||
call $memmove/memmove
|
||||
set_global $memmove/dest
|
||||
get_global $memmove/base
|
||||
global.set $memmove/dest
|
||||
global.get $memmove/base
|
||||
i64.load
|
||||
i64.const 4919131679688438545
|
||||
i64.eq
|
||||
@ -377,16 +377,16 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 8
|
||||
i32.add
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 15
|
||||
call $memmove/memmove
|
||||
set_global $memmove/dest
|
||||
get_global $memmove/base
|
||||
global.set $memmove/dest
|
||||
global.get $memmove/base
|
||||
i64.load
|
||||
i64.const 4919131679688438545
|
||||
i64.eq
|
||||
@ -399,7 +399,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 8
|
||||
i32.add
|
||||
i64.load
|
||||
@ -414,7 +414,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 16
|
||||
i32.add
|
||||
i64.load
|
||||
@ -429,7 +429,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memmove/base
|
||||
global.get $memmove/base
|
||||
i32.const 24
|
||||
i32.add
|
||||
i64.load
|
||||
|
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\t\00\00\00m\00e\00m\00s\00e\00t\00.\00t\00s")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $memset/dest (mut i32) (i32.const 0))
|
||||
(export "memory" (memory $0))
|
||||
@ -15,242 +15,242 @@
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i64)
|
||||
get_local $0
|
||||
set_local $3
|
||||
local.get $0
|
||||
local.set $3
|
||||
block $folding-inner0
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.eqz
|
||||
br_if $folding-inner0
|
||||
get_local $3
|
||||
get_local $1
|
||||
local.get $3
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $2
|
||||
get_local $3
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 2
|
||||
i32.le_u
|
||||
br_if $folding-inner0
|
||||
get_local $3
|
||||
local.get $3
|
||||
i32.const 1
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $3
|
||||
local.get $3
|
||||
i32.const 2
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $2
|
||||
get_local $3
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.add
|
||||
tee_local $0
|
||||
local.tee $0
|
||||
i32.const 2
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 3
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 6
|
||||
i32.le_u
|
||||
br_if $folding-inner0
|
||||
get_local $3
|
||||
local.get $3
|
||||
i32.const 3
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $2
|
||||
get_local $3
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.add
|
||||
i32.const 4
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.le_u
|
||||
br_if $folding-inner0
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 0
|
||||
get_local $3
|
||||
local.get $3
|
||||
i32.sub
|
||||
i32.const 3
|
||||
i32.and
|
||||
tee_local $4
|
||||
local.tee $4
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $3
|
||||
get_local $4
|
||||
local.set $2
|
||||
local.get $3
|
||||
local.get $4
|
||||
i32.add
|
||||
tee_local $0
|
||||
get_local $1
|
||||
local.tee $0
|
||||
local.get $1
|
||||
i32.const 255
|
||||
i32.and
|
||||
i32.const 16843009
|
||||
i32.mul
|
||||
tee_local $1
|
||||
local.tee $1
|
||||
i32.store
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const -4
|
||||
i32.and
|
||||
tee_local $2
|
||||
get_local $0
|
||||
local.tee $2
|
||||
local.get $0
|
||||
i32.add
|
||||
i32.const 4
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.le_u
|
||||
br_if $folding-inner0
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 4
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
tee_local $4
|
||||
local.tee $4
|
||||
i32.const 12
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $4
|
||||
local.get $4
|
||||
i32.const 8
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 24
|
||||
i32.le_u
|
||||
br_if $folding-inner0
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 12
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 20
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
tee_local $4
|
||||
local.tee $4
|
||||
i32.const 28
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $4
|
||||
local.get $4
|
||||
i32.const 24
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $4
|
||||
local.get $4
|
||||
i32.const 20
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $4
|
||||
local.get $4
|
||||
i32.const 16
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 4
|
||||
i32.and
|
||||
i32.const 24
|
||||
i32.add
|
||||
tee_local $4
|
||||
get_local $0
|
||||
local.tee $4
|
||||
local.get $0
|
||||
i32.add
|
||||
set_local $0
|
||||
get_local $2
|
||||
get_local $4
|
||||
local.set $0
|
||||
local.get $2
|
||||
local.get $4
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $1
|
||||
i64.extend_u/i32
|
||||
tee_local $5
|
||||
get_local $5
|
||||
local.set $2
|
||||
local.get $1
|
||||
i64.extend_i32_u
|
||||
local.tee $5
|
||||
local.get $5
|
||||
i64.const 32
|
||||
i64.shl
|
||||
i64.or
|
||||
set_local $5
|
||||
local.set $5
|
||||
loop $continue|0
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 32
|
||||
i32.ge_u
|
||||
if
|
||||
get_local $0
|
||||
get_local $5
|
||||
local.get $0
|
||||
local.get $5
|
||||
i64.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.add
|
||||
get_local $5
|
||||
local.get $5
|
||||
i64.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
get_local $5
|
||||
local.get $5
|
||||
i64.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.add
|
||||
get_local $5
|
||||
local.get $5
|
||||
i64.store
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 32
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $0
|
||||
local.set $2
|
||||
local.get $0
|
||||
i32.const 32
|
||||
i32.add
|
||||
set_local $0
|
||||
local.set $0
|
||||
br $continue|0
|
||||
end
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
)
|
||||
(func $start (; 2 ;) (type $v)
|
||||
i32.const 32
|
||||
set_global $memset/dest
|
||||
get_global $memset/dest
|
||||
global.set $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 1
|
||||
i32.const 16
|
||||
call $memset/memset
|
||||
drop
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.load8_u
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -262,7 +262,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 15
|
||||
i32.add
|
||||
i32.load8_u
|
||||
@ -276,14 +276,14 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 1
|
||||
i32.add
|
||||
i32.const 2
|
||||
i32.const 14
|
||||
call $memset/memset
|
||||
drop
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.load8_u
|
||||
i32.const 1
|
||||
i32.ne
|
||||
@ -295,7 +295,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 1
|
||||
i32.add
|
||||
i32.load8_u
|
||||
@ -309,7 +309,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 14
|
||||
i32.add
|
||||
i32.load8_u
|
||||
@ -323,7 +323,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 15
|
||||
i32.add
|
||||
i32.load8_u
|
||||
|
@ -5,7 +5,7 @@
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\t\00\00\00m\00e\00m\00s\00e\00t\00.\00t\00s\00")
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $memset/dest (mut i32) (i32.const 0))
|
||||
(global $HEAP_BASE i32 (i32.const 32))
|
||||
@ -17,274 +17,274 @@
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i64)
|
||||
get_local $0
|
||||
set_local $3
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.set $3
|
||||
local.get $2
|
||||
i32.eqz
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $0
|
||||
get_local $1
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 2
|
||||
i32.le_u
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 2
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 2
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 3
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 6
|
||||
i32.le_u
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 3
|
||||
i32.add
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 4
|
||||
i32.sub
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.store8
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.le_u
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
i32.const 0
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.sub
|
||||
i32.const 3
|
||||
i32.and
|
||||
set_local $4
|
||||
get_local $0
|
||||
get_local $4
|
||||
local.set $4
|
||||
local.get $0
|
||||
local.get $4
|
||||
i32.add
|
||||
set_local $0
|
||||
get_local $2
|
||||
get_local $4
|
||||
local.set $0
|
||||
local.get $2
|
||||
local.get $4
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $2
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.const -4
|
||||
i32.and
|
||||
set_local $2
|
||||
local.set $2
|
||||
i32.const -1
|
||||
i32.const 255
|
||||
i32.div_u
|
||||
get_local $1
|
||||
local.get $1
|
||||
i32.const 255
|
||||
i32.and
|
||||
i32.mul
|
||||
set_local $5
|
||||
get_local $0
|
||||
get_local $5
|
||||
local.set $5
|
||||
local.get $0
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 4
|
||||
i32.sub
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 8
|
||||
i32.le_u
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 4
|
||||
i32.add
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.add
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 12
|
||||
i32.sub
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 8
|
||||
i32.sub
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 24
|
||||
i32.le_u
|
||||
if
|
||||
get_local $3
|
||||
local.get $3
|
||||
return
|
||||
end
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 12
|
||||
i32.add
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 20
|
||||
i32.add
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.add
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 28
|
||||
i32.sub
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 24
|
||||
i32.sub
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 20
|
||||
i32.sub
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
get_local $0
|
||||
get_local $2
|
||||
local.get $0
|
||||
local.get $2
|
||||
i32.add
|
||||
i32.const 16
|
||||
i32.sub
|
||||
get_local $5
|
||||
local.get $5
|
||||
i32.store
|
||||
i32.const 24
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 4
|
||||
i32.and
|
||||
i32.add
|
||||
set_local $4
|
||||
get_local $0
|
||||
get_local $4
|
||||
local.set $4
|
||||
local.get $0
|
||||
local.get $4
|
||||
i32.add
|
||||
set_local $0
|
||||
get_local $2
|
||||
get_local $4
|
||||
local.set $0
|
||||
local.get $2
|
||||
local.get $4
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $5
|
||||
i64.extend_u/i32
|
||||
get_local $5
|
||||
i64.extend_u/i32
|
||||
local.set $2
|
||||
local.get $5
|
||||
i64.extend_i32_u
|
||||
local.get $5
|
||||
i64.extend_i32_u
|
||||
i64.const 32
|
||||
i64.shl
|
||||
i64.or
|
||||
set_local $6
|
||||
local.set $6
|
||||
block $break|0
|
||||
loop $continue|0
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 32
|
||||
i32.ge_u
|
||||
if
|
||||
block
|
||||
get_local $0
|
||||
get_local $6
|
||||
local.get $0
|
||||
local.get $6
|
||||
i64.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.add
|
||||
get_local $6
|
||||
local.get $6
|
||||
i64.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
get_local $6
|
||||
local.get $6
|
||||
i64.store
|
||||
get_local $0
|
||||
local.get $0
|
||||
i32.const 24
|
||||
i32.add
|
||||
get_local $6
|
||||
local.get $6
|
||||
i64.store
|
||||
get_local $2
|
||||
local.get $2
|
||||
i32.const 32
|
||||
i32.sub
|
||||
set_local $2
|
||||
get_local $0
|
||||
local.set $2
|
||||
local.get $0
|
||||
i32.const 32
|
||||
i32.add
|
||||
set_local $0
|
||||
local.set $0
|
||||
end
|
||||
br $continue|0
|
||||
end
|
||||
end
|
||||
end
|
||||
get_local $3
|
||||
local.get $3
|
||||
)
|
||||
(func $start (; 2 ;) (type $v)
|
||||
get_global $HEAP_BASE
|
||||
set_global $memset/dest
|
||||
get_global $memset/dest
|
||||
global.get $HEAP_BASE
|
||||
global.set $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 1
|
||||
i32.const 16
|
||||
call $memset/memset
|
||||
drop
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.load8_u
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -297,7 +297,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 15
|
||||
i32.add
|
||||
i32.load8_u
|
||||
@ -312,14 +312,14 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 1
|
||||
i32.add
|
||||
i32.const 2
|
||||
i32.const 14
|
||||
call $memset/memset
|
||||
drop
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.load8_u
|
||||
i32.const 1
|
||||
i32.eq
|
||||
@ -332,7 +332,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 1
|
||||
i32.add
|
||||
i32.load8_u
|
||||
@ -347,7 +347,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 14
|
||||
i32.add
|
||||
i32.load8_u
|
||||
@ -362,7 +362,7 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
get_global $memset/dest
|
||||
global.get $memset/dest
|
||||
i32.const 15
|
||||
i32.add
|
||||
i32.load8_u
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $i (func (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $i (func (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $i (func (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $i (func (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $HEAP_BASE i32 (i32.const 8))
|
||||
(export "memory" (memory $0))
|
||||
|
@ -1,7 +1,7 @@
|
||||
(module
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $start)
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
|
@ -2,7 +2,7 @@
|
||||
(type $i (func (result i32)))
|
||||
(type $v (func))
|
||||
(memory $0 0)
|
||||
(table $0 1 anyfunc)
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $namespace/Outer.Inner.aVar (mut i32) (i32.const 0))
|
||||
(global $namespace/Outer.Inner.anEnum.ONE i32 (i32.const 1))
|
||||
@ -13,17 +13,17 @@
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $namespace/Outer.Inner.aFunc (; 0 ;) (type $i) (result i32)
|
||||
get_global $namespace/Outer.Inner.aVar
|
||||
global.get $namespace/Outer.Inner.aVar
|
||||
)
|
||||
(func $namespace/Joined.anotherFunc (; 1 ;) (type $i) (result i32)
|
||||
get_global $namespace/Joined.THREE
|
||||
global.get $namespace/Joined.THREE
|
||||
)
|
||||
(func $start (; 2 ;) (type $v)
|
||||
get_global $namespace/Outer.Inner.aVar
|
||||
global.get $namespace/Outer.Inner.aVar
|
||||
drop
|
||||
call $namespace/Outer.Inner.aFunc
|
||||
drop
|
||||
get_global $namespace/Outer.Inner.anEnum.ONE
|
||||
global.get $namespace/Outer.Inner.anEnum.ONE
|
||||
drop
|
||||
call $namespace/Joined.anotherFunc
|
||||
drop
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user