llvm-project/lldb/source/Symbol
Pavel Labath cdda23eb7c Add debug_frame section support
Summary:
This is a beefed-up version of D33504, which adds support for dwarf 4
debug_frame section format.

The main difference here is that the decision whether to use eh_frame or
debug_frame is done on a per-function basis instead of per-object file.
This is necessary because one module can contain both sections (for
example, the start files added by the linker will typically pull in
eh_frame), but we want to be able to access both, for maximum
information.

I also add unit test for parsing various CFI formats (eh_frame,
debug_frame v3 and debug_frame v4).

Reviewers: jasonmolenda, clayborg

Subscribers: mgorny, aprantl, abidh, lldb-commits, tatyana-krasnukha

Differential Revision: https://reviews.llvm.org/D34613

llvm-svn: 306397
2017-06-27 11:16:26 +00:00
..
ArmUnwindInfo.cpp Remove dependencies from Utility to Core and Target. 2017-02-14 19:06:07 +00:00
Block.cpp Move Log from Core -> Utility. 2017-03-03 20:56:28 +00:00
CMakeLists.txt Remove dead include from GoASTContext.cpp. 2017-03-22 19:24:17 +00:00
ClangASTContext.cpp [TypeSystem] Handle Clang AttributedTypes 2017-06-02 01:24:18 +00:00
ClangASTImporter.cpp Move Log from Core -> Utility. 2017-03-03 20:56:28 +00:00
ClangExternalASTSourceCallbacks.cpp Move Log from Core -> Utility. 2017-03-03 20:56:28 +00:00
ClangExternalASTSourceCommon.cpp Move classes from Core -> Utility. 2017-02-02 21:39:50 +00:00
ClangUtil.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
CompactUnwindInfo.cpp Rename Error -> Status. 2017-05-12 04:51:55 +00:00
CompileUnit.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
CompilerDecl.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
CompilerDeclContext.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
CompilerType.cpp Rename Error -> Status. 2017-05-12 04:51:55 +00:00
DWARFCallFrameInfo.cpp Add debug_frame section support 2017-06-27 11:16:26 +00:00
DebugMacros.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
Declaration.cpp Move classes from Core -> Utility. 2017-02-02 21:39:50 +00:00
FuncUnwinders.cpp Add debug_frame section support 2017-06-27 11:16:26 +00:00
Function.cpp Fix the lldb_private::Function::GetDescription to print out the name and mangled name correctly. Previously this was getting the function type's name which was not correct. 2017-02-10 23:32:06 +00:00
GoASTContext.cpp Change UniqueCStringMap to use ConstString as the key 2017-05-02 10:17:30 +00:00
JavaASTContext.cpp Rename Error -> Status. 2017-05-12 04:51:55 +00:00
LineEntry.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
LineTable.cpp Fix a problem with line tables & .o files that start with code with no line table entries. 2017-03-20 19:19:03 +00:00
OCamlASTContext.cpp Isolate Target-specific functionality of DataExtractor. 2017-03-03 20:57:05 +00:00
ObjectFile.cpp Remove an expensive lock from Timer 2017-05-15 13:02:37 +00:00
Symbol.cpp Move classes from Core -> Utility. 2017-02-02 21:39:50 +00:00
SymbolContext.cpp [Expression parser] Look up module symbols before hunting globally 2017-05-16 23:46:13 +00:00
SymbolFile.cpp Provide a mechanism to do some pre-loading of symbols up front. 2017-04-28 00:51:06 +00:00
SymbolVendor.cpp Move classes from Core -> Utility. 2017-02-02 21:39:50 +00:00
Symtab.cpp Remove an expensive lock from Timer 2017-05-15 13:02:37 +00:00
Type.cpp Rename Error -> Status. 2017-05-12 04:51:55 +00:00
TypeList.cpp Improve Type::GetTypeScopeAndBasenameHelper and add unit tests 2017-01-10 11:13:59 +00:00
TypeMap.cpp Improve Type::GetTypeScopeAndBasenameHelper and add unit tests 2017-01-10 11:13:59 +00:00
TypeSystem.cpp [lldb] Fix typos in file headers 2016-11-26 05:23:44 +00:00
UnwindPlan.cpp Move Log from Core -> Utility. 2017-03-03 20:56:28 +00:00
UnwindTable.cpp Add debug_frame section support 2017-06-27 11:16:26 +00:00
Variable.cpp Rename Error -> Status. 2017-05-12 04:51:55 +00:00
VariableList.cpp Move classes from Core -> Utility. 2017-02-02 21:39:50 +00:00
VerifyDecl.cpp *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00