New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 833516 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 3
Type: Feature



Sign in to add a comment

Implement function prologue analysis to support additional unwind scenarios on OS X

Project Member Reported by wittman@chromium.org, Apr 16 2018

Issue description

If the sampling profiler stops the target thread while it is executing in a function prologue or epilogue, the register state will be inconsistent with the unwind information (since only some of the registers will have been pushed or popped). We currently wind up aborting the stack walk in these cases because we didn't know how to unwind the function and so it resulted in a failed unwind. This is likely a substantial fraction of the 4% of samples we currently are unable to collect.

If we identified instruction pointers in a prologue or epilogue we could simulate execution of the instructions to set the register state to the expected state for the unwind.
 

Sign in to add a comment