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(); |
} |