summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp
diff options
context:
space:
mode:
authorEd Maste <emaste@freebsd.org>2014-04-08 15:12:07 +0000
committerEd Maste <emaste@freebsd.org>2014-04-08 15:12:07 +0000
commit4a06df95b958ae4aef9f1b4c43c2a8e1d3eb72be (patch)
treea0c05f7b54ece4a099f96e72be3b5ef399f78fb1 /lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp
parent97a70e4f7e621bbf81f9ab726176903df9659ee6 (diff)
downloadbcm5719-llvm-4a06df95b958ae4aef9f1b4c43c2a8e1d3eb72be.tar.gz
bcm5719-llvm-4a06df95b958ae4aef9f1b4c43c2a8e1d3eb72be.zip
Accept DWARF version 2 and 3 in debug_line tables
Issue reported by Matthew Gardiner. Further work is necessary to synchronize LLDB's DWARF classes with the derivatives now in LLVM. llvm-svn: 205771
Diffstat (limited to 'lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp')
-rw-r--r--lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp b/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp
index f7eb613034d..46f77902cba 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp
+++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp
@@ -418,7 +418,7 @@ DWARFDebugLine::ParsePrologue(const DWARFDataExtractor& debug_line_data, lldb::o
const char * s;
prologue->total_length = debug_line_data.GetDWARFInitialLength(offset_ptr);
prologue->version = debug_line_data.GetU16(offset_ptr);
- if (prologue->version != 2)
+ if (prologue->version < 2 || prologue->version > 3)
return false;
prologue->prologue_length = debug_line_data.GetDWARFOffset(offset_ptr);
@@ -486,7 +486,7 @@ DWARFDebugLine::ParseSupportFiles (const lldb::ModuleSP &module_sp,
(void)debug_line_data.GetDWARFInitialLength(&offset);
const char * s;
uint32_t version = debug_line_data.GetU16(&offset);
- if (version != 2)
+ if (version < 2 || version > 3)
return false;
const dw_offset_t end_prologue_offset = debug_line_data.GetDWARFOffset(&offset) + offset;
OpenPOWER on IntegriCloud