Chromium Code Reviews| Index: src/heap/heap.cc |
| diff --git a/src/heap/heap.cc b/src/heap/heap.cc |
| index 3ec0a3e229c699fdb50460cdcd0ae70f342f00ba..7dd4bb0bac9ef4e7a588feed50390490e6dce583 100644 |
| --- a/src/heap/heap.cc |
| +++ b/src/heap/heap.cc |
| @@ -1626,8 +1626,6 @@ void Heap::Scavenge() { |
| scavenge_collector_->SelectScavengingVisitorsTable(); |
| - array_buffer_tracker()->PrepareDiscoveryInNewSpace(); |
| - |
| // Flip the semispaces. After flipping, to space is empty, from space has |
| // live objects. |
| new_space_.Flip(); |
| @@ -1735,7 +1733,7 @@ void Heap::Scavenge() { |
| // Set age mark. |
| new_space_.set_age_mark(new_space_.top()); |
| - array_buffer_tracker()->FreeDead(true); |
| + array_buffer_tracker()->FreeDeadInNewSpace(); |
| // Update how much has survived scavenge. |
| IncrementYoungSurvivorsCounter(static_cast<int>( |
| @@ -2015,7 +2013,9 @@ HeapObject* Heap::DoubleAlignForDeserialization(HeapObject* object, int size) { |
| void Heap::RegisterNewArrayBuffer(JSArrayBuffer* buffer) { |
| - return array_buffer_tracker()->RegisterNew(buffer); |
| + const bool track_live = |
| + Page::FromAddress(buffer->address())->IsFlagSet(Page::BLACK_PAGE); |
|
Hannes Payer (out of office)
2016/05/20 12:21:17
Instead of checking for black page, it would be be
Michael Lippautz
2016/05/23 08:41:00
Done.
|
| + return array_buffer_tracker()->RegisterNew(buffer, track_live); |
| } |