Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1203)

Unified Diff: third_party/WebKit/Source/platform/heap/Visitor.cpp

Issue 2531973002: Simple BlinkGC heap compaction. (Closed)
Patch Set: add pointer alignment handling to SparseHeapBitmap Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/platform/heap/Visitor.cpp
diff --git a/third_party/WebKit/Source/platform/heap/Visitor.cpp b/third_party/WebKit/Source/platform/heap/Visitor.cpp
index 9ec0785d96eb02bcb4f1b370335aa422a78a2d2d..f513d9567316386262e197912751b14e2aa413fc 100644
--- a/third_party/WebKit/Source/platform/heap/Visitor.cpp
+++ b/third_party/WebKit/Source/platform/heap/Visitor.cpp
@@ -18,6 +18,8 @@ std::unique_ptr<Visitor> Visitor::create(ThreadState* state,
case BlinkGC::GCWithSweep:
case BlinkGC::GCWithoutSweep:
return makeUnique<MarkingVisitor<Visitor::GlobalMarking>>(state);
+ case BlinkGC::GCWithSweepCompaction:
+ return makeUnique<MarkingVisitor<Visitor::GlobalMarkCompacting>>(state);
case BlinkGC::TakeSnapshot:
return makeUnique<MarkingVisitor<Visitor::SnapshotMarking>>(state);
case BlinkGC::ThreadTerminationGC:
@@ -34,13 +36,12 @@ Visitor::Visitor(ThreadState* state, MarkingMode markingMode)
: VisitorHelper(state), m_markingMode(markingMode) {
// See ThreadState::runScheduledGC() why we need to already be in a
// GCForbiddenScope before any safe point is entered.
- state->enterGCForbiddenScope();
-
- ASSERT(state->checkThread());
+ DCHECK(state->isGCForbidden());
+#if ENABLE(ASSERT)
+ DCHECK(state->checkThread());
+#endif
}
-Visitor::~Visitor() {
- state()->leaveGCForbiddenScope();
-}
+Visitor::~Visitor() {}
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698