mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-06-22 03:01:55 +00:00
fixes, dist files
This commit is contained in:
@ -1294,16 +1294,49 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 20 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
i32.const 0
|
||||
local.get $0
|
||||
select
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
global.get $~lib/rt/pure/ROOTS
|
||||
local.tee $2
|
||||
i32.sub
|
||||
local.tee $1
|
||||
i32.sub
|
||||
local.tee $2
|
||||
i32.const 1
|
||||
i32.shl
|
||||
local.tee $0
|
||||
@ -1315,13 +1348,26 @@
|
||||
local.tee $3
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.tee $0
|
||||
local.get $2
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $1
|
||||
if
|
||||
local.get $1
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $1
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $0
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
local.get $0
|
||||
@ -1329,7 +1375,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.tee $1
|
||||
@ -1344,11 +1390,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -1438,7 +1484,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.const 300
|
||||
i32.gt_u
|
||||
@ -1449,7 +1495,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $start:rc/global-init (; 24 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/global-init (; 25 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
i32.const 24
|
||||
call $~lib/rt/pure/__retain
|
||||
@ -1480,10 +1526,10 @@
|
||||
i32.const 0
|
||||
global.set $rc/global-init/b
|
||||
)
|
||||
(func $start (; 25 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 26 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/global-init
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1507,7 +1553,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1520,7 +1566,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1554,7 +1600,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1572,17 +1618,22 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const -1879048193
|
||||
i32.and
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 30 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
i32.const 300
|
||||
i32.lt_u
|
||||
@ -1692,7 +1743,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
block $switch$1$default
|
||||
block $switch$1$case$4
|
||||
block $switch$1$case$2
|
||||
@ -1716,7 +1767,7 @@
|
||||
end
|
||||
unreachable
|
||||
)
|
||||
(func $null (; 32 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 33 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
)
|
||||
|
@ -2918,7 +2918,44 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
if (result i32)
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
else
|
||||
i32.const 0
|
||||
end
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 23 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -2949,9 +2986,22 @@
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.set $5
|
||||
local.get $5
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $5
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $0
|
||||
if
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $5
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $5
|
||||
@ -2963,7 +3013,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.set $1
|
||||
@ -2979,11 +3029,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -3087,7 +3137,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.get $~lib/heap/HEAP_BASE
|
||||
i32.gt_u
|
||||
@ -3098,7 +3148,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $start:rc/global-init (; 26 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/global-init (; 27 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
call $rc/global-init/getRef
|
||||
@ -3138,10 +3188,10 @@
|
||||
end
|
||||
global.set $rc/global-init/b
|
||||
)
|
||||
(func $start (; 27 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 28 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/global-init
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3168,7 +3218,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3185,7 +3235,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3222,7 +3272,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3241,17 +3291,26 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const 1879048192
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
i32.const 0
|
||||
i32.or
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
local.get $0
|
||||
@ -3405,7 +3464,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
block
|
||||
end
|
||||
@ -3462,6 +3521,6 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $null (; 34 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 35 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
@ -1291,16 +1291,49 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 20 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 20 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
i32.const 0
|
||||
local.get $0
|
||||
select
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
global.get $~lib/rt/pure/ROOTS
|
||||
local.tee $2
|
||||
i32.sub
|
||||
local.tee $1
|
||||
i32.sub
|
||||
local.tee $2
|
||||
i32.const 1
|
||||
i32.shl
|
||||
local.tee $0
|
||||
@ -1313,13 +1346,26 @@
|
||||
i32.const 0
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.tee $0
|
||||
local.get $2
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $1
|
||||
if
|
||||
local.get $1
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $1
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $0
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
local.get $0
|
||||
@ -1327,7 +1373,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.tee $1
|
||||
@ -1342,11 +1388,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -1436,7 +1482,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.const 308
|
||||
i32.gt_u
|
||||
@ -1447,7 +1493,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $start (; 24 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 25 ;) (type $FUNCSIG$v)
|
||||
i32.const 24
|
||||
call $~lib/rt/pure/__retain
|
||||
call $~lib/rt/pure/__release
|
||||
@ -1460,7 +1506,7 @@
|
||||
call $~lib/rt/pure/__retain
|
||||
call $~lib/rt/pure/__release
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1484,7 +1530,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1497,7 +1543,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1531,7 +1577,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1549,17 +1595,22 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const -1879048193
|
||||
i32.and
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 29 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 30 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
i32.const 308
|
||||
i32.lt_u
|
||||
@ -1669,7 +1720,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 30 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
block $switch$1$default
|
||||
block $switch$1$case$4
|
||||
block $switch$1$case$2
|
||||
@ -1693,7 +1744,7 @@
|
||||
end
|
||||
unreachable
|
||||
)
|
||||
(func $null (; 31 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 32 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
)
|
||||
|
@ -2912,7 +2912,44 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
if (result i32)
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
else
|
||||
i32.const 0
|
||||
end
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 88
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -2943,9 +2980,22 @@
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.set $5
|
||||
local.get $5
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $5
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $0
|
||||
if
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $5
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $5
|
||||
@ -2957,7 +3007,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.set $1
|
||||
@ -2973,11 +3023,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -3081,7 +3131,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.get $~lib/heap/HEAP_BASE
|
||||
i32.gt_u
|
||||
@ -3092,11 +3142,11 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $rc/local-init/getRef (; 25 ;) (type $FUNCSIG$i) (result i32)
|
||||
(func $rc/local-init/getRef (; 26 ;) (type $FUNCSIG$i) (result i32)
|
||||
i32.const 24
|
||||
call $~lib/rt/pure/__retain
|
||||
)
|
||||
(func $rc/local-init/Ref#constructor (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $rc/local-init/Ref#constructor (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
@ -3108,7 +3158,7 @@
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $start:rc/local-init (; 27 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/local-init (; 28 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
block
|
||||
i32.const 24
|
||||
@ -3131,10 +3181,10 @@
|
||||
call $~lib/rt/pure/__release
|
||||
end
|
||||
)
|
||||
(func $start (; 28 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 29 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/local-init
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3161,7 +3211,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3178,7 +3228,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3215,7 +3265,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3234,17 +3284,26 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const 1879048192
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
i32.const 0
|
||||
i32.or
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
local.get $0
|
||||
@ -3398,7 +3457,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
block
|
||||
end
|
||||
@ -3455,6 +3514,6 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $null (; 35 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 36 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
@ -1298,16 +1298,49 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
i32.const 0
|
||||
local.get $0
|
||||
select
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
global.get $~lib/rt/pure/ROOTS
|
||||
local.tee $2
|
||||
i32.sub
|
||||
local.tee $1
|
||||
i32.sub
|
||||
local.tee $2
|
||||
i32.const 1
|
||||
i32.shl
|
||||
local.tee $0
|
||||
@ -1320,13 +1353,26 @@
|
||||
i32.const 0
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.tee $0
|
||||
local.get $2
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $1
|
||||
if
|
||||
local.get $1
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $1
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $0
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
local.get $0
|
||||
@ -1334,7 +1380,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.tee $1
|
||||
@ -1349,11 +1395,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -1443,7 +1489,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.gt_u
|
||||
@ -1454,7 +1500,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $start:rc/logical-and-mismatch (; 25 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/logical-and-mismatch (; 26 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
call $rc/logical-and-mismatch/Ref#constructor
|
||||
global.set $rc/logical-and-mismatch/gloRef
|
||||
@ -1500,10 +1546,10 @@
|
||||
global.get $rc/logical-and-mismatch/gloRef
|
||||
call $~lib/rt/pure/__release
|
||||
)
|
||||
(func $start (; 26 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 27 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/logical-and-mismatch
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1527,7 +1573,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1540,7 +1586,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1574,7 +1620,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1592,17 +1638,22 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const -1879048193
|
||||
i32.and
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.lt_u
|
||||
@ -1712,7 +1763,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
block $switch$1$default
|
||||
block $switch$1$case$4
|
||||
block $switch$1$case$2
|
||||
@ -1736,7 +1787,7 @@
|
||||
end
|
||||
unreachable
|
||||
)
|
||||
(func $null (; 33 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 34 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
)
|
||||
|
@ -2928,7 +2928,44 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 23 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
if (result i32)
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
else
|
||||
i32.const 0
|
||||
end
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 24 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -2959,9 +2996,22 @@
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.set $5
|
||||
local.get $5
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $5
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $0
|
||||
if
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $5
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $5
|
||||
@ -2973,7 +3023,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.set $1
|
||||
@ -2989,11 +3039,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -3097,7 +3147,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.get $~lib/heap/HEAP_BASE
|
||||
i32.gt_u
|
||||
@ -3108,7 +3158,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $start:rc/logical-and-mismatch (; 27 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/logical-and-mismatch (; 28 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
call $rc/logical-and-mismatch/Ref#constructor
|
||||
@ -3171,10 +3221,10 @@
|
||||
global.get $rc/logical-and-mismatch/gloRef
|
||||
call $~lib/rt/pure/__release
|
||||
)
|
||||
(func $start (; 28 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 29 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/logical-and-mismatch
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3201,7 +3251,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3218,7 +3268,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3255,7 +3305,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3274,17 +3324,26 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const 1879048192
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
i32.const 0
|
||||
i32.or
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
local.get $0
|
||||
@ -3438,7 +3497,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
block
|
||||
end
|
||||
@ -3495,6 +3554,6 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $null (; 35 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 36 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
@ -1298,16 +1298,49 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 21 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
i32.const 0
|
||||
local.get $0
|
||||
select
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
global.get $~lib/rt/pure/ROOTS
|
||||
local.tee $2
|
||||
i32.sub
|
||||
local.tee $1
|
||||
i32.sub
|
||||
local.tee $2
|
||||
i32.const 1
|
||||
i32.shl
|
||||
local.tee $0
|
||||
@ -1320,13 +1353,26 @@
|
||||
i32.const 0
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.tee $0
|
||||
local.get $2
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $1
|
||||
if
|
||||
local.get $1
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $1
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $0
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
local.get $0
|
||||
@ -1334,7 +1380,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.tee $1
|
||||
@ -1349,11 +1395,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -1443,7 +1489,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.gt_u
|
||||
@ -1454,7 +1500,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $start:rc/logical-or-mismatch (; 25 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/logical-or-mismatch (; 26 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
call $rc/logical-or-mismatch/Ref#constructor
|
||||
global.set $rc/logical-or-mismatch/gloRef
|
||||
@ -1500,10 +1546,10 @@
|
||||
global.get $rc/logical-or-mismatch/gloRef
|
||||
call $~lib/rt/pure/__release
|
||||
)
|
||||
(func $start (; 26 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 27 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/logical-or-mismatch
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1527,7 +1573,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1540,7 +1586,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1574,7 +1620,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1592,17 +1638,22 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const -1879048193
|
||||
i32.and
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.lt_u
|
||||
@ -1712,7 +1763,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
block $switch$1$default
|
||||
block $switch$1$case$4
|
||||
block $switch$1$case$2
|
||||
@ -1736,7 +1787,7 @@
|
||||
end
|
||||
unreachable
|
||||
)
|
||||
(func $null (; 33 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 34 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
)
|
||||
|
@ -2928,7 +2928,44 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 23 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
if (result i32)
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
else
|
||||
i32.const 0
|
||||
end
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 24 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -2959,9 +2996,22 @@
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.set $5
|
||||
local.get $5
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $5
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $0
|
||||
if
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $5
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $5
|
||||
@ -2973,7 +3023,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.set $1
|
||||
@ -2989,11 +3039,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -3097,7 +3147,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.get $~lib/heap/HEAP_BASE
|
||||
i32.gt_u
|
||||
@ -3108,7 +3158,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $start:rc/logical-or-mismatch (; 27 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/logical-or-mismatch (; 28 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
i32.const 0
|
||||
call $rc/logical-or-mismatch/Ref#constructor
|
||||
@ -3171,10 +3221,10 @@
|
||||
global.get $rc/logical-or-mismatch/gloRef
|
||||
call $~lib/rt/pure/__release
|
||||
)
|
||||
(func $start (; 28 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 29 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/logical-or-mismatch
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3201,7 +3251,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3218,7 +3268,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3255,7 +3305,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3274,17 +3324,26 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const 1879048192
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
i32.const 0
|
||||
i32.or
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
local.get $0
|
||||
@ -3438,7 +3497,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
block
|
||||
end
|
||||
@ -3495,6 +3554,6 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $null (; 35 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 36 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
@ -1286,16 +1286,49 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 16 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 16 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
i32.const 0
|
||||
local.get $0
|
||||
select
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 17 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
global.get $~lib/rt/pure/ROOTS
|
||||
local.tee $2
|
||||
i32.sub
|
||||
local.tee $1
|
||||
i32.sub
|
||||
local.tee $2
|
||||
i32.const 1
|
||||
i32.shl
|
||||
local.tee $0
|
||||
@ -1308,13 +1341,18 @@
|
||||
i32.const 0
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.tee $0
|
||||
local.get $2
|
||||
local.get $1
|
||||
local.get $2
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $1
|
||||
if
|
||||
local.get $1
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $0
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
local.get $0
|
||||
@ -1322,7 +1360,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 17 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 18 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.tee $1
|
||||
@ -1337,11 +1375,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 18 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 19 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -1429,7 +1467,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 19 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 20 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.gt_u
|
||||
@ -1440,7 +1478,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 20 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1464,7 +1502,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1477,7 +1515,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1511,7 +1549,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1529,17 +1567,22 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const -1879048193
|
||||
i32.and
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__collect (; 24 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/pure/__collect (; 25 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -1663,14 +1706,14 @@
|
||||
local.get $5
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $start (; 25 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 26 ;) (type $FUNCSIG$v)
|
||||
i32.const 0
|
||||
i32.const 3
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
call $~lib/rt/pure/__retain
|
||||
call $~lib/rt/pure/__release
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 26 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 27 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.lt_u
|
||||
@ -1780,7 +1823,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 27 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 28 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
block $switch$1$default
|
||||
block $switch$1$case$4
|
||||
block $switch$1$case$2
|
||||
@ -1804,7 +1847,7 @@
|
||||
end
|
||||
unreachable
|
||||
)
|
||||
(func $null (; 28 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 29 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
)
|
||||
|
@ -2906,7 +2906,44 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 17 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 17 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
if (result i32)
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
else
|
||||
i32.const 0
|
||||
end
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 18 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -2940,6 +2977,11 @@
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $0
|
||||
if
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $5
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $5
|
||||
@ -2951,7 +2993,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 18 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 19 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.set $1
|
||||
@ -2967,11 +3009,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 19 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 20 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -3073,7 +3115,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 20 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.get $~lib/heap/HEAP_BASE
|
||||
i32.gt_u
|
||||
@ -3084,7 +3126,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 21 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3111,7 +3153,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3128,7 +3170,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3165,7 +3207,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3184,17 +3226,26 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const 1879048192
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
i32.const 0
|
||||
i32.or
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__collect (; 25 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/pure/__collect (; 26 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -3342,7 +3393,7 @@
|
||||
local.get $0
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $rc/rereturn/Ref#constructor (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $rc/rereturn/Ref#constructor (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
i32.eqz
|
||||
if
|
||||
@ -3354,21 +3405,21 @@
|
||||
end
|
||||
local.get $0
|
||||
)
|
||||
(func $rc/rereturn/getRef (; 27 ;) (type $FUNCSIG$i) (result i32)
|
||||
(func $rc/rereturn/getRef (; 28 ;) (type $FUNCSIG$i) (result i32)
|
||||
i32.const 0
|
||||
call $rc/rereturn/Ref#constructor
|
||||
)
|
||||
(func $rc/rereturn/rereturnRef (; 28 ;) (type $FUNCSIG$i) (result i32)
|
||||
(func $rc/rereturn/rereturnRef (; 29 ;) (type $FUNCSIG$i) (result i32)
|
||||
call $rc/rereturn/getRef
|
||||
)
|
||||
(func $start:rc/rereturn (; 29 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/rereturn (; 30 ;) (type $FUNCSIG$v)
|
||||
call $rc/rereturn/rereturnRef
|
||||
call $~lib/rt/pure/__release
|
||||
)
|
||||
(func $start (; 30 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 31 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/rereturn
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 31 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
local.get $0
|
||||
@ -3522,7 +3573,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 32 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
block
|
||||
end
|
||||
@ -3579,6 +3630,6 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $null (; 33 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 34 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
@ -1309,16 +1309,49 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 22 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 22 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
i32.const 0
|
||||
local.get $0
|
||||
select
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 23 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
global.get $~lib/rt/pure/ROOTS
|
||||
local.tee $2
|
||||
i32.sub
|
||||
local.tee $1
|
||||
i32.sub
|
||||
local.tee $2
|
||||
i32.const 1
|
||||
i32.shl
|
||||
local.tee $0
|
||||
@ -1331,13 +1364,26 @@
|
||||
i32.const 0
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.tee $0
|
||||
local.get $2
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $1
|
||||
if
|
||||
local.get $1
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $1
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $0
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $0
|
||||
local.get $1
|
||||
local.get $2
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
local.get $0
|
||||
@ -1345,7 +1391,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 23 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.tee $1
|
||||
@ -1360,11 +1406,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -1454,7 +1500,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.gt_u
|
||||
@ -1465,7 +1511,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $rc/ternary-mismatch/test2 (; 26 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $rc/ternary-mismatch/test2 (; 27 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
if (result i32)
|
||||
global.get $rc/ternary-mismatch/gloRef
|
||||
@ -1474,7 +1520,7 @@
|
||||
call $rc/ternary-mismatch/Ref#constructor
|
||||
end
|
||||
)
|
||||
(func $start:rc/ternary-mismatch (; 27 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/ternary-mismatch (; 28 ;) (type $FUNCSIG$v)
|
||||
call $rc/ternary-mismatch/Ref#constructor
|
||||
global.set $rc/ternary-mismatch/gloRef
|
||||
i32.const 1
|
||||
@ -1492,10 +1538,10 @@
|
||||
global.get $rc/ternary-mismatch/gloRef
|
||||
call $~lib/rt/pure/__release
|
||||
)
|
||||
(func $start (; 28 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 29 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/ternary-mismatch
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 29 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1519,7 +1565,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 30 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1532,7 +1578,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1566,7 +1612,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -1584,17 +1630,22 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const -1879048193
|
||||
i32.and
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 33 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
local.get $0
|
||||
i32.const 292
|
||||
i32.lt_u
|
||||
@ -1704,7 +1755,7 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 34 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
block $switch$1$default
|
||||
block $switch$1$case$4
|
||||
block $switch$1$case$2
|
||||
@ -1728,7 +1779,7 @@
|
||||
end
|
||||
unreachable
|
||||
)
|
||||
(func $null (; 35 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 36 ;) (type $FUNCSIG$v)
|
||||
nop
|
||||
)
|
||||
)
|
||||
|
@ -2939,7 +2939,44 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 24 ;) (type $FUNCSIG$v)
|
||||
(func $~lib/rt/tlsf/__free (; 24 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 561
|
||||
i32.const 13
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
local.get $0
|
||||
i32.const 0
|
||||
i32.ne
|
||||
if (result i32)
|
||||
local.get $0
|
||||
i32.const 15
|
||||
i32.and
|
||||
i32.eqz
|
||||
else
|
||||
i32.const 0
|
||||
end
|
||||
i32.eqz
|
||||
if
|
||||
i32.const 0
|
||||
i32.const 24
|
||||
i32.const 562
|
||||
i32.const 2
|
||||
call $~lib/builtins/abort
|
||||
unreachable
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/growRoots (; 25 ;) (type $FUNCSIG$v)
|
||||
(local $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
@ -2970,9 +3007,22 @@
|
||||
call $~lib/rt/tlsf/__alloc
|
||||
local.set $5
|
||||
local.get $5
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onfree
|
||||
local.get $5
|
||||
local.get $0
|
||||
local.get $1
|
||||
call $~lib/memory/memory.copy
|
||||
local.get $0
|
||||
if
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.sub
|
||||
call $~lib/rt/rtrace/onalloc
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/__free
|
||||
end
|
||||
local.get $5
|
||||
global.set $~lib/rt/pure/ROOTS
|
||||
local.get $5
|
||||
@ -2984,7 +3034,7 @@
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/END
|
||||
)
|
||||
(func $~lib/rt/pure/appendRoot (; 25 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/appendRoot (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
global.get $~lib/rt/pure/CUR
|
||||
local.set $1
|
||||
@ -3000,11 +3050,11 @@
|
||||
local.get $0
|
||||
i32.store
|
||||
local.get $1
|
||||
i32.const 1
|
||||
i32.const 4
|
||||
i32.add
|
||||
global.set $~lib/rt/pure/CUR
|
||||
)
|
||||
(func $~lib/rt/pure/decrement (; 26 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/decrement (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
(local $2 i32)
|
||||
local.get $0
|
||||
@ -3108,7 +3158,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/__release (; 27 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/__release (; 28 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
global.get $~lib/heap/HEAP_BASE
|
||||
i32.gt_u
|
||||
@ -3119,7 +3169,7 @@
|
||||
call $~lib/rt/pure/decrement
|
||||
end
|
||||
)
|
||||
(func $rc/ternary-mismatch/test2 (; 28 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
(func $rc/ternary-mismatch/test2 (; 29 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
|
||||
local.get $0
|
||||
if (result i32)
|
||||
global.get $rc/ternary-mismatch/gloRef
|
||||
@ -3128,7 +3178,7 @@
|
||||
call $rc/ternary-mismatch/getRef
|
||||
end
|
||||
)
|
||||
(func $start:rc/ternary-mismatch (; 29 ;) (type $FUNCSIG$v)
|
||||
(func $start:rc/ternary-mismatch (; 30 ;) (type $FUNCSIG$v)
|
||||
i32.const 0
|
||||
call $rc/ternary-mismatch/Ref#constructor
|
||||
global.set $rc/ternary-mismatch/gloRef
|
||||
@ -3147,10 +3197,10 @@
|
||||
global.get $rc/ternary-mismatch/gloRef
|
||||
call $~lib/rt/pure/__release
|
||||
)
|
||||
(func $start (; 30 ;) (type $FUNCSIG$v)
|
||||
(func $start (; 31 ;) (type $FUNCSIG$v)
|
||||
call $start:rc/ternary-mismatch
|
||||
)
|
||||
(func $~lib/rt/pure/markGray (; 31 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/markGray (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3177,7 +3227,7 @@
|
||||
call $~lib/rt/__visit_members
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/scanBlack (; 32 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scanBlack (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
local.get $0
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3194,7 +3244,7 @@
|
||||
i32.const 4
|
||||
call $~lib/rt/__visit_members
|
||||
)
|
||||
(func $~lib/rt/pure/scan (; 33 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/scan (; 34 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3231,7 +3281,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/pure/collectWhite (; 34 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(func $~lib/rt/pure/collectWhite (; 35 ;) (type $FUNCSIG$vi) (param $0 i32)
|
||||
(local $1 i32)
|
||||
local.get $0
|
||||
i32.load offset=4
|
||||
@ -3250,17 +3300,26 @@
|
||||
i32.const 0
|
||||
end
|
||||
if
|
||||
local.get $0
|
||||
local.get $1
|
||||
i32.const 1879048192
|
||||
i32.const -1
|
||||
i32.xor
|
||||
i32.and
|
||||
i32.const 0
|
||||
i32.or
|
||||
i32.store offset=4
|
||||
local.get $0
|
||||
i32.const 16
|
||||
i32.add
|
||||
i32.const 5
|
||||
call $~lib/rt/__visit_members
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
end
|
||||
global.get $~lib/rt/tlsf/ROOT
|
||||
local.get $0
|
||||
call $~lib/rt/tlsf/freeBlock
|
||||
)
|
||||
(func $~lib/rt/pure/__visit (; 35 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/pure/__visit (; 36 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
(local $3 i32)
|
||||
local.get $0
|
||||
@ -3414,7 +3473,7 @@
|
||||
end
|
||||
end
|
||||
)
|
||||
(func $~lib/rt/__visit_members (; 36 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(func $~lib/rt/__visit_members (; 37 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
|
||||
(local $2 i32)
|
||||
block
|
||||
end
|
||||
@ -3471,6 +3530,6 @@
|
||||
unreachable
|
||||
end
|
||||
)
|
||||
(func $null (; 37 ;) (type $FUNCSIG$v)
|
||||
(func $null (; 38 ;) (type $FUNCSIG$v)
|
||||
)
|
||||
)
|
||||
|
Reference in New Issue
Block a user