Index: src/heap/scavenger-inl.h |
diff --git a/src/heap/scavenger-inl.h b/src/heap/scavenger-inl.h |
index 3b96f648f79a818121e2076d961687680aed2bf3..5c208540abf8c2d3c6edb2f8d0410b55d24d525c 100644 |
--- a/src/heap/scavenger-inl.h |
+++ b/src/heap/scavenger-inl.h |
@@ -68,9 +68,12 @@ void StaticScavengeVisitor::VisitPointer(Heap* heap, HeapObject* obj, |
Object** p) { |
Object* object = *p; |
if (!heap->InNewSpace(object)) return; |
+ PromotionMode promotion_mode = heap->incremental_marking()->IsMarking() |
+ ? PROMOTE_MARKED |
+ : DEFAULT_PROMOTION; |
Scavenger::ScavengeObject(reinterpret_cast<HeapObject**>(p), |
reinterpret_cast<HeapObject*>(object), |
- DEFAULT_PROMOTION); |
+ promotion_mode); |
} |
} // namespace internal |