| Index: vm/raw_object.h
|
| ===================================================================
|
| --- vm/raw_object.h (revision 6294)
|
| +++ vm/raw_object.h (working copy)
|
| @@ -127,6 +127,7 @@
|
| VISITOR_SUPPORT(object) \
|
| friend class object; \
|
| friend class RawObject; \
|
| + friend class Heap; \
|
| DISALLOW_ALLOCATION(); \
|
| DISALLOW_IMPLICIT_CONSTRUCTORS(Raw##object)
|
|
|
| @@ -251,6 +252,7 @@
|
|
|
| void Validate() const;
|
| intptr_t VisitPointers(ObjectPointerVisitor* visitor);
|
| + bool FindObject(FindObjectVisitor* visitor);
|
|
|
| static RawObject* FromAddr(uword addr) {
|
| // We expect the untagged address here.
|
| @@ -291,8 +293,10 @@
|
|
|
| intptr_t SizeFromClass() const;
|
|
|
| + friend class Heap;
|
| friend class Object;
|
| friend class Array;
|
| + friend class RawInstructions;
|
| friend class SnapshotWriter;
|
| friend class SnapshotReader;
|
| friend class MarkingVisitor;
|
| @@ -347,6 +351,7 @@
|
|
|
| friend class Object;
|
| friend class RawInstance;
|
| + friend class RawInstructions;
|
| friend RawClass* AllocateFakeClass();
|
| friend class SnapshotReader;
|
| };
|
| @@ -668,6 +673,9 @@
|
|
|
| // Variable length data follows here.
|
| int32_t data_[0];
|
| +
|
| + friend class DartFrame;
|
| + friend class StubFrame;
|
| };
|
|
|
|
|
| @@ -680,7 +688,13 @@
|
| // Variable length data follows here.
|
| uint8_t data_[0];
|
|
|
| + // Private helper function used while visiting stack frames. The
|
| + // code which iterates over dart frames is also called during GC and
|
| + // is not allowed to create handles.
|
| + static bool ContainsPC(RawObject* raw_obj, uword pc);
|
| +
|
| friend class RawCode;
|
| + friend class StackFrame;
|
| };
|
|
|
|
|
| @@ -714,6 +728,8 @@
|
| return reinterpret_cast<RawObject**>(&ptr()->bitmap_size_in_bytes_);
|
| }
|
| uword pc_; // PC corresponding to this stack map representation.
|
| + intptr_t min_set_bit_offset_; // Minimum bit offset which is set.
|
| + intptr_t max_set_bit_offset_; // Maximum bit offset which is set.
|
|
|
| // Variable length data follows here (bitmap of the stack layout).
|
| uint8_t data_[0];
|
| @@ -1034,6 +1050,7 @@
|
| return reinterpret_cast<RawObject**>(&ptr()->data()[length - 1]);
|
| }
|
|
|
| + friend class RawCode;
|
| friend class RawImmutableArray;
|
| friend class SnapshotReader;
|
| friend class GrowableObjectArray;
|
|
|