optimize logical and/or, initial null checking in flows

This commit is contained in:
dcode
2019-04-09 03:04:45 +02:00
parent c16c19e18d
commit da4a7751fd
73 changed files with 5920 additions and 6866 deletions

View File

@@ -657,7 +657,6 @@
i32.store offset=8
)
(func $~lib/collector/itcm/__ref_link (; 13 ;) (type $FUNCSIG$vii) (param $0 i32) (param $1 i32)
(local $2 i32)
i32.const 648
i32.const 2
local.get $0
@@ -674,12 +673,11 @@
local.get $1
i32.const 16
i32.sub
local.tee $2
local.tee $1
i32.load offset=8
i32.const 3
i32.and
i32.eq
local.tee $1
if (result i32)
global.get $~lib/collector/itcm/white
local.get $0
@@ -690,10 +688,10 @@
i32.and
i32.eq
else
local.get $1
i32.const 0
end
if
local.get $2
local.get $1
call $~lib/collector/itcm/ManagedObject#makeGray
end
)

View File

@@ -839,7 +839,6 @@
global.get $~lib/collector/itcm/white
i32.eqz
i32.eq
local.tee $2
if (result i32)
block $~lib/collector/itcm/refToObj|inlined.3 (result i32)
local.get $0
@@ -852,7 +851,7 @@
global.get $~lib/collector/itcm/white
i32.eq
else
local.get $2
i32.const 0
end
if
local.get $3