llvm-project/lldb/source/Plugins/ABI
Jason Molenda 995cd3a514 Have the FuncUnwinder object request & provide an architecture-defined
UnwindPlan for unwinding from the first instruction of an otherwise
unknown function call (GetUnwindPlanArchitectureDefaultAtFunctionEntry()).

Update RegisterContextLLDB::GetFullUnwindPlanForFrame() to detect the
case of a frame 0 at address 0x0 which indicates that we jumped through
a NULL function pointer.  Use the ABI's FunctionEntryUnwindPlan to
find the caller frame.

These changes make it so lldb can identify the calling frame correctly
in code like

int main ()
{
  void (*f)(void) = 0;
  f();
}

llvm-svn: 139760
2011-09-15 00:44:34 +00:00
..
MacOSX-arm Have the FuncUnwinder object request & provide an architecture-defined 2011-09-15 00:44:34 +00:00
MacOSX-i386 Have the FuncUnwinder object request & provide an architecture-defined 2011-09-15 00:44:34 +00:00
SysV-x86_64 Have the FuncUnwinder object request & provide an architecture-defined 2011-09-15 00:44:34 +00:00