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•5 years ago
|
||
I'm not sure if removing these will conflict with the work done in bug 1682767, though.
Comment 2•5 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•5 years ago
|
| Assignee | ||
Updated•5 years ago
|
| Assignee | ||
Comment 3•5 years ago
|
||
| Assignee | ||
Comment 4•5 years ago
|
||
Compare_{Boolean, StrictString, Int32MaybeCoerce{Both,LHS,RHS}} are all no longer used.
Depends on D101869
| Assignee | ||
Comment 5•5 years ago
|
||
Depends on D101871
| Assignee | ||
Comment 6•5 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•5 years ago
|
||
Similar to part 4, this method is no longer necessary.
Depends on D101873
| Assignee | ||
Comment 8•5 years ago
|
||
Similar to part 4, this method is no longer necessary.
Depends on D101874
| Assignee | ||
Comment 9•5 years ago
|
||
Add MCompare::NewWasm() in preparation for the next part.
Depends on D101875
| Assignee | ||
Comment 10•5 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•5 years ago
|
||
Depends on D101878
| Assignee | ||
Comment 12•5 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•5 years ago
|
||
Depends on D101880
| Assignee | ||
Comment 14•5 years ago
|
||
Depends on D101881
| Assignee | ||
Comment 15•5 years ago
|
||
Depends on D101882
| Assignee | ||
Comment 16•5 years ago
|
||
Depends on D101883
| Assignee | ||
Comment 17•5 years ago
|
||
Depends on D101884
| Assignee | ||
Comment 18•5 years ago
|
||
Depends on D101885
| Assignee | ||
Comment 19•5 years ago
|
||
Depends on D101886
| Assignee | ||
Comment 20•5 years ago
|
||
Depends on D101887
| Assignee | ||
Comment 21•5 years ago
|
||
Depends on D101889
| Assignee | ||
Comment 22•5 years ago
|
||
Depends on D101890
| Assignee | ||
Comment 23•5 years ago
|
||
Depends on D101891
| Assignee | ||
Comment 24•5 years ago
|
||
Depends on D101892
| Assignee | ||
Comment 25•5 years ago
|
||
Depends on D101895
| Assignee | ||
Comment 26•5 years ago
|
||
Depends on D101896
| Assignee | ||
Comment 27•5 years ago
|
||
Depends on D101897
| Assignee | ||
Comment 28•5 years ago
|
||
Depends on D101899
| Assignee | ||
Comment 29•5 years ago
|
||
Depends on D101900
| Assignee | ||
Comment 30•5 years ago
|
||
Depends on D101901
| Assignee | ||
Comment 31•5 years ago
|
||
Depends on D101902
| Assignee | ||
Comment 32•5 years ago
|
||
Depends on D101903
| Assignee | ||
Comment 33•5 years ago
|
||
Depends on D101904
| Assignee | ||
Comment 34•5 years ago
|
||
Depends on D101905
| Assignee | ||
Comment 35•5 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•5 years ago
|
||
Depends on D101907
| Assignee | ||
Comment 37•5 years ago
|
||
Depends on D101908
| Assignee | ||
Comment 38•5 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•5 years ago
|
||
Depends on D101910
| Assignee | ||
Comment 40•5 years ago
|
||
Depends on D101911
| Assignee | ||
Comment 41•5 years ago
|
||
Depends on D101912
| Assignee | ||
Comment 42•5 years ago
|
||
Depends on D101913
| Assignee | ||
Comment 43•5 years ago
|
||
Depends on D101914
| Assignee | ||
Comment 44•5 years ago
|
||
Depends on D101915
| Assignee | ||
Comment 45•5 years ago
|
||
Depends on D101916
| Assignee | ||
Comment 46•5 years ago
|
||
Depends on D101917
Comment 47•5 years ago
|
||
Comment 48•5 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
•