Closed Bug 1364566 Opened 7 years ago Closed 7 years ago

Enable lazy parsing for NonSyntactic scopes

Categories

(Core :: JavaScript Engine, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla57
Tracking Status
firefox57 --- fixed

People

(Reporter: mccr8, Assigned: mccr8)

References

Details

Attachments

(1 file)

Right now, BytecodeCompiler::canLazilyParse() returns false if the enclosing scope has a NonSyntactic object on the scope chain. Bug 1186409 is trying to save memory by sharing a global between multiple JSMs, using NonSyntacticVariableObjects to store per-JSM state, as pseudo-globals. However, currently this breaks lazy parsing, eliminating much of the memory savings from global sharing.
I don't know if there's anything more I should do to test this besides a try push...
Comment on attachment 8885038 [details]
Bug 1364566 - Enable lazy parsing for NonSyntactic scopes.

https://reviewboard.mozilla.org/r/155880/#review169078

Really sorry about the huge review delay.
Attachment #8885038 - Flags: review?(shu) → review+
(In reply to Shu-yu Guo (backlogged) from comment #4)
> Really sorry about the huge review delay.

No worries. I only really need this for the shared JSM stuff, and that isn't quite ready yet.
Pushed by amccreight@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/8f13e72bc7c5
Enable lazy parsing for NonSyntactic scopes. r=shu+381259
https://hg.mozilla.org/mozilla-central/rev/8f13e72bc7c5
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla57
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: