Index: runtime/vm/assembler_x64.cc |
diff --git a/runtime/vm/assembler_x64.cc b/runtime/vm/assembler_x64.cc |
index 2b46d9bb4fca07400f6e293bc058845e8188352f..9dec194df36ca88ebb5a95ddeca9dceb865b2fcc 100644 |
--- a/runtime/vm/assembler_x64.cc |
+++ b/runtime/vm/assembler_x64.cc |
@@ -3603,6 +3603,10 @@ void Assembler::TryAllocateArray(intptr_t cid, |
Register end_address) { |
ASSERT(failure != NULL); |
if (FLAG_inline_alloc) { |
+ // If this allocation is traced, program will jump to failure path |
+ // (i.e. the allocation stub) which will allocate the object and trace the |
+ // allocation call site. |
+ MaybeTraceAllocation(cid, failure, near_jump); |
Isolate* isolate = Isolate::Current(); |
Heap* heap = isolate->heap(); |
Heap::Space space = heap->SpaceForAllocation(cid); |