Reviewers: jochen (slow),
Description:
Perform full GC if incremental marking is completed or marking deque is
empty.
BUG=
Please review this at https://codereview.chromium.org/874993003/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+2, -1 lines):
M src/heap/heap.cc
Index: src/heap/heap.cc
diff --git a/src/heap/heap.cc b/src/heap/heap.cc
index
d4550949035c07e573287a67ce0596a885c5d064..bc55f9e1c5f8fb88a9a3db623d2dba0efd3bc2d9
100644
--- a/src/heap/heap.cc
+++ b/src/heap/heap.cc
@@ -827,7 +827,8 @@ bool Heap::CollectGarbage(GarbageCollector collector,
const char* gc_reason,
const intptr_t kStepSizeWhenDelayedByScavenge = 1 * MB;
incremental_marking()->Step(kStepSizeWhenDelayedByScavenge,
IncrementalMarking::NO_GC_VIA_STACK_GUARD);
- if (!incremental_marking()->IsComplete() && !FLAG_gc_global) {
+ if (!incremental_marking()->IsComplete() &&
+ !mark_compact_collector_.marking_deque_.IsEmpty()
&& !FLAG_gc_global) {
if (FLAG_trace_incremental_marking) {
PrintF("[IncrementalMarking] Delaying MarkSweep.\n");
}
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.