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

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

Issue 2570483002: Revert of Simple BlinkGC heap compaction. (Closed)
Patch Set: 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.h
diff --git a/third_party/WebKit/Source/platform/heap/Visitor.h b/third_party/WebKit/Source/platform/heap/Visitor.h
index 6b8c13a66fe25a8ab9fd628c1d42c03703e5396e..f93d1e4d52fd9ce3516a7bc9399758f7c60a2343 100644
--- a/third_party/WebKit/Source/platform/heap/Visitor.h
+++ b/third_party/WebKit/Source/platform/heap/Visitor.h
@@ -243,26 +243,10 @@
void registerWeakMembers(const T* obj) {
registerWeakMembers(obj, &TraceMethodDelegate<T, method>::trampoline);
}
-
void registerWeakMembers(const void* object, WeakCallback callback) {
Derived::fromHelper(this)->registerWeakMembers(object, object, callback);
}
- template <typename T>
- void registerBackingStoreReference(T** slot) {
- Derived::fromHelper(this)->registerMovingObjectReference(
- reinterpret_cast<MovableReference*>(slot));
- }
-
- template <typename T>
- void registerBackingStoreCallback(T* backingStore,
- MovingObjectCallback callback,
- void* callbackData) {
- Derived::fromHelper(this)->registerMovingObjectCallback(
- reinterpret_cast<MovableReference>(backingStore), callback,
- callbackData);
- }
-
inline ThreadState* state() const { return m_state; }
inline ThreadHeap& heap() const { return state()->heap(); }
@@ -270,7 +254,7 @@
template <typename T>
static void handleWeakCell(Visitor* self, void* object);
- ThreadState* const m_state;
+ ThreadState* m_state;
};
// Visitor is used to traverse the Blink object graph. Used for the
@@ -300,13 +284,6 @@
// This visitor is used to trace objects during weak processing.
// This visitor is allowed to trace only already marked objects.
WeakProcessing,
- // Perform global marking along with preparing for additional sweep
- // compaction of heap arenas afterwards. Compared to the GlobalMarking
- // visitor, this visitor will also register references to objects
- // that might be moved during arena compaction -- the compaction
- // pass will then fix up those references when the object move goes
- // ahead.
- GlobalMarkingWithCompaction,
};
static std::unique_ptr<Visitor> create(ThreadState*, BlinkGC::GCType);
@@ -367,20 +344,9 @@
virtual bool ensureMarked(const void*) = 0;
- virtual void registerMovingObjectReference(MovableReference*) = 0;
-
- virtual void registerMovingObjectCallback(MovableReference,
- MovingObjectCallback,
- void*) = 0;
-
virtual void registerWeakCellWithCallback(void**, WeakCallback) = 0;
inline MarkingMode getMarkingMode() const { return m_markingMode; }
-
- inline bool isGlobalMarking() const {
- return m_markingMode == GlobalMarking ||
- m_markingMode == GlobalMarkingWithCompaction;
- }
protected:
Visitor(ThreadState*, MarkingMode);
@@ -390,6 +356,7 @@
return static_cast<Visitor*>(helper);
}
+ ThreadState* m_state;
const MarkingMode m_markingMode;
};
« no previous file with comments | « third_party/WebKit/Source/platform/heap/TraceTraits.h ('k') | third_party/WebKit/Source/platform/heap/Visitor.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698