summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h')
-rw-r--r--lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h44
1 files changed, 28 insertions, 16 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h b/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
index 8340acc427e..6e6fdf02b85 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
+++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h
@@ -11,6 +11,9 @@
#define liblldb_DWARFDebugInfoEntry_h_
#include "SymbolFileDWARF.h"
+
+#include "llvm/ADT/SmallVector.h"
+
#include "DWARFAbbreviationDeclaration.h"
#include "DWARFDebugRanges.h"
#include <vector>
@@ -76,7 +79,9 @@ public:
dw_attr_t attr;
dw_form_t form;
};
- std::vector<Info> m_infos;
+
+ typedef llvm::SmallVector<Info, 32> collection;
+ collection m_infos;
};
struct CompareState
@@ -116,6 +121,12 @@ public:
const DWARFCompileUnit* cu,
DWARFDebugAranges* debug_aranges) const;
+ bool FastExtract(
+ const lldb_private::DataExtractor& debug_info_data,
+ const DWARFCompileUnit* cu,
+ const uint8_t *fixed_form_sizes,
+ dw_offset_t* offset_ptr);
+
bool Extract(
SymbolFileDWARF* dwarf2Data,
const DWARFCompileUnit* cu,
@@ -131,6 +142,7 @@ public:
size_t GetAttributes(
SymbolFileDWARF* dwarf2Data,
const DWARFCompileUnit* cu,
+ const uint8_t *fixed_form_sizes,
DWARFDebugInfoEntry::Attributes& attrs) const;
dw_offset_t GetAttributeValue(
@@ -196,21 +208,21 @@ public:
const dw_offset_t die_offset,
lldb_private::Stream *s);
- static int Compare(
- SymbolFileDWARF* dwarf2Data,
- dw_offset_t a_die_offset,
- dw_offset_t b_die_offset,
- CompareState &compare_state,
- bool compare_siblings,
- bool compare_children);
-
- static int Compare(
- SymbolFileDWARF* dwarf2Data,
- DWARFCompileUnit* a_cu, const DWARFDebugInfoEntry* a_die,
- DWARFCompileUnit* b_cu, const DWARFDebugInfoEntry* b_die,
- CompareState &compare_state,
- bool compare_siblings,
- bool compare_children);
+// static int Compare(
+// SymbolFileDWARF* dwarf2Data,
+// dw_offset_t a_die_offset,
+// dw_offset_t b_die_offset,
+// CompareState &compare_state,
+// bool compare_siblings,
+// bool compare_children);
+//
+// static int Compare(
+// SymbolFileDWARF* dwarf2Data,
+// DWARFCompileUnit* a_cu, const DWARFDebugInfoEntry* a_die,
+// DWARFCompileUnit* b_cu, const DWARFDebugInfoEntry* b_die,
+// CompareState &compare_state,
+// bool compare_siblings,
+// bool compare_children);
static bool OffsetLessThan (
const DWARFDebugInfoEntry& a,
OpenPOWER on IntegriCloud