Closed Bug 1775422 Opened 2 years ago Closed 2 years ago

Land follow-up patches for frame pointer changes

Categories

(Core :: JavaScript Engine: JIT, task, P3)

task

Tracking

()

RESOLVED FIXED
103 Branch
Tracking Status
firefox103 --- fixed

People

(Reporter: jandem, Assigned: jandem)

Details

Attachments

(4 files)

I have a few patches fixing minor issues I noticed the past weeks.

  • Some methods can forward to the implementation in JitFrameLayout.
  • Replace offsetOfFoo methods with the ones from JitFrameLayout now that FramePointerOffset is gone.

The next patch will tidy up JitFrameLayout::argv.

The argv method on BaselineFrame does not include this, but the one on JitFrameLayout does.
We can be a bit more explicit about this.

Depends on D149962

The exception trampoline now uses a Label + jump to jump to the bailout tail
code, after setting the stack pointer to the JitFrameLayout of the bailing frame.

In the bailout tail code, we can now assert the stack pointer is what we expect
instead of clobbering it ourselves.

Depends on D149963

This shouldn't be perf-sensitive, but on 64-bit platforms it's more natural to copy
eight bytes at a time.

Depends on D149964

Pushed by jdemooij@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/fe1573567554
part 1 - Tidy up BaselineFrame methods. r=iain
https://hg.mozilla.org/integration/autoland/rev/1c63e0fe6f72
part 2 - Split JitFrameLayout::argv in actualArgs and thisAndActualArgs. r=iain
https://hg.mozilla.org/integration/autoland/rev/bc3175f5f05e
part 3 - Set stack pointer in exception trampoline for exception bailouts. r=iain
https://hg.mozilla.org/integration/autoland/rev/77501b8565ea
part 4 - Use loadPtr/storePtr instead of load32/store32 in bailout code. r=iain
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: