summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h')
-rw-r--r--lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h23
1 files changed, 22 insertions, 1 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h b/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h
index 1cf6a677450..9c1fc82f58b 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h
+++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h
@@ -17,9 +17,30 @@ class DWARFCompileUnit : public DWARFUnit {
public:
static DWARFUnitSP Extract(SymbolFileDWARF *dwarf2Data,
- lldb::offset_t *offset_ptr);
+ const lldb_private::DWARFDataExtractor &debug_info,
+ lldb::offset_t *offset_ptr);
void Dump(lldb_private::Stream *s) const override;
+ //------------------------------------------------------------------
+ /// Get the data that contains the DIE information for this unit.
+ ///
+ /// @return
+ /// The correct data (.debug_types for DWARF 4 and earlier, and
+ /// .debug_info for DWARF 5 and later) for the DIE information in
+ /// this unit.
+ //------------------------------------------------------------------
+ const lldb_private::DWARFDataExtractor &GetData() const override;
+
+ //------------------------------------------------------------------
+ /// Get the size in bytes of the header.
+ ///
+ /// @return
+ /// Byte size of the compile unit header
+ //------------------------------------------------------------------
+ uint32_t GetHeaderByteSize() const override {
+ return m_is_dwarf64 ? 23 : 11;
+ }
+
private:
DWARFCompileUnit(SymbolFileDWARF *dwarf2Data);
DISALLOW_COPY_AND_ASSIGN(DWARFCompileUnit);
OpenPOWER on IntegriCloud