Closed Bug 1636795 Opened 5 years ago Closed 5 years ago

Remove more virtual methods from ScriptStencil

Categories

(Core :: JavaScript Engine, task, P1)

task

Tracking

()

RESOLVED FIXED
mozilla78
Tracking Status
firefox78 --- fixed

People

(Reporter: tcampbell, Assigned: tcampbell)

References

Details

Attachments

(2 files, 1 obsolete file)

We want to remove more of the finish* functions from ScriptStencil.

Instead, have a batch process at end of bytecode emission just before reading
out the result script. We do this for functions that are inner to a script we
are generating bytecode code. These functions may still be lazy but they are
potentially exposed in JSOp::Lambda/LambdaArray ops.

Depends on D74568

BytecodeEmitter and Smoosh use the same implementation so de-virtualize and
inline the implementation.

Depends on D74569

This performs JSScript allocation by consuming the Stencil. For now we leave
handling of delazification compiles alone.

Depends on D74571

Comment on attachment 9147136 [details]
Bug 1636795 - Add ScriptStencil::intoScript. r?mgaudet

Revision D74572 was moved to bug 1636796. Setting attachment 9147136 [details] to obsolete.

Attachment #9147136 - Attachment is obsolete: true
See Also: → 1623956
Pushed by tcampbell@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/8b1379162d0c Remove ScriptStencil::finishInnerFunctions. r=mgaudet https://hg.mozilla.org/integration/autoland/rev/6f6db889e7d7 Remove ScriptStencil::finishGCThings. r=mgaudet
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla78
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: