DescriptionCorrectly setup exit frame when calling into allocation tracker
The change introduces RecordObjectAllocationStub which is passed newly allocated object address and size as values on the stack. The stub constructs EXIT frame, saves registers, puts arguments into registers in accord with the calling convention and calls into the HeapProfiler.
allow_builtins_on_stack flag was added to stack iterators to let them know that we may start iterating stack when paused inside a builtin (this is not uncommon to have heap allocations inside builtins) and that the assert inside StackFrame::ComputeType should be relaxed.
Before this change we didn't write exit frame pointer into Isolate::c_entry_fp so the stack iteration would fail in many cases.
BUG=None
Patch Set 1 #Patch Set 2 : Introduced stub for reporting allocations #Patch Set 3 : #Patch Set 4 : Added comment #
Total comments: 2
Patch Set 5 : Added PrintName #
Total comments: 6
Patch Set 6 : Added AllowStubCallsScope #
Messages
Total messages: 19 (0 generated)
|