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

Unified Diff: Source/platform/heap/ThreadState.h

Issue 651713002: Oilpan: DOM wrappers don't need to keep persistent handles (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 2 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: Source/platform/heap/ThreadState.h
diff --git a/Source/platform/heap/ThreadState.h b/Source/platform/heap/ThreadState.h
index 54e561338f10ccdbeae0478031f2e27c7411f688..96b0a23c17b5c92a278d34738dd0b80a07159e62 100644
--- a/Source/platform/heap/ThreadState.h
+++ b/Source/platform/heap/ThreadState.h
@@ -52,7 +52,6 @@ struct GCInfo;
class HeapObjectHeader;
class PageMemory;
class PersistentNode;
-class WrapperPersistentRegion;
class Visitor;
class SafePointBarrier;
class SafePointAwareMutexLocker;
@@ -598,14 +597,6 @@ public:
BaseHeapPage* contains(void* pointer) { return contains(reinterpret_cast<Address>(pointer)); }
BaseHeapPage* contains(const void* pointer) { return contains(const_cast<void*>(pointer)); }
- WrapperPersistentRegion* wrapperRoots() const
- {
- ASSERT(m_liveWrapperPersistents);
- return m_liveWrapperPersistents;
- }
- WrapperPersistentRegion* takeWrapperPersistentRegion();
- void freeWrapperPersistentRegion(WrapperPersistentRegion*);
-
// List of persistent roots allocated on the given thread.
PersistentNode* roots() const { return m_persistents.get(); }
@@ -699,6 +690,11 @@ public:
void shouldFlushHeapDoesNotContainCache() { m_shouldFlushHeapDoesNotContainCache = true; }
+ void registerTraceDOMWrappers(void (*traceDOMWrappers)(Visitor*))
+ {
+ m_traceDOMWrappers = traceDOMWrappers;
+ }
+
private:
explicit ThreadState();
~ThreadState();
@@ -756,9 +752,6 @@ private:
static uint8_t s_mainThreadStateStorage[];
ThreadIdentifier m_thread;
- WrapperPersistentRegion* m_liveWrapperPersistents;
- WrapperPersistentRegion* m_pooledWrapperPersistents;
- size_t m_pooledWrapperPersistentRegionCount;
OwnPtr<PersistentNode> m_persistents;
StackState m_stackState;
intptr_t* m_startOfStack;
@@ -791,6 +784,8 @@ private:
CallbackStack* m_weakCallbackStack;
HashMap<void*, bool (*)(void*, Visitor&)> m_preFinalizers;
+ void (*m_traceDOMWrappers)(Visitor*);
+
#if defined(ADDRESS_SANITIZER)
void* m_asanFakeStack;
#endif

Powered by Google App Engine
This is Rietveld 408576698