1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/lib/DebugInfo/DWARF
Greg Clayton aadbc74cdf Add the ability for DWARFDie objects to get the parent DWARFDie.
In order for the llvm DWARF parser to be used in LLDB we will need to be able to get the parent of a DIE. This patch adds that functionality by changing the DWARFDebugInfoEntry class to store a depth field instead of a sibling index. Using a depth field allows us to easily calculate the sibling and the parent without increasing the size of DWARFDebugInfoEntry.

I tested llvm-dsymutil on a debug version of clang where this fully parses DWARF in over 1200 .o files to verify there was no serious regression in performance.

Added a full suite of unit tests to test this functionality.

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

llvm-svn: 290274
2016-12-21 21:37:06 +00:00
..
CMakeLists.txt [DWARF] - Introduce DWARFDebugPubTable class for dumping pub* sections. 2016-12-17 09:10:32 +00:00
DWARFAbbreviationDeclaration.cpp Switch functions that returned bool and filled in a DWARFFormValue arg with ones that return Optional<DWARFFormValue> 2016-12-13 23:20:56 +00:00
DWARFAcceleratorTable.cpp Modify DWARFFormValue to remember the DWARFUnit that it was decoded with. 2016-10-31 16:46:02 +00:00
DWARFCompileUnit.cpp Make a DWARFDIE class that can help avoid using the wrong DWARFUnit when extracting attributes 2016-12-13 18:25:19 +00:00
DWARFContext.cpp [DWARF] - Introduce DWARFDebugPubTable class for dumping pub* sections. 2016-12-17 09:10:32 +00:00
DWARFDebugAbbrev.cpp
DWARFDebugAranges.cpp
DWARFDebugArangeSet.cpp
DWARFDebugFrame.cpp [DebugInfo] Fix some Clang-tidy modernize-use-default and Include What You Use warnings; other minor fixes (NFC). 2016-11-23 23:16:32 +00:00
DWARFDebugInfoEntry.cpp Add the ability for DWARFDie objects to get the parent DWARFDie. 2016-12-21 21:37:06 +00:00
DWARFDebugLine.cpp This change does two things: 2016-12-14 18:29:39 +00:00
DWARFDebugLoc.cpp Import/update constants from the DWARF 5 public review draft document. 2016-10-28 17:59:50 +00:00
DWARFDebugMacro.cpp [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
DWARFDebugPubTable.cpp [DWARF] - Introduce DWARFDebugPubTable class for dumping pub* sections. 2016-12-17 09:10:32 +00:00
DWARFDebugRangeList.cpp
DWARFDie.cpp Add the ability for DWARFDie objects to get the parent DWARFDie. 2016-12-21 21:37:06 +00:00
DWARFFormValue.cpp Revert "[ObjectYAML] Support for DWARF debug_info section" 2016-12-20 22:36:42 +00:00
DWARFGdbIndex.cpp Revert r282238 "Revert r282235 "[llvm-dwarfdump] - Teach dwarfdump to dump gdb-index section."" 2016-09-23 11:01:53 +00:00
DWARFTypeUnit.cpp Switch functions that returned bool and filled in a DWARFFormValue arg with ones that return Optional<DWARFFormValue> 2016-12-13 23:20:56 +00:00
DWARFUnit.cpp Add the ability for DWARFDie objects to get the parent DWARFDie. 2016-12-21 21:37:06 +00:00
DWARFUnitIndex.cpp dwarfdump: Correctly indentify the indicies for DWP records 2015-12-03 18:41:59 +00:00
LLVMBuild.txt
SyntaxHighlighting.cpp dwarfdump: Added macro support to llvm-dwarfdump tool. 2015-11-12 09:38:54 +00:00
SyntaxHighlighting.h dwarfdump: Added macro support to llvm-dwarfdump tool. 2015-11-12 09:38:54 +00:00