CallTrace
: Disassemble managed prestubs to find the real method address
#26
Labels
area: diagnostics
Issues related to the call stack tracing APIs.
state: approved
Enhancements and tasks that have been approved.
Milestone
ruptura/src/memory/Diagnostics/CallFrame.cs
Lines 43 to 45 in 7016826
The issue is that the function pointer we get from
RuntimeMethodHandle.GetFunctionPointer()
points to the prestub for the method, but the instruction pointer we have (of course) points to the actual JIT'd method that was executed.One way we might solve this is by disassembling the prestub and following the jump to the actual method. But we would need to know for sure that
RuntimeMethodHandle.GetFunctionPointer()
always returns a pointer to a prestub.The text was updated successfully, but these errors were encountered: