llvm-project/lldb/source/Symbol
Jason Molenda e9c7ecf66e Read the LSDA and Personality Routine function address out of the
eh_frame data.  These two pieces of information are used in the
process of exception handler unwinding on SysV ABI systems.

This patch reads the data from the eh_frame section 
(DWARFCallFrameInfo.cpp), allows for it to be saved & read out
of a given UnwindPlan (UnwindPlan.h, UnwindPlan.cpp) - as well
as printing the information in the UnwindPlan::Dump method - and
adds methods to the FuncUnwinders object so that higher levels
can query if a given function has an LSDA / personality routine
defined.

It's only lightly tested, but seems to be working correctly as long
as your have this information in eh_frame.  Does not address getting
this information from compact unwind yet on Darwin systems.

<rdar://problem/18742797> 

llvm-svn: 222214
2014-11-18 02:27:42 +00:00
..
Block.cpp Switch NULL to C++11 nullptr in source/Symbol and source/Utility 2014-04-20 13:17:36 +00:00
CMakeLists.txt Convert to UNIX line endings. 2013-09-25 10:37:32 +00:00
ClangASTContext.cpp Fixed more fallout from running the test suite remotely on iOS devices. 2014-11-17 19:39:20 +00:00
ClangASTImporter.cpp Give user_id a default invalid value so we don't 2014-10-15 23:27:12 +00:00
ClangASTType.cpp Add the ability for a ClangASTType to be marked as 'packed' when constructed 2014-10-30 00:53:28 +00:00
ClangExternalASTSourceCallbacks.cpp Fix typos. 2014-07-01 21:22:11 +00:00
ClangExternalASTSourceCommon.cpp Switch NULL to C++11 nullptr in source/Symbol and source/Utility 2014-04-20 13:17:36 +00:00
ClangNamespaceDecl.cpp Added a packet history object to the GDBRemoteCommunication class that is always remembering the last 512 packets that were sent/received. These packets get dumped if logging gets enabled, or when the new expr lldb::DumpProcessGDBRemotePacketHistory (void *process, const char *log_file_path) global function is called. 2012-04-09 22:46:21 +00:00
CompileUnit.cpp For some reason, sometimes the directory paths that clang emits have internal 2014-11-15 01:54:26 +00:00
DWARFCallFrameInfo.cpp Read the LSDA and Personality Routine function address out of the 2014-11-18 02:27:42 +00:00
Declaration.cpp For some reason, sometimes the directory paths that clang emits have internal 2014-11-15 01:54:26 +00:00
FuncUnwinders.cpp Read the LSDA and Personality Routine function address out of the 2014-11-18 02:27:42 +00:00
Function.cpp Switch NULL to C++11 nullptr in source/Symbol and source/Utility 2014-04-20 13:17:36 +00:00
LineEntry.cpp DWARF says line number 0 is a valid line number - used to indicate a source line that should 2013-09-27 01:15:46 +00:00
LineTable.cpp Remove dead store. 2014-10-16 07:47:37 +00:00
Makefile
ObjectFile.cpp Remove unreachable code. 2014-10-16 08:05:49 +00:00
Symbol.cpp Make sure is_indirect local var is initialized; there 2014-10-15 03:05:38 +00:00
SymbolContext.cpp Add a new disassembly-format specification so that the disassembler 2014-10-10 23:07:36 +00:00
SymbolFile.cpp Switch NULL to C++11 nullptr in source/Symbol and source/Utility 2014-04-20 13:17:36 +00:00
SymbolVendor.cpp When adding a dSYM to an existing ObjectFile, we can have a situation 2014-08-22 02:46:46 +00:00
Symtab.cpp When adding a dSYM to an existing ObjectFile, we can have a situation 2014-08-22 02:46:46 +00:00
Type.cpp Extend the member function discovery APIs to also support Objective-C as well as C++ 2014-09-19 18:21:05 +00:00
TypeList.cpp cleanup unreferenced functions 2014-03-20 06:08:36 +00:00
UnwindPlan.cpp Read the LSDA and Personality Routine function address out of the 2014-11-18 02:27:42 +00:00
UnwindTable.cpp Add a lock in the UnwindTable class so two Targets won't try 2014-06-18 23:32:53 +00:00
Variable.cpp Add a new disassembly-format specification so that the disassembler 2014-10-10 23:07:36 +00:00
VariableList.cpp Restore the ability of SBFrame::FindValue() to look for file global variables 2014-02-19 19:35:13 +00:00
VerifyDecl.cpp Added VerifyDecl, a function that, when LLDB is 2011-10-26 01:06:27 +00:00