summaryrefslogtreecommitdiff
path: root/lib/DebugInfo/DWARFCompileUnit.cpp
diff options
context:
space:
mode:
authorAlexey Samsonov <samsonov@google.com>2013-04-09 14:09:42 +0000
committerAlexey Samsonov <samsonov@google.com>2013-04-09 14:09:42 +0000
commit32a3e78304a94ea214aee5fe82b10dd110e8863a (patch)
tree0bbeb2eebc8d00a9bd64a4513f689de3e8af8d04 /lib/DebugInfo/DWARFCompileUnit.cpp
parent3c5aaa20ee2422e3530d38b9f0199b182da8eb82 (diff)
downloadllvm-32a3e78304a94ea214aee5fe82b10dd110e8863a.tar.gz
llvm-32a3e78304a94ea214aee5fe82b10dd110e8863a.tar.bz2
llvm-32a3e78304a94ea214aee5fe82b10dd110e8863a.tar.xz
DWARF parser: Fix DWARF-2/3 incompatibility: size of DW_FORM_ref_addr is the same as DW_FORM_addr in DWARF2, and is 4/8 bytes on 32/64-bit DWARF starting from DWARF3. Adding a test for this is a huge pain - generating and uploading pre-built binary with DWARF3 debug info is way too ugly, and writing fine-grained unittests for DebugInfo is impossible, as it doesn't expose any headers in include/llvm. That said, I'm going to choose the second approach and submit the patch exposing DebugInfo headers for review soon enough.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179095 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/DebugInfo/DWARFCompileUnit.cpp')
-rw-r--r--lib/DebugInfo/DWARFCompileUnit.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/DebugInfo/DWARFCompileUnit.cpp b/lib/DebugInfo/DWARFCompileUnit.cpp
index e3e4ccd7d9..1f2b40fbbe 100644
--- a/lib/DebugInfo/DWARFCompileUnit.cpp
+++ b/lib/DebugInfo/DWARFCompileUnit.cpp
@@ -165,7 +165,7 @@ size_t DWARFCompileUnit::extractDIEsIfNeeded(bool cu_die_only) {
// we were told to parse
const uint8_t *fixed_form_sizes =
- DWARFFormValue::getFixedFormSizesForAddressSize(getAddressByteSize());
+ DWARFFormValue::getFixedFormSizes(getAddressByteSize(), getVersion());
while (offset < next_cu_offset &&
die.extractFast(this, fixed_form_sizes, &offset)) {