| Index: src/heap.cc
|
| diff --git a/src/heap.cc b/src/heap.cc
|
| index 3838a55cbeb397469e60c76616a5d67d2a772e2b..522861deda05e2a163861ac527be202631387441 100644
|
| --- a/src/heap.cc
|
| +++ b/src/heap.cc
|
| @@ -144,7 +144,6 @@ Heap::Heap()
|
| last_idle_notification_gc_count_(0),
|
| last_idle_notification_gc_count_init_(false),
|
| configured_(false),
|
| - last_empty_page_was_given_back_to_the_os_(false),
|
| chunks_queued_for_free_(NULL) {
|
| // Allow build-time customization of the max semispace size. Building
|
| // V8 with snapshots and a non-default max semispace size is much
|
| @@ -813,8 +812,6 @@ void Heap::MarkCompact(GCTracer* tracer) {
|
|
|
| gc_state_ = NOT_IN_GC;
|
|
|
| - Shrink();
|
| -
|
| isolate_->counters()->objs_since_last_full()->Set(0);
|
|
|
| contexts_disposed_ = 0;
|
| @@ -5627,7 +5624,7 @@ void Heap::Shrink() {
|
| // Try to shrink all paged spaces.
|
| PagedSpaces spaces;
|
| for (PagedSpace* space = spaces.next(); space != NULL; space = spaces.next())
|
| - space->Shrink();
|
| + space->ReleaseAllUnusedPages();
|
| }
|
|
|
|
|
| @@ -6470,6 +6467,7 @@ void Heap::FreeQueuedChunks() {
|
| }
|
| }
|
| }
|
| + isolate_->heap()->store_buffer()->Compact();
|
| isolate_->heap()->store_buffer()->Filter(MemoryChunk::ABOUT_TO_BE_FREED);
|
| for (chunk = chunks_queued_for_free_; chunk != NULL; chunk = next) {
|
| next = chunk->next_chunk();
|
|
|