Ignore:
Timestamp:
Feb 10, 2011, 4:20:17 PM (15 years ago)
Author:
[email protected]
Message:

2011-02-10 Geoffrey Garen <[email protected]>

Reviewed by Oliver Hunt.

A little more encapsulation for MarkedBlock: Moved allocate() and sweep() into MarkedBlock
https://bugs.webkit.org/show_bug.cgi?id=54253


SunSpider reports no change.

  • runtime/CollectorHeapIterator.h: Removed DeadObjectIterator, since it is now unused.
  • runtime/Heap.cpp: (JSC::Heap::reset): Moved the call to shrink() here, since it seems a little more clear for MarkedSpace's client to tell it explicitly when to shrink.
  • runtime/JSCell.h: (JSC::JSCell::MarkedBlock::allocate): Split out from MarkedSpace::allocate.
  • runtime/MarkedBlock.cpp: (JSC::MarkedBlock::sweep): Split out from MarkedSpace::sweep, and converted to more directly iterate a MarkedBlock based on knowing its internal structure.
  • runtime/MarkedBlock.h:
  • runtime/MarkedSpace.cpp: (JSC::MarkedSpace::allocate): (JSC::MarkedSpace::sweep):
  • runtime/MarkedSpace.h: Split out the code mentioned above.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/runtime/Heap.cpp

    r77699 r78284  
    384384    m_extraCost = 0;
    385385
    386     if (sweepToggle == DoSweep)
     386    if (sweepToggle == DoSweep) {
    387387        m_markedSpace.sweep();
     388        m_markedSpace.shrink();
     389    }
    388390
    389391    size_t usedCellCount = m_markedSpace.markedCells();
Note: See TracChangeset for help on using the changeset viewer.