| Index: src/heap/mark-compact.h
|
| diff --git a/src/heap/mark-compact.h b/src/heap/mark-compact.h
|
| index 19d72fc7d5e280456f6b1453bacb9634617a770d..67568a96e346f761d1897b57eac904b5122a3d5e 100644
|
| --- a/src/heap/mark-compact.h
|
| +++ b/src/heap/mark-compact.h
|
| @@ -288,6 +288,11 @@ class MarkCompactCollector {
|
|
|
| enum FreeListRebuildingMode { REBUILD_FREE_LIST, IGNORE_FREE_LIST };
|
| enum FreeSpaceTreatmentMode { IGNORE_FREE_SPACE, ZAP_FREE_SPACE };
|
| + enum ClearOldToNewSlotsMode {
|
| + DO_NOT_CLEAR,
|
| + CLEAR_REGULAR_SLOTS,
|
| + CLEAR_TYPED_SLOTS
|
| + };
|
|
|
| typedef std::deque<Page*> SweepingList;
|
| typedef List<Page*> SweptList;
|
| @@ -326,6 +331,8 @@ class MarkCompactCollector {
|
| private:
|
| static const int kAllocationSpaces = LAST_PAGED_SPACE + 1;
|
|
|
| + static ClearOldToNewSlotsMode GetClearOldToNewSlotsMode(Page* p);
|
| +
|
| template <typename Callback>
|
| void ForAllSweepingSpaces(Callback callback) {
|
| for (int i = 0; i < kAllocationSpaces; i++) {
|
| @@ -478,16 +485,6 @@ class MarkCompactCollector {
|
|
|
| void InitializeMarkingDeque();
|
|
|
| - // The following two methods can just be called after marking, when the
|
| - // whole transitive closure is known. They must be called before sweeping
|
| - // when mark bits are still intact.
|
| - bool IsSlotInBlackObject(MemoryChunk* p, Address slot);
|
| - HeapObject* FindBlackObjectBySlotSlow(Address slot);
|
| -
|
| - // Removes all the slots in the slot buffers that are within the given
|
| - // address range.
|
| - void RemoveObjectSlots(Address start_slot, Address end_slot);
|
| -
|
| Sweeper& sweeper() { return sweeper_; }
|
|
|
| private:
|
|
|