Remove unused MIR nodes, MBasicBlock methods, and enums
Categories
(Core :: JavaScript Engine: JIT, enhancement, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox86 | --- | fixed |
People
(Reporter: anba, Assigned: anba)
References
Details
Attachments
(44 files)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
The following MIR nodes are no longer used:
- MArgumentState
- MCallDirectEval
- MConstantElements
- MFallibleStoreElement
- MGetDynamicName
- MGetPropertyPolymorphic
- MGuardObject
- MGuardReceiverPolymorphic
- MGuardString
- MLoadElementFromState
- MObjectClassToString
- MPolyInlineGuard
- MRecompileCheck
- MSetPropertyInstruction
- MSetPropertyPolymorphic
- MUnknownValue
The following MBasicBlock
functions are no longer used:
- MBasicBlock::NewWithResumePoint()
- MBasicBlock::inheritResumePoint()
- MBasicBlock::addFromElsewhere()
- MBasicBlock::assertUsesAreNotWithin()
- MBasicBlock::inheritPhis()
- MBasicBlock::specializePhis()
These MCompare::CompareType
enum values are no longer used:
- Compare_Boolean
- Compare_Int32MaybeCoerceBoth
- Compare_Int32MaybeCoerceLHS
- Compare_Int32MaybeCoerceRHS
MIRType::ObjectOrNull
is also no longer set for any nodes.
Assignee | ||
Comment 1•4 years ago
|
||
I'm not sure if removing these will conflict with the work done in bug 1682767, though.
Comment 2•4 years ago
|
||
(In reply to André Bargull [:anba] from comment #1)
I'm not sure if removing these will conflict with the work done in bug 1682767, though.
Should be fine, I don't have more patches there at this point.
Updated•4 years ago
|
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 3•4 years ago
|
||
Assignee | ||
Comment 4•4 years ago
|
||
Compare_{Boolean, StrictString, Int32MaybeCoerce{Both,LHS,RHS}}
are all no longer used.
Depends on D101869
Assignee | ||
Comment 5•4 years ago
|
||
Depends on D101871
Assignee | ||
Comment 6•4 years ago
|
||
At this point, MNot::operandMightEmulateUndefined()
always returns true
, so
we can remove any code which assumes it may return false
.
In CodeGenerator::visitNotV()
, operand->mightBeType(MIRType::Object)
always
returns true
in Warp, so we can remove the else
-branch in that function.
Depends on D101872
Assignee | ||
Comment 7•4 years ago
|
||
Similar to part 4, this method is no longer necessary.
Depends on D101873
Assignee | ||
Comment 8•4 years ago
|
||
Similar to part 4, this method is no longer necessary.
Depends on D101874
Assignee | ||
Comment 9•4 years ago
|
||
Add MCompare::NewWasm()
in preparation for the next part.
Depends on D101875
Assignee | ||
Comment 10•4 years ago
|
||
Directly set the comparison in the constructor. This will allow to remove
MCompare::Compare_Unknown
in the next part.
Depends on D101876
Assignee | ||
Comment 11•4 years ago
|
||
Depends on D101878
Assignee | ||
Comment 12•4 years ago
|
||
Remove MCompare::setCompareType()
so it's easier to see that the comparison
type won't change after running the constructor.
Depends on D101879
Assignee | ||
Comment 13•4 years ago
|
||
Depends on D101880
Assignee | ||
Comment 14•4 years ago
|
||
Depends on D101881
Assignee | ||
Comment 15•4 years ago
|
||
Depends on D101882
Assignee | ||
Comment 16•4 years ago
|
||
Depends on D101883
Assignee | ||
Comment 17•4 years ago
|
||
Depends on D101884
Assignee | ||
Comment 18•4 years ago
|
||
Depends on D101885
Assignee | ||
Comment 19•4 years ago
|
||
Depends on D101886
Assignee | ||
Comment 20•4 years ago
|
||
Depends on D101887
Assignee | ||
Comment 21•4 years ago
|
||
Depends on D101889
Assignee | ||
Comment 22•4 years ago
|
||
Depends on D101890
Assignee | ||
Comment 23•4 years ago
|
||
Depends on D101891
Assignee | ||
Comment 24•4 years ago
|
||
Depends on D101892
Assignee | ||
Comment 25•4 years ago
|
||
Depends on D101895
Assignee | ||
Comment 26•4 years ago
|
||
Depends on D101896
Assignee | ||
Comment 27•4 years ago
|
||
Depends on D101897
Assignee | ||
Comment 28•4 years ago
|
||
Depends on D101899
Assignee | ||
Comment 29•4 years ago
|
||
Depends on D101900
Assignee | ||
Comment 30•4 years ago
|
||
Depends on D101901
Assignee | ||
Comment 31•4 years ago
|
||
Depends on D101902
Assignee | ||
Comment 32•4 years ago
|
||
Depends on D101903
Assignee | ||
Comment 33•4 years ago
|
||
Depends on D101904
Assignee | ||
Comment 34•4 years ago
|
||
Depends on D101905
Assignee | ||
Comment 35•4 years ago
|
||
LArrayPushT
was effectively disabled in bug 1401624, when MArrayPush
's policy
was changed from NoFloatPolicy
to BoxPolicy
.
Depends on D101906
Assignee | ||
Comment 36•4 years ago
|
||
Depends on D101907
Assignee | ||
Comment 37•4 years ago
|
||
Depends on D101908
Assignee | ||
Comment 38•4 years ago
|
||
Warp only uses LSameValueD
, so we can remove LSameValue{V,VM}
and also
directly use AllDoublePolicy
for MSameValue
.
Depends on D101909
Assignee | ||
Comment 39•4 years ago
|
||
Depends on D101910
Assignee | ||
Comment 40•4 years ago
|
||
Depends on D101911
Assignee | ||
Comment 41•4 years ago
|
||
Depends on D101912
Assignee | ||
Comment 42•4 years ago
|
||
Depends on D101913
Assignee | ||
Comment 43•4 years ago
|
||
Depends on D101914
Assignee | ||
Comment 44•4 years ago
|
||
Depends on D101915
Assignee | ||
Comment 45•4 years ago
|
||
Depends on D101916
Assignee | ||
Comment 46•4 years ago
|
||
Depends on D101917
Comment 47•4 years ago
|
||
Comment 48•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/cd8037d37dda
https://hg.mozilla.org/mozilla-central/rev/ab3cfbaa1dda
https://hg.mozilla.org/mozilla-central/rev/76025aba6ff1
https://hg.mozilla.org/mozilla-central/rev/3df8aa194dfc
https://hg.mozilla.org/mozilla-central/rev/8111d3b5e18e
https://hg.mozilla.org/mozilla-central/rev/de2914fea13f
https://hg.mozilla.org/mozilla-central/rev/4f09fd5fefec
https://hg.mozilla.org/mozilla-central/rev/22f94dd04465
https://hg.mozilla.org/mozilla-central/rev/fc810ef0f92a
https://hg.mozilla.org/mozilla-central/rev/8073fa2bc3d9
https://hg.mozilla.org/mozilla-central/rev/f50599c05263
https://hg.mozilla.org/mozilla-central/rev/5c2c3bda1701
https://hg.mozilla.org/mozilla-central/rev/9c8dd124ceaf
https://hg.mozilla.org/mozilla-central/rev/40694bbe289b
https://hg.mozilla.org/mozilla-central/rev/1871f86e2186
https://hg.mozilla.org/mozilla-central/rev/761c5d2a99c3
https://hg.mozilla.org/mozilla-central/rev/3ea4f34c2390
https://hg.mozilla.org/mozilla-central/rev/4dc1ce1c7f09
https://hg.mozilla.org/mozilla-central/rev/229e91fb0240
https://hg.mozilla.org/mozilla-central/rev/5a3b143e8e9f
https://hg.mozilla.org/mozilla-central/rev/be92c1d1c763
https://hg.mozilla.org/mozilla-central/rev/1fa963fdc5ac
https://hg.mozilla.org/mozilla-central/rev/2c600412671c
https://hg.mozilla.org/mozilla-central/rev/d44245ad70cb
https://hg.mozilla.org/mozilla-central/rev/b219fb80fca5
https://hg.mozilla.org/mozilla-central/rev/3b27695bd41a
https://hg.mozilla.org/mozilla-central/rev/4453731e2dc6
https://hg.mozilla.org/mozilla-central/rev/93cefac14445
https://hg.mozilla.org/mozilla-central/rev/e45fe162a3dd
https://hg.mozilla.org/mozilla-central/rev/8136415df029
https://hg.mozilla.org/mozilla-central/rev/3efb7f8c2faf
https://hg.mozilla.org/mozilla-central/rev/ec03ba18d672
https://hg.mozilla.org/mozilla-central/rev/3c4ad98116c4
https://hg.mozilla.org/mozilla-central/rev/04b1286c1b73
https://hg.mozilla.org/mozilla-central/rev/871437df87f2
https://hg.mozilla.org/mozilla-central/rev/4e9f62a82ab2
https://hg.mozilla.org/mozilla-central/rev/5c8cab18f91a
https://hg.mozilla.org/mozilla-central/rev/d3527c6e5672
https://hg.mozilla.org/mozilla-central/rev/dfffca92905d
https://hg.mozilla.org/mozilla-central/rev/c7f255644230
https://hg.mozilla.org/mozilla-central/rev/bff69c55aa82
https://hg.mozilla.org/mozilla-central/rev/122ddcc979c0
https://hg.mozilla.org/mozilla-central/rev/ec355aa2c750
https://hg.mozilla.org/mozilla-central/rev/bb87116d8537
Description
•