Chromium Code Reviews| Index: src/heap/mark-compact-inl.h |
| diff --git a/src/heap/mark-compact-inl.h b/src/heap/mark-compact-inl.h |
| index f117acee9b12f8a28d0af898eb0bcb04176cf715..9cc7d7c39e57ceb75f5bb78eb3293f26a2c160cb 100644 |
| --- a/src/heap/mark-compact-inl.h |
| +++ b/src/heap/mark-compact-inl.h |
| @@ -6,7 +6,7 @@ |
| #define V8_HEAP_MARK_COMPACT_INL_H_ |
| #include "src/heap/mark-compact.h" |
| -#include "src/heap/slots-buffer.h" |
| +#include "src/heap/remembered-set.h" |
| #include "src/isolate.h" |
| namespace v8 { |
| @@ -70,25 +70,11 @@ bool MarkCompactCollector::IsMarked(Object* obj) { |
| void MarkCompactCollector::RecordSlot(HeapObject* object, Object** slot, |
| Object* target) { |
| Page* target_page = Page::FromAddress(reinterpret_cast<Address>(target)); |
| + Page* source_page = Page::FromAddress(reinterpret_cast<Address>(object)); |
| if (target_page->IsEvacuationCandidate() && |
| !ShouldSkipEvacuationSlotRecording(object)) { |
| - if (!SlotsBuffer::AddTo(slots_buffer_allocator_, |
| - target_page->slots_buffer_address(), slot, |
| - SlotsBuffer::FAIL_ON_OVERFLOW)) { |
| - EvictPopularEvacuationCandidate(target_page); |
| - } |
| - } |
| -} |
| - |
| - |
| -void MarkCompactCollector::ForceRecordSlot(HeapObject* object, Object** slot, |
| - Object* target) { |
| - Page* target_page = Page::FromAddress(reinterpret_cast<Address>(target)); |
| - if (target_page->IsEvacuationCandidate() && |
| - !ShouldSkipEvacuationSlotRecording(object)) { |
| - CHECK(SlotsBuffer::AddTo(slots_buffer_allocator_, |
| - target_page->slots_buffer_address(), slot, |
| - SlotsBuffer::IGNORE_OVERFLOW)); |
| + RememberedSet<OLD_TO_OLD>::Insert(source_page, |
|
jochen (gone - plz use gerrit)
2016/02/23 13:10:53
so we now just crash if we can't grow the remember
ulan
2016/02/23 13:19:07
Yes, as discussed offline, the remembered set filt
|
| + reinterpret_cast<Address>(slot)); |
| } |
| } |