| Index: src/heap/heap.cc | 
| diff --git a/src/heap/heap.cc b/src/heap/heap.cc | 
| index 0d753e2227654db5244900aeb958802cf242201e..de142fbdb774a4bf1f74769d334a376d5be340c7 100644 | 
| --- a/src/heap/heap.cc | 
| +++ b/src/heap/heap.cc | 
| @@ -903,13 +903,13 @@ void Heap::CollectAllAvailableGarbage(const char* gc_reason) { | 
|  | 
| void Heap::ReportExternalMemoryPressure(const char* gc_reason) { | 
| if (incremental_marking()->IsStopped()) { | 
| +    v8::GCCallbackFlags flags = static_cast<v8::GCCallbackFlags>( | 
| +        kGCCallbackFlagSynchronousPhantomCallbackProcessing | | 
| +        kGCCallbackFlagCollectAllExternalMemory); | 
| if (incremental_marking()->CanBeActivated()) { | 
| -      StartIncrementalMarking( | 
| -          i::Heap::kNoGCFlags, | 
| -          kGCCallbackFlagSynchronousPhantomCallbackProcessing, gc_reason); | 
| +      StartIncrementalMarking(i::Heap::kNoGCFlags, flags, gc_reason); | 
| } else { | 
| -      CollectAllGarbage(i::Heap::kNoGCFlags, gc_reason, | 
| -                        kGCCallbackFlagSynchronousPhantomCallbackProcessing); | 
| +      CollectAllGarbage(i::Heap::kNoGCFlags, gc_reason, flags); | 
| } | 
| } else { | 
| // Incremental marking is turned on an has already been started. | 
|  |