Index: runtime/vm/heap.h |
diff --git a/runtime/vm/heap.h b/runtime/vm/heap.h |
index 6dd44192735d1676382984b55633bc05276f161a..9b7015b332b90ac115d09053a827392e50de0508 100644 |
--- a/runtime/vm/heap.h |
+++ b/runtime/vm/heap.h |
@@ -231,6 +231,19 @@ class Heap { |
return size <= kNewAllocatableSize; |
} |
+ void set_object_id_ring_table(RawObject** object_id_ring_table, |
Ivan Posva
2013/07/10 01:10:13
How about set_object_id_table and object_id_table(
Cutch
2013/07/10 17:23:10
Done.
|
+ intptr_t object_id_ring_table_size) { |
+ ASSERT(!gc_in_progress_); |
+ object_id_ring_table_ = object_id_ring_table; |
+ object_id_ring_table_size_ = object_id_ring_table_size; |
+ } |
+ RawObject** get_object_id_ring_table() { |
Ivan Posva
2013/07/10 01:10:13
Why does this return the naked internals of the Ob
Cutch
2013/07/10 17:23:10
I've killed this and now the marker and scavenger
|
+ return object_id_ring_table_; |
+ } |
+ intptr_t get_object_id_ring_table_size() { |
+ return object_id_ring_table_size_; |
+ } |
+ |
private: |
class GCStats : public ValueObject { |
public: |
@@ -293,6 +306,10 @@ class Heap { |
// GC on the heap is in progress. |
bool gc_in_progress_; |
+ // Ring of objects who have a vm service id assigned to them. |
+ RawObject** object_id_ring_table_; |
+ intptr_t object_id_ring_table_size_; |
+ |
friend class GCTestHelper; |
DISALLOW_COPY_AND_ASSIGN(Heap); |
}; |