summaryrefslogtreecommitdiff
path: root/lib/DebugInfo/DWARFContext.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/DebugInfo/DWARFContext.cpp')
-rw-r--r--lib/DebugInfo/DWARFContext.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/DebugInfo/DWARFContext.cpp b/lib/DebugInfo/DWARFContext.cpp
index c54a1da622..95a1b628f2 100644
--- a/lib/DebugInfo/DWARFContext.cpp
+++ b/lib/DebugInfo/DWARFContext.cpp
@@ -626,6 +626,8 @@ DWARFContextInMemory::DWARFContextInMemory(object::ObjectFile *Obj) :
RangeDWOSection = data;
}
} else if (name == "debug_types") {
+ // Find debug_types data by section rather than name as there are
+ // multiple, comdat grouped, debug_types sections.
TypesSections[*i].Data = data;
}
@@ -649,6 +651,8 @@ DWARFContextInMemory::DWARFContextInMemory(object::ObjectFile *Obj) :
if (!Map) {
if (RelSecName != "debug_types")
continue;
+ // Find debug_types relocs by section rather than name as there are
+ // multiple, comdat grouped, debug_types sections.
Map = &TypesSections[*RelocatedSection].Relocs;
}