Index: runtime/vm/object.h |
diff --git a/runtime/vm/object.h b/runtime/vm/object.h |
index c8bf048bb3de85b50f15d56e8087b2cac391cc1d..fbc72e2c24a5a105d437f65e793012dc5d5298a4 100644 |
--- a/runtime/vm/object.h |
+++ b/runtime/vm/object.h |
@@ -542,6 +542,7 @@ class Object { |
static RawClass* singletargetcache_class() { |
return singletargetcache_class_; |
} |
+ static RawClass* unlinkedcall_class() { return unlinkedcall_class_; } |
static RawClass* icdata_class() { return icdata_class_; } |
static RawClass* megamorphic_cache_class() { |
return megamorphic_cache_class_; |
@@ -794,6 +795,7 @@ class Object { |
static RawClass* context_class_; // Class of the Context vm object. |
static RawClass* context_scope_class_; // Class of ContextScope vm object. |
static RawClass* singletargetcache_class_; // Class of SingleTargetCache. |
+ static RawClass* unlinkedcall_class_; // Class of UnlinkedCall. |
static RawClass* icdata_class_; // Class of ICData. |
static RawClass* megamorphic_cache_class_; // Class of MegamorphiCache. |
static RawClass* subtypetestcache_class_; // Class of SubtypeTestCache. |
@@ -1858,6 +1860,25 @@ DEFINE_NON_POINTER_FIELD_ACCESSORS(intptr_t, upper_limit); |
}; |
+class UnlinkedCall : public Object { |
+ public: |
+ RawString* target_name() const { return raw_ptr()->target_name_; } |
+ void set_target_name(const String& target_name) const; |
+ RawArray* args_descriptor() const { return raw_ptr()->args_descriptor_; } |
+ void set_args_descriptor(const Array& args_descriptor) const; |
+ |
+ static intptr_t InstanceSize() { |
+ return RoundedAllocationSize(sizeof(RawUnlinkedCall)); |
+ } |
+ |
+ static RawUnlinkedCall* New(); |
+ |
+ private: |
+ FINAL_HEAP_OBJECT_IMPLEMENTATION(UnlinkedCall, Object); |
+ friend class Class; |
+}; |
+ |
+ |
// Object holding information about an IC: test classes and their |
// corresponding targets. The owner of the ICData can be either the function |
// or the original ICData object. In case of background compilation we |