Chromium Code Reviews| Index: src/heap/heap.cc |
| diff --git a/src/heap/heap.cc b/src/heap/heap.cc |
| index b3b24930e2d4329da1431ee842d0237be151705d..ac84dd284b4453c69432eb476c552302003036bd 100644 |
| --- a/src/heap/heap.cc |
| +++ b/src/heap/heap.cc |
| @@ -4404,6 +4404,11 @@ void Heap::CollectGarbageOnMemoryPressure(const char* source) { |
| if (potential_garbage >= kGarbageThresholdInBytes && |
| potential_garbage >= |
| CommittedMemory() * kGarbageThresholdAsFractionOfTotalMemory) { |
| + if (isolate()->concurrent_recompilation_enabled()) { |
|
Hannes Payer (out of office)
2016/07/13 14:53:41
Why is the flushing guarded by the potential garba
|
| + // The optimizing compiler may be unnecessarily holding on to memory. |
| + DisallowHeapAllocation no_recursive_gc; |
| + isolate()->optimizing_compile_dispatcher()->Flush(); |
| + } |
| // If we spent less than half of the time budget, then perform full GC |
| // Otherwise, start incremental marking. |
| if (end - start < kMaxMemoryPressurePauseMs / 2) { |