Index: runtime/vm/assembler_ia32.cc |
diff --git a/runtime/vm/assembler_ia32.cc b/runtime/vm/assembler_ia32.cc |
index 8f15c6e2105dc260f0cf24ec323e916ce6bbc787..9dc734bc49bcb89228a9622e4cc7c8c9270ae394 100644 |
--- a/runtime/vm/assembler_ia32.cc |
+++ b/runtime/vm/assembler_ia32.cc |
@@ -2815,6 +2815,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, kNoRegister, failure, near_jump); |
Isolate* isolate = Isolate::Current(); |
Heap* heap = isolate->heap(); |
Heap::Space space = heap->SpaceForAllocation(cid); |