| Index: runtime/vm/isolate.h
|
| diff --git a/runtime/vm/isolate.h b/runtime/vm/isolate.h
|
| index 27ad1ea9725c2b2d9860e7cc20865fe081b42220..b8eb6c28410e13ecfdb4ede6fc83408f77b3203f 100644
|
| --- a/runtime/vm/isolate.h
|
| +++ b/runtime/vm/isolate.h
|
| @@ -55,6 +55,7 @@ class StubCode;
|
| class TypeArguments;
|
| class TypeParameter;
|
| class ObjectHistogram;
|
| +class ObjectIdRing;
|
|
|
|
|
| // Used by the deoptimization infrastructure to defer allocation of unboxed
|
| @@ -533,6 +534,13 @@ class Isolate : public BaseIsolate {
|
| }
|
| intptr_t deopt_frame_copy_size() const { return deopt_frame_copy_size_; }
|
|
|
| + void set_object_id_ring(ObjectIdRing* ring) {
|
| + object_id_ring_ = ring;
|
| + }
|
| + ObjectIdRing* object_id_ring() {
|
| + return object_id_ring_;
|
| + }
|
| +
|
| void PrepareForDeferredMaterialization(intptr_t count) {
|
| if (count > 0) {
|
| deferred_objects_ = new DeferredObject*[count];
|
| @@ -686,6 +694,9 @@ class Isolate : public BaseIsolate {
|
| intptr_t stack_frame_index_;
|
| ObjectHistogram* object_histogram_;
|
|
|
| + // Ring buffer of objects assigned an id.
|
| + ObjectIdRing* object_id_ring_;
|
| +
|
| // Reusable handles support.
|
| #define REUSABLE_HANDLE_FIELDS(object) \
|
| object* object##_handle_; \
|
|
|