Chromium Code Reviews| Index: src/heap/heap.cc |
| diff --git a/src/heap/heap.cc b/src/heap/heap.cc |
| index c4a1baa6d38acac0a66323c79da10afb8134ca92..26df0f7275357ace876a8c59ea8c013ce53fd970 100644 |
| --- a/src/heap/heap.cc |
| +++ b/src/heap/heap.cc |
| @@ -814,7 +814,10 @@ void Heap::FinalizeIncrementalMarking(GarbageCollectionReason gc_reason) { |
| TRACE_GC(tracer(), GCTracer::Scope::MC_INCREMENTAL_EXTERNAL_PROLOGUE); |
| VMState<EXTERNAL> state(isolate_); |
| HandleScope handle_scope(isolate_); |
| - CallGCPrologueCallbacks(kGCTypeIncrementalMarking, kNoGCCallbackFlags); |
| + CallGCPrologueCallbacks(kGCTypeIncrementalMarking, |
| + FLAG_object_grouping_in_incremental_finalization |
| + ? kNoGCCallbackFlags |
| + : kGCCallbackFlagDisableObjectGrouping); |
| } |
| } |
| incremental_marking()->FinalizeIncrementally(); |
| @@ -5411,16 +5414,6 @@ bool Heap::ShouldOptimizeForLoadTime() { |
| // - or the incremental marking is not in progress and we cannot start it. |
| bool Heap::ShouldExpandOldGenerationOnSlowAllocation() { |
| if (always_allocate() || OldGenerationSpaceAvailable() > 0) return true; |
| - // We reached the old generation allocation limit. |
|
ulan
2017/03/30 16:24:30
This changes reduce noise in scheduling mark-compa
|
| - |
| - if (ShouldOptimizeForMemoryUsage()) return false; |
| - |
| - if (ShouldOptimizeForLoadTime()) return true; |
| - |
| - if (incremental_marking()->NeedsFinalization()) { |
| - return !AllocationLimitOvershotByLargeMargin(); |
| - } |
| - |
| if (incremental_marking()->IsStopped() && |
| IncrementalMarkingLimitReached() == IncrementalMarkingLimit::kNoLimit) { |
| // We cannot start incremental marking. |
| @@ -5451,12 +5444,6 @@ Heap::IncrementalMarkingLimit Heap::IncrementalMarkingLimitReached() { |
| if (old_generation_space_available > new_space_->Capacity()) { |
| return IncrementalMarkingLimit::kNoLimit; |
| } |
| - if (ShouldOptimizeForMemoryUsage()) { |
|
ulan
2017/03/30 16:24:30
This changes reduce noise in scheduling mark-compa
|
| - return IncrementalMarkingLimit::kHardLimit; |
| - } |
| - if (ShouldOptimizeForLoadTime()) { |
| - return IncrementalMarkingLimit::kNoLimit; |
| - } |
| if (old_generation_space_available == 0) { |
| return IncrementalMarkingLimit::kHardLimit; |
| } |