summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp')
-rw-r--r--lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp b/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp
index 5257e943c61..82faf7fc06c 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp
+++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp
@@ -46,7 +46,7 @@ DWARFCompileUnit::DWARFCompileUnit(SymbolFileDWARF *dwarf2Data)
m_producer_version_minor(0), m_producer_version_update(0),
m_language_type(eLanguageTypeUnknown), m_is_dwarf64(false),
m_is_optimized(eLazyBoolCalculate), m_addr_base(0),
- m_base_obj_offset(DW_INVALID_OFFSET) {}
+ m_ranges_base(0), m_base_obj_offset(DW_INVALID_OFFSET) {}
DWARFCompileUnit::~DWARFCompileUnit() {}
@@ -307,7 +307,9 @@ void DWARFCompileUnit::AddCompileUnitDIE(DWARFDebugInfoEntry &die) {
dw_addr_t addr_base = cu_die.GetAttributeValueAsUnsigned(
m_dwarf2Data, this, DW_AT_GNU_addr_base, 0);
- dwo_cu->SetAddrBase(addr_base, m_offset);
+ dw_addr_t ranges_base = cu_die.GetAttributeValueAsUnsigned(
+ m_dwarf2Data, this, DW_AT_GNU_ranges_base, 0);
+ dwo_cu->SetAddrBase(addr_base, ranges_base, m_offset);
}
dw_offset_t DWARFCompileUnit::GetAbbrevOffset() const {
@@ -1114,8 +1116,10 @@ void DWARFCompileUnit::SetUserData(void *d) {
}
void DWARFCompileUnit::SetAddrBase(dw_addr_t addr_base,
+ dw_addr_t ranges_base,
dw_offset_t base_obj_offset) {
m_addr_base = addr_base;
+ m_ranges_base = ranges_base;
m_base_obj_offset = base_obj_offset;
}
OpenPOWER on IntegriCloud