Closed Bug 1764796 Opened 2 years ago Closed 2 years ago

Use the store buffer to trace preserved nursery wrappers in minor GC

Categories

(Core :: XPCOM, task, P3)

task

Tracking

()

RESOLVED FIXED
101 Branch
Tracking Status
firefox101 --- fixed

People

(Reporter: jonco, Assigned: jonco)

Details

Attachments

(1 file)

Currently CycleCollectedJSRuntime maintains a list of preserved nursery wrappers to make sure these survive a minor GC. However it's simpler and more efficient to use the store buffer to do this.

HeapObjectPostWriteBarrier adds or removes a store buffer entry for a change in
the GC graph entry based on the second and third arguments which are the target
of the edge before and after the change.

This patch also removes the store buffer entry in
nsWrapperCache::ReleaseWrapper which didn't happen before. This should help
keep less garbage alive unnecessarily.

Pushed by jcoppeard@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/2e65ce5913e3
Use the store buffer to trace preserved nursery wrappers in a minor GC r=mccr8
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 101 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: