| Index: src/heap/gc-idle-time-handler.cc | 
| diff --git a/src/heap/gc-idle-time-handler.cc b/src/heap/gc-idle-time-handler.cc | 
| index 168cc81c0f627f037d401e348f73512fdcc5a86a..ab84a7301bb2d81ca9c50f6f141e125d28e58330 100644 | 
| --- a/src/heap/gc-idle-time-handler.cc | 
| +++ b/src/heap/gc-idle-time-handler.cc | 
| @@ -2,6 +2,7 @@ | 
| // Use of this source code is governed by a BSD-style license that can be | 
| // found in the LICENSE file. | 
|  | 
| +#include "src/flags.h" | 
| #include "src/heap/gc-idle-time-handler.h" | 
| #include "src/heap/gc-tracer.h" | 
| #include "src/utils.h" | 
| @@ -322,8 +323,9 @@ GCIdleTimeAction GCIdleTimeHandler::Action(double idle_time_in_ms, | 
| } | 
| } | 
|  | 
| -  if (heap_state.incremental_marking_stopped && | 
| -      !heap_state.can_start_incremental_marking && !reduce_memory) { | 
| +  if (!FLAG_incremental_marking || | 
| +      (heap_state.incremental_marking_stopped && | 
| +       !heap_state.can_start_incremental_marking && !reduce_memory)) { | 
| return NothingOrDone(); | 
| } | 
|  | 
|  |