Closed Bug 715541 Opened 13 years ago Closed 12 years ago

Figure out how to optimize out DOM tree traversing when tree is kept alive by non-black JS

Categories

(Core :: DOM: Core & HTML, defect)

12 Branch
x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: smaug, Unassigned)

References

Details

Attachments

(1 file)

Attached file test
The test case doesn't create exactly the same CC graph what ehsan had in his log, but still somewhat similar. Basically some JS is kept alive by C++ objects, but since the JS is marked as gray by GC, CC can't optimize out traversing. Graph: http://mozilla.pettay.fi/d.svg Zoom in and look at the top right corner. There is a XPCVariant I think this is similar to the case jst mentioned where Google Reader keeps window objects alive (that window could then cause a document to be traversed). (Note this is a case where strong parent node doesn't affect to graph size in any way)
Summary: Figure out how to optimize out DOM tree traversing when tree is by non-black JS → Figure out how to optimize out DOM tree traversing when tree is kept alive by non-black JS
I have a patch which fixes the testcase, but there are of course other similar cases which can cause problems.
Depends on: 716501
I think this is fixed now, by the black-bit-propogation stuff Olli did.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → WORKSFORME
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: