Index: src/heap/heap.cc |
diff --git a/src/heap/heap.cc b/src/heap/heap.cc |
index 0da371e9d5ff85b85638c33275978f1bc422b839..c29224fffb68a5b8329ed28579ae737f6d75678e 100644 |
--- a/src/heap/heap.cc |
+++ b/src/heap/heap.cc |
@@ -6668,35 +6668,6 @@ void Heap::FreeQueuedChunks() { |
for (chunk = chunks_queued_for_free_; chunk != NULL; chunk = next) { |
next = chunk->next_chunk(); |
chunk->SetFlag(MemoryChunk::ABOUT_TO_BE_FREED); |
- |
- if (chunk->owner()->identity() == LO_SPACE) { |
- // StoreBuffer::Filter relies on MemoryChunk::FromAnyPointerAddress. |
- // If FromAnyPointerAddress encounters a slot that belongs to a large |
- // chunk queued for deletion it will fail to find the chunk because |
- // it try to perform a search in the list of pages owned by of the large |
- // object space and queued chunks were detached from that list. |
- // To work around this we split large chunk into normal kPageSize aligned |
- // pieces and initialize size, owner and flags field of every piece. |
- // If FromAnyPointerAddress encounters a slot that belongs to one of |
- // these smaller pieces it will treat it as a slot on a normal Page. |
- Address chunk_end = chunk->address() + chunk->size(); |
- MemoryChunk* inner = |
- MemoryChunk::FromAddress(chunk->address() + Page::kPageSize); |
- MemoryChunk* inner_last = MemoryChunk::FromAddress(chunk_end - 1); |
- while (inner <= inner_last) { |
- // Size of a large chunk is always a multiple of |
- // OS::AllocateAlignment() so there is always |
- // enough space for a fake MemoryChunk header. |
- Address area_end = Min(inner->address() + Page::kPageSize, chunk_end); |
- // Guard against overflow. |
- if (area_end < inner->address()) area_end = chunk_end; |
- inner->SetArea(inner->address(), area_end); |
- inner->set_size(Page::kPageSize); |
- inner->set_owner(lo_space()); |
- inner->SetFlag(MemoryChunk::ABOUT_TO_BE_FREED); |
- inner = MemoryChunk::FromAddress(inner->address() + Page::kPageSize); |
- } |
- } |
} |
isolate_->heap()->store_buffer()->Compact(); |
isolate_->heap()->store_buffer()->Filter(MemoryChunk::ABOUT_TO_BE_FREED); |