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

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

Issue 2652923002: Devirtualize Visitor and remove inline visitor specialization. (Closed)
Patch Set: rebased Created 3 years, 11 months 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 9187501de1a71606078ab95b27f718e8bd3dc04f..2d8f176f849b9cca8f5295b01f95e08abbe6e163 100644
--- a/third_party/WebKit/Source/platform/heap/Visitor.cpp
+++ b/third_party/WebKit/Source/platform/heap/Visitor.cpp
@@ -5,8 +5,8 @@
#include "platform/heap/Visitor.h"
#include "platform/heap/BlinkGC.h"
-#include "platform/heap/MarkingVisitor.h"
#include "platform/heap/ThreadState.h"
+#include "platform/heap/VisitorImpl.h"
#include "wtf/PtrUtil.h"
#include <memory>
@@ -14,11 +14,11 @@ namespace blink {
std::unique_ptr<Visitor> Visitor::create(ThreadState* state,
VisitorMarkingMode mode) {
- return WTF::makeUnique<MarkingVisitor>(state, mode);
+ return WTF::makeUnique<Visitor>(state, mode);
}
Visitor::Visitor(ThreadState* state, VisitorMarkingMode markingMode)
- : VisitorHelper(state, markingMode) {
+ : m_state(state), m_markingMode(markingMode) {
// See ThreadState::runScheduledGC() why we need to already be in a
// GCForbiddenScope before any safe point is entered.
DCHECK(state->isGCForbidden());
@@ -29,4 +29,8 @@ Visitor::Visitor(ThreadState* state, VisitorMarkingMode markingMode)
Visitor::~Visitor() {}
+void Visitor::markNoTracingCallback(Visitor* visitor, void* object) {
+ visitor->markNoTracing(object);
+}
+
} // namespace blink
« no previous file with comments | « third_party/WebKit/Source/platform/heap/Visitor.h ('k') | third_party/WebKit/Source/platform/heap/VisitorImpl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698