Chromium Code Reviews| 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; } |
| }; |