diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index f6039cc5bc0..89a0e350f8f 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -856,13 +856,10 @@ void DwarfDebug::finishUnitAttributes(const DICompileUnit *DIUnit, // This CU is either a clang module DWO or a skeleton CU. NewCU.addUInt(Die, dwarf::DW_AT_GNU_dwo_id, dwarf::DW_FORM_data8, DIUnit->getDWOId()); - if (!DIUnit->getSplitDebugFilename().empty()) { + if (!DIUnit->getSplitDebugFilename().empty()) // This is a prefabricated skeleton CU. - dwarf::Attribute attrDWOName = getDwarfVersion() >= 5 - ? dwarf::DW_AT_dwo_name - : dwarf::DW_AT_GNU_dwo_name; - NewCU.addString(Die, attrDWOName, DIUnit->getSplitDebugFilename()); - } + NewCU.addString(Die, dwarf::DW_AT_GNU_dwo_name, + DIUnit->getSplitDebugFilename()); } } // Create new DwarfCompileUnit for the given metadata node with tag @@ -1104,13 +1101,10 @@ void DwarfDebug::finalizeModuleInfo() { bool HasSplitUnit = SkCU && !TheCU.getUnitDie().children().empty(); if (HasSplitUnit) { - dwarf::Attribute attrDWOName = getDwarfVersion() >= 5 - ? dwarf::DW_AT_dwo_name - : dwarf::DW_AT_GNU_dwo_name; finishUnitAttributes(TheCU.getCUNode(), TheCU); - TheCU.addString(TheCU.getUnitDie(), attrDWOName, + TheCU.addString(TheCU.getUnitDie(), dwarf::DW_AT_GNU_dwo_name, Asm->TM.Options.MCOptions.SplitDwarfFile); - SkCU->addString(SkCU->getUnitDie(), attrDWOName, + SkCU->addString(SkCU->getUnitDie(), dwarf::DW_AT_GNU_dwo_name, Asm->TM.Options.MCOptions.SplitDwarfFile); // Emit a unique identifier for this CU. uint64_t ID = diff --git a/lib/DebugInfo/DWARF/DWARFUnit.cpp b/lib/DebugInfo/DWARF/DWARFUnit.cpp index 02f915bc6f7..4ccda628093 100644 --- a/lib/DebugInfo/DWARF/DWARFUnit.cpp +++ b/lib/DebugInfo/DWARF/DWARFUnit.cpp @@ -554,9 +554,7 @@ bool DWARFUnit::parseDWO() { DWARFDie UnitDie = getUnitDIE(); if (!UnitDie) return false; - auto DWOFileName = getVersion() >= 5 - ? dwarf::toString(UnitDie.find(DW_AT_dwo_name)) - : dwarf::toString(UnitDie.find(DW_AT_GNU_dwo_name)); + auto DWOFileName = dwarf::toString(UnitDie.find(DW_AT_GNU_dwo_name)); if (!DWOFileName) return false; auto CompilationDir = dwarf::toString(UnitDie.find(DW_AT_comp_dir)); diff --git a/test/DebugInfo/X86/debug_addr.ll b/test/DebugInfo/X86/debug_addr.ll index 424313ac2e6..55e24b2764c 100644 --- a/test/DebugInfo/X86/debug_addr.ll +++ b/test/DebugInfo/X86/debug_addr.ll @@ -30,7 +30,7 @@ ; DWARF5-NOT: Compile Unit ; DWARF5: DW_TAG_skeleton_unit ; DWARF5-NOT: DW_TAG_{{.*}} -; DWARF5: DW_AT_dwo_name{{.*}}test.dwo +; DWARF5: DW_AT_GNU_dwo_name{{.*}}test.dwo ; DWARF5: DW_AT_addr_base{{.*}}0x00000008 ; DWARF5: DW_AT_low_pc [DW_FORM_addrx] (indexed (00000000) address = 0x0000000000000000 ".text") ; DWARF5: .debug_addr contents: diff --git a/test/DebugInfo/X86/string-offsets-table.ll b/test/DebugInfo/X86/string-offsets-table.ll index cff779445ed..be960d1e017 100644 --- a/test/DebugInfo/X86/string-offsets-table.ll +++ b/test/DebugInfo/X86/string-offsets-table.ll @@ -60,7 +60,7 @@ ; SPLIT-NOT: {{DW_TAG|contents:}} ; SPLIT: DW_AT_str_offsets_base [DW_FORM_sec_offset] (0x00000008) ; SPLIT: DW_AT_comp_dir [DW_FORM_strx1] (indexed (00000000) string = "/home/test") -; SPLIT: DW_AT_dwo_name [DW_FORM_strx1] (indexed (00000001) string = "foo.dwo") +; SPLIT: DW_AT_GNU_dwo_name [DW_FORM_strx1] (indexed (00000001) string = "foo.dwo") ; Check for the split CU in .debug_info.dwo. ; SPLIT: .debug_info.dwo contents: