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

Unified Diff: src/objects.h

Issue 181833004: Fix memory leak caused by treating Code::next_code_link as strong in marker. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: fix test Created 6 years, 10 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: src/objects.h
diff --git a/src/objects.h b/src/objects.h
index 198ab36c5090c7d17661cc8a395056b19ce99bec..ec0c9198517964c17ccafe67bb43831a085c2b8c 100644
--- a/src/objects.h
+++ b/src/objects.h
@@ -305,6 +305,7 @@ enum MarkingParity {
EVEN_MARKING_PARITY
};
+
// ICs store extra state in a Code object. The default extra state is
// kNoExtraICState.
typedef int ExtraICState;
@@ -10685,6 +10686,13 @@ class VisitorSynchronization : public AllStatic {
static const char* const kTagNames[kNumberOfSyncTags];
};
+
+enum WeakPointerMode {
Michael Starzinger 2014/03/04 12:31:12 As discussed offline: I am not a particular fan of
ulan 2014/03/06 11:13:32 Done. Thanks for suggestion, it is cleaner indeed.
+ VISIT_WEAK_POINTERS,
+ SKIP_WEAK_POINTERS
+};
+
+
// Abstract base class for visiting, and optionally modifying, the
// pointers contained in Objects. Used in GC and serialization/deserialization.
class ObjectVisitor BASE_EMBEDDED {
@@ -10742,6 +10750,8 @@ class ObjectVisitor BASE_EMBEDDED {
// check for the presence of, a tag at this position in the stream.
// Also used for marking up GC roots in heap snapshots.
virtual void Synchronize(VisitorSynchronization::SyncTag tag) {}
+
+ virtual WeakPointerMode weak_pointer_mode() { return VISIT_WEAK_POINTERS; }
};
« no previous file with comments | « src/mark-compact.cc ('k') | src/objects-visiting.h » ('j') | src/objects-visiting-inl.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698