Closed Bug 1506479 Opened 6 years ago Closed 6 years ago

Discard TypeScripts in Zone::discardJitCode instead of during type sweeping

Categories

(Core :: JavaScript Engine, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla65
Tracking Status
firefox65 --- fixed

People

(Reporter: jandem, Assigned: jandem)

References

Details

Attachments

(1 file)

For bug 1499644 I want to add ICScript to TypeScript to not increase sizeof(JSScript). This however introduces some browser-only shutdown GC leaks because the cycle collector traces too many things during its shutdown GC/CC. This is because we purge TypeScripts during type sweeping and this happens after marking. I think the best fix for this is to move TypeScript discarding to Zone::discardJitCode. This is also nice because it means we can discard JIT code + TypeScript before we attempt to relazify functions during shrinking GC (so relazification becomes more effective).
I also had to make some small changes to relazification for XDR tests for that to pass.
Pushed by jandemooij@gmail.com: https://hg.mozilla.org/integration/autoland/rev/9018814d9671 Discard TypeScripts in Zone::discardJitCode instead of during type sweeping. r=bhackett
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: