[Webkit-unassigned] [Bug 64388] New: COLLECT_ON_EVERY_ALLOCATION no longer works

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jul 12 13:59:24 PDT 2011


           Summary: COLLECT_ON_EVERY_ALLOCATION no longer works
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: All
        OS/Version: All
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: fpizlo at apple.com

The GC allocation path breaks if COLLECT_ON_EVERY_ALLOCATION is set.  This occurs for two reasons:

1) To collect we need JSGlobalData to be initialized, but to be initialized, JSGlobalData must perform allocations.

2) Even if this is side-stepped, the Heap::allocate() handles allocation slow cases by calling itself recursively, which always results in another forced collection if COLLECT_ON_EVERY_ALLOCATION is set.  But allocating after a collection requires the slow path to be taken.  Hence, COLLECT_ON_EVERY_ALLOCATION causes every allocation to recurse ad infinitum, invoking a full heap GC every time.

Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the webkit-unassigned mailing list