Closed Bug 907187 Opened 6 years ago Closed 6 years ago

Rewrite Baseline -> Ion OSR to not use the StackFrame layout

Categories

(Core :: JavaScript Engine: JIT, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla27

People

(Reporter: jandem, Assigned: jandem)

Details

Attachments

(1 file)

We no longer OSR from the interpreter into Ion code, so creating a fake StackFrame is no longer necessary. It would be nice if we could just memcpy the BaselineFrame to the heap.

When we do this we can also remove all StackFrame::offsetOf* methods.
Component: JavaScript Engine → JavaScript Engine: JIT
Attached patch PatchSplinter Review
This patch copies the BaselineFrame + locals/stack Values to the heap instead of creating a StackFrame. Formals and |this| are no longer copied: the Baseline and Ion frame have the same frame prefix so we can just read them directly.

7 files changed, 39 insertions(+), 199 deletions(-)
Assignee: general → jdemooij
Status: NEW → ASSIGNED
Attachment #820996 - Flags: review?(kvijayan)
Comment on attachment 820996 [details] [diff] [review]
Patch

Review of attachment 820996 [details] [diff] [review]:
-----------------------------------------------------------------

Nice cleanup.
Attachment #820996 - Flags: review?(kvijayan) → review+
https://hg.mozilla.org/mozilla-central/rev/20feee5f3866
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla27
You need to log in before you can comment on or make changes to this bug.