Index: runtime/vm/code_generator.cc |
diff --git a/runtime/vm/code_generator.cc b/runtime/vm/code_generator.cc |
index a3f0c839019a3e61fb1dfc03647720fb78c1ec42..c4b2f2b2c961e158f30ba083d5c906baac671ba2 100644 |
--- a/runtime/vm/code_generator.cc |
+++ b/runtime/vm/code_generator.cc |
@@ -14,6 +14,7 @@ |
#include "vm/debugger.h" |
#include "vm/deopt_instructions.h" |
#include "vm/exceptions.h" |
+#include "vm/heap_class_stats.h" |
#include "vm/intermediate_language.h" |
#include "vm/object_store.h" |
#include "vm/message.h" |
@@ -109,6 +110,8 @@ DEFINE_RUNTIME_ENTRY(AllocateArray, 2) { |
// Return value: newly allocated object. |
DEFINE_RUNTIME_ENTRY(AllocateObject, 3) { |
const Class& cls = Class::CheckedHandle(arguments.ArgAt(0)); |
+ // Report allocate to heap class stats. |
+ isolate->heap_class_stats()->AllocateClass(cls.id()); |
const Instance& instance = Instance::Handle(Instance::New(cls)); |
arguments.SetReturn(instance); |
if (cls.NumTypeArguments() == 0) { |