Use frame pointers more
Categories
(Core :: JavaScript Engine: JIT, task, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox104 | --- | fixed |
People
(Reporter: jandem, Assigned: jandem)
References
Details
Attachments
(9 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 |
There are some more places in the JITs where we can now take advantage of frame pointers.
Assignee | ||
Comment 1•2 years ago
|
||
BaselineFrameReg
was removed a few weeks ago.
Assignee | ||
Comment 2•2 years ago
|
||
It's now equivalent to BaselineStubFrameLayout::Size()
, which is more descriptive.
Depends on D150371
Assignee | ||
Comment 3•2 years ago
|
||
Depends on D150372
Assignee | ||
Comment 4•2 years ago
|
||
Depends on D150373
Assignee | ||
Comment 5•2 years ago
|
||
Depends on D150374
Assignee | ||
Updated•2 years ago
|
Pushed by jdemooij@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/347886367751 part 1 - Remove BaselineStackReg alias. r=iain https://hg.mozilla.org/integration/autoland/rev/6abadef7f47b part 2 - Remove StubFrameSizeFromFP. r=iain https://hg.mozilla.org/integration/autoland/rev/efb9cf0b3d3c part 3 - Use frame pointer more in Baseline IC code. r=iain https://hg.mozilla.org/integration/autoland/rev/c0d2dfd859ca part 4 - Use frame pointer in loadStackObject. r=iain https://hg.mozilla.org/integration/autoland/rev/fd8261a34c1b part 5 - Remove StubFrameSize. r=iain
Assignee | ||
Comment 7•2 years ago
|
||
Assignee | ||
Comment 8•2 years ago
|
||
Depends on D150449
Assignee | ||
Comment 9•2 years ago
|
||
Depends on D150450
Assignee | ||
Comment 10•2 years ago
|
||
Non-exception bailouts compute the frame pointer as sp + frameSize
. We can
assert this matches the frame pointer register, now that we have one.
This catches cases where we bail out when there are still extra values on the
stack. In theory we could now support such bailouts by using the frame pointer
register directly instead of the static frame size, but until we change that
we should at least assert we're consistent.
Depends on D150451
Comment 11•2 years ago
|
||
bugherder |
Comment 12•2 years ago
|
||
Pushed by jdemooij@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/8e7dc763314b part 6 - Use frame pointer to access JitFrameLayout in CodeGenerator. r=iain https://hg.mozilla.org/integration/autoland/rev/1dd0356937f7 part 7 - Optimize CodeGenerator::visitRest a bit. r=iain https://hg.mozilla.org/integration/autoland/rev/481736e0e481 part 8 - Use frame pointer to access JitFrameLayout in Wasm JitEntry stub. r=iain https://hg.mozilla.org/integration/autoland/rev/3e19b465101b part 9 - Assert bailout frame pointer matches frame pointer register. r=iain
Comment 13•2 years ago
|
||
bugherder |
Assignee | ||
Updated•2 years ago
|
Description
•