mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-06-22 03:01:55 +00:00
directize
This commit is contained in:
@ -58,7 +58,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 95
|
||||
i32.const 96
|
||||
i32.const 45
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -72,7 +72,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -100,7 +100,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -74,7 +74,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 95
|
||||
i32.const 96
|
||||
i32.const 45
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -88,7 +88,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -128,7 +128,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -106,7 +106,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -121,7 +121,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -9,10 +9,10 @@
|
||||
(data (i32.const 48) "\02\00\00\00\1a\00\00\00c\00a\00l\00l\00-\00s\00u\00p\00e\00r\00.\00t\00s\00")
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 84))
|
||||
(export "memory" (memory $0))
|
||||
@ -22,7 +22,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -121,13 +121,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -139,24 +139,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,18 +1,18 @@
|
||||
(module
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\01\00\00\00\10")
|
||||
(data (i32.const 24) "c\00l\00a\00s\00s\00.\00t\00s")
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $start $~lib/string/String~iterate)
|
||||
(elem (i32.const 0) $start $~lib/string/String~traverse)
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(export "test" (func $class/test))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(func $~lib/string/String~iterate (; 0 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/string/String~traverse (; 0 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $class/test (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
|
@ -1,7 +1,6 @@
|
||||
(module
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$fff (func (param f32 f32) (result f32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
@ -12,7 +11,7 @@
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\01\00\00\00\10\00\00\00\00\00\00\00\00\00\00\00c\00l\00a\00s\00s\00.\00t\00s\00")
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~iterate)
|
||||
(elem (i32.const 0) $null $~lib/string/String~traverse)
|
||||
(global $class/Animal.ONE (mut i32) (i32.const 1))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 40))
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
@ -21,8 +20,8 @@
|
||||
(export "test" (func $class/test))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(start $start)
|
||||
(func $~lib/string/String~iterate (; 1 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String~traverse (; 1 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $class/Animal.add (; 2 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $0
|
||||
|
@ -7,19 +7,15 @@
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(import "env" "trace" (func $~lib/env/trace (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\01\00\00\00,")
|
||||
(data (i32.const 24) "~\00l\00i\00b\00/\00a\00l\00l\00o\00c\00a\00t\00o\00r\00/\00t\00l\00s\00f\00.\00t\00s")
|
||||
(data (i32.const 72) "\01\00\00\00\1e")
|
||||
(data (i32.const 88) "~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s")
|
||||
(data (i32.const 120) "\01\00\00\00\12")
|
||||
(data (i32.const 136) " \00 \00 \00 \00 \00i\00t\00e\00r")
|
||||
(table $0 14 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~iterate $~lib/string/String~iterate $~lib/collector/itcm/step~anonymous|0 $~lib/collector/itcm/step~anonymous|1 $~lib/collector/itcm/step~anonymous|0 $~lib/string/String~iterate $~lib/string/String~iterate $~lib/string/String~iterate $~lib/string/String~iterate $~lib/string/String~iterate $~lib/string/String~iterate $~lib/string/String~iterate $~lib/string/String~iterate)
|
||||
(table $0 11 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~traverse $~lib/string/String~traverse $~lib/string/String~traverse $~lib/string/String~traverse $~lib/string/String~traverse $~lib/string/String~traverse $~lib/string/String~traverse $~lib/string/String~traverse $~lib/string/String~traverse $~lib/string/String~traverse)
|
||||
(global $~lib/allocator/tlsf/ROOT (mut i32) (i32.const 0))
|
||||
(global $~lib/collector/itcm/state (mut i32) (i32.const 0))
|
||||
(global $~lib/collector/itcm/fromSpace (mut i32) (i32.const 0))
|
||||
@ -42,10 +38,10 @@
|
||||
(export "table" (table $0))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(start $start)
|
||||
(func $~lib/string/String~iterate (; 2 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/string/String~traverse (; 1 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#setSLMap (; 3 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/allocator/tlsf/Root#setSLMap (; 2 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
local.get $1
|
||||
i32.const 22
|
||||
i32.ge_u
|
||||
@ -65,7 +61,7 @@
|
||||
local.get $2
|
||||
i32.store offset=4
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#setHead (; 4 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
|
||||
(func $~lib/allocator/tlsf/Root#setHead (; 3 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
|
||||
local.get $1
|
||||
i32.const 22
|
||||
i32.ge_u
|
||||
@ -100,7 +96,7 @@
|
||||
local.get $3
|
||||
i32.store offset=96
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Block#get:right (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Block#get:right (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const -4
|
||||
@ -134,7 +130,7 @@
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/allocator/tlsf/fls<usize> (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/fls<usize> (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
@ -150,7 +146,7 @@
|
||||
i32.clz
|
||||
i32.sub
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#getHead (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#getHead (; 6 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
local.get $1
|
||||
i32.const 22
|
||||
i32.ge_u
|
||||
@ -184,7 +180,7 @@
|
||||
i32.add
|
||||
i32.load offset=96
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#getSLMap (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#getSLMap (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $1
|
||||
i32.const 22
|
||||
i32.ge_u
|
||||
@ -203,7 +199,7 @@
|
||||
i32.add
|
||||
i32.load offset=4
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#remove (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/allocator/tlsf/Root#remove (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -332,7 +328,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Block#get:left (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Block#get:left (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 2
|
||||
@ -362,7 +358,7 @@
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#setJump (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/allocator/tlsf/Root#setJump (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
@ -407,7 +403,7 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#insert (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/allocator/tlsf/Root#insert (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -637,7 +633,7 @@
|
||||
i32.or
|
||||
call $~lib/allocator/tlsf/Root#setSLMap
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#addMemory (; 13 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/allocator/tlsf/Root#addMemory (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
local.get $1
|
||||
@ -760,7 +756,7 @@
|
||||
local.get $1
|
||||
call $~lib/allocator/tlsf/Root#insert
|
||||
)
|
||||
(func $~lib/allocator/tlsf/ffs<usize> (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/ffs<usize> (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
@ -774,7 +770,7 @@
|
||||
local.get $0
|
||||
i32.ctz
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#search (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#search (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
local.get $1
|
||||
@ -886,7 +882,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#use (; 16 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#use (; 15 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
local.get $1
|
||||
@ -997,7 +993,7 @@
|
||||
i32.const 8
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/allocator/tlsf/__mem_allocate (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/__mem_allocate (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -1023,14 +1019,14 @@
|
||||
if
|
||||
unreachable
|
||||
end
|
||||
i32.const 160
|
||||
i32.const 120
|
||||
local.set $2
|
||||
i32.const 160
|
||||
i32.const 120
|
||||
global.set $~lib/allocator/tlsf/ROOT
|
||||
i32.const 2912
|
||||
i32.const 0
|
||||
i32.store
|
||||
i32.const 160
|
||||
i32.const 120
|
||||
i32.const 0
|
||||
i32.store
|
||||
i32.const 0
|
||||
@ -1040,7 +1036,7 @@
|
||||
i32.const 22
|
||||
i32.lt_u
|
||||
if
|
||||
i32.const 160
|
||||
i32.const 120
|
||||
local.get $1
|
||||
i32.const 0
|
||||
call $~lib/allocator/tlsf/Root#setSLMap
|
||||
@ -1051,7 +1047,7 @@
|
||||
i32.const 32
|
||||
i32.lt_u
|
||||
if
|
||||
i32.const 160
|
||||
i32.const 120
|
||||
local.get $1
|
||||
local.get $3
|
||||
i32.const 0
|
||||
@ -1070,8 +1066,8 @@
|
||||
br $repeat|0
|
||||
end
|
||||
end
|
||||
i32.const 160
|
||||
i32.const 3080
|
||||
i32.const 120
|
||||
i32.const 3040
|
||||
current_memory
|
||||
i32.const 16
|
||||
i32.shl
|
||||
@ -1167,7 +1163,7 @@
|
||||
local.get $1
|
||||
call $~lib/allocator/tlsf/Root#use
|
||||
)
|
||||
(func $~lib/runtime/runtime.allocate (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.allocate (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
@ -1194,114 +1190,7 @@
|
||||
i32.const 16
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObjectList#push (; 19 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.set $2
|
||||
local.get $1
|
||||
local.get $1
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $0
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.store offset=12
|
||||
local.get $2
|
||||
local.get $2
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $1
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store offset=12
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#makeGray (; 20 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
global.get $~lib/collector/itcm/iter
|
||||
local.get $0
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
global.set $~lib/collector/itcm/iter
|
||||
end
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const -4
|
||||
i32.and
|
||||
local.tee $2
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.tee $1
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
local.get $1
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $2
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObjectList#push
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const -4
|
||||
i32.and
|
||||
i32.const 2
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/step~anonymous|0 (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/collector/itcm/white
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
local.tee $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/step~anonymous|1 (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 136
|
||||
i32.const 1
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
global.get $~lib/collector/itcm/white
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
local.tee $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/allocator/tlsf/__mem_free (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/allocator/tlsf/__mem_free (; 18 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -1339,7 +1228,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/step (; 24 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/collector/itcm/step (; 19 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
block $break|0
|
||||
block $case3|0
|
||||
@ -1390,8 +1279,7 @@
|
||||
i32.const 1
|
||||
global.set $~lib/collector/itcm/state
|
||||
end
|
||||
i32.const 3
|
||||
call $~iterateRoots
|
||||
call $~lib/gc/__gc_mark_roots
|
||||
i32.const 2
|
||||
global.set $~lib/collector/itcm/state
|
||||
br $break|0
|
||||
@ -1418,13 +1306,11 @@
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 4
|
||||
local.get $0
|
||||
i32.load
|
||||
call_indirect (type $FUNCSIG$vii)
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
else
|
||||
i32.const 5
|
||||
call $~iterateRoots
|
||||
call $~lib/gc/__gc_mark_roots
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
global.get $~lib/collector/itcm/iter
|
||||
i32.load offset=8
|
||||
@ -1463,7 +1349,7 @@
|
||||
i32.and
|
||||
global.set $~lib/collector/itcm/iter
|
||||
local.get $0
|
||||
i32.const 156
|
||||
i32.const 120
|
||||
i32.ge_u
|
||||
if
|
||||
local.get $0
|
||||
@ -1482,7 +1368,35 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_register (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/collector/itcm/ManagedObjectList#push (; 20 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.set $2
|
||||
local.get $1
|
||||
local.get $1
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $0
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.store offset=12
|
||||
local.get $2
|
||||
local.get $2
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $1
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store offset=12
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_register (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
call $~lib/collector/itcm/step
|
||||
local.get $0
|
||||
i32.const 16
|
||||
@ -1499,15 +1413,15 @@
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObjectList#push
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.register (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.const 156
|
||||
i32.const 120
|
||||
i32.le_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1522,7 +1436,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1536,14 +1450,14 @@
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/CtorConditionallyAllocates#constructor (; 27 ;) (type $FUNCSIG$i) (result i32)
|
||||
(func $constructor/CtorConditionallyAllocates#constructor (; 23 ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
block (result i32)
|
||||
global.get $constructor/b
|
||||
if
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 13
|
||||
i32.const 10
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
@ -1553,13 +1467,13 @@
|
||||
if
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 13
|
||||
i32.const 10
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $start:constructor (; 28 ;) (type $FUNCSIG$v)
|
||||
(func $start:constructor (; 24 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
@ -1568,7 +1482,7 @@
|
||||
global.set $constructor/emptyCtor
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 6
|
||||
i32.const 3
|
||||
call $~lib/runtime/runtime.register
|
||||
local.tee $0
|
||||
i32.const 1
|
||||
@ -1577,7 +1491,7 @@
|
||||
global.set $constructor/emptyCtorWithFieldInit
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 7
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.register
|
||||
local.tee $0
|
||||
i32.const 0
|
||||
@ -1586,12 +1500,12 @@
|
||||
global.set $constructor/emptyCtorWithFieldNoInit
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 8
|
||||
i32.const 5
|
||||
call $~lib/runtime/runtime.register
|
||||
global.set $constructor/none
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 9
|
||||
i32.const 6
|
||||
call $~lib/runtime/runtime.register
|
||||
local.tee $0
|
||||
i32.const 1
|
||||
@ -1600,7 +1514,7 @@
|
||||
global.set $constructor/justFieldInit
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 10
|
||||
i32.const 7
|
||||
call $~lib/runtime/runtime.register
|
||||
local.tee $0
|
||||
i32.const 0
|
||||
@ -1619,95 +1533,140 @@
|
||||
end
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 11
|
||||
i32.const 8
|
||||
call $~lib/runtime/runtime.register
|
||||
end
|
||||
global.set $constructor/ctorConditionallyReturns
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 12
|
||||
i32.const 9
|
||||
call $~lib/runtime/runtime.register
|
||||
global.set $constructor/ctorAllocates
|
||||
call $constructor/CtorConditionallyAllocates#constructor
|
||||
global.set $constructor/ctorConditionallyAllocates
|
||||
)
|
||||
(func $start (; 29 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 25 ;) (type $FUNCSIG$v)
|
||||
call $start:constructor
|
||||
)
|
||||
(func $null (; 30 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 26 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
(func $~iterateRoots (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/collector/itcm/ManagedObject#makeGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $constructor/emptyCtor
|
||||
local.tee $1
|
||||
(local $2 i32)
|
||||
global.get $~lib/collector/itcm/iter
|
||||
local.get $0
|
||||
i32.eq
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
i32.load offset=12
|
||||
global.set $~lib/collector/itcm/iter
|
||||
end
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const -4
|
||||
i32.and
|
||||
local.tee $2
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.tee $1
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
local.get $1
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $2
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObjectList#push
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const -4
|
||||
i32.and
|
||||
i32.const 2
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_mark (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/collector/itcm/white
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
local.tee $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/gc/__gc_mark_roots (; 29 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
global.get $constructor/emptyCtor
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/emptyCtorWithFieldInit
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/emptyCtorWithFieldNoInit
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/none
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/justFieldInit
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/justFieldNoInit
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/ctorReturns
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/ctorConditionallyReturns
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/ctorAllocates
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/ctorConditionallyAllocates
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
)
|
||||
)
|
||||
|
@ -7,16 +7,13 @@
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(import "env" "trace" (func $~lib/env/trace (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\01\00\00\00,\00\00\00\00\00\00\00\00\00\00\00~\00l\00i\00b\00/\00a\00l\00l\00o\00c\00a\00t\00o\00r\00/\00t\00l\00s\00f\00.\00t\00s\00")
|
||||
(data (i32.const 72) "\01\00\00\00\1e\00\00\00\00\00\00\00\00\00\00\00~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s\00")
|
||||
(data (i32.const 120) "\01\00\00\00\12\00\00\00\00\00\00\00\00\00\00\00 \00 \00 \00 \00 \00i\00t\00e\00r\00")
|
||||
(table $0 14 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~iterate $constructor/EmptyCtor~iterate $~lib/collector/itcm/step~anonymous|0 $~lib/collector/itcm/step~anonymous|1 $~lib/collector/itcm/step~anonymous|2 $constructor/EmptyCtorWithFieldInit~iterate $constructor/EmptyCtorWithFieldNoInit~iterate $constructor/None~iterate $constructor/JustFieldInit~iterate $constructor/JustFieldNoInit~iterate $constructor/CtorConditionallyReturns~iterate $constructor/CtorAllocates~iterate $constructor/CtorConditionallyAllocates~iterate)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(table $0 11 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~traverse $constructor/EmptyCtor~traverse $constructor/EmptyCtorWithFieldInit~traverse $constructor/EmptyCtorWithFieldNoInit~traverse $constructor/None~traverse $constructor/JustFieldInit~traverse $constructor/JustFieldNoInit~traverse $constructor/CtorConditionallyReturns~traverse $constructor/CtorAllocates~traverse $constructor/CtorConditionallyAllocates~traverse)
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/allocator/tlsf/ROOT (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/tlsf/Root.SL_START i32 (i32.const 4))
|
||||
(global $~lib/allocator/tlsf/SL_BITS i32 (i32.const 5))
|
||||
@ -34,7 +31,7 @@
|
||||
(global $~lib/allocator/tlsf/TAGS i32 (i32.const 3))
|
||||
(global $~lib/allocator/tlsf/Block.MAX_SIZE i32 (i32.const 1073741824))
|
||||
(global $~lib/allocator/tlsf/SB_SIZE i32 (i32.const 256))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/collector/itcm/state (mut i32) (i32.const 0))
|
||||
(global $~lib/collector/itcm/fromSpace (mut i32) (i32.const 0))
|
||||
@ -52,17 +49,17 @@
|
||||
(global $constructor/ctorConditionallyReturns (mut i32) (i32.const 0))
|
||||
(global $constructor/ctorAllocates (mut i32) (i32.const 0))
|
||||
(global $constructor/ctorConditionallyAllocates (mut i32) (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 156))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 120))
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(start $start)
|
||||
(func $~lib/runtime/runtime.adjust (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.adjust (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -70,15 +67,15 @@
|
||||
i32.sub
|
||||
i32.shl
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#set:tailRef (; 3 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/allocator/tlsf/Root#set:tailRef (; 2 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 0
|
||||
local.get $1
|
||||
i32.store offset=2912
|
||||
)
|
||||
(func $~lib/string/String~iterate (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String~traverse (; 3 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#setSLMap (; 5 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/allocator/tlsf/Root#setSLMap (; 4 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
local.get $1
|
||||
global.get $~lib/allocator/tlsf/FL_BITS
|
||||
i32.lt_u
|
||||
@ -99,7 +96,7 @@
|
||||
local.get $2
|
||||
i32.store offset=4
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#setHead (; 6 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
|
||||
(func $~lib/allocator/tlsf/Root#setHead (; 5 ;) (type $FUNCSIG$viiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
|
||||
local.get $1
|
||||
global.get $~lib/allocator/tlsf/FL_BITS
|
||||
i32.lt_u
|
||||
@ -136,11 +133,11 @@
|
||||
local.get $3
|
||||
i32.store offset=96
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#get:tailRef (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#get:tailRef (; 6 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
i32.const 0
|
||||
i32.load offset=2912
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Block#get:right (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Block#get:right (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
@ -180,7 +177,7 @@
|
||||
local.get $1
|
||||
end
|
||||
)
|
||||
(func $~lib/allocator/tlsf/fls<usize> (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/fls<usize> (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
@ -198,7 +195,7 @@
|
||||
i32.clz
|
||||
i32.sub
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#getHead (; 10 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#getHead (; 9 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
local.get $1
|
||||
global.get $~lib/allocator/tlsf/FL_BITS
|
||||
i32.lt_u
|
||||
@ -234,7 +231,7 @@
|
||||
i32.add
|
||||
i32.load offset=96
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#getSLMap (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#getSLMap (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $1
|
||||
global.get $~lib/allocator/tlsf/FL_BITS
|
||||
i32.lt_u
|
||||
@ -254,7 +251,7 @@
|
||||
i32.add
|
||||
i32.load offset=4
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#remove (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/allocator/tlsf/Root#remove (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -399,7 +396,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Block#get:left (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Block#get:left (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
@ -431,7 +428,7 @@
|
||||
local.get $1
|
||||
end
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#setJump (; 14 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/allocator/tlsf/Root#setJump (; 13 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
local.get $1
|
||||
i32.load
|
||||
global.get $~lib/allocator/tlsf/FREE
|
||||
@ -477,7 +474,7 @@
|
||||
local.get $1
|
||||
i32.store
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#insert (; 15 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/allocator/tlsf/Root#insert (; 14 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -743,7 +740,7 @@
|
||||
i32.or
|
||||
call $~lib/allocator/tlsf/Root#setSLMap
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#addMemory (; 16 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#addMemory (; 15 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -896,7 +893,7 @@
|
||||
call $~lib/allocator/tlsf/Root#insert
|
||||
i32.const 1
|
||||
)
|
||||
(func $~lib/allocator/tlsf/ffs<usize> (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/ffs<usize> (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
@ -912,7 +909,7 @@
|
||||
local.get $0
|
||||
i32.ctz
|
||||
)
|
||||
(func $~lib/allocator/tlsf/ffs<u32> (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/ffs<u32> (; 17 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
@ -928,7 +925,7 @@
|
||||
local.get $0
|
||||
i32.ctz
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#search (; 19 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#search (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -1069,7 +1066,7 @@
|
||||
end
|
||||
local.get $6
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#use (; 20 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/Root#use (; 19 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -1197,7 +1194,7 @@
|
||||
global.get $~lib/allocator/tlsf/Block.INFO
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/allocator/tlsf/__mem_allocate (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/tlsf/__mem_allocate (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -1433,19 +1430,19 @@
|
||||
local.get $0
|
||||
call $~lib/allocator/tlsf/Root#use
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 21 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
call $~lib/allocator/tlsf/__mem_allocate
|
||||
return
|
||||
)
|
||||
(func $~lib/runtime/runtime.allocate (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.allocate (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
call $~lib/runtime/runtime.adjust
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -1457,13 +1454,13 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $constructor/EmptyCtor~iterate (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $constructor/EmptyCtor~traverse (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObjectList#clear (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/collector/itcm/ManagedObjectList#clear (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.store offset=8
|
||||
@ -1471,13 +1468,7 @@
|
||||
local.get $0
|
||||
i32.store offset=12
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#get:color (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#get:next (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/collector/itcm/ManagedObject#get:next (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
@ -1485,96 +1476,7 @@
|
||||
i32.xor
|
||||
i32.and
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#set:next (; 28 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#unlink (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#get:next
|
||||
local.set $1
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.set $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.store offset=12
|
||||
local.get $2
|
||||
local.get $1
|
||||
call $~lib/collector/itcm/ManagedObject#set:next
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObjectList#push (; 30 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.set $2
|
||||
local.get $1
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#set:next
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.store offset=12
|
||||
local.get $2
|
||||
local.get $1
|
||||
call $~lib/collector/itcm/ManagedObject#set:next
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store offset=12
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#makeGray (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.get $~lib/collector/itcm/iter
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
global.set $~lib/collector/itcm/iter
|
||||
end
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#unlink
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObjectList#push
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
i32.const 2
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/step~anonymous|0 (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
block $~lib/collector/itcm/refToObj|inlined.0 (result i32)
|
||||
local.get $0
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
end
|
||||
local.set $2
|
||||
local.get $2
|
||||
call $~lib/collector/itcm/ManagedObject#get:color
|
||||
global.get $~lib/collector/itcm/white
|
||||
i32.eq
|
||||
if
|
||||
local.get $2
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#set:color (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/collector/itcm/ManagedObject#set:color (; 26 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
@ -1586,56 +1488,7 @@
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/step~anonymous|1 (; 34 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
i32.const 136
|
||||
i32.const 1
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
block $~lib/collector/itcm/refToObj|inlined.1 (result i32)
|
||||
local.get $0
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
end
|
||||
local.set $2
|
||||
local.get $2
|
||||
call $~lib/collector/itcm/ManagedObject#get:color
|
||||
global.get $~lib/collector/itcm/white
|
||||
i32.eq
|
||||
if
|
||||
local.get $2
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/step~anonymous|2 (; 35 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
block $~lib/collector/itcm/refToObj|inlined.2 (result i32)
|
||||
local.get $0
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
end
|
||||
local.set $2
|
||||
local.get $2
|
||||
call $~lib/collector/itcm/ManagedObject#get:color
|
||||
global.get $~lib/collector/itcm/white
|
||||
i32.eq
|
||||
if
|
||||
local.get $2
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/allocator/tlsf/__mem_free (; 36 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/allocator/tlsf/__mem_free (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -1678,11 +1531,11 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/memory/memory.free (; 37 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/memory/memory.free (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
call $~lib/allocator/tlsf/__mem_free
|
||||
)
|
||||
(func $~lib/collector/itcm/step (; 38 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/collector/itcm/step (; 29 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
block $break|0
|
||||
@ -1711,7 +1564,7 @@
|
||||
br $break|0
|
||||
end
|
||||
block
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
call $~lib/memory/memory.allocate
|
||||
global.set $~lib/collector/itcm/fromSpace
|
||||
global.get $~lib/collector/itcm/fromSpace
|
||||
@ -1722,7 +1575,7 @@
|
||||
i32.store offset=4
|
||||
global.get $~lib/collector/itcm/fromSpace
|
||||
call $~lib/collector/itcm/ManagedObjectList#clear
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
call $~lib/memory/memory.allocate
|
||||
global.set $~lib/collector/itcm/toSpace
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
@ -1740,8 +1593,7 @@
|
||||
end
|
||||
end
|
||||
block
|
||||
i32.const 3
|
||||
call $~iterateRoots
|
||||
call $~lib/gc/__gc_mark_roots
|
||||
i32.const 2
|
||||
global.set $~lib/collector/itcm/state
|
||||
br $break|0
|
||||
@ -1767,16 +1619,14 @@
|
||||
local.get $0
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
end
|
||||
i32.const 4
|
||||
local.get $0
|
||||
i32.load
|
||||
call_indirect (type $FUNCSIG$vii)
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
else
|
||||
i32.const 5
|
||||
call $~iterateRoots
|
||||
call $~lib/gc/__gc_mark_roots
|
||||
global.get $~lib/collector/itcm/iter
|
||||
call $~lib/collector/itcm/ManagedObject#get:next
|
||||
local.set $0
|
||||
@ -1834,15 +1684,43 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_register (; 39 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/collector/itcm/ManagedObject#set:next (; 30 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObjectList#push (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.set $2
|
||||
local.get $1
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#set:next
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.store offset=12
|
||||
local.get $2
|
||||
local.get $1
|
||||
call $~lib/collector/itcm/ManagedObject#set:next
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store offset=12
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_register (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
call $~lib/collector/itcm/step
|
||||
block $~lib/collector/itcm/refToObj|inlined.3 (result i32)
|
||||
block $~lib/collector/itcm/refToObj|inlined.0 (result i32)
|
||||
local.get $0
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
end
|
||||
local.set $2
|
||||
@ -1853,7 +1731,7 @@
|
||||
local.get $2
|
||||
call $~lib/collector/itcm/ManagedObjectList#push
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 40 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.register (; 33 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
global.get $~lib/memory/HEAP_BASE
|
||||
@ -1862,24 +1740,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1891,7 +1769,7 @@
|
||||
call $~lib/collector/itcm/__ref_register
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/EmptyCtor#constructor (; 41 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $constructor/EmptyCtor#constructor (; 34 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
@ -1903,10 +1781,60 @@
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/EmptyCtorWithFieldInit~iterate (; 42 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $constructor/EmptyCtorWithFieldInit~traverse (; 35 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $constructor/EmptyCtorWithFieldInit#constructor (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $constructor/EmptyCtorWithFieldInit#constructor (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 3
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/EmptyCtorWithFieldNoInit~traverse (; 37 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $constructor/EmptyCtorWithFieldNoInit#constructor (; 38 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.store
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/None~traverse (; 39 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
)
|
||||
(func $constructor/None#constructor (; 40 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 5
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/JustFieldInit~traverse (; 41 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $constructor/JustFieldInit#constructor (; 42 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
@ -1921,10 +1849,10 @@
|
||||
i32.store
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/EmptyCtorWithFieldNoInit~iterate (; 44 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $constructor/JustFieldNoInit~traverse (; 43 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $constructor/EmptyCtorWithFieldNoInit#constructor (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $constructor/JustFieldNoInit#constructor (; 44 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
@ -1939,64 +1867,14 @@
|
||||
i32.store
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/None~iterate (; 46 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
)
|
||||
(func $constructor/None#constructor (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 8
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/JustFieldInit~iterate (; 48 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
)
|
||||
(func $constructor/JustFieldInit#constructor (; 49 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 9
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
local.get $0
|
||||
i32.const 1
|
||||
i32.store
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/JustFieldNoInit~iterate (; 50 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
)
|
||||
(func $constructor/JustFieldNoInit#constructor (; 51 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 10
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.store
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/CtorReturns#constructor (; 52 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $constructor/CtorReturns#constructor (; 45 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
i32.const 0
|
||||
call $~lib/memory/memory.allocate
|
||||
)
|
||||
(func $constructor/CtorConditionallyReturns~iterate (; 53 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $constructor/CtorConditionallyReturns~traverse (; 46 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $constructor/CtorConditionallyReturns#constructor (; 54 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $constructor/CtorConditionallyReturns#constructor (; 47 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
global.get $constructor/b
|
||||
if
|
||||
i32.const 0
|
||||
@ -2008,23 +1886,23 @@
|
||||
if
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 11
|
||||
i32.const 8
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/CtorAllocates~iterate (; 55 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $constructor/CtorAllocates~traverse (; 48 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $constructor/CtorAllocates#constructor (; 56 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $constructor/CtorAllocates#constructor (; 49 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
block (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 12
|
||||
i32.const 9
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
@ -2033,10 +1911,10 @@
|
||||
drop
|
||||
local.get $0
|
||||
)
|
||||
(func $constructor/CtorConditionallyAllocates~iterate (; 57 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $constructor/CtorConditionallyAllocates~traverse (; 50 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $constructor/CtorConditionallyAllocates#constructor (; 58 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $constructor/CtorConditionallyAllocates#constructor (; 51 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
global.get $constructor/b
|
||||
if
|
||||
block (result i32)
|
||||
@ -2045,7 +1923,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 13
|
||||
i32.const 10
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
@ -2058,13 +1936,13 @@
|
||||
if
|
||||
i32.const 0
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 13
|
||||
i32.const 10
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $start:constructor (; 59 ;) (type $FUNCSIG$v)
|
||||
(func $start:constructor (; 52 ;) (type $FUNCSIG$v)
|
||||
i32.const 0
|
||||
call $constructor/EmptyCtor#constructor
|
||||
global.set $constructor/emptyCtor
|
||||
@ -2096,82 +1974,139 @@
|
||||
call $constructor/CtorConditionallyAllocates#constructor
|
||||
global.set $constructor/ctorConditionallyAllocates
|
||||
)
|
||||
(func $start (; 60 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 53 ;) (type $FUNCSIG$v)
|
||||
call $start:constructor
|
||||
)
|
||||
(func $null (; 61 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 54 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
(func $~iterateRoots (; 62 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/collector/itcm/ManagedObject#get:color (; 55 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#unlink (; 56 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $constructor/emptyCtor
|
||||
local.tee $1
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#get:next
|
||||
local.set $1
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.set $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.store offset=12
|
||||
local.get $2
|
||||
local.get $1
|
||||
call $~lib/collector/itcm/ManagedObject#set:next
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#makeGray (; 57 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.get $~lib/collector/itcm/iter
|
||||
i32.eq
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
i32.load offset=12
|
||||
global.set $~lib/collector/itcm/iter
|
||||
end
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#unlink
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObjectList#push
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
i32.const 2
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_mark (; 58 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
block $~lib/collector/itcm/refToObj|inlined.1 (result i32)
|
||||
local.get $0
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
end
|
||||
local.set $2
|
||||
local.get $2
|
||||
call $~lib/collector/itcm/ManagedObject#get:color
|
||||
global.get $~lib/collector/itcm/white
|
||||
i32.eq
|
||||
if
|
||||
local.get $2
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/gc/__gc_mark_roots (; 59 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
global.get $constructor/emptyCtor
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/emptyCtorWithFieldInit
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/emptyCtorWithFieldNoInit
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/none
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/justFieldInit
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/justFieldNoInit
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/ctorReturns
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/ctorConditionallyReturns
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/ctorAllocates
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $constructor/ctorConditionallyAllocates
|
||||
local.tee $1
|
||||
local.tee $0
|
||||
if
|
||||
local.get $1
|
||||
local.get $0
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
)
|
||||
)
|
||||
|
@ -146,7 +146,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -161,7 +161,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -18,10 +18,10 @@
|
||||
(global $exports/Car.TIRES i32 (i32.const 4))
|
||||
(global $exports/vehicles.Car.TIRES i32 (i32.const 4))
|
||||
(global $exports/outer.inner.a i32 (i32.const 42))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 48))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
@ -75,7 +75,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -174,13 +174,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -192,24 +192,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -2,11 +2,11 @@
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(type $FUNCSIG$viii (func (param i32 i32 i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
@ -19,16 +19,18 @@
|
||||
(data (i32.const 72) "g\00c\00.\00r\00e\00g\00i\00s\00t\00e\00r")
|
||||
(data (i32.const 96) "\02\00\00\00\n")
|
||||
(data (i32.const 112) "g\00c\00.\00t\00s")
|
||||
(data (i32.const 128) "\02\00\00\00&")
|
||||
(data (i32.const 144) "~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s")
|
||||
(data (i32.const 184) "\02\00\00\00\0e")
|
||||
(data (i32.const 200) "g\00c\00.\00l\00i\00n\00k")
|
||||
(data (i32.const 216) "\02\00\00\00\12")
|
||||
(data (i32.const 232) "g\00c\00.\00u\00n\00l\00i\00n\00k")
|
||||
(data (i32.const 256) "\02\00\00\00\14")
|
||||
(data (i32.const 272) "g\00c\00.\00c\00o\00l\00l\00e\00c\00t")
|
||||
(data (i32.const 128) "\02\00\00\00\0e")
|
||||
(data (i32.const 144) "g\00c\00.\00m\00a\00r\00k")
|
||||
(data (i32.const 160) "\02\00\00\00&")
|
||||
(data (i32.const 176) "~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s")
|
||||
(data (i32.const 216) "\02\00\00\00\0e")
|
||||
(data (i32.const 232) "g\00c\00.\00l\00i\00n\00k")
|
||||
(data (i32.const 248) "\02\00\00\00\12")
|
||||
(data (i32.const 264) "g\00c\00.\00u\00n\00l\00i\00n\00k")
|
||||
(data (i32.const 288) "\02\00\00\00\14")
|
||||
(data (i32.const 304) "g\00c\00.\00c\00o\00l\00l\00e\00c\00t")
|
||||
(table $0 6 funcref)
|
||||
(elem (i32.const 0) $null $gc/Ref~iterate $gc/Ref~iterate $~lib/set/Set<usize>~iterate $~lib/set/Set<usize>~iterate $gc/Ref~iterate)
|
||||
(elem (i32.const 0) $null $gc/Ref~traverse $gc/Ref~traverse $~lib/set/Set<usize>~traverse $~lib/set/Set<usize>~traverse $gc/Ref~traverse)
|
||||
(global $gc/_dummy/collect_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_ref (mut i32) (i32.const 0))
|
||||
@ -38,18 +40,18 @@
|
||||
(global $gc/_dummy/unlink_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/unlink_ref (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/unlink_parentRef (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/mark_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/mark_ref (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/gc/gc.implemented i32 (i32.const 1))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/runtime.MAX_BYTELENGTH i32 (i32.const 1073741808))
|
||||
(global $~lib/gc/GC_ROOT (mut i32) (i32.const 0))
|
||||
(global $~lib/gc/ROOT (mut i32) (i32.const 0))
|
||||
(global $~lib/started (mut i32) (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(export "main" (func $gc/main))
|
||||
(export "runtime.MAX_BYTELENGTH" (global $~lib/runtime/runtime.MAX_BYTELENGTH))
|
||||
(export "runtime.adjust" (func $~lib/runtime/runtime.adjust))
|
||||
(export "runtime.allocate" (func $~lib/runtime/runtime.allocate))
|
||||
(export "runtime.reallocate" (func $~lib/runtime/runtime.reallocate))
|
||||
@ -161,7 +163,7 @@
|
||||
i32.const 16
|
||||
i32.add
|
||||
)
|
||||
(func $gc/Ref~iterate (; 5 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $gc/Ref~traverse (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $gc/_dummy/__ref_register (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
@ -184,12 +186,12 @@
|
||||
(func $~lib/runtime/runtime.register (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.const 324
|
||||
i32.le_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -204,7 +206,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -216,23 +218,32 @@
|
||||
call $gc/_dummy/__ref_register
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/set/Set<usize>~iterate (; 8 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $gc/_dummy/__ref_mark (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 144
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
global.get $gc/_dummy/mark_count
|
||||
i32.const 1
|
||||
i32.add
|
||||
global.set $gc/_dummy/mark_count
|
||||
local.get $0
|
||||
global.set $gc/_dummy/mark_ref
|
||||
)
|
||||
(func $~lib/set/Set<usize>~traverse (; 9 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $gc/_dummy/__ref_mark
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
local.set $0
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $gc/_dummy/__ref_mark
|
||||
)
|
||||
(func $~lib/memory/memory.fill (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/memory/memory.fill (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
block $~lib/util/memory/memset|inlined.0
|
||||
local.get $1
|
||||
@ -443,16 +454,16 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.const 1073741808
|
||||
i32.gt_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 144
|
||||
i32.const 53
|
||||
i32.const 51
|
||||
i32.const 176
|
||||
i32.const 54
|
||||
i32.const 43
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -465,8 +476,8 @@
|
||||
i32.const 5
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $gc/_dummy/__ref_link (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 200
|
||||
(func $gc/_dummy/__ref_link (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 232
|
||||
i32.const 2
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
@ -485,8 +496,8 @@
|
||||
local.get $0
|
||||
global.set $gc/_dummy/link_parentRef
|
||||
)
|
||||
(func $gc/_dummy/__ref_unlink (; 12 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 232
|
||||
(func $gc/_dummy/__ref_unlink (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 264
|
||||
i32.const 2
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
@ -505,7 +516,7 @@
|
||||
local.get $1
|
||||
global.set $gc/_dummy/unlink_parentRef
|
||||
)
|
||||
(func $~lib/set/Set<usize>#clear (; 13 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/set/Set<usize>#clear (; 14 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -568,7 +579,7 @@
|
||||
i32.const 0
|
||||
i32.store offset=20
|
||||
)
|
||||
(func $~lib/set/Set<usize>#constructor (; 14 ;) (type $FUNCSIG$i) (result i32)
|
||||
(func $~lib/set/Set<usize>#constructor (; 15 ;) (type $FUNCSIG$i) (result i32)
|
||||
(local $0 i32)
|
||||
i32.const 24
|
||||
call $~lib/runtime/runtime.allocate
|
||||
@ -596,7 +607,7 @@
|
||||
call $~lib/set/Set<usize>#clear
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/util/hash/hash32 (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/util/hash/hash32 (; 16 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.const 255
|
||||
i32.and
|
||||
@ -627,7 +638,7 @@
|
||||
i32.const 16777619
|
||||
i32.mul
|
||||
)
|
||||
(func $~lib/set/Set<usize>#find (; 16 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/set/Set<usize>#find (; 17 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $0
|
||||
@ -670,7 +681,7 @@
|
||||
end
|
||||
i32.const 0
|
||||
)
|
||||
(func $~lib/set/Set<usize>#has (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/set/Set<usize>#has (; 18 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $1
|
||||
@ -679,7 +690,7 @@
|
||||
i32.const 0
|
||||
i32.ne
|
||||
)
|
||||
(func $~lib/set/Set<usize>#rehash (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/set/Set<usize>#rehash (; 19 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -814,7 +825,7 @@
|
||||
i32.load offset=20
|
||||
i32.store offset=16
|
||||
)
|
||||
(func $~lib/set/Set<usize>#add (; 19 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/set/Set<usize>#add (; 20 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -897,9 +908,9 @@
|
||||
i32.store
|
||||
end
|
||||
)
|
||||
(func $~lib/gc/gc.retain (; 20 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/gc/gc.retain (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/gc/GC_ROOT
|
||||
global.get $~lib/gc/ROOT
|
||||
local.tee $1
|
||||
local.get $0
|
||||
call $~lib/set/Set<usize>#has
|
||||
@ -913,7 +924,7 @@
|
||||
call $gc/_dummy/__ref_link
|
||||
end
|
||||
)
|
||||
(func $~lib/set/Set<usize>#delete (; 21 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/set/Set<usize>#delete (; 22 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
local.get $1
|
||||
@ -973,9 +984,9 @@
|
||||
call $~lib/set/Set<usize>#rehash
|
||||
end
|
||||
)
|
||||
(func $~lib/gc/gc.release (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/gc/gc.release (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/gc/GC_ROOT
|
||||
global.get $~lib/gc/ROOT
|
||||
local.tee $1
|
||||
local.get $0
|
||||
call $~lib/set/Set<usize>#has
|
||||
@ -988,8 +999,8 @@
|
||||
call $gc/_dummy/__ref_unlink
|
||||
end
|
||||
)
|
||||
(func $~lib/gc/gc.collect (; 23 ;) (type $FUNCSIG$v)
|
||||
i32.const 272
|
||||
(func $~lib/gc/gc.collect (; 24 ;) (type $FUNCSIG$v)
|
||||
i32.const 304
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -1002,7 +1013,7 @@
|
||||
i32.add
|
||||
global.set $gc/_dummy/collect_count
|
||||
)
|
||||
(func $gc/main (; 24 ;) (type $FUNCSIG$v)
|
||||
(func $gc/main (; 25 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -1010,12 +1021,12 @@
|
||||
global.get $~lib/started
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 296
|
||||
i32.const 328
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
global.get $~lib/allocator/arena/startOffset
|
||||
global.set $~lib/allocator/arena/offset
|
||||
call $~lib/set/Set<usize>#constructor
|
||||
global.set $~lib/gc/GC_ROOT
|
||||
global.set $~lib/gc/ROOT
|
||||
i32.const 1
|
||||
global.set $~lib/started
|
||||
end
|
||||
@ -1153,7 +1164,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/util/memory/memcpy (; 25 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/util/memory/memcpy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -2000,7 +2011,7 @@
|
||||
i32.store8
|
||||
end
|
||||
)
|
||||
(func $~lib/memory/memory.copy (; 26 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/memory/memory.copy (; 27 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
block $~lib/util/memory/memmove|inlined.0
|
||||
@ -2194,7 +2205,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/runtime/runtime.reallocate (; 27 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.reallocate (; 28 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -2228,7 +2239,7 @@
|
||||
i32.shl
|
||||
i32.const 0
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.const 324
|
||||
i32.gt_u
|
||||
select
|
||||
local.get $3
|
||||
@ -2266,12 +2277,12 @@
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.const 324
|
||||
i32.le_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 107
|
||||
i32.const 64
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2299,14 +2310,14 @@
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/runtime/runtime.discard (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/runtime/runtime.discard (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.const 324
|
||||
i32.le_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 132
|
||||
i32.const 89
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2320,13 +2331,13 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 134
|
||||
i32.const 91
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/runtime/runtime.makeArray (; 29 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.makeArray (; 30 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
@ -2382,10 +2393,10 @@
|
||||
end
|
||||
local.get $4
|
||||
)
|
||||
(func $null (; 30 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 31 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
(func $~lib/runtime/runtime.makeArray|trampoline (; 31 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.makeArray|trampoline (; 32 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
block $1of1
|
||||
block $0of1
|
||||
block $outOfRange
|
||||
@ -2405,7 +2416,7 @@
|
||||
local.get $3
|
||||
call $~lib/runtime/runtime.makeArray
|
||||
)
|
||||
(func $~lib/setargc (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/setargc (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.set $~lib/argc
|
||||
)
|
||||
|
@ -2,11 +2,11 @@
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(type $FUNCSIG$viii (func (param i32 i32 i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
@ -15,12 +15,13 @@
|
||||
(data (i32.const 8) "\02\00\00\00\1e\00\00\00\00\00\00\00\00\00\00\00~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s\00")
|
||||
(data (i32.const 56) "\02\00\00\00\16\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00r\00e\00g\00i\00s\00t\00e\00r\00")
|
||||
(data (i32.const 96) "\02\00\00\00\n\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00t\00s\00")
|
||||
(data (i32.const 128) "\02\00\00\00&\00\00\00\00\00\00\00\00\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00")
|
||||
(data (i32.const 184) "\02\00\00\00\0e\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00l\00i\00n\00k\00")
|
||||
(data (i32.const 216) "\02\00\00\00\12\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00u\00n\00l\00i\00n\00k\00")
|
||||
(data (i32.const 256) "\02\00\00\00\14\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00c\00o\00l\00l\00e\00c\00t\00")
|
||||
(data (i32.const 128) "\02\00\00\00\0e\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00m\00a\00r\00k\00")
|
||||
(data (i32.const 160) "\02\00\00\00&\00\00\00\00\00\00\00\00\00\00\00~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s\00")
|
||||
(data (i32.const 216) "\02\00\00\00\0e\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00l\00i\00n\00k\00")
|
||||
(data (i32.const 248) "\02\00\00\00\12\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00u\00n\00l\00i\00n\00k\00")
|
||||
(data (i32.const 288) "\02\00\00\00\14\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00c\00o\00l\00l\00e\00c\00t\00")
|
||||
(table $0 6 funcref)
|
||||
(elem (i32.const 0) $null $gc/Ref~iterate $~lib/string/String~iterate $~lib/set/Set<usize>~iterate $~lib/set/Set<usize>~iterate $~lib/arraybuffer/ArrayBuffer~iterate)
|
||||
(elem (i32.const 0) $null $gc/Ref~traverse $~lib/string/String~traverse $~lib/set/Set<usize>~traverse $~lib/set/Set<usize>~traverse $~lib/arraybuffer/ArrayBuffer~traverse)
|
||||
(global $gc/_dummy/collect_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_ref (mut i32) (i32.const 0))
|
||||
@ -30,22 +31,23 @@
|
||||
(global $gc/_dummy/unlink_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/unlink_ref (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/unlink_parentRef (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $gc/_dummy/mark_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/mark_ref (mut i32) (i32.const 0))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/gc/gc.implemented i32 (i32.const 1))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/runtime.MAX_BYTELENGTH i32 (i32.const 1073741808))
|
||||
(global $~lib/gc/GC_ROOT (mut i32) (i32.const 0))
|
||||
(global $~lib/util/runtime/MAX_BYTELENGTH i32 (i32.const 1073741808))
|
||||
(global $~lib/gc/ROOT (mut i32) (i32.const 0))
|
||||
(global $~lib/started (mut i32) (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 292))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 324))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(export "main" (func $gc/main))
|
||||
(export "runtime.MAX_BYTELENGTH" (global $~lib/runtime/runtime.MAX_BYTELENGTH))
|
||||
(export "runtime.adjust" (func $~lib/runtime/runtime.adjust))
|
||||
(export "runtime.allocate" (func $~lib/runtime/runtime.allocate))
|
||||
(export "runtime.reallocate" (func $~lib/runtime/runtime.reallocate))
|
||||
@ -62,7 +64,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -161,7 +163,7 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -173,13 +175,13 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $gc/Ref~iterate (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $gc/Ref~traverse (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
)
|
||||
(func $~lib/string/String~iterate (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String~traverse (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $gc/_dummy/__ref_register (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 72
|
||||
@ -207,24 +209,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -248,24 +250,35 @@
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/set/Set<usize>~iterate (; 11 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $gc/_dummy/__ref_mark (; 11 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 144
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
global.get $gc/_dummy/mark_count
|
||||
i32.const 1
|
||||
i32.add
|
||||
global.set $gc/_dummy/mark_count
|
||||
local.get $0
|
||||
global.set $gc/_dummy/mark_ref
|
||||
)
|
||||
(func $~lib/set/Set<usize>~traverse (; 12 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $gc/_dummy/__ref_mark
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
local.set $2
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $2
|
||||
local.set $1
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $gc/_dummy/__ref_mark
|
||||
)
|
||||
(func $~lib/memory/memory.fill (; 12 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/memory/memory.fill (; 13 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -522,19 +535,19 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer~iterate (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer~traverse (; 14 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
i32.gt_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 144
|
||||
i32.const 53
|
||||
i32.const 51
|
||||
i32.const 176
|
||||
i32.const 54
|
||||
i32.const 43
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -549,8 +562,8 @@
|
||||
i32.const 5
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $gc/_dummy/__ref_link (; 15 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 200
|
||||
(func $gc/_dummy/__ref_link (; 16 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 232
|
||||
i32.const 2
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
@ -569,8 +582,8 @@
|
||||
local.get $0
|
||||
global.set $gc/_dummy/link_parentRef
|
||||
)
|
||||
(func $gc/_dummy/__ref_unlink (; 16 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 232
|
||||
(func $gc/_dummy/__ref_unlink (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 264
|
||||
i32.const 2
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
@ -589,7 +602,7 @@
|
||||
local.get $1
|
||||
global.set $gc/_dummy/unlink_parentRef
|
||||
)
|
||||
(func $~lib/set/Set<usize>#clear (; 17 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/set/Set<usize>#clear (; 18 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -658,7 +671,7 @@
|
||||
i32.const 0
|
||||
i32.store offset=20
|
||||
)
|
||||
(func $~lib/set/Set<usize>#constructor (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/set/Set<usize>#constructor (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
block (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
@ -692,7 +705,7 @@
|
||||
call $~lib/set/Set<usize>#clear
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/util/hash/hash32 (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/util/hash/hash32 (; 20 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
i32.const -2128831035
|
||||
local.set $1
|
||||
@ -734,7 +747,7 @@
|
||||
local.set $1
|
||||
local.get $1
|
||||
)
|
||||
(func $~lib/set/Set<usize>#find (; 20 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/set/Set<usize>#find (; 21 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
local.get $0
|
||||
@ -785,7 +798,7 @@
|
||||
end
|
||||
i32.const 0
|
||||
)
|
||||
(func $~lib/set/Set<usize>#has (; 21 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/set/Set<usize>#has (; 22 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
local.get $1
|
||||
@ -800,7 +813,7 @@
|
||||
i32.const 0
|
||||
i32.ne
|
||||
)
|
||||
(func $~lib/set/Set<usize>#rehash (; 22 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/set/Set<usize>#rehash (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -970,7 +983,7 @@
|
||||
i32.load offset=20
|
||||
i32.store offset=16
|
||||
)
|
||||
(func $~lib/set/Set<usize>#add (; 23 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/set/Set<usize>#add (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -1068,9 +1081,9 @@
|
||||
i32.store
|
||||
end
|
||||
)
|
||||
(func $~lib/gc/gc.retain (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/gc/gc.retain (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/gc/GC_ROOT
|
||||
global.get $~lib/gc/ROOT
|
||||
local.set $1
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -1085,7 +1098,7 @@
|
||||
call $gc/_dummy/__ref_link
|
||||
end
|
||||
)
|
||||
(func $~lib/set/Set<usize>#delete (; 25 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/set/Set<usize>#delete (; 26 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -1158,9 +1171,9 @@
|
||||
end
|
||||
i32.const 1
|
||||
)
|
||||
(func $~lib/gc/gc.release (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/gc/gc.release (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/gc/GC_ROOT
|
||||
global.get $~lib/gc/ROOT
|
||||
local.set $1
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -1175,8 +1188,8 @@
|
||||
call $gc/_dummy/__ref_unlink
|
||||
end
|
||||
)
|
||||
(func $gc/_dummy/__ref_collect (; 27 ;) (type $FUNCSIG$v)
|
||||
i32.const 272
|
||||
(func $gc/_dummy/__ref_collect (; 28 ;) (type $FUNCSIG$v)
|
||||
i32.const 304
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -1189,10 +1202,10 @@
|
||||
i32.add
|
||||
global.set $gc/_dummy/collect_count
|
||||
)
|
||||
(func $~lib/gc/gc.collect (; 28 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/gc/gc.collect (; 29 ;) (type $FUNCSIG$v)
|
||||
call $gc/_dummy/__ref_collect
|
||||
)
|
||||
(func $gc/main (; 29 ;) (type $FUNCSIG$v)
|
||||
(func $gc/main (; 30 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -1355,7 +1368,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/util/memory/memcpy (; 30 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/util/memory/memcpy (; 31 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -2556,7 +2569,7 @@
|
||||
i32.store8
|
||||
end
|
||||
)
|
||||
(func $~lib/memory/memory.copy (; 31 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/memory/memory.copy (; 32 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -2787,21 +2800,21 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/allocator/arena/__mem_free (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/allocator/arena/__mem_free (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/memory/memory.free (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/memory/memory.free (; 34 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
call $~lib/allocator/arena/__mem_free
|
||||
)
|
||||
(func $~lib/runtime/runtime.reallocate (; 34 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.reallocate (; 35 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
@ -2838,7 +2851,7 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $5
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
local.set $6
|
||||
local.get $6
|
||||
@ -2855,7 +2868,7 @@
|
||||
call $~lib/memory/memory.fill
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
@ -2865,7 +2878,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 107
|
||||
i32.const 64
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2898,7 +2911,7 @@
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/runtime/runtime.discard (; 35 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/runtime/runtime.discard (; 36 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
global.get $~lib/memory/HEAP_BASE
|
||||
@ -2907,24 +2920,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 132
|
||||
i32.const 89
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $1
|
||||
local.get $1
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 134
|
||||
i32.const 91
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2932,7 +2945,7 @@
|
||||
local.get $1
|
||||
call $~lib/memory/memory.free
|
||||
)
|
||||
(func $~lib/runtime/runtime.makeArray (; 36 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.makeArray (; 37 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
@ -2996,7 +3009,7 @@
|
||||
end
|
||||
local.get $4
|
||||
)
|
||||
(func $start (; 37 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 38 ;) (type $FUNCSIG$v)
|
||||
global.get $~lib/memory/HEAP_BASE
|
||||
i32.const 7
|
||||
i32.add
|
||||
@ -3009,11 +3022,11 @@
|
||||
global.set $~lib/allocator/arena/offset
|
||||
i32.const 0
|
||||
call $~lib/set/Set<usize>#constructor
|
||||
global.set $~lib/gc/GC_ROOT
|
||||
global.set $~lib/gc/ROOT
|
||||
)
|
||||
(func $null (; 38 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 39 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
(func $~lib/runtime/runtime.makeArray|trampoline (; 39 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.makeArray|trampoline (; 40 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
block $1of1
|
||||
block $0of1
|
||||
block $outOfRange
|
||||
@ -3033,7 +3046,7 @@
|
||||
local.get $3
|
||||
call $~lib/runtime/runtime.makeArray
|
||||
)
|
||||
(func $~lib/setargc (; 40 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/setargc (; 41 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.set $~lib/argc
|
||||
)
|
||||
|
@ -45,3 +45,14 @@ function __ref_unlink(ref: usize, parentRef: usize): void {
|
||||
unlink_ref = ref;
|
||||
unlink_parentRef = parentRef;
|
||||
}
|
||||
|
||||
export var mark_count = 0;
|
||||
export var mark_ref: usize = 0;
|
||||
|
||||
// @ts-ignore: decorator
|
||||
@global @unsafe
|
||||
function __ref_mark(ref: usize): void {
|
||||
trace("gc.mark", 1, ref);
|
||||
mark_count++;
|
||||
mark_ref = ref;
|
||||
}
|
||||
|
@ -1,7 +1,6 @@
|
||||
(module
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(type $FUNCSIG$v (func))
|
||||
@ -16,7 +15,7 @@
|
||||
(data (i32.const 96) "\02\00\00\00&")
|
||||
(data (i32.const 112) "g\00c\00/\00g\00l\00o\00b\00a\00l\00-\00a\00s\00s\00i\00g\00n\00.\00t\00s")
|
||||
(table $0 3 funcref)
|
||||
(elem (i32.const 0) $null $gc/global-assign/Ref~iterate $gc/global-assign/Ref~iterate)
|
||||
(elem (i32.const 0) $null $gc/global-assign/Ref~traverse $gc/global-assign/Ref~traverse)
|
||||
(global $gc/_dummy/register_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_ref (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/link_count (mut i32) (i32.const 0))
|
||||
@ -113,7 +112,7 @@
|
||||
i32.const 16
|
||||
i32.add
|
||||
)
|
||||
(func $gc/global-assign/Ref~iterate (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $gc/global-assign/Ref~traverse (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $gc/_dummy/__ref_register (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
@ -141,7 +140,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -156,7 +155,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,7 +1,6 @@
|
||||
(module
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
@ -13,7 +12,7 @@
|
||||
(data (i32.const 56) "\02\00\00\00\16\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00r\00e\00g\00i\00s\00t\00e\00r\00")
|
||||
(data (i32.const 96) "\02\00\00\00&\00\00\00\00\00\00\00\00\00\00\00g\00c\00/\00g\00l\00o\00b\00a\00l\00-\00a\00s\00s\00i\00g\00n\00.\00t\00s\00")
|
||||
(table $0 3 funcref)
|
||||
(elem (i32.const 0) $null $gc/global-assign/Ref~iterate $~lib/string/String~iterate)
|
||||
(elem (i32.const 0) $null $gc/global-assign/Ref~traverse $~lib/string/String~traverse)
|
||||
(global $gc/_dummy/collect_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_ref (mut i32) (i32.const 0))
|
||||
@ -23,10 +22,12 @@
|
||||
(global $gc/_dummy/unlink_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/unlink_ref (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/unlink_parentRef (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $gc/_dummy/mark_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/mark_ref (mut i32) (i32.const 0))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $gc/global-assign/global (mut i32) (i32.const 0))
|
||||
(global $gc/global-assign/globalRef (mut i32) (i32.const 0))
|
||||
@ -41,7 +42,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -140,7 +141,7 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -152,13 +153,13 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $gc/global-assign/Ref~iterate (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $gc/global-assign/Ref~traverse (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
)
|
||||
(func $~lib/string/String~iterate (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String~traverse (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $gc/_dummy/__ref_register (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 72
|
||||
@ -186,24 +187,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,7 +1,6 @@
|
||||
(module
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(type $FUNCSIG$v (func))
|
||||
@ -16,7 +15,7 @@
|
||||
(data (i32.const 96) "\02\00\00\00\"")
|
||||
(data (i32.const 112) "g\00c\00/\00g\00l\00o\00b\00a\00l\00-\00i\00n\00i\00t\00.\00t\00s")
|
||||
(table $0 3 funcref)
|
||||
(elem (i32.const 0) $null $gc/global-init/Ref~iterate $gc/global-init/Ref~iterate)
|
||||
(elem (i32.const 0) $null $gc/global-init/Ref~traverse $gc/global-init/Ref~traverse)
|
||||
(global $gc/_dummy/register_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_ref (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/link_count (mut i32) (i32.const 0))
|
||||
@ -112,7 +111,7 @@
|
||||
i32.const 16
|
||||
i32.add
|
||||
)
|
||||
(func $gc/global-init/Ref~iterate (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $gc/global-init/Ref~traverse (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $gc/_dummy/__ref_register (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
@ -140,7 +139,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -155,7 +154,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,7 +1,6 @@
|
||||
(module
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
@ -13,7 +12,7 @@
|
||||
(data (i32.const 56) "\02\00\00\00\16\00\00\00\00\00\00\00\00\00\00\00g\00c\00.\00r\00e\00g\00i\00s\00t\00e\00r\00")
|
||||
(data (i32.const 96) "\02\00\00\00\"\00\00\00\00\00\00\00\00\00\00\00g\00c\00/\00g\00l\00o\00b\00a\00l\00-\00i\00n\00i\00t\00.\00t\00s\00")
|
||||
(table $0 3 funcref)
|
||||
(elem (i32.const 0) $null $gc/global-init/Ref~iterate $~lib/string/String~iterate)
|
||||
(elem (i32.const 0) $null $gc/global-init/Ref~traverse $~lib/string/String~traverse)
|
||||
(global $gc/_dummy/collect_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/register_ref (mut i32) (i32.const 0))
|
||||
@ -23,10 +22,12 @@
|
||||
(global $gc/_dummy/unlink_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/unlink_ref (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/unlink_parentRef (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $gc/_dummy/mark_count (mut i32) (i32.const 0))
|
||||
(global $gc/_dummy/mark_ref (mut i32) (i32.const 0))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $gc/global-init/global (mut i32) (i32.const 0))
|
||||
(global $~lib/started (mut i32) (i32.const 0))
|
||||
@ -40,7 +41,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -139,7 +140,7 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -151,13 +152,13 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $gc/global-init/Ref~iterate (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $gc/global-init/Ref~traverse (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
)
|
||||
(func $~lib/string/String~iterate (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String~traverse (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $gc/_dummy/__ref_register (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 72
|
||||
@ -185,24 +186,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,10 +1,10 @@
|
||||
(module
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viii (func (param i32 i32 i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
@ -26,46 +26,46 @@
|
||||
(data (i32.const 296) "i\00t\00c\00m\00~\00s\00t\00a\00t\00e\00 \00=\00 \00I\00D\00L\00E")
|
||||
(data (i32.const 336) "\01\00\00\00\1c")
|
||||
(data (i32.const 352) "i\00t\00c\00m\00~\00s\00t\00e\00p\00/\00I\00D\00L\00E")
|
||||
(data (i32.const 384) "\01\00\00\00\1a")
|
||||
(data (i32.const 400) " \00 \00 \00 \00 \00m\00a\00k\00e\00G\00r\00a\00y")
|
||||
(data (i32.const 432) "\01\00\00\00:")
|
||||
(data (i32.const 448) " \00 \00 \00 \00 \00u\00n\00l\00i\00n\00k\00 \00[\00p\00r\00e\00f\00,\00 \00r\00e\00f\00,\00 \00n\00e\00x\00t\00]")
|
||||
(data (i32.const 512) "\01\00\00\006")
|
||||
(data (i32.const 528) " \00 \00 \00 \00 \00p\00u\00s\00h\00 \00[\00p\00r\00e\00v\00,\00 \00r\00e\00f\00,\00 \00n\00e\00x\00t\00]")
|
||||
(data (i32.const 584) "\01\00\00\00\"")
|
||||
(data (i32.const 600) "i\00t\00c\00m\00~\00s\00t\00a\00t\00e\00 \00=\00 \00M\00A\00R\00K")
|
||||
(data (i32.const 640) "\01\00\00\00,")
|
||||
(data (i32.const 656) "i\00t\00c\00m\00~\00s\00t\00e\00p\00/\00M\00A\00R\00K\00 \00i\00t\00e\00r\00a\00t\00e")
|
||||
(data (i32.const 704) "\01\00\00\00\12")
|
||||
(data (i32.const 720) " \00 \00 \00 \00 \00i\00t\00e\00r")
|
||||
(data (i32.const 744) "\01\00\00\00*")
|
||||
(data (i32.const 760) "i\00t\00c\00m\00~\00s\00t\00e\00p\00/\00M\00A\00R\00K\00 \00f\00i\00n\00i\00s\00h")
|
||||
(data (i32.const 808) "\01\00\00\00$")
|
||||
(data (i32.const 824) "i\00t\00c\00m\00~\00s\00t\00a\00t\00e\00 \00=\00 \00S\00W\00E\00E\00P")
|
||||
(data (i32.const 864) "\01\00\00\00(")
|
||||
(data (i32.const 880) "i\00t\00c\00m\00~\00s\00t\00e\00p\00/\00S\00W\00E\00E\00P\00 \00f\00r\00e\00e")
|
||||
(data (i32.const 920) "\01\00\00\00,")
|
||||
(data (i32.const 936) "i\00t\00c\00m\00~\00s\00t\00e\00p\00/\00S\00W\00E\00E\00P\00 \00f\00i\00n\00i\00s\00h")
|
||||
(data (i32.const 984) "\01\00\00\00\"")
|
||||
(data (i32.const 1000) "#\00 \00r\00e\00f\00 \00=\00 \00n\00e\00w\00 \00R\00e\00f\00(\00)")
|
||||
(data (i32.const 1040) "\01\00\00\00\1e")
|
||||
(data (i32.const 1056) "~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s")
|
||||
(data (i32.const 1088) "\01\00\00\00\1a")
|
||||
(data (i32.const 1104) "i\00t\00c\00m\00.\00r\00e\00g\00i\00s\00t\00e\00r")
|
||||
(data (i32.const 1136) "\01\00\00\00(")
|
||||
(data (i32.const 1152) "#\00 \00a\00r\00r\00 \00=\00 \00n\00e\00w\00 \00A\00r\00r\00a\00y\00(\001\00)")
|
||||
(data (i32.const 1192) "\01\00\00\00&")
|
||||
(data (i32.const 1208) "~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s")
|
||||
(data (i32.const 1248) "\01\00\00\00\12")
|
||||
(data (i32.const 1264) "i\00t\00c\00m\00.\00l\00i\00n\00k")
|
||||
(data (i32.const 1288) "\01\00\00\00\1c")
|
||||
(data (i32.const 1304) "#\00 \00a\00r\00r\00[\000\00]\00 \00=\00 \00r\00e\00f")
|
||||
(data (i32.const 1336) "\01\00\00\00\1a")
|
||||
(data (i32.const 1352) "~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s")
|
||||
(data (i32.const 1384) "\01\00\00\00\1e")
|
||||
(data (i32.const 1400) "#\00 \00a\00r\00r\00[\000\00]\00 \00=\00 \00n\00u\00l\00l")
|
||||
(table $0 10 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~iterate $~lib/collector/itcm/step~anonymous|0 $~lib/collector/itcm/step~anonymous|1 $~lib/collector/itcm/step~anonymous|0 $gc/itcm/trace/Ref~iterate $~lib/string/String~iterate $~lib/arraybuffer/ArrayBufferView~iterate $~lib/array/Array<gc/itcm/trace/Ref | null>~iterate $~lib/array/Array<gc/itcm/trace/Ref | null>~iterate)
|
||||
(data (i32.const 384) "\01\00\00\00\"")
|
||||
(data (i32.const 400) "i\00t\00c\00m\00~\00s\00t\00a\00t\00e\00 \00=\00 \00M\00A\00R\00K")
|
||||
(data (i32.const 440) "\01\00\00\00\1c")
|
||||
(data (i32.const 456) "i\00t\00c\00m\00~\00s\00t\00e\00p\00/\00M\00A\00R\00K")
|
||||
(data (i32.const 488) "\01\00\00\00*")
|
||||
(data (i32.const 504) "i\00t\00c\00m\00~\00s\00t\00e\00p\00/\00M\00A\00R\00K\00 \00f\00i\00n\00i\00s\00h")
|
||||
(data (i32.const 552) "\01\00\00\00$")
|
||||
(data (i32.const 568) "i\00t\00c\00m\00~\00s\00t\00a\00t\00e\00 \00=\00 \00S\00W\00E\00E\00P")
|
||||
(data (i32.const 608) "\01\00\00\00(")
|
||||
(data (i32.const 624) "i\00t\00c\00m\00~\00s\00t\00e\00p\00/\00S\00W\00E\00E\00P\00 \00f\00r\00e\00e")
|
||||
(data (i32.const 664) "\01\00\00\00,")
|
||||
(data (i32.const 680) "i\00t\00c\00m\00~\00s\00t\00e\00p\00/\00S\00W\00E\00E\00P\00 \00f\00i\00n\00i\00s\00h")
|
||||
(data (i32.const 728) "\01\00\00\00\"")
|
||||
(data (i32.const 744) "#\00 \00r\00e\00f\00 \00=\00 \00n\00e\00w\00 \00R\00e\00f\00(\00)")
|
||||
(data (i32.const 784) "\01\00\00\00\12")
|
||||
(data (i32.const 800) "i\00t\00c\00m\00.\00m\00a\00r\00k")
|
||||
(data (i32.const 824) "\01\00\00\00\1a")
|
||||
(data (i32.const 840) " \00 \00 \00 \00 \00m\00a\00k\00e\00G\00r\00a\00y")
|
||||
(data (i32.const 872) "\01\00\00\00:")
|
||||
(data (i32.const 888) " \00 \00 \00 \00 \00u\00n\00l\00i\00n\00k\00 \00[\00p\00r\00e\00f\00,\00 \00r\00e\00f\00,\00 \00n\00e\00x\00t\00]")
|
||||
(data (i32.const 952) "\01\00\00\006")
|
||||
(data (i32.const 968) " \00 \00 \00 \00 \00p\00u\00s\00h\00 \00[\00p\00r\00e\00v\00,\00 \00r\00e\00f\00,\00 \00n\00e\00x\00t\00]")
|
||||
(data (i32.const 1024) "\01\00\00\00\1e")
|
||||
(data (i32.const 1040) "~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s")
|
||||
(data (i32.const 1072) "\01\00\00\00\1a")
|
||||
(data (i32.const 1088) "i\00t\00c\00m\00.\00r\00e\00g\00i\00s\00t\00e\00r")
|
||||
(data (i32.const 1120) "\01\00\00\00(")
|
||||
(data (i32.const 1136) "#\00 \00a\00r\00r\00 \00=\00 \00n\00e\00w\00 \00A\00r\00r\00a\00y\00(\001\00)")
|
||||
(data (i32.const 1176) "\01\00\00\00&")
|
||||
(data (i32.const 1192) "~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00b\00u\00f\00f\00e\00r\00.\00t\00s")
|
||||
(data (i32.const 1232) "\01\00\00\00\12")
|
||||
(data (i32.const 1248) "i\00t\00c\00m\00.\00l\00i\00n\00k")
|
||||
(data (i32.const 1272) "\01\00\00\00\1c")
|
||||
(data (i32.const 1288) "#\00 \00a\00r\00r\00[\000\00]\00 \00=\00 \00r\00e\00f")
|
||||
(data (i32.const 1320) "\01\00\00\00\1a")
|
||||
(data (i32.const 1336) "~\00l\00i\00b\00/\00a\00r\00r\00a\00y\00.\00t\00s")
|
||||
(data (i32.const 1368) "\01\00\00\00\1e")
|
||||
(data (i32.const 1384) "#\00 \00a\00r\00r\00[\000\00]\00 \00=\00 \00n\00u\00l\00l")
|
||||
(table $0 7 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~traverse $gc/itcm/trace/Ref~traverse $~lib/string/String~traverse $~lib/arraybuffer/ArrayBufferView~traverse $~lib/array/Array<gc/itcm/trace/Ref | null>~traverse $~lib/array/Array<gc/itcm/trace/Ref | null>~traverse)
|
||||
(global $~lib/collector/itcm/state (mut i32) (i32.const 0))
|
||||
(global $~lib/collector/itcm/fromSpace (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
@ -74,7 +74,6 @@
|
||||
(global $~lib/collector/itcm/iter (mut i32) (i32.const 0))
|
||||
(global $~lib/collector/itcm/white (mut i32) (i32.const 0))
|
||||
(global $gc/itcm/trace/ref (mut i32) (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $gc/itcm/trace/arr (mut i32) (i32.const 0))
|
||||
(global $~lib/started (mut i32) (i32.const 0))
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
@ -82,7 +81,7 @@
|
||||
(export "table" (table $0))
|
||||
(export "main" (func $gc/itcm/trace/main))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(func $~lib/string/String~iterate (; 2 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/string/String~traverse (; 2 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/allocator/arena/__mem_allocate (; 3 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
@ -166,161 +165,7 @@
|
||||
local.get $0
|
||||
i32.store offset=12
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#unlink (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
i32.const 448
|
||||
i32.const 3
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.tee $1
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const -4
|
||||
i32.and
|
||||
local.tee $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
local.get $1
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $0
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObjectList#push (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
i32.const 528
|
||||
i32.const 3
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.tee $2
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
local.get $1
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
local.get $1
|
||||
local.get $1
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $0
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.store offset=12
|
||||
local.get $2
|
||||
local.get $2
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $1
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store offset=12
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#makeGray (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 400
|
||||
i32.const 1
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
global.get $~lib/collector/itcm/iter
|
||||
local.get $0
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
global.set $~lib/collector/itcm/iter
|
||||
end
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#unlink
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObjectList#push
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const -4
|
||||
i32.and
|
||||
i32.const 2
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/step~anonymous|0 (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/collector/itcm/white
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
local.tee $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/step~anonymous|1 (; 9 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 720
|
||||
i32.const 1
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
global.get $~lib/collector/itcm/white
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
local.tee $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/step (; 10 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/collector/itcm/step (; 5 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
block $break|0
|
||||
@ -410,23 +255,10 @@
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
global.get $gc/itcm/trace/ref
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
i32.const 2
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
end
|
||||
global.get $gc/itcm/trace/arr
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
i32.const 2
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
end
|
||||
call $~lib/gc/__gc_mark_roots
|
||||
i32.const 2
|
||||
global.set $~lib/collector/itcm/state
|
||||
i32.const 600
|
||||
i32.const 400
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -444,7 +276,7 @@
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
i32.ne
|
||||
if
|
||||
i32.const 656
|
||||
i32.const 456
|
||||
i32.const 1
|
||||
local.get $0
|
||||
i32.const 16
|
||||
@ -468,12 +300,12 @@
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
local.get $1
|
||||
i32.const 3
|
||||
local.get $0
|
||||
i32.load
|
||||
call_indirect (type $FUNCSIG$vii)
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
else
|
||||
i32.const 760
|
||||
call $~lib/gc/__gc_mark_roots
|
||||
i32.const 504
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -481,20 +313,6 @@
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
global.get $gc/itcm/trace/ref
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
i32.const 4
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
end
|
||||
global.get $gc/itcm/trace/arr
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
i32.const 4
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
end
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
global.get $~lib/collector/itcm/iter
|
||||
i32.load offset=8
|
||||
@ -518,7 +336,7 @@
|
||||
global.set $~lib/collector/itcm/iter
|
||||
i32.const 3
|
||||
global.set $~lib/collector/itcm/state
|
||||
i32.const 824
|
||||
i32.const 568
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -535,7 +353,7 @@
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
i32.ne
|
||||
if
|
||||
i32.const 880
|
||||
i32.const 624
|
||||
i32.const 1
|
||||
local.get $0
|
||||
i32.const 16
|
||||
@ -552,7 +370,7 @@
|
||||
i32.and
|
||||
global.set $~lib/collector/itcm/iter
|
||||
else
|
||||
i32.const 936
|
||||
i32.const 680
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -575,7 +393,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_collect (; 11 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/collector/itcm/__ref_collect (; 6 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
i32.const 72
|
||||
i32.const 0
|
||||
@ -609,7 +427,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/runtime/runtime.allocate (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.allocate (; 7 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
@ -636,21 +454,158 @@
|
||||
i32.const 16
|
||||
i32.add
|
||||
)
|
||||
(func $gc/itcm/trace/Ref~iterate (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/collector/itcm/ManagedObject#unlink (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
i32.const 888
|
||||
i32.const 3
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.tee $1
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const -4
|
||||
i32.and
|
||||
local.tee $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
local.get $1
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $0
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObjectList#push (; 9 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
i32.const 968
|
||||
i32.const 3
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
local.tee $2
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
local.get $1
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
local.get $1
|
||||
local.get $1
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $0
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.store offset=12
|
||||
local.get $2
|
||||
local.get $2
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
local.get $1
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.store offset=12
|
||||
)
|
||||
(func $~lib/collector/itcm/ManagedObject#makeGray (; 10 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 840
|
||||
i32.const 1
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
global.get $~lib/collector/itcm/iter
|
||||
local.get $0
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
global.set $~lib/collector/itcm/iter
|
||||
end
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#unlink
|
||||
global.get $~lib/collector/itcm/toSpace
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObjectList#push
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.const -4
|
||||
i32.and
|
||||
i32.const 2
|
||||
i32.or
|
||||
i32.store offset=8
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_mark (; 11 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 800
|
||||
i32.const 1
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
call $~lib/env/trace
|
||||
global.get $~lib/collector/itcm/white
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
local.tee $0
|
||||
i32.load offset=8
|
||||
i32.const 3
|
||||
i32.and
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $gc/itcm/trace/Ref~traverse (; 12 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $gc/itcm/trace/Ref~iterate
|
||||
call $gc/itcm/trace/Ref~traverse
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_register (; 14 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 1104
|
||||
(func $~lib/collector/itcm/__ref_register (; 13 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
i32.const 1088
|
||||
i32.const 1
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
@ -675,15 +630,15 @@
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/ManagedObjectList#push
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 15 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.register (; 14 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.const 1432
|
||||
i32.const 1416
|
||||
i32.le_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1056
|
||||
i32.const 145
|
||||
i32.const 1040
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -697,8 +652,8 @@
|
||||
i32.ne
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1056
|
||||
i32.const 147
|
||||
i32.const 1040
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -710,7 +665,7 @@
|
||||
call $~lib/collector/itcm/__ref_register
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/memory/memory.fill (; 16 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/memory/memory.fill (; 15 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
block $~lib/util/memory/memset|inlined.0
|
||||
local.get $1
|
||||
@ -921,19 +876,18 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBufferView~iterate (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/arraybuffer/ArrayBufferView~traverse (; 16 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/itcm/__ref_link (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/collector/itcm/__ref_link (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
i32.const 1264
|
||||
i32.const 1248
|
||||
i32.const 2
|
||||
local.get $0
|
||||
f64.convert_i32_u
|
||||
@ -971,7 +925,7 @@
|
||||
call $~lib/collector/itcm/ManagedObject#makeGray
|
||||
end
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBufferView#constructor (; 19 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/arraybuffer/ArrayBufferView#constructor (; 18 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
@ -979,7 +933,7 @@
|
||||
i32.const 4
|
||||
call $~lib/memory/memory.fill
|
||||
local.get $1
|
||||
i32.const 6
|
||||
i32.const 3
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $1
|
||||
local.get $0
|
||||
@ -987,7 +941,7 @@
|
||||
if
|
||||
i32.const 12
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 7
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.register
|
||||
local.set $0
|
||||
end
|
||||
@ -1020,49 +974,42 @@
|
||||
i32.store offset=8
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/array/Array<gc/itcm/trace/Ref | null>~iterate (; 20 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/array/Array<gc/itcm/trace/Ref | null>~traverse (; 19 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.tee $2
|
||||
local.tee $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.add
|
||||
local.set $3
|
||||
local.set $2
|
||||
loop $continue|0
|
||||
local.get $1
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.lt_u
|
||||
if
|
||||
local.get $2
|
||||
local.get $1
|
||||
i32.load
|
||||
local.tee $0
|
||||
if
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $gc/itcm/trace/Ref~iterate
|
||||
call $gc/itcm/trace/Ref~traverse
|
||||
end
|
||||
local.get $2
|
||||
local.get $1
|
||||
i32.const 4
|
||||
i32.add
|
||||
local.set $2
|
||||
local.set $1
|
||||
br $continue|0
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/util/memory/memcpy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/util/memory/memcpy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -1909,7 +1856,7 @@
|
||||
i32.store8
|
||||
end
|
||||
)
|
||||
(func $~lib/memory/memory.copy (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/memory/memory.copy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
block $~lib/util/memory/memmove|inlined.0
|
||||
@ -2103,7 +2050,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/runtime/runtime.reallocate (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.reallocate (; 22 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -2127,7 +2074,7 @@
|
||||
i32.shl
|
||||
i32.const 0
|
||||
local.get $0
|
||||
i32.const 1432
|
||||
i32.const 1416
|
||||
i32.gt_u
|
||||
select
|
||||
i32.const 32
|
||||
@ -2165,12 +2112,12 @@
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
i32.const 1432
|
||||
i32.const 1416
|
||||
i32.le_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1056
|
||||
i32.const 107
|
||||
i32.const 1040
|
||||
i32.const 64
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2198,7 +2145,7 @@
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/array/ensureCapacity (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/array/ensureCapacity (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
i32.const 1
|
||||
@ -2238,7 +2185,7 @@
|
||||
i32.store offset=8
|
||||
end
|
||||
)
|
||||
(func $~lib/array/Array<gc/itcm/trace/Ref | null>#__unchecked_set (; 25 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/array/Array<gc/itcm/trace/Ref | null>#__unchecked_set (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -2258,7 +2205,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/array/Array<gc/itcm/trace/Ref | null>#__set (; 26 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/array/Array<gc/itcm/trace/Ref | null>#__set (; 25 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
@ -2277,14 +2224,14 @@
|
||||
i32.store offset=12
|
||||
end
|
||||
)
|
||||
(func $start:gc/itcm/trace (; 27 ;) (type $FUNCSIG$v)
|
||||
(func $start:gc/itcm/trace (; 26 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
i32.const 1432
|
||||
i32.const 1416
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
global.get $~lib/allocator/arena/startOffset
|
||||
global.set $~lib/allocator/arena/offset
|
||||
call $~lib/collector/itcm/__ref_collect
|
||||
i32.const 1000
|
||||
i32.const 744
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -2294,14 +2241,14 @@
|
||||
call $~lib/env/trace
|
||||
i32.const 4
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 5
|
||||
i32.const 2
|
||||
call $~lib/runtime/runtime.register
|
||||
local.tee $0
|
||||
i32.const 0
|
||||
i32.store
|
||||
local.get $0
|
||||
global.set $gc/itcm/trace/ref
|
||||
i32.const 1152
|
||||
i32.const 1136
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -2311,7 +2258,7 @@
|
||||
call $~lib/env/trace
|
||||
i32.const 16
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 8
|
||||
i32.const 5
|
||||
call $~lib/runtime/runtime.register
|
||||
call $~lib/arraybuffer/ArrayBufferView#constructor
|
||||
local.tee $0
|
||||
@ -2322,7 +2269,7 @@
|
||||
i32.store offset=12
|
||||
local.get $0
|
||||
global.set $gc/itcm/trace/arr
|
||||
i32.const 1304
|
||||
i32.const 1288
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -2333,7 +2280,7 @@
|
||||
global.get $gc/itcm/trace/arr
|
||||
global.get $gc/itcm/trace/ref
|
||||
call $~lib/array/Array<gc/itcm/trace/Ref | null>#__set
|
||||
i32.const 1400
|
||||
i32.const 1384
|
||||
i32.const 0
|
||||
f64.const 0
|
||||
f64.const 0
|
||||
@ -2346,7 +2293,7 @@
|
||||
call $~lib/array/Array<gc/itcm/trace/Ref | null>#__set
|
||||
call $~lib/collector/itcm/__ref_collect
|
||||
)
|
||||
(func $gc/itcm/trace/main (; 28 ;) (type $FUNCSIG$v)
|
||||
(func $gc/itcm/trace/main (; 27 ;) (type $FUNCSIG$v)
|
||||
global.get $~lib/started
|
||||
i32.eqz
|
||||
if
|
||||
@ -2355,7 +2302,22 @@
|
||||
global.set $~lib/started
|
||||
end
|
||||
)
|
||||
(func $null (; 29 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 28 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
(func $~lib/gc/__gc_mark_roots (; 29 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
global.get $gc/itcm/trace/ref
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
global.get $gc/itcm/trace/arr
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/collector/itcm/__ref_mark
|
||||
end
|
||||
)
|
||||
)
|
||||
|
@ -1,7 +1,7 @@
|
||||
@global const GC_TRACE = true;
|
||||
import "collector/itcm";
|
||||
|
||||
import { HEADER_SIZE } from "runtime";
|
||||
import { HEADER_SIZE } from "util/runtime";
|
||||
|
||||
assert(HEADER_SIZE == 16);
|
||||
assert(gc.implemented);
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -143,7 +143,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -158,7 +158,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -22,10 +22,10 @@
|
||||
(global $gc/rc/_dummy/retain_ref (mut i32) (i32.const 0))
|
||||
(global $gc/rc/_dummy/release_count (mut i32) (i32.const 0))
|
||||
(global $gc/rc/_dummy/release_ref (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $gc/rc/global-assign/global (mut i32) (i32.const 0))
|
||||
(global $gc/rc/global-assign/globalRef (mut i32) (i32.const 0))
|
||||
@ -40,7 +40,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -139,7 +139,7 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -151,7 +151,7 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $gc/rc/_dummy/__ref_register (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
@ -180,24 +180,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -139,7 +139,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -154,7 +154,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -21,10 +21,10 @@
|
||||
(global $gc/rc/_dummy/retain_ref (mut i32) (i32.const 0))
|
||||
(global $gc/rc/_dummy/release_count (mut i32) (i32.const 0))
|
||||
(global $gc/rc/_dummy/release_ref (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $gc/rc/global-init/global (mut i32) (i32.const 0))
|
||||
(global $~lib/started (mut i32) (i32.const 0))
|
||||
@ -38,7 +38,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -137,7 +137,7 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -149,7 +149,7 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $gc/rc/_dummy/__ref_register (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
@ -178,24 +178,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -85,7 +85,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -100,7 +100,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -9,10 +9,10 @@
|
||||
(data (i32.const 8) "\02\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s\00")
|
||||
(table $0 2 funcref)
|
||||
(elem (i32.const 0) $null $getter-call/C#get:x~anonymous|0)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 48))
|
||||
@ -24,7 +24,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -123,13 +123,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -141,24 +141,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -131,7 +131,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 48
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -146,7 +146,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 48
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -12,10 +12,10 @@
|
||||
(elem (i32.const 0) $null $inlining/func_fe~anonymous|0)
|
||||
(global $inlining/constantGlobal i32 (i32.const 1))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 80))
|
||||
(export "memory" (memory $0))
|
||||
@ -288,7 +288,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -387,13 +387,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -405,24 +405,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 48
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 48
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -303,7 +303,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 464
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -318,7 +318,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 464
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2358,7 +2358,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1648
|
||||
i32.const 190
|
||||
i32.const 191
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2451,7 +2451,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 464
|
||||
i32.const 132
|
||||
i32.const 89
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2465,7 +2465,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 464
|
||||
i32.const 134
|
||||
i32.const 91
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -43,10 +43,10 @@
|
||||
(elem (i32.const 0) $null)
|
||||
(global $number/a (mut i32) (i32.const 1))
|
||||
(global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/util/number/_frc_plus (mut i64) (i64.const 0))
|
||||
(global $~lib/util/number/_frc_minus (mut i64) (i64.const 0))
|
||||
@ -139,7 +139,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -238,13 +238,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/util/number/utoa32_lut (; 6 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
@ -399,24 +399,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 464
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 464
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -493,7 +493,7 @@
|
||||
)
|
||||
(func $~lib/string/String#get:length (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.const 1
|
||||
@ -3416,7 +3416,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1648
|
||||
i32.const 190
|
||||
i32.const 191
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3534,24 +3534,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 464
|
||||
i32.const 132
|
||||
i32.const 89
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $1
|
||||
local.get $1
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 464
|
||||
i32.const 134
|
||||
i32.const 91
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -100,7 +100,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -115,7 +115,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -10,10 +10,10 @@
|
||||
(data (i32.const 8) "\02\00\00\00\1e\00\00\00~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s\00")
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $optional-typeparameters/tConcrete (mut i32) (i32.const 0))
|
||||
(global $optional-typeparameters/tDerived (mut i32) (i32.const 0))
|
||||
@ -31,7 +31,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -130,13 +130,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -148,24 +148,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -27,7 +27,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 95
|
||||
i32.const 96
|
||||
i32.const 45
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -41,7 +41,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -64,7 +64,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -142,7 +142,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 165
|
||||
i32.const 166
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -13,7 +13,7 @@
|
||||
(data (i32.const 96) "\01\00\00\00\08\00\00\00n\00u\00l\00l\00")
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 112))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
@ -39,7 +39,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 95
|
||||
i32.const 96
|
||||
i32.const 45
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -53,7 +53,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -81,7 +81,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -114,7 +114,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 95
|
||||
i32.const 96
|
||||
i32.const 45
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -128,7 +128,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -139,7 +139,7 @@
|
||||
)
|
||||
(func $~lib/string/String#get:length (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.const 1
|
||||
@ -218,7 +218,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 165
|
||||
i32.const 166
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -296,7 +296,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 95
|
||||
i32.const 96
|
||||
i32.const 45
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -310,7 +310,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,6 +1,5 @@
|
||||
(module
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
@ -26,8 +25,7 @@
|
||||
(data (i32.const 280) "\04\00\00\00\1e")
|
||||
(data (i32.const 296) "~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s")
|
||||
(table $0 13 funcref)
|
||||
(elem (i32.const 0) $null $~lib/arraybuffer/ArrayBuffer~iterate $~lib/array/Array<i8>~iterate $~lib/array/Array<i8>~iterate $~lib/arraybuffer/ArrayBuffer~iterate $~lib/array/Array<i8>~iterate $~lib/array/Array<i8>~iterate $~lib/arraybuffer/ArrayBuffer~iterate $~lib/array/Array<std/array-literal/Ref>~iterate $~lib/array/Array<std/array-literal/Ref>~iterate $~lib/arraybuffer/ArrayBuffer~iterate $~lib/array/Array<std/array-literal/Ref>~iterate $~lib/array/Array<std/array-literal/Ref>~iterate)
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(elem (i32.const 0) $null $~lib/arraybuffer/ArrayBuffer~traverse $~lib/array/Array<i8>~traverse $~lib/array/Array<i8>~traverse $~lib/arraybuffer/ArrayBuffer~traverse $~lib/array/Array<i8>~traverse $~lib/array/Array<i8>~traverse $~lib/arraybuffer/ArrayBuffer~traverse $~lib/array/Array<std/array-literal/Ref>~traverse $~lib/array/Array<std/array-literal/Ref>~traverse $~lib/arraybuffer/ArrayBuffer~traverse $~lib/array/Array<std/array-literal/Ref>~traverse $~lib/array/Array<std/array-literal/Ref>~traverse)
|
||||
(global $std/array-literal/emptyArrayI32 (mut i32) (i32.const 264))
|
||||
(global $std/array-literal/i (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
@ -41,16 +39,13 @@
|
||||
(export "table" (table $0))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(start $start)
|
||||
(func $~lib/arraybuffer/ArrayBuffer~iterate (; 1 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer~traverse (; 1 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/array/Array<i8>~iterate (; 2 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/array/Array<i8>~traverse (; 2 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
drop
|
||||
)
|
||||
(func $~lib/array/Array<i8>#__get (; 3 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $1
|
||||
@ -60,7 +55,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 136
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -81,7 +76,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 136
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -191,7 +186,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 296
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -206,7 +201,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 296
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -257,39 +252,30 @@
|
||||
i32.const 7
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $~lib/array/Array<std/array-literal/Ref>~iterate (; 10 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/array/Array<std/array-literal/Ref>~traverse (; 10 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
drop
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.tee $2
|
||||
local.tee $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.add
|
||||
local.set $0
|
||||
loop $continue|0
|
||||
local.get $2
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.lt_u
|
||||
if
|
||||
local.get $2
|
||||
i32.load
|
||||
local.set $3
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $3
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
local.get $2
|
||||
i32.load
|
||||
drop
|
||||
local.get $1
|
||||
i32.const 4
|
||||
i32.add
|
||||
local.set $2
|
||||
local.set $1
|
||||
br $continue|0
|
||||
end
|
||||
end
|
||||
|
@ -1,10 +1,10 @@
|
||||
(module
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$viii (func (param i32 i32 i32)))
|
||||
(type $FUNCSIG$v (func))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
@ -19,16 +19,15 @@
|
||||
(data (i32.const 248) "\05\00\00\00\10\00\00\00\00\00\00\00\00\00\00\00\f8\00\00\00\f8\00\00\00\00\00\00\00\00\00\00\00")
|
||||
(data (i32.const 280) "\04\00\00\00\1e\00\00\00\00\00\00\00\00\00\00\00~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s\00")
|
||||
(table $0 13 funcref)
|
||||
(elem (i32.const 0) $null $~lib/arraybuffer/ArrayBuffer~iterate $~lib/array/Array<i8>~iterate $~lib/array/Array<i8>~iterate $~lib/string/String~iterate $~lib/array/Array<i32>~iterate $~lib/array/Array<i32>~iterate $std/array-literal/Ref~iterate $~lib/array/Array<std/array-literal/Ref>~iterate $~lib/array/Array<std/array-literal/Ref>~iterate $std/array-literal/RefWithCtor~iterate $~lib/array/Array<std/array-literal/RefWithCtor>~iterate $~lib/array/Array<std/array-literal/RefWithCtor>~iterate)
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(elem (i32.const 0) $null $~lib/arraybuffer/ArrayBuffer~traverse $~lib/array/Array<i8>~traverse $~lib/array/Array<i8>~traverse $~lib/string/String~traverse $~lib/array/Array<i32>~traverse $~lib/array/Array<i32>~traverse $std/array-literal/Ref~traverse $~lib/array/Array<std/array-literal/Ref>~traverse $~lib/array/Array<std/array-literal/Ref>~traverse $std/array-literal/RefWithCtor~traverse $~lib/array/Array<std/array-literal/RefWithCtor>~traverse $~lib/array/Array<std/array-literal/RefWithCtor>~traverse)
|
||||
(global $std/array-literal/staticArrayI8 i32 (i32.const 48))
|
||||
(global $std/array-literal/staticArrayI32 i32 (i32.const 216))
|
||||
(global $std/array-literal/emptyArrayI32 (mut i32) (i32.const 264))
|
||||
(global $std/array-literal/i (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $std/array-literal/dynamicArrayI8 (mut i32) (i32.const 0))
|
||||
(global $std/array-literal/dynamicArrayI32 (mut i32) (i32.const 0))
|
||||
@ -40,25 +39,25 @@
|
||||
(export "table" (table $0))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(start $start)
|
||||
(func $~lib/arraybuffer/ArrayBuffer~iterate (; 1 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer~traverse (; 1 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $~lib/array/Array<i8>~iterate (; 2 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/collector/dummy/__ref_mark (; 2 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/array/Array<i8>~traverse (; 3 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
)
|
||||
(func $~lib/array/Array<i8>#get:length (; 3 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/array/Array<i8>#get:length (; 4 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
)
|
||||
(func $~lib/string/String~iterate (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String~traverse (; 5 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $~lib/array/Array<i8>#__unchecked_get (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/array/Array<i8>#__unchecked_get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.get $1
|
||||
@ -67,7 +66,7 @@
|
||||
i32.add
|
||||
i32.load8_s
|
||||
)
|
||||
(func $~lib/array/Array<i8>#__get (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/array/Array<i8>#__get (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
@ -77,7 +76,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 136
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -86,19 +85,16 @@
|
||||
local.get $1
|
||||
call $~lib/array/Array<i8>#__unchecked_get
|
||||
)
|
||||
(func $~lib/array/Array<i32>~iterate (; 7 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/array/Array<i32>~traverse (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
)
|
||||
(func $~lib/array/Array<i32>#get:length (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/array/Array<i32>#get:length (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
)
|
||||
(func $~lib/array/Array<i32>#__unchecked_get (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/array/Array<i32>#__unchecked_get (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.get $1
|
||||
@ -107,7 +103,7 @@
|
||||
i32.add
|
||||
i32.load
|
||||
)
|
||||
(func $~lib/array/Array<i32>#__get (; 10 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/array/Array<i32>#__get (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
@ -117,7 +113,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 136
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -126,11 +122,11 @@
|
||||
local.get $1
|
||||
call $~lib/array/Array<i32>#__unchecked_get
|
||||
)
|
||||
(func $~lib/runtime/runtime.adjust (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.adjust (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -138,7 +134,7 @@
|
||||
i32.sub
|
||||
i32.shl
|
||||
)
|
||||
(func $~lib/allocator/arena/__mem_allocate (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/allocator/arena/__mem_allocate (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -217,19 +213,19 @@
|
||||
global.set $~lib/allocator/arena/offset
|
||||
local.get $1
|
||||
)
|
||||
(func $~lib/memory/memory.allocate (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/memory/memory.allocate (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
call $~lib/allocator/arena/__mem_allocate
|
||||
return
|
||||
)
|
||||
(func $~lib/runtime/runtime.allocate (; 14 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.allocate (; 15 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
call $~lib/runtime/runtime.adjust
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -241,13 +237,13 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/collector/dummy/__ref_register (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/collector/dummy/__ref_register (; 16 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 16 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.register (; 17 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
global.get $~lib/memory/HEAP_BASE
|
||||
@ -256,24 +252,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 296
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 296
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -285,13 +281,13 @@
|
||||
call $~lib/collector/dummy/__ref_register
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/collector/dummy/__ref_link (; 17 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/collector/dummy/__ref_link (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/collector/dummy/__ref_unlink (; 18 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/collector/dummy/__ref_unlink (; 19 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/util/memory/memcpy (; 19 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/util/memory/memcpy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -1492,7 +1488,7 @@
|
||||
i32.store8
|
||||
end
|
||||
)
|
||||
(func $~lib/memory/memory.copy (; 20 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/memory/memory.copy (; 21 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -1723,7 +1719,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/runtime/runtime.makeArray (; 21 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.makeArray (; 22 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
@ -1787,9 +1783,9 @@
|
||||
end
|
||||
local.get $4
|
||||
)
|
||||
(func $std/array-literal/Ref~iterate (; 22 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $std/array-literal/Ref~traverse (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
)
|
||||
(func $std/array-literal/Ref#constructor (; 23 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $std/array-literal/Ref#constructor (; 24 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
@ -1801,60 +1797,53 @@
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/array/Array<std/array-literal/Ref>~iterate (; 24 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/array/Array<std/array-literal/Ref>~traverse (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.set $2
|
||||
local.get $2
|
||||
local.set $1
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.add
|
||||
local.set $3
|
||||
local.set $2
|
||||
block $break|0
|
||||
loop $continue|0
|
||||
local.get $1
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.lt_u
|
||||
if
|
||||
block
|
||||
local.get $2
|
||||
local.get $1
|
||||
i32.load
|
||||
local.set $4
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $4
|
||||
local.set $3
|
||||
local.get $3
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
local.get $3
|
||||
call $std/array-literal/Ref~traverse
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
local.get $4
|
||||
local.get $1
|
||||
call $std/array-literal/Ref~iterate
|
||||
local.get $2
|
||||
i32.const 4
|
||||
i32.add
|
||||
local.set $2
|
||||
local.set $1
|
||||
end
|
||||
br $continue|0
|
||||
end
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/array/Array<std/array-literal/Ref>#get:length (; 25 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/array/Array<std/array-literal/Ref>#get:length (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
)
|
||||
(func $std/array-literal/RefWithCtor~iterate (; 26 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $std/array-literal/RefWithCtor~traverse (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $std/array-literal/RefWithCtor#constructor (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $std/array-literal/RefWithCtor#constructor (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
@ -1866,57 +1855,50 @@
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/array/Array<std/array-literal/RefWithCtor>~iterate (; 28 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/array/Array<std/array-literal/RefWithCtor>~traverse (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.set $2
|
||||
local.get $2
|
||||
local.set $1
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.add
|
||||
local.set $3
|
||||
local.set $2
|
||||
block $break|0
|
||||
loop $continue|0
|
||||
local.get $1
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.lt_u
|
||||
if
|
||||
block
|
||||
local.get $2
|
||||
local.get $1
|
||||
i32.load
|
||||
local.set $4
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $4
|
||||
local.set $3
|
||||
local.get $3
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
local.get $3
|
||||
call $std/array-literal/RefWithCtor~traverse
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
local.get $4
|
||||
local.get $1
|
||||
call $std/array-literal/RefWithCtor~iterate
|
||||
local.get $2
|
||||
i32.const 4
|
||||
i32.add
|
||||
local.set $2
|
||||
local.set $1
|
||||
end
|
||||
br $continue|0
|
||||
end
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/array/Array<std/array-literal/RefWithCtor>#get:length (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/array/Array<std/array-literal/RefWithCtor>#get:length (; 30 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
)
|
||||
(func $start:std/array-literal (; 30 ;) (type $FUNCSIG$v)
|
||||
(func $start:std/array-literal (; 31 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -2356,9 +2338,9 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $start (; 31 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 32 ;) (type $FUNCSIG$v)
|
||||
call $start:std/array-literal
|
||||
)
|
||||
(func $null (; 32 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 33 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -21,6 +21,7 @@
|
||||
(global $std/arraybuffer/buffer (mut i32) (i32.const 0))
|
||||
(global $std/arraybuffer/sliced (mut i32) (i32.const 0))
|
||||
(global $std/arraybuffer/arr8 (mut i32) (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
@ -326,7 +327,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -341,7 +342,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -359,8 +360,8 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 53
|
||||
i32.const 51
|
||||
i32.const 54
|
||||
i32.const 43
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -1494,8 +1495,8 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 11
|
||||
i32.const 65
|
||||
i32.const 12
|
||||
i32.const 57
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -1563,17 +1564,12 @@
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/dataview/DataView#constructor (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(func $~lib/dataview/DataView#constructor (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
local.tee $2
|
||||
local.get $1
|
||||
i32.const 1073741816
|
||||
i32.gt_u
|
||||
local.get $2
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.sub
|
||||
@ -1583,7 +1579,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 168
|
||||
i32.const 22
|
||||
i32.const 21
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1592,27 +1588,49 @@
|
||||
call $~lib/runtime/runtime.allocate
|
||||
i32.const 7
|
||||
call $~lib/runtime/runtime.register
|
||||
local.tee $1
|
||||
local.tee $2
|
||||
i32.const 0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
i32.const 0
|
||||
i32.store offset=8
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.const 0
|
||||
i32.store offset=4
|
||||
local.get $2
|
||||
i32.const 0
|
||||
i32.store offset=8
|
||||
local.get $2
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $2
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $2
|
||||
local.get $1
|
||||
i32.store offset=8
|
||||
local.get $2
|
||||
)
|
||||
(func $start:std/arraybuffer (; 12 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/dataview/DataView#constructor|trampoline (; 12 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
block $2of2
|
||||
block $1of2
|
||||
block $outOfRange
|
||||
global.get $~lib/argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $1of2 $1of2 $2of2 $outOfRange
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
local.set $1
|
||||
end
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $~lib/dataview/DataView#constructor
|
||||
)
|
||||
(func $start:std/arraybuffer (; 13 ;) (type $FUNCSIG$v)
|
||||
i32.const 200
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
global.get $~lib/allocator/arena/startOffset
|
||||
@ -1850,11 +1868,13 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
block $__inlined_func$~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array>14 (result i32)
|
||||
i32.const 1
|
||||
global.get $std/arraybuffer/arr8
|
||||
i32.load
|
||||
call $~lib/dataview/DataView#constructor
|
||||
call $~lib/dataview/DataView#constructor|trampoline
|
||||
br_if $__inlined_func$~lib/arraybuffer/ArrayBuffer.isView<~lib/typedarray/Uint8Array>14
|
||||
drop
|
||||
i32.const 0
|
||||
@ -1869,10 +1889,10 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $start (; 13 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 14 ;) (type $FUNCSIG$v)
|
||||
call $start:std/arraybuffer
|
||||
)
|
||||
(func $null (; 14 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 15 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
)
|
||||
|
@ -15,16 +15,16 @@
|
||||
(data (i32.const 160) "\01\00\00\00 \00\00\00~\00l\00i\00b\00/\00d\00a\00t\00a\00v\00i\00e\00w\00.\00t\00s\00")
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/runtime/runtime.MAX_BYTELENGTH i32 (i32.const 1073741816))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/MAX_BYTELENGTH i32 (i32.const 1073741816))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $std/arraybuffer/buffer (mut i32) (i32.const 0))
|
||||
(global $std/arraybuffer/sliced (mut i32) (i32.const 0))
|
||||
(global $std/arraybuffer/arr8 (mut i32) (i32.const 0))
|
||||
(global $~lib/builtins/i32.MIN_VALUE i32 (i32.const -2147483648))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 200))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
@ -33,7 +33,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -132,13 +132,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/memory/memory.fill (; 5 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
@ -407,24 +407,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -437,13 +437,13 @@
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
i32.gt_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 53
|
||||
i32.const 51
|
||||
i32.const 54
|
||||
i32.const 43
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -460,7 +460,7 @@
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 8 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
)
|
||||
@ -2020,15 +2020,15 @@
|
||||
(func $~lib/arraybuffer/ArrayBufferView#constructor (; 17 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
local.get $1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
local.get $2
|
||||
i32.shr_u
|
||||
i32.gt_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 11
|
||||
i32.const 65
|
||||
i32.const 12
|
||||
i32.const 57
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -2146,17 +2146,7 @@
|
||||
(func $~lib/dataview/DataView#constructor (; 21 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(local $4 i32)
|
||||
local.get $3
|
||||
global.get $~lib/builtins/i32.MIN_VALUE
|
||||
i32.eq
|
||||
if
|
||||
local.get $1
|
||||
call $~lib/arraybuffer/ArrayBuffer#get:byteLength
|
||||
local.get $2
|
||||
i32.sub
|
||||
local.set $3
|
||||
end
|
||||
local.get $3
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
i32.gt_u
|
||||
local.get $2
|
||||
local.get $3
|
||||
@ -2168,7 +2158,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 168
|
||||
i32.const 22
|
||||
i32.const 21
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2212,7 +2202,32 @@
|
||||
local.get $0
|
||||
i32.load
|
||||
)
|
||||
(func $start:std/arraybuffer (; 23 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/dataview/DataView#constructor|trampoline (; 23 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
block $2of2
|
||||
block $1of2
|
||||
block $0of2
|
||||
block $outOfRange
|
||||
global.get $~lib/argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $0of2 $1of2 $2of2 $outOfRange
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
local.set $2
|
||||
end
|
||||
local.get $1
|
||||
call $~lib/arraybuffer/ArrayBuffer#get:byteLength
|
||||
local.set $3
|
||||
end
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
local.get $3
|
||||
call $~lib/dataview/DataView#constructor
|
||||
)
|
||||
(func $start:std/arraybuffer (; 24 ;) (type $FUNCSIG$v)
|
||||
global.get $~lib/memory/HEAP_BASE
|
||||
i32.const 7
|
||||
i32.add
|
||||
@ -2242,7 +2257,7 @@
|
||||
end
|
||||
global.get $std/arraybuffer/buffer
|
||||
i32.const 0
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
call $~lib/arraybuffer/ArrayBuffer#slice
|
||||
global.set $std/arraybuffer/sliced
|
||||
global.get $std/arraybuffer/sliced
|
||||
@ -2272,7 +2287,7 @@
|
||||
end
|
||||
global.get $std/arraybuffer/buffer
|
||||
i32.const 1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
call $~lib/arraybuffer/ArrayBuffer#slice
|
||||
global.set $std/arraybuffer/sliced
|
||||
global.get $std/arraybuffer/sliced
|
||||
@ -2290,7 +2305,7 @@
|
||||
end
|
||||
global.get $std/arraybuffer/buffer
|
||||
i32.const -1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
call $~lib/arraybuffer/ArrayBuffer#slice
|
||||
global.set $std/arraybuffer/sliced
|
||||
global.get $std/arraybuffer/sliced
|
||||
@ -2380,7 +2395,7 @@
|
||||
end
|
||||
global.get $std/arraybuffer/buffer
|
||||
i32.const 42
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
call $~lib/arraybuffer/ArrayBuffer#slice
|
||||
global.set $std/arraybuffer/sliced
|
||||
global.get $std/arraybuffer/sliced
|
||||
@ -2512,12 +2527,16 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
global.get $std/arraybuffer/arr8
|
||||
call $~lib/typedarray/Uint8Array#get:buffer
|
||||
i32.const 0
|
||||
global.get $~lib/builtins/i32.MIN_VALUE
|
||||
call $~lib/dataview/DataView#constructor
|
||||
block (result i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
i32.const 0
|
||||
global.get $std/arraybuffer/arr8
|
||||
call $~lib/typedarray/Uint8Array#get:buffer
|
||||
i32.const 0
|
||||
i32.const 0
|
||||
call $~lib/dataview/DataView#constructor|trampoline
|
||||
end
|
||||
call $~lib/arraybuffer/ArrayBuffer.isView<~lib/dataview/DataView>
|
||||
i32.eqz
|
||||
if
|
||||
@ -2529,9 +2548,9 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $start (; 24 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 25 ;) (type $FUNCSIG$v)
|
||||
call $start:std/arraybuffer
|
||||
)
|
||||
(func $null (; 25 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 26 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
@ -26,6 +26,7 @@
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $std/dataview/array (mut i32) (i32.const 0))
|
||||
(global $std/dataview/view (mut i32) (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
@ -164,7 +165,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -179,7 +180,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -250,36 +251,22 @@
|
||||
)
|
||||
(func $~lib/dataview/DataView#constructor (; 7 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
block (result i32)
|
||||
local.get $2
|
||||
i32.const -2147483648
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
local.get $1
|
||||
i32.sub
|
||||
local.set $2
|
||||
end
|
||||
local.get $2
|
||||
i32.const 1073741816
|
||||
i32.gt_u
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.gt_u
|
||||
i32.or
|
||||
end
|
||||
local.get $2
|
||||
i32.const 1073741816
|
||||
i32.gt_u
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.gt_u
|
||||
i32.or
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 22
|
||||
i32.const 21
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -324,7 +311,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 45
|
||||
i32.const 44
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -390,7 +377,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 59
|
||||
i32.const 58
|
||||
i32.const 7
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -416,7 +403,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 70
|
||||
i32.const 69
|
||||
i32.const 49
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -441,7 +428,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 78
|
||||
i32.const 77
|
||||
i32.const 7
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -483,7 +470,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 87
|
||||
i32.const 86
|
||||
i32.const 7
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -520,7 +507,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 181
|
||||
i32.const 180
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -545,7 +532,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 93
|
||||
i32.const 92
|
||||
i32.const 49
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -570,7 +557,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 101
|
||||
i32.const 100
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -610,7 +597,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 110
|
||||
i32.const 109
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -647,7 +634,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 190
|
||||
i32.const 189
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -672,7 +659,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 119
|
||||
i32.const 118
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -710,7 +697,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 128
|
||||
i32.const 127
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -738,7 +725,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 134
|
||||
i32.const 133
|
||||
i32.const 49
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -756,7 +743,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 142
|
||||
i32.const 141
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -792,7 +779,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 150
|
||||
i32.const 149
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -828,7 +815,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 199
|
||||
i32.const 198
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -852,7 +839,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 155
|
||||
i32.const 154
|
||||
i32.const 49
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -870,7 +857,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 163
|
||||
i32.const 162
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -904,7 +891,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 171
|
||||
i32.const 170
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -940,7 +927,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 207
|
||||
i32.const 206
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -956,7 +943,30 @@
|
||||
end
|
||||
i64.store
|
||||
)
|
||||
(func $start:std/dataview (; 29 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/dataview/DataView#constructor|trampoline (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
block $2of2
|
||||
block $1of2
|
||||
block $outOfRange
|
||||
global.get $~lib/argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $1of2 $1of2 $2of2 $outOfRange
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 8
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
local.set $1
|
||||
end
|
||||
local.get $0
|
||||
i32.const 0
|
||||
local.get $1
|
||||
call $~lib/dataview/DataView#constructor
|
||||
)
|
||||
(func $start:std/dataview (; 30 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
i32.const 224
|
||||
global.set $~lib/allocator/arena/startOffset
|
||||
@ -2486,11 +2496,43 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
global.get $std/dataview/array
|
||||
i32.load
|
||||
call $~lib/dataview/DataView#constructor|trampoline
|
||||
global.set $std/dataview/view
|
||||
global.get $std/dataview/view
|
||||
local.tee $0
|
||||
i32.load offset=4
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.sub
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 192
|
||||
i32.const 164
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $std/dataview/view
|
||||
i32.load offset=8
|
||||
i32.const 8
|
||||
i32.ne
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 192
|
||||
i32.const 165
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $start (; 30 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 31 ;) (type $FUNCSIG$v)
|
||||
call $start:std/dataview
|
||||
)
|
||||
(func $null (; 31 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 32 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
)
|
||||
|
@ -159,3 +159,7 @@ assert(view.getUint64(0, true) === 2334704782995986958);
|
||||
|
||||
view.setUint64(0, 11323557176419695287, false);
|
||||
assert(view.getUint64(0, false) === 11323557176419695287);
|
||||
|
||||
view = new DataView(array.buffer);
|
||||
assert(view.byteOffset == 0);
|
||||
assert(view.byteLength == 8);
|
||||
|
@ -22,15 +22,15 @@
|
||||
(data (i32.const 184) "\01\00\00\00\1e\00\00\00s\00t\00d\00/\00d\00a\00t\00a\00v\00i\00e\00w\00.\00t\00s\00")
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/runtime/runtime.MAX_BYTELENGTH i32 (i32.const 1073741816))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/MAX_BYTELENGTH i32 (i32.const 1073741816))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $std/dataview/array (mut i32) (i32.const 0))
|
||||
(global $~lib/builtins/i32.MIN_VALUE i32 (i32.const -2147483648))
|
||||
(global $std/dataview/view (mut i32) (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 224))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
@ -39,7 +39,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -138,13 +138,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/memory/memory.fill (; 5 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
@ -413,24 +413,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -443,13 +443,13 @@
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
i32.gt_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 53
|
||||
i32.const 51
|
||||
i32.const 54
|
||||
i32.const 43
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -467,15 +467,15 @@
|
||||
(func $~lib/arraybuffer/ArrayBufferView#constructor (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
local.get $1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
local.get $2
|
||||
i32.shr_u
|
||||
i32.gt_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 11
|
||||
i32.const 65
|
||||
i32.const 12
|
||||
i32.const 57
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -555,24 +555,14 @@
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 11 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
)
|
||||
(func $~lib/dataview/DataView#constructor (; 12 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(local $4 i32)
|
||||
local.get $3
|
||||
global.get $~lib/builtins/i32.MIN_VALUE
|
||||
i32.eq
|
||||
if
|
||||
local.get $1
|
||||
call $~lib/arraybuffer/ArrayBuffer#get:byteLength
|
||||
local.get $2
|
||||
i32.sub
|
||||
local.set $3
|
||||
end
|
||||
local.get $3
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
i32.gt_u
|
||||
local.get $2
|
||||
local.get $3
|
||||
@ -584,7 +574,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 22
|
||||
i32.const 21
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -667,7 +657,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 45
|
||||
i32.const 44
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -744,7 +734,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 59
|
||||
i32.const 58
|
||||
i32.const 7
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -776,7 +766,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 70
|
||||
i32.const 69
|
||||
i32.const 49
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -818,7 +808,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 78
|
||||
i32.const 77
|
||||
i32.const 7
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -868,7 +858,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 87
|
||||
i32.const 86
|
||||
i32.const 7
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -943,7 +933,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 181
|
||||
i32.const 180
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -972,7 +962,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 93
|
||||
i32.const 92
|
||||
i32.const 49
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1012,7 +1002,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 101
|
||||
i32.const 100
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1048,7 +1038,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 110
|
||||
i32.const 109
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1084,7 +1074,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 190
|
||||
i32.const 189
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1119,7 +1109,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 119
|
||||
i32.const 118
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1159,7 +1149,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 128
|
||||
i32.const 127
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1193,7 +1183,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 134
|
||||
i32.const 133
|
||||
i32.const 49
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1219,7 +1209,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 142
|
||||
i32.const 141
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1253,7 +1243,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 150
|
||||
i32.const 149
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1287,7 +1277,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 199
|
||||
i32.const 198
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1315,7 +1305,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 155
|
||||
i32.const 154
|
||||
i32.const 49
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1341,7 +1331,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 163
|
||||
i32.const 162
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1375,7 +1365,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 171
|
||||
i32.const 170
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1409,7 +1399,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 152
|
||||
i32.const 207
|
||||
i32.const 206
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1429,7 +1419,43 @@
|
||||
end
|
||||
i64.store
|
||||
)
|
||||
(func $start:std/dataview (; 42 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/dataview/DataView#constructor|trampoline (; 42 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
block $2of2
|
||||
block $1of2
|
||||
block $0of2
|
||||
block $outOfRange
|
||||
global.get $~lib/argc
|
||||
i32.const 1
|
||||
i32.sub
|
||||
br_table $0of2 $1of2 $2of2 $outOfRange
|
||||
end
|
||||
unreachable
|
||||
end
|
||||
i32.const 0
|
||||
local.set $2
|
||||
end
|
||||
local.get $1
|
||||
call $~lib/arraybuffer/ArrayBuffer#get:byteLength
|
||||
local.set $3
|
||||
end
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
local.get $3
|
||||
call $~lib/dataview/DataView#constructor
|
||||
)
|
||||
(func $~lib/dataview/DataView#get:byteOffset (; 43 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.sub
|
||||
)
|
||||
(func $~lib/dataview/DataView#get:byteLength (; 44 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
)
|
||||
(func $start:std/dataview (; 45 ;) (type $FUNCSIG$v)
|
||||
global.get $~lib/memory/HEAP_BASE
|
||||
i32.const 7
|
||||
i32.add
|
||||
@ -3121,10 +3147,47 @@
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
block (result i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
i32.const 0
|
||||
global.get $std/dataview/array
|
||||
call $~lib/typedarray/Uint8Array#get:buffer
|
||||
i32.const 0
|
||||
i32.const 0
|
||||
call $~lib/dataview/DataView#constructor|trampoline
|
||||
end
|
||||
global.set $std/dataview/view
|
||||
global.get $std/dataview/view
|
||||
call $~lib/dataview/DataView#get:byteOffset
|
||||
i32.const 0
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 192
|
||||
i32.const 164
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $std/dataview/view
|
||||
call $~lib/dataview/DataView#get:byteLength
|
||||
i32.const 8
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 192
|
||||
i32.const 165
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $start (; 43 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 46 ;) (type $FUNCSIG$v)
|
||||
call $start:std/dataview
|
||||
)
|
||||
(func $null (; 44 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 47 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
@ -89,7 +89,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 48
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -104,7 +104,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 48
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -17,10 +17,10 @@
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $std/date/creationTime (mut i64) (i64.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $std/date/date (mut i32) (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 80))
|
||||
@ -31,7 +31,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -130,13 +130,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 7 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -148,24 +148,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 48
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 48
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -9,14 +9,14 @@
|
||||
(data (i32.const 48) "\01\00\00\00\06\00\00\00a\00b\00c\00")
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 64))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
(start $start)
|
||||
(func $~lib/string/String#get:length (; 0 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.const 1
|
||||
|
@ -1,11 +1,11 @@
|
||||
(module
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$viii (func (param i32 i32 i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iij (func (param i32 i64) (result i32)))
|
||||
(type $FUNCSIG$ij (func (param i64) (result i32)))
|
||||
@ -30,10 +30,9 @@
|
||||
(data (i32.const 112) "\03\00\00\00\14")
|
||||
(data (i32.const 128) "s\00t\00d\00/\00m\00a\00p\00.\00t\00s")
|
||||
(table $0 23 funcref)
|
||||
(elem (i32.const 0) $null $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/string/String~iterate $~lib/string/String~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate $~lib/map/Map<i8,i32>~iterate)
|
||||
(elem (i32.const 0) $null $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/string/String~traverse $~lib/string/String~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse $~lib/map/Map<i8,i32>~traverse)
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
@ -128,23 +127,15 @@
|
||||
i32.const 16
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/map/Map<i8,i32>~iterate (; 3 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/map/Map<i8,i32>~traverse (; 3 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
drop
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
local.set $0
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
drop
|
||||
)
|
||||
(func $~lib/string/String~iterate (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/string/String~traverse (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -155,7 +146,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -170,7 +161,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -399,8 +390,8 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 72
|
||||
i32.const 53
|
||||
i32.const 51
|
||||
i32.const 54
|
||||
i32.const 43
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -84,7 +84,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -99,7 +99,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -10,10 +10,10 @@
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $std/new/AClass.aStaticField (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $std/new/aClass (mut i32) (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 48))
|
||||
@ -24,7 +24,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -123,13 +123,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -141,24 +141,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,6 +1,5 @@
|
||||
(module
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
@ -14,7 +13,7 @@
|
||||
(data (i32.const 96) "\01\00\00\00*")
|
||||
(data (i32.const 112) "s\00t\00d\00/\00o\00b\00j\00e\00c\00t\00-\00l\00i\00t\00e\00r\00a\00l\00.\00t\00s")
|
||||
(table $0 4 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~iterate $std/object-literal/Foo~iterate $~lib/string/String~iterate)
|
||||
(elem (i32.const 0) $null $~lib/string/String~traverse $std/object-literal/Foo~traverse $~lib/string/String~traverse)
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
@ -22,7 +21,7 @@
|
||||
(export "table" (table $0))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(start $start)
|
||||
(func $~lib/string/String~iterate (; 1 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/string/String~traverse (; 1 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/allocator/arena/__mem_allocate (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
@ -114,15 +113,10 @@
|
||||
i32.const 16
|
||||
i32.add
|
||||
)
|
||||
(func $std/object-literal/Foo~iterate (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $std/object-literal/Foo~traverse (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.tee $0
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
end
|
||||
drop
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
@ -132,7 +126,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -147,7 +141,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,6 +1,5 @@
|
||||
(module
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
@ -12,11 +11,11 @@
|
||||
(data (i32.const 48) "\01\00\00\00\1e\00\00\00\00\00\00\00\00\00\00\00~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s\00")
|
||||
(data (i32.const 96) "\01\00\00\00*\00\00\00\00\00\00\00\00\00\00\00s\00t\00d\00/\00o\00b\00j\00e\00c\00t\00-\00l\00i\00t\00e\00r\00a\00l\00.\00t\00s\00")
|
||||
(table $0 4 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~iterate $std/object-literal/Foo~iterate $std/object-literal/Foo2~iterate)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(elem (i32.const 0) $null $~lib/string/String~traverse $std/object-literal/Foo~traverse $std/object-literal/Foo2~traverse)
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 156))
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
@ -24,14 +23,14 @@
|
||||
(export "table" (table $0))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(start $start)
|
||||
(func $~lib/string/String~iterate (; 1 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String~traverse (; 1 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $~lib/runtime/runtime.adjust (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -130,7 +129,7 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -142,27 +141,28 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $std/object-literal/Foo~iterate (; 6 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.tee $2
|
||||
if
|
||||
local.get $2
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
local.get $2
|
||||
local.get $1
|
||||
call $~lib/string/String~iterate
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/dummy/__ref_register (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/collector/dummy/__ref_mark (; 6 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $std/object-literal/Foo~traverse (; 7 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.tee $1
|
||||
if
|
||||
local.get $1
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
local.get $1
|
||||
call $~lib/string/String~traverse
|
||||
end
|
||||
)
|
||||
(func $~lib/collector/dummy/__ref_register (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 9 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
global.get $~lib/memory/HEAP_BASE
|
||||
@ -171,24 +171,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 64
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -200,15 +200,15 @@
|
||||
call $~lib/collector/dummy/__ref_register
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/string/String#get:length (; 9 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/string/String#get:length (; 10 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.const 1
|
||||
i32.shr_u
|
||||
)
|
||||
(func $~lib/util/string/compareImpl (; 10 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
|
||||
(func $~lib/util/string/compareImpl (; 11 ;) (type $FUNCSIG$iiiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (result i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
(local $7 i32)
|
||||
@ -261,7 +261,7 @@
|
||||
end
|
||||
local.get $5
|
||||
)
|
||||
(func $~lib/string/String.__eq (; 11 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/string/String.__eq (; 12 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
local.get $0
|
||||
@ -305,7 +305,7 @@
|
||||
call $~lib/util/string/compareImpl
|
||||
i32.eqz
|
||||
)
|
||||
(func $std/object-literal/bar (; 12 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $std/object-literal/bar (; 13 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 1
|
||||
@ -333,10 +333,10 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $std/object-literal/Foo2~iterate (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $std/object-literal/Foo2~traverse (; 14 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $std/object-literal/bar2 (; 14 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $std/object-literal/bar2 (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 2
|
||||
@ -351,7 +351,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $std/object-literal/Foo2#test (; 15 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $std/object-literal/Foo2#test (; 16 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
i32.const 3
|
||||
@ -366,7 +366,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $start:std/object-literal (; 16 ;) (type $FUNCSIG$v)
|
||||
(func $start:std/object-literal (; 17 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -420,9 +420,9 @@
|
||||
end
|
||||
call $std/object-literal/Foo2#test
|
||||
)
|
||||
(func $start (; 17 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 18 ;) (type $FUNCSIG$v)
|
||||
call $start:std/object-literal
|
||||
)
|
||||
(func $null (; 18 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 19 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
@ -167,7 +167,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -182,7 +182,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -12,10 +12,10 @@
|
||||
(data (i32.const 48) "\02\00\00\006\00\00\00s\00t\00d\00/\00o\00p\00e\00r\00a\00t\00o\00r\00-\00o\00v\00e\00r\00l\00o\00a\00d\00i\00n\00g\00.\00t\00s\00")
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $std/operator-overloading/a1 (mut i32) (i32.const 0))
|
||||
(global $std/operator-overloading/a2 (mut i32) (i32.const 0))
|
||||
@ -92,7 +92,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -191,13 +191,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -209,24 +209,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 16
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,9 +1,9 @@
|
||||
(module
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$viii (func (param i32 i32 i32)))
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
@ -24,7 +24,7 @@
|
||||
(data (i32.const 216) "\03\00\00\00\1e")
|
||||
(data (i32.const 232) "~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s")
|
||||
(table $0 4 funcref)
|
||||
(elem (i32.const 0) $null $std/runtime/A~iterate $std/runtime/A~iterate $std/runtime/A~iterate)
|
||||
(elem (i32.const 0) $null $std/runtime/A~traverse $std/runtime/A~traverse $std/runtime/A~traverse)
|
||||
(global $std/runtime/register_ref (mut i32) (i32.const 0))
|
||||
(global $std/runtime/barrier1 (mut i32) (i32.const 0))
|
||||
(global $std/runtime/barrier2 (mut i32) (i32.const 0))
|
||||
@ -44,7 +44,7 @@
|
||||
(export "table" (table $0))
|
||||
(export "main" (func $std/runtime/main))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(func $std/runtime/A~iterate (; 2 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $std/runtime/A~traverse (; 2 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/allocator/tlsf/Root#setSLMap (; 3 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
@ -2563,7 +2563,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 107
|
||||
i32.const 64
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2600,7 +2600,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 132
|
||||
i32.const 89
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2615,7 +2615,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 134
|
||||
i32.const 91
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2631,7 +2631,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2646,7 +2646,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2697,7 +2697,7 @@
|
||||
else
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 37
|
||||
i32.const 41
|
||||
i32.const 2
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2808,7 +2808,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 52
|
||||
i32.const 56
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2820,7 +2820,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 53
|
||||
i32.const 57
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2834,7 +2834,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 54
|
||||
i32.const 58
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2846,7 +2846,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 55
|
||||
i32.const 59
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2861,7 +2861,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 57
|
||||
i32.const 61
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2877,7 +2877,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 59
|
||||
i32.const 63
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2893,7 +2893,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 62
|
||||
i32.const 66
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2909,7 +2909,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 66
|
||||
i32.const 70
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2925,7 +2925,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 68
|
||||
i32.const 72
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2937,7 +2937,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 69
|
||||
i32.const 73
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2954,7 +2954,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 72
|
||||
i32.const 76
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2970,7 +2970,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 73
|
||||
i32.const 77
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,6 +1,7 @@
|
||||
import "allocator/tlsf";
|
||||
// import { classId, ADJUSTOBLOCK, ALLOCATE, REALLOCATE, REGISTER, DISCARD, HEADER, HEADER_SIZE, HEADER_MAGIC } from "runtime";
|
||||
import { runtime, HEADER, HEADER_SIZE, HEADER_MAGIC, classId } from "runtime";
|
||||
import { HEADER, HEADER_SIZE, HEADER_MAGIC } from "util/runtime";
|
||||
import { runtime, __runtime_id } from "runtime";
|
||||
|
||||
@start export function main(): void {}
|
||||
|
||||
@ -24,9 +25,12 @@ var link_parentRef: usize = 0;
|
||||
@global function __ref_collect(): void {
|
||||
}
|
||||
|
||||
@global function __ref_mark(ref: usize): void {
|
||||
}
|
||||
|
||||
class A {}
|
||||
class B {}
|
||||
assert(classId<A>() != classId<B>());
|
||||
assert(__runtime_id<A>() != __runtime_id<B>());
|
||||
|
||||
function isPowerOf2(x: i32): bool {
|
||||
return x != 0 && (x & (x - 1)) == 0;
|
||||
@ -62,10 +66,10 @@ var ref3 = runtime.allocate(barrier2);
|
||||
assert(ref1 == ref3); // reuses space of ref1 (free'd in realloc), ref2 (explicitly free'd)
|
||||
|
||||
var ref4 = runtime.allocate(barrier1);
|
||||
runtime.register(ref4, classId<A>()); // should call __gc_register
|
||||
runtime.register(ref4, __runtime_id<A>()); // should call __gc_register
|
||||
assert(register_ref == ref4);
|
||||
var header4 = changetype<HEADER>(register_ref - HEADER_SIZE);
|
||||
assert(header4.classId == classId<A>());
|
||||
assert(header4.classId == __runtime_id<A>());
|
||||
assert(header4.payloadSize == barrier1);
|
||||
|
||||
var ref5 = runtime.allocate(10);
|
||||
|
@ -1,9 +1,9 @@
|
||||
(module
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$viiddddd (func (param i32 i32 f64 f64 f64 f64 f64)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$viii (func (param i32 i32 i32)))
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
@ -18,11 +18,11 @@
|
||||
(data (i32.const 152) "\03\00\00\00,\00\00\00\00\00\00\00\00\00\00\00~\00l\00i\00b\00/\00a\00l\00l\00o\00c\00a\00t\00o\00r\00/\00t\00l\00s\00f\00.\00t\00s\00")
|
||||
(data (i32.const 216) "\03\00\00\00\1e\00\00\00\00\00\00\00\00\00\00\00~\00l\00i\00b\00/\00r\00u\00n\00t\00i\00m\00e\00.\00t\00s\00")
|
||||
(table $0 4 funcref)
|
||||
(elem (i32.const 0) $null $std/runtime/A~iterate $std/runtime/B~iterate $~lib/string/String~iterate)
|
||||
(elem (i32.const 0) $null $std/runtime/A~traverse $std/runtime/B~traverse $~lib/string/String~traverse)
|
||||
(global $std/runtime/register_ref (mut i32) (i32.const 0))
|
||||
(global $std/runtime/link_ref (mut i32) (i32.const 0))
|
||||
(global $std/runtime/link_parentRef (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $std/runtime/barrier1 (mut i32) (i32.const 0))
|
||||
(global $std/runtime/barrier2 (mut i32) (i32.const 0))
|
||||
(global $std/runtime/barrier3 (mut i32) (i32.const 0))
|
||||
@ -43,7 +43,7 @@
|
||||
(global $~lib/allocator/tlsf/TAGS i32 (i32.const 3))
|
||||
(global $~lib/allocator/tlsf/Block.MAX_SIZE i32 (i32.const 1073741824))
|
||||
(global $~lib/allocator/tlsf/SB_SIZE i32 (i32.const 256))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $std/runtime/ref1 (mut i32) (i32.const 0))
|
||||
(global $std/runtime/header1 (mut i32) (i32.const 0))
|
||||
(global $std/runtime/ref2 (mut i32) (i32.const 0))
|
||||
@ -60,18 +60,18 @@
|
||||
(export "table" (table $0))
|
||||
(export "main" (func $std/runtime/main))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(func $std/runtime/A~iterate (; 2 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $std/runtime/A~traverse (; 2 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
)
|
||||
(func $std/runtime/B~iterate (; 3 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $std/runtime/B~traverse (; 3 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
)
|
||||
(func $~lib/string/String~iterate (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String~traverse (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $~lib/runtime/runtime.adjust (; 5 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -1469,7 +1469,7 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -1481,7 +1481,7 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/util/memory/memcpy (; 27 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
@ -3231,7 +3231,7 @@
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
@ -3268,7 +3268,7 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $5
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
local.set $6
|
||||
local.get $6
|
||||
@ -3285,7 +3285,7 @@
|
||||
call $~lib/memory/memory.fill
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
@ -3295,7 +3295,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 107
|
||||
i32.const 64
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3337,24 +3337,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 132
|
||||
i32.const 89
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $1
|
||||
local.get $1
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 134
|
||||
i32.const 91
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3371,24 +3371,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 232
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3402,13 +3402,13 @@
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer#get:byteLength (; 36 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
)
|
||||
(func $~lib/string/String#get:length (; 37 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.const 1
|
||||
@ -3423,7 +3423,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 29
|
||||
i32.const 33
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3436,7 +3436,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 35
|
||||
i32.const 39
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3457,7 +3457,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 37
|
||||
i32.const 41
|
||||
i32.const 2
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3549,18 +3549,18 @@
|
||||
call $~lib/runtime/runtime.allocate
|
||||
global.set $std/runtime/ref1
|
||||
global.get $std/runtime/ref1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
global.set $std/runtime/header1
|
||||
global.get $std/runtime/header1
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 52
|
||||
i32.const 56
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3573,7 +3573,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 53
|
||||
i32.const 57
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3587,7 +3587,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 54
|
||||
i32.const 58
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3600,7 +3600,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 55
|
||||
i32.const 59
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3616,13 +3616,13 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 57
|
||||
i32.const 61
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $std/runtime/ref2
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
global.set $std/runtime/header2
|
||||
global.get $std/runtime/header2
|
||||
@ -3633,7 +3633,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 59
|
||||
i32.const 63
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3650,7 +3650,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 62
|
||||
i32.const 66
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3669,13 +3669,13 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 66
|
||||
i32.const 70
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $std/runtime/register_ref
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
global.set $std/runtime/header4
|
||||
global.get $std/runtime/header4
|
||||
@ -3686,7 +3686,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 68
|
||||
i32.const 72
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3699,7 +3699,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 69
|
||||
i32.const 73
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3715,7 +3715,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 72
|
||||
i32.const 76
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3728,7 +3728,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 73
|
||||
i32.const 77
|
||||
i32.const 0
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,10 +1,10 @@
|
||||
(module
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$iiii (func (param i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$iij (func (param i32 i64) (result i32)))
|
||||
(type $FUNCSIG$ij (func (param i64) (result i32)))
|
||||
@ -26,10 +26,9 @@
|
||||
(data (i32.const 112) "\03\00\00\00\14")
|
||||
(data (i32.const 128) "s\00t\00d\00/\00s\00e\00t\00.\00t\00s")
|
||||
(table $0 23 funcref)
|
||||
(elem (i32.const 0) $null $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/string/String~iterate $~lib/string/String~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate $~lib/set/Set<i8>~iterate)
|
||||
(elem (i32.const 0) $null $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/string/String~traverse $~lib/string/String~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse $~lib/set/Set<i8>~traverse)
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/capabilities i32 (i32.const 2))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
@ -124,23 +123,15 @@
|
||||
i32.const 16
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/set/Set<i8>~iterate (; 3 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/set/Set<i8>~traverse (; 3 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
drop
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
local.set $0
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
drop
|
||||
)
|
||||
(func $~lib/string/String~iterate (; 4 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/string/String~traverse (; 4 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 5 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -151,7 +142,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -166,7 +157,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -395,8 +386,8 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 72
|
||||
i32.const 53
|
||||
i32.const 51
|
||||
i32.const 54
|
||||
i32.const 43
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -39,7 +39,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1437,7 +1437,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 280
|
||||
i32.const 107
|
||||
i32.const 64
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1480,8 +1480,8 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 13
|
||||
i32.const 72
|
||||
i32.const 14
|
||||
i32.const 64
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -1541,7 +1541,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1585,7 +1585,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1629,7 +1629,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -30,11 +30,11 @@
|
||||
(global $std/static-array/I i32 (i32.const 80))
|
||||
(global $std/static-array/f i32 (i32.const 120))
|
||||
(global $std/static-array/F i32 (i32.const 168))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/runtime/runtime.MAX_BYTELENGTH i32 (i32.const 1073741816))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/MAX_BYTELENGTH i32 (i32.const 1073741816))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 312))
|
||||
(export "memory" (memory $0))
|
||||
(export "table" (table $0))
|
||||
@ -62,7 +62,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -75,7 +75,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -1870,7 +1870,7 @@
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
@ -1901,7 +1901,7 @@
|
||||
i32.load
|
||||
i32.store
|
||||
local.get $5
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
local.set $6
|
||||
local.get $6
|
||||
@ -1918,7 +1918,7 @@
|
||||
call $~lib/memory/memory.fill
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
@ -1928,7 +1928,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 280
|
||||
i32.const 107
|
||||
i32.const 64
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1972,15 +1972,15 @@
|
||||
i32.gt_u
|
||||
if
|
||||
local.get $1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
local.get $2
|
||||
i32.shr_u
|
||||
i32.gt_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 13
|
||||
i32.const 72
|
||||
i32.const 14
|
||||
i32.const 64
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -2070,7 +2070,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2138,7 +2138,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2206,7 +2206,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 240
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1464,7 +1464,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 136
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1479,7 +1479,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 136
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1551,7 +1551,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 96
|
||||
i32.const 448
|
||||
i32.const 449
|
||||
i32.const 8
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1598,7 +1598,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 96
|
||||
i32.const 452
|
||||
i32.const 453
|
||||
i32.const 8
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1677,7 +1677,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 96
|
||||
i32.const 464
|
||||
i32.const 465
|
||||
i32.const 8
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1732,7 +1732,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 96
|
||||
i32.const 473
|
||||
i32.const 474
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -20,12 +20,12 @@
|
||||
(table $0 1 funcref)
|
||||
(elem (i32.const 0) $null)
|
||||
(global $std/string-utf8/str (mut i32) (i32.const 16))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $std/string-utf8/len (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $std/string-utf8/ptr (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/memory/HEAP_BASE i32 (i32.const 228))
|
||||
(export "memory" (memory $0))
|
||||
@ -33,7 +33,7 @@
|
||||
(start $start)
|
||||
(func $~lib/string/String#get:length (; 1 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.const 1
|
||||
@ -457,7 +457,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -472,13 +472,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/util/memory/memcpy (; 8 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
@ -1929,24 +1929,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 136
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 136
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2033,7 +2033,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 96
|
||||
i32.const 448
|
||||
i32.const 449
|
||||
i32.const 8
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2087,7 +2087,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 96
|
||||
i32.const 452
|
||||
i32.const 453
|
||||
i32.const 8
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2182,7 +2182,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 96
|
||||
i32.const 464
|
||||
i32.const 465
|
||||
i32.const 8
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2245,7 +2245,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 96
|
||||
i32.const 473
|
||||
i32.const 474
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,6 +1,5 @@
|
||||
(module
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
@ -15,6 +14,7 @@
|
||||
(type $FUNCSIG$v (func))
|
||||
(type $FUNCSIG$i (func (result i32)))
|
||||
(type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(import "env" "abort" (func $~lib/env/abort (param i32 i32 i32 i32)))
|
||||
(memory $0 1)
|
||||
(data (i32.const 8) "\01\00\00\00 ")
|
||||
@ -326,7 +326,7 @@
|
||||
(data (i32.const 6696) "\01\00\00\00\16")
|
||||
(data (i32.const 6712) "0\00.\000\000\000\000\003\005\006\008\009")
|
||||
(table $0 11 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~iterate $~lib/array/Array<~lib/string/String>~iterate $~lib/array/Array<~lib/string/String>~iterate $~lib/string/String~iterate $~lib/array/Array<u32>~iterate $~lib/array/Array<u32>~iterate $~lib/array/Array<u32>~iterate $~lib/array/Array<u32>~iterate $~lib/array/Array<u32>~iterate $~lib/array/Array<u32>~iterate)
|
||||
(elem (i32.const 0) $null $~lib/string/String~traverse $~lib/array/Array<~lib/string/String>~traverse $~lib/array/Array<~lib/string/String>~traverse $~lib/string/String~traverse $~lib/array/Array<u32>~traverse $~lib/array/Array<u32>~traverse $~lib/array/Array<u32>~traverse $~lib/array/Array<u32>~traverse $~lib/array/Array<u32>~traverse $~lib/array/Array<u32>~traverse)
|
||||
(global $std/string/str (mut i32) (i32.const 24))
|
||||
(global $std/string/nullStr (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
@ -335,7 +335,6 @@
|
||||
(global $std/string/a (mut i32) (i32.const 0))
|
||||
(global $std/string/b (mut i32) (i32.const 0))
|
||||
(global $std/string/sa (mut i32) (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/util/number/_frc_plus (mut i64) (i64.const 0))
|
||||
(global $~lib/util/number/_frc_minus (mut i64) (i64.const 0))
|
||||
(global $~lib/util/number/_exp (mut i32) (i32.const 0))
|
||||
@ -348,7 +347,7 @@
|
||||
(export "getString" (func $std/string/getString))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(start $start)
|
||||
(func $~lib/string/String~iterate (; 1 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/string/String~traverse (; 1 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/allocator/arena/__mem_allocate (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
@ -448,7 +447,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -463,7 +462,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -579,7 +578,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 25
|
||||
i32.const 26
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -634,7 +633,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 165
|
||||
i32.const 166
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -682,7 +681,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 78
|
||||
i32.const 79
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -730,7 +729,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 134
|
||||
i32.const 135
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1881,7 +1880,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 282
|
||||
i32.const 283
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -1976,7 +1975,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 303
|
||||
i32.const 304
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2072,7 +2071,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 150
|
||||
i32.const 151
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2494,7 +2493,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 570
|
||||
i32.const 571
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2766,7 +2765,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 324
|
||||
i32.const 325
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2796,7 +2795,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 329
|
||||
i32.const 330
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2916,39 +2915,30 @@
|
||||
i32.const 1
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $~lib/array/Array<~lib/string/String>~iterate (; 29 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/array/Array<~lib/string/String>~traverse (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
drop
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.tee $2
|
||||
local.tee $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.add
|
||||
local.set $0
|
||||
loop $continue|0
|
||||
local.get $2
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.lt_u
|
||||
if
|
||||
local.get $2
|
||||
i32.load
|
||||
local.set $3
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $3
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
local.get $2
|
||||
i32.load
|
||||
drop
|
||||
local.get $1
|
||||
i32.const 4
|
||||
i32.add
|
||||
local.set $2
|
||||
local.set $1
|
||||
br $continue|0
|
||||
end
|
||||
end
|
||||
@ -3276,7 +3266,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 107
|
||||
i32.const 64
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3317,8 +3307,8 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1912
|
||||
i32.const 13
|
||||
i32.const 72
|
||||
i32.const 14
|
||||
i32.const 64
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -3394,7 +3384,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 351
|
||||
i32.const 352
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3639,7 +3629,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1912
|
||||
i32.const 95
|
||||
i32.const 96
|
||||
i32.const 45
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3653,7 +3643,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1912
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3720,13 +3710,10 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/array/Array<u32>~iterate (; 38 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/array/Array<u32>~traverse (; 38 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
drop
|
||||
)
|
||||
(func $~lib/util/number/utoa32_lut (; 39 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
@ -5132,7 +5119,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 190
|
||||
i32.const 191
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -5226,7 +5213,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 132
|
||||
i32.const 89
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -5240,7 +5227,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 134
|
||||
i32.const 91
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
|
@ -1,6 +1,5 @@
|
||||
(module
|
||||
(type $FUNCSIG$vi (func (param i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$viiii (func (param i32 i32 i32 i32)))
|
||||
(type $FUNCSIG$ii (func (param i32) (result i32)))
|
||||
(type $FUNCSIG$iii (func (param i32 i32) (result i32)))
|
||||
@ -10,6 +9,7 @@
|
||||
(type $FUNCSIG$dii (func (param i32 i32) (result f64)))
|
||||
(type $FUNCSIG$di (func (param i32) (result f64)))
|
||||
(type $FUNCSIG$iiiii (func (param i32 i32 i32 i32) (result i32)))
|
||||
(type $FUNCSIG$vii (func (param i32 i32)))
|
||||
(type $FUNCSIG$ij (func (param i64) (result i32)))
|
||||
(type $FUNCSIG$viji (func (param i32 i64 i32)))
|
||||
(type $FUNCSIG$id (func (param f64) (result i32)))
|
||||
@ -176,13 +176,13 @@
|
||||
(data (i32.const 6664) "\01\00\00\00\0e\00\00\00\00\00\00\00\00\00\00\001\00.\001\00e\00-\006\004\00")
|
||||
(data (i32.const 6696) "\01\00\00\00\16\00\00\00\00\00\00\00\00\00\00\000\00.\000\000\000\000\003\005\006\008\009\00")
|
||||
(table $0 11 funcref)
|
||||
(elem (i32.const 0) $null $~lib/string/String~iterate $~lib/array/Array<~lib/string/String>~iterate $~lib/array/Array<~lib/string/String>~iterate $~lib/arraybuffer/ArrayBuffer~iterate $~lib/array/Array<u32>~iterate $~lib/array/Array<u32>~iterate $~lib/array/Array<u64>~iterate $~lib/array/Array<u64>~iterate $~lib/array/Array<i16>~iterate $~lib/array/Array<i16>~iterate)
|
||||
(elem (i32.const 0) $null $~lib/string/String~traverse $~lib/array/Array<~lib/string/String>~traverse $~lib/array/Array<~lib/string/String>~traverse $~lib/arraybuffer/ArrayBuffer~traverse $~lib/array/Array<u32>~traverse $~lib/array/Array<u32>~traverse $~lib/array/Array<u64>~traverse $~lib/array/Array<u64>~traverse $~lib/array/Array<i16>~traverse $~lib/array/Array<i16>~traverse)
|
||||
(global $std/string/str (mut i32) (i32.const 24))
|
||||
(global $std/string/nullStr (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 16))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/string/String.MAX_LENGTH i32 (i32.const 536870904))
|
||||
(global $~lib/builtins/i32.MAX_VALUE i32 (i32.const 2147483647))
|
||||
@ -190,8 +190,7 @@
|
||||
(global $std/string/a (mut i32) (i32.const 0))
|
||||
(global $std/string/b (mut i32) (i32.const 0))
|
||||
(global $std/string/sa (mut i32) (i32.const 0))
|
||||
(global $~lib/argc (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/runtime.MAX_BYTELENGTH i32 (i32.const 1073741808))
|
||||
(global $~lib/util/runtime/MAX_BYTELENGTH i32 (i32.const 1073741808))
|
||||
(global $~lib/ASC_SHRINK_LEVEL i32 (i32.const 0))
|
||||
(global $~lib/builtins/u32.MAX_VALUE i32 (i32.const -1))
|
||||
(global $~lib/builtins/u64.MAX_VALUE i64 (i64.const -1))
|
||||
@ -212,12 +211,12 @@
|
||||
(export "getString" (func $std/string/getString))
|
||||
(export ".capabilities" (global $~lib/capabilities))
|
||||
(start $start)
|
||||
(func $~lib/string/String~iterate (; 1 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/string/String~traverse (; 1 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $~lib/string/String#get:length (; 2 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.const 1
|
||||
@ -243,7 +242,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -342,7 +341,7 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
@ -354,7 +353,7 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/collector/dummy/__ref_register (; 8 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
@ -369,24 +368,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -519,7 +518,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 25
|
||||
i32.const 26
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -584,7 +583,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 165
|
||||
i32.const 166
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -650,7 +649,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 78
|
||||
i32.const 79
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -714,7 +713,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 134
|
||||
i32.const 135
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2275,7 +2274,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 282
|
||||
i32.const 283
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2376,7 +2375,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 303
|
||||
i32.const 304
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2478,7 +2477,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 150
|
||||
i32.const 151
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -2992,7 +2991,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 570
|
||||
i32.const 571
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3273,7 +3272,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 324
|
||||
i32.const 325
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3301,7 +3300,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 329
|
||||
i32.const 330
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3435,62 +3434,58 @@
|
||||
i32.const 1
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $~lib/array/Array<~lib/string/String>~iterate (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/collector/dummy/__ref_mark (; 35 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/array/Array<~lib/string/String>~traverse (; 36 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.set $2
|
||||
local.get $2
|
||||
local.set $1
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.load offset=8
|
||||
i32.add
|
||||
local.set $3
|
||||
local.set $2
|
||||
block $break|0
|
||||
loop $continue|0
|
||||
local.get $1
|
||||
local.get $2
|
||||
local.get $3
|
||||
i32.lt_u
|
||||
if
|
||||
block
|
||||
local.get $2
|
||||
local.get $1
|
||||
i32.load
|
||||
local.set $4
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
local.get $4
|
||||
local.set $3
|
||||
local.get $3
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
local.get $3
|
||||
call $~lib/string/String~traverse
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
local.get $4
|
||||
local.get $1
|
||||
call $~lib/string/String~iterate
|
||||
local.get $2
|
||||
i32.const 4
|
||||
i32.add
|
||||
local.set $2
|
||||
local.set $1
|
||||
end
|
||||
br $continue|0
|
||||
end
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/arraybuffer/ArrayBuffer~iterate (; 36 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(func $~lib/arraybuffer/ArrayBuffer~traverse (; 37 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
)
|
||||
(func $~lib/collector/dummy/__ref_link (; 37 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/collector/dummy/__ref_link (; 38 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/collector/dummy/__ref_unlink (; 38 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/collector/dummy/__ref_unlink (; 39 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/runtime/runtime.makeArray (; 39 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.makeArray (; 40 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
@ -3554,7 +3549,7 @@
|
||||
end
|
||||
local.get $4
|
||||
)
|
||||
(func $~lib/memory/memory.fill (; 40 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/memory/memory.fill (; 41 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -3811,21 +3806,21 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/allocator/arena/__mem_free (; 41 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/allocator/arena/__mem_free (; 42 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
nop
|
||||
)
|
||||
(func $~lib/memory/memory.free (; 42 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/memory/memory.free (; 43 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
call $~lib/allocator/arena/__mem_free
|
||||
)
|
||||
(func $~lib/runtime/runtime.reallocate (; 43 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/runtime/runtime.reallocate (; 44 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
(local $6 i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
@ -3862,7 +3857,7 @@
|
||||
i32.const 0
|
||||
i32.store offset=12
|
||||
local.get $5
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
local.set $6
|
||||
local.get $6
|
||||
@ -3879,7 +3874,7 @@
|
||||
call $~lib/memory/memory.fill
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
if
|
||||
local.get $0
|
||||
@ -3889,7 +3884,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 107
|
||||
i32.const 64
|
||||
i32.const 10
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -3922,7 +3917,7 @@
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
)
|
||||
(func $~lib/array/ensureCapacity (; 44 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/array/ensureCapacity (; 45 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -3937,15 +3932,15 @@
|
||||
i32.gt_u
|
||||
if
|
||||
local.get $1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
local.get $2
|
||||
i32.shr_u
|
||||
i32.gt_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1912
|
||||
i32.const 13
|
||||
i32.const 72
|
||||
i32.const 14
|
||||
i32.const 64
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -3996,7 +3991,7 @@
|
||||
i32.store offset=8
|
||||
end
|
||||
)
|
||||
(func $~lib/array/Array<~lib/string/String>#push (; 45 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/array/Array<~lib/string/String>#push (; 46 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
@ -4046,7 +4041,7 @@
|
||||
i32.store offset=12
|
||||
local.get $3
|
||||
)
|
||||
(func $~lib/array/Array<~lib/string/String>#__unchecked_set (; 46 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/array/Array<~lib/string/String>#__unchecked_set (; 47 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
local.get $0
|
||||
@ -4079,7 +4074,7 @@
|
||||
call $~lib/collector/dummy/__ref_link
|
||||
end
|
||||
)
|
||||
(func $~lib/string/String#split (; 47 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/string/String#split (; 48 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -4098,7 +4093,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 351
|
||||
i32.const 352
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -4386,11 +4381,11 @@
|
||||
end
|
||||
local.get $9
|
||||
)
|
||||
(func $~lib/array/Array<~lib/string/String>#get:length (; 48 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/array/Array<~lib/string/String>#get:length (; 49 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
)
|
||||
(func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 49 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/array/Array<~lib/string/String>#__unchecked_get (; 50 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.get $1
|
||||
@ -4399,7 +4394,7 @@
|
||||
i32.add
|
||||
i32.load
|
||||
)
|
||||
(func $~lib/array/Array<~lib/string/String>#__get (; 50 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/array/Array<~lib/string/String>#__get (; 51 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.load offset=12
|
||||
@ -4407,7 +4402,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1912
|
||||
i32.const 95
|
||||
i32.const 96
|
||||
i32.const 45
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -4421,7 +4416,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 1912
|
||||
i32.const 98
|
||||
i32.const 99
|
||||
i32.const 61
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -4430,7 +4425,7 @@
|
||||
local.get $1
|
||||
call $~lib/array/Array<~lib/string/String>#__unchecked_get
|
||||
)
|
||||
(func $~lib/util/number/decimalCount32 (; 51 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/util/number/decimalCount32 (; 52 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.const 100000
|
||||
@ -4499,15 +4494,12 @@
|
||||
unreachable
|
||||
unreachable
|
||||
)
|
||||
(func $~lib/array/Array<u32>~iterate (; 52 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/array/Array<u32>~traverse (; 53 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
)
|
||||
(func $~lib/util/number/utoa32_lut (; 53 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(func $~lib/util/number/utoa32_lut (; 54 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -4650,7 +4642,7 @@
|
||||
i32.store16
|
||||
end
|
||||
)
|
||||
(func $~lib/util/number/itoa32 (; 54 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/util/number/itoa32 (; 55 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -4706,7 +4698,7 @@
|
||||
i32.const 1
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $~lib/util/number/utoa32 (; 55 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $~lib/util/number/utoa32 (; 56 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -4742,7 +4734,7 @@
|
||||
i32.const 1
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $~lib/util/number/decimalCount64 (; 56 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
|
||||
(func $~lib/util/number/decimalCount64 (; 57 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i64.const 1000000000000000
|
||||
@ -4811,7 +4803,7 @@
|
||||
unreachable
|
||||
unreachable
|
||||
)
|
||||
(func $~lib/util/number/utoa64_lut (; 57 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32)
|
||||
(func $~lib/util/number/utoa64_lut (; 58 ;) (type $FUNCSIG$viji) (param $0 i32) (param $1 i64) (param $2 i32)
|
||||
(local $3 i32)
|
||||
(local $4 i64)
|
||||
(local $5 i32)
|
||||
@ -4939,7 +4931,7 @@
|
||||
local.get $2
|
||||
call $~lib/util/number/utoa32_lut
|
||||
)
|
||||
(func $~lib/util/number/utoa64 (; 58 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
|
||||
(func $~lib/util/number/utoa64 (; 59 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -5007,7 +4999,7 @@
|
||||
i32.const 1
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $~lib/util/number/itoa64 (; 59 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
|
||||
(func $~lib/util/number/itoa64 (; 60 ;) (type $FUNCSIG$ij) (param $0 i64) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -5097,27 +5089,24 @@
|
||||
i32.const 1
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $~lib/builtins/isFinite<f64> (; 60 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
|
||||
(func $~lib/builtins/isFinite<f64> (; 61 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.sub
|
||||
f64.const 0
|
||||
f64.eq
|
||||
)
|
||||
(func $~lib/builtins/isNaN<f64> (; 61 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
|
||||
(func $~lib/builtins/isNaN<f64> (; 62 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
f64.ne
|
||||
)
|
||||
(func $~lib/array/Array<u64>~iterate (; 62 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/array/Array<u64>~traverse (; 63 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
)
|
||||
(func $~lib/array/Array<u64>#__unchecked_get (; 63 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64)
|
||||
(func $~lib/array/Array<u64>#__unchecked_get (; 64 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.get $1
|
||||
@ -5126,15 +5115,12 @@
|
||||
i32.add
|
||||
i64.load
|
||||
)
|
||||
(func $~lib/array/Array<i16>~iterate (; 64 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
i32.const 1
|
||||
global.set $~lib/argc
|
||||
(func $~lib/array/Array<i16>~traverse (; 65 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.load
|
||||
local.get $1
|
||||
call_indirect (type $FUNCSIG$vi)
|
||||
call $~lib/collector/dummy/__ref_mark
|
||||
)
|
||||
(func $~lib/array/Array<i16>#__unchecked_get (; 65 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(func $~lib/array/Array<i16>#__unchecked_get (; 66 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
local.get $1
|
||||
@ -5143,7 +5129,7 @@
|
||||
i32.add
|
||||
i32.load16_s
|
||||
)
|
||||
(func $~lib/util/number/genDigits (; 66 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32)
|
||||
(func $~lib/util/number/genDigits (; 67 ;) (type $FUNCSIG$iijijiji) (param $0 i32) (param $1 i64) (param $2 i32) (param $3 i64) (param $4 i32) (param $5 i64) (param $6 i32) (result i32)
|
||||
(local $7 i32)
|
||||
(local $8 i64)
|
||||
(local $9 i64)
|
||||
@ -5714,7 +5700,7 @@
|
||||
end
|
||||
local.get $15
|
||||
)
|
||||
(func $~lib/util/number/prettify (; 67 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/util/number/prettify (; 68 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -6047,7 +6033,7 @@
|
||||
unreachable
|
||||
unreachable
|
||||
)
|
||||
(func $~lib/util/number/dtoa_core (; 68 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32)
|
||||
(func $~lib/util/number/dtoa_core (; 69 ;) (type $FUNCSIG$iid) (param $0 i32) (param $1 f64) (result i32)
|
||||
(local $2 i32)
|
||||
(local $3 f64)
|
||||
(local $4 i32)
|
||||
@ -6485,7 +6471,7 @@
|
||||
local.get $2
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/string/String#substring (; 69 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(func $~lib/string/String#substring (; 70 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
|
||||
(local $3 i32)
|
||||
(local $4 i32)
|
||||
(local $5 i32)
|
||||
@ -6501,7 +6487,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 216
|
||||
i32.const 190
|
||||
i32.const 191
|
||||
i32.const 4
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -6603,7 +6589,7 @@
|
||||
i32.const 1
|
||||
call $~lib/runtime/runtime.register
|
||||
)
|
||||
(func $~lib/runtime/runtime.discard (; 70 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/runtime/runtime.discard (; 71 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
global.get $~lib/memory/HEAP_BASE
|
||||
@ -6612,24 +6598,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 132
|
||||
i32.const 89
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $1
|
||||
local.get $1
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 120
|
||||
i32.const 134
|
||||
i32.const 91
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -6637,7 +6623,7 @@
|
||||
local.get $1
|
||||
call $~lib/memory/memory.free
|
||||
)
|
||||
(func $~lib/util/number/dtoa (; 71 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
|
||||
(func $~lib/util/number/dtoa (; 72 ;) (type $FUNCSIG$id) (param $0 f64) (result i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
@ -6684,7 +6670,7 @@
|
||||
call $~lib/runtime/runtime.discard
|
||||
local.get $3
|
||||
)
|
||||
(func $start:std/string (; 72 ;) (type $FUNCSIG$v)
|
||||
(func $start:std/string (; 73 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -10076,12 +10062,12 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $std/string/getString (; 73 ;) (type $FUNCSIG$i) (result i32)
|
||||
(func $std/string/getString (; 74 ;) (type $FUNCSIG$i) (result i32)
|
||||
global.get $std/string/str
|
||||
)
|
||||
(func $start (; 74 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 75 ;) (type $FUNCSIG$v)
|
||||
call $start:std/string
|
||||
)
|
||||
(func $null (; 75 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 76 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
@ -144,7 +144,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 72
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -159,7 +159,7 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 72
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -388,8 +388,8 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 112
|
||||
i32.const 53
|
||||
i32.const 51
|
||||
i32.const 54
|
||||
i32.const 43
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
|
@ -39,12 +39,12 @@
|
||||
(global $std/symbol/sym1 (mut i32) (i32.const 0))
|
||||
(global $std/symbol/sym2 (mut i32) (i32.const 0))
|
||||
(global $~lib/symbol/stringToId (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/util/runtime/HEADER_SIZE i32 (i32.const 8))
|
||||
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
|
||||
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
|
||||
(global $~lib/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/util/runtime/HEADER_MAGIC i32 (i32.const -1520547049))
|
||||
(global $~lib/ASC_NO_ASSERT i32 (i32.const 0))
|
||||
(global $~lib/runtime/runtime.MAX_BYTELENGTH i32 (i32.const 1073741816))
|
||||
(global $~lib/util/runtime/MAX_BYTELENGTH i32 (i32.const 1073741816))
|
||||
(global $~lib/symbol/idToString (mut i32) (i32.const 0))
|
||||
(global $std/symbol/sym3 (mut i32) (i32.const 0))
|
||||
(global $std/symbol/sym4 (mut i32) (i32.const 0))
|
||||
@ -83,7 +83,7 @@
|
||||
i32.const 1
|
||||
i32.const 32
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
i32.const 1
|
||||
i32.sub
|
||||
@ -182,13 +182,13 @@
|
||||
call $~lib/memory/memory.allocate
|
||||
local.set $1
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.store
|
||||
local.get $1
|
||||
local.get $0
|
||||
i32.store offset=4
|
||||
local.get $1
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.add
|
||||
)
|
||||
(func $~lib/runtime/runtime.register (; 6 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
@ -200,24 +200,24 @@
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 72
|
||||
i32.const 145
|
||||
i32.const 102
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
local.set $2
|
||||
local.get $2
|
||||
i32.load
|
||||
global.get $~lib/runtime/HEADER_MAGIC
|
||||
global.get $~lib/util/runtime/HEADER_MAGIC
|
||||
i32.eq
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 72
|
||||
i32.const 147
|
||||
i32.const 104
|
||||
i32.const 6
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
@ -487,13 +487,13 @@
|
||||
(func $~lib/arraybuffer/ArrayBuffer#constructor (; 8 ;) (type $FUNCSIG$iii) (param $0 i32) (param $1 i32) (result i32)
|
||||
(local $2 i32)
|
||||
local.get $1
|
||||
global.get $~lib/runtime/runtime.MAX_BYTELENGTH
|
||||
global.get $~lib/util/runtime/MAX_BYTELENGTH
|
||||
i32.gt_u
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 112
|
||||
i32.const 53
|
||||
i32.const 51
|
||||
i32.const 54
|
||||
i32.const 43
|
||||
call $~lib/env/abort
|
||||
unreachable
|
||||
end
|
||||
@ -630,7 +630,7 @@
|
||||
)
|
||||
(func $~lib/string/String#get:length (; 13 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
global.get $~lib/runtime/HEADER_SIZE
|
||||
global.get $~lib/util/runtime/HEADER_SIZE
|
||||
i32.sub
|
||||
i32.load offset=4
|
||||
i32.const 1
|
||||
|
File diff suppressed because one or more lines are too long
@ -193,9 +193,9 @@ assert(sub32.byteLength == 3 * sizeof<i32>());
|
||||
assert(isInt32ArrayEqual(sub32, <i32[]>[0, 0, 0]));
|
||||
assert(isInt32ArrayEqual(arr32, <i32[]>[1, 0, 0, 0, 2]));
|
||||
|
||||
import { runtime } from "runtime";
|
||||
import { MAX_BYTELENGTH } from "util/runtime";
|
||||
|
||||
const MAX_F64LENGTH = <u32>runtime.MAX_BYTELENGTH >> alignof<f64>();
|
||||
const MAX_F64LENGTH = <u32>MAX_BYTELENGTH >> alignof<f64>();
|
||||
new Float64Array(MAX_F64LENGTH); // 1GB
|
||||
// new Float64Array(MAX_F64 + 1); // throws
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user