Index: src/heap/incremental-marking.h |
diff --git a/src/heap/incremental-marking.h b/src/heap/incremental-marking.h |
index 6a6f8c4abb5498fb3cc61643733b6ebfc14225bc..03642c10209b558c0bbedc1492381099031d67e2 100644 |
--- a/src/heap/incremental-marking.h |
+++ b/src/heap/incremental-marking.h |
@@ -50,7 +50,10 @@ class IncrementalMarking { |
INLINE(bool IsMarking()) { return state() >= MARKING; } |
- inline bool IsMarkingIncomplete() { return state() == MARKING; } |
+ inline bool CanDoSteps() { |
+ return FLAG_incremental_marking_steps && |
+ (state() == MARKING || state() == SWEEPING); |
+ } |
inline bool IsComplete() { return state() == COMPLETE; } |
@@ -102,6 +105,8 @@ class IncrementalMarking { |
// But if we are promoting a lot of data we need to mark faster to keep up |
// with the data that is entering the old space through promotion. |
static const intptr_t kFastMarking = 3; |
+ static const intptr_t kOldSpaceAllocationMarkingFactor = |
+ kFastMarking / kInitialMarkingSpeed; |
// After this many steps we increase the marking/allocating factor. |
static const intptr_t kMarkingSpeedAccellerationInterval = 1024; |
// This is how much we increase the marking/allocating factor by. |