Ignore:
Timestamp:
Jan 30, 2011, 3:07:11 PM (15 years ago)
Author:
[email protected]
Message:

2011-01-30 Geoffrey Garen <[email protected]>

Reviewed by Oliver Hunt.

Filter all Heap collection through a common reset function, in
preparation for adding features triggered by collection.
https://bugs.webkit.org/show_bug.cgi?id=53396


SunSpider reports no change.

  • runtime/Heap.cpp: (JSC::Heap::reportExtraMemoryCostSlowCase): When we're over the extraCost limit, just call collectAllGarbage() instead of rolling our own special way of resetting the heap. In theory, this may be slower in some cases, but it also fixes cases of pathological heap growth that we've seen, where the only objects being allocated are temporary and huge (<rdar://problem/8885843>).

(JSC::Heap::allocate):
(JSC::Heap::collectAllGarbage): Use the shared reset function.

(JSC::Heap::reset):

  • runtime/Heap.h: Carved a new shared reset function out of the old collectAllGarbage.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r77090 r77094  
     12011-01-30  Geoffrey Garen  <[email protected]>
     2
     3        Reviewed by Oliver Hunt.
     4
     5        Filter all Heap collection through a common reset function, in
     6        preparation for adding features triggered by collection.
     7        https://bugs.webkit.org/show_bug.cgi?id=53396
     8       
     9        SunSpider reports no change.
     10
     11        * runtime/Heap.cpp:
     12        (JSC::Heap::reportExtraMemoryCostSlowCase): When we're over the extraCost
     13        limit, just call collectAllGarbage() instead of rolling our own special
     14        way of resetting the heap. In theory, this may be slower in some cases,
     15        but it also fixes cases of pathological heap growth that we've seen,
     16        where the only objects being allocated are temporary and huge
     17        (<rdar://problem/8885843>).
     18
     19        (JSC::Heap::allocate):
     20        (JSC::Heap::collectAllGarbage): Use the shared reset function.
     21
     22        (JSC::Heap::reset):
     23        * runtime/Heap.h: Carved a new shared reset function out of the old
     24        collectAllGarbage.
     25
    1262011-01-30  Sheriff Bot  <[email protected]>
    227
Note: See TracChangeset for help on using the changeset viewer.