summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
diff options
context:
space:
mode:
authorPavel Labath <labath@google.com>2018-06-07 12:26:18 +0000
committerPavel Labath <labath@google.com>2018-06-07 12:26:18 +0000
commit6938969223933cfb585488cb619bc96bee1f2a45 (patch)
treec9ef28726644dff54f6e9613a89503ec4026b012 /lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
parentf1c868ef08b1de62f95cf3e51956a5394803c2ab (diff)
downloadbcm5719-llvm-6938969223933cfb585488cb619bc96bee1f2a45.tar.gz
bcm5719-llvm-6938969223933cfb585488cb619bc96bee1f2a45.zip
DebugNamesDWARFIndex: Add type lookup suport
This implements just one of the GetTypes overloads. The other is not testable from lldb-test so I'm leaving it unimplemented until I figure out what to do with testing. llvm-svn: 334190
Diffstat (limited to 'lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp')
-rw-r--r--lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp b/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
index 5f20bc1ce8e..5d434e06170 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
+++ b/lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
@@ -98,6 +98,16 @@ void DebugNamesDWARFIndex::GetGlobalVariables(const RegularExpression &regex,
}
}
+void DebugNamesDWARFIndex::GetTypes(ConstString name, DIEArray &offsets) {
+ m_fallback.GetTypes(name, offsets);
+
+ for (const DebugNames::Entry &entry :
+ m_debug_names_up->equal_range(name.GetStringRef())) {
+ if (isType(entry.tag()))
+ Append(entry, offsets);
+ }
+}
+
void DebugNamesDWARFIndex::GetNamespaces(ConstString name, DIEArray &offsets) {
m_fallback.GetNamespaces(name, offsets);
OpenPOWER on IntegriCloud