llvm-project/llvm/lib/DebugInfo/DWARF
Pavel Labath d6ca063907 DWARFAcceleratorTable: Add an iterator-based api for accessing names in the index
Summary:
Back when we were introducing the DWARF v5 name index, there was a
short discussion whether we shouldn't have a nicer api for iterating
over the index. At that time, I did not find it necessary since the
iteration over names was done only from within the index itself (and I
figured the internal implementation can deal with a slightly rough
interface).

However, now I ran into a use for this kind of API in LLDB (for finding
all names matching a regular expression), so it looked like a nice
opportunity to introduce one. To make the API more useful, I've made the
NameTableEntry class a bit smarter: it now stores the string section
reference (so it can return its name) and its position in the name index
(mainly useful for dumping/logging).

I also convert the internal users to use the new API, which also gives
test coverage for the added code.

Reviewers: JDevlieghere, aprantl, dblaikie

Subscribers: llvm-commits

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

llvm-svn: 333738
2018-06-01 10:33:11 +00:00
..
CMakeLists.txt [Support] Move syntax highlighting into support 2018-03-09 09:56:24 +00:00
DWARFAbbreviationDeclaration.cpp [dwarf] Unify unknown dwarf enum formatting code 2018-03-21 11:46:37 +00:00
DWARFAcceleratorTable.cpp DWARFAcceleratorTable: Add an iterator-based api for accessing names in the index 2018-06-01 10:33:11 +00:00
DWARFAddressRange.cpp [DWARF v5] Support for verbose dumping of .debug_rnglist entries 2018-03-08 20:52:35 +00:00
DWARFCompileUnit.cpp [DWARFv5] Put the DWO ID in its place. 2018-05-22 17:27:31 +00:00
DWARFContext.cpp [DWARFv5] Put the DWO ID in its place. 2018-05-22 17:27:31 +00:00
DWARFDataExtractor.cpp Reland "[DebugInfo] Support DWARF expressions in eh_frame" 2018-03-08 00:46:53 +00:00
DWARFDebugAbbrev.cpp dwarfdump: Delay parsing abbreviations until they're needed 2017-09-19 15:13:55 +00:00
DWARFDebugArangeSet.cpp [DebugInfo] Unify dumping of address ranges 2018-01-16 11:17:57 +00:00
DWARFDebugAranges.cpp [DebugInfo] Change std::sort to llvm::sort in response to r327219 2018-04-01 16:18:49 +00:00
DWARFDebugFrame.cpp [DebugInfo] Accept `S` in augmentation strings in CIE. 2018-05-08 06:21:12 +00:00
DWARFDebugInfoEntry.cpp [DWARF] NFC: DWARFDataExtractor combines relocs with DataExtractor. 2017-06-29 16:52:08 +00:00
DWARFDebugLine.cpp [DWARF] Refactor callback usage for .debug_line error handling 2018-05-21 15:30:54 +00:00
DWARFDebugLoc.cpp [DebugInfo] Use absolute addresses in location lists 2018-05-21 19:36:54 +00:00
DWARFDebugMacro.cpp [Support] Move syntax highlighting into support 2018-03-09 09:56:24 +00:00
DWARFDebugPubTable.cpp llvm-dwarfdump: Factor out the printing of the section header (NFC) 2017-09-15 17:39:50 +00:00
DWARFDebugRangeList.cpp [DWARF v5] Add limited support for dumping .debug_rnglists 2018-02-02 12:35:52 +00:00
DWARFDebugRnglists.cpp Fixing buildbot error introduced with r332759. 2018-05-18 21:44:28 +00:00
DWARFDie.cpp [dwarfdump] Make -c and -p work together 2018-05-26 19:39:56 +00:00
DWARFExpression.cpp Reland "[DebugInfo] Support DWARF expressions in eh_frame" 2018-03-08 00:46:53 +00:00
DWARFFormValue.cpp [DWARF v5] Improved support for .debug_rnglists (consumer). Enables any consumer to 2018-05-18 20:12:54 +00:00
DWARFGdbIndex.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
DWARFTypeUnit.cpp [DWARF] Factor out a DWARFUnitHeader class. NFC 2018-05-14 20:32:31 +00:00
DWARFUnit.cpp [DWARFv5] Put the DWO ID in its place. 2018-05-22 17:27:31 +00:00
DWARFUnitIndex.cpp dwarfdump/symbolizer: Avoid loading unneeded CUs from a DWP 2017-09-19 18:36:11 +00:00
DWARFVerifier.cpp DWARFAcceleratorTable: Add an iterator-based api for accessing names in the index 2018-06-01 10:33:11 +00:00
LLVMBuild.txt [dwarfdump] Pretty print location expressions and location lists 2017-08-29 21:41:21 +00:00