Closed Bug 1641442 Opened 4 years ago Closed 4 years ago

Cleanup CompilationInfo::instantiateStencils and friends

Categories

(Core :: JavaScript Engine, task, P2)

task

Tracking

()

RESOLVED FIXED
mozilla78
Tracking Status
firefox78 --- fixed

People

(Reporter: tcampbell, Assigned: tcampbell)

References

Details

Attachments

(3 files)

Miscellaneous cleanup for stencil instantiation to close the gap between lazy and non-lazy BaseScript creation.

Compute the ImmutableFlags at the same time as the rest of the LazyScript
GC-things list and store into the ScriptStencil. This is more consistent with
how non-lazy BaseScripts are created.

Depends on D77189

Defer the lazy BaseScript instantiation to when the rest of the Stencils are
turned into BaseScripts. We also defer the enclosing-lazy-script link updates
until the same time when we call FunctionBox::finish.

Depends on D77192

Rename PublishDeferredFunctions to InstantiateFunctions and inline it's
helper method. Now that trace-list order does not matter we can remove the
asserts and comments around this. The tests pass even if we reverse the
traversal order.

Depends on D77193

Pushed by tcampbell@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/41b9c39d8aa4 Use ScriptStencil for lazy ImmutableFlags. r=mgaudet https://hg.mozilla.org/integration/autoland/rev/ddd2c41b1f5e Instantiate lazy BaseScripts in same way as non-lazy. r=mgaudet https://hg.mozilla.org/integration/autoland/rev/5f94c1b0d796 Add CompilationInfo::InstantiateFunctions. r=mgaudet
Status: NEW → RESOLVED
Closed: 4 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: