1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00

Revert "[DWARF5] Start emitting DW_AT_dwo_name when -gdwarf-5 is specified."

This reverts commit 6ef01588f4d75ef43da4ed2a37ba7a8b8daab259.
Missing Differetial revision.
This commit is contained in:
Sourabh Singh Tomar 2019-12-11 01:19:43 +05:30
parent 5eb810ab72
commit b6ee09cff1
4 changed files with 8 additions and 16 deletions

View File

@ -856,13 +856,10 @@ void DwarfDebug::finishUnitAttributes(const DICompileUnit *DIUnit,
// This CU is either a clang module DWO or a skeleton CU. // 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, NewCU.addUInt(Die, dwarf::DW_AT_GNU_dwo_id, dwarf::DW_FORM_data8,
DIUnit->getDWOId()); DIUnit->getDWOId());
if (!DIUnit->getSplitDebugFilename().empty()) { if (!DIUnit->getSplitDebugFilename().empty())
// This is a prefabricated skeleton CU. // This is a prefabricated skeleton CU.
dwarf::Attribute attrDWOName = getDwarfVersion() >= 5 NewCU.addString(Die, dwarf::DW_AT_GNU_dwo_name,
? dwarf::DW_AT_dwo_name DIUnit->getSplitDebugFilename());
: dwarf::DW_AT_GNU_dwo_name;
NewCU.addString(Die, attrDWOName, DIUnit->getSplitDebugFilename());
}
} }
} }
// Create new DwarfCompileUnit for the given metadata node with tag // Create new DwarfCompileUnit for the given metadata node with tag
@ -1104,13 +1101,10 @@ void DwarfDebug::finalizeModuleInfo() {
bool HasSplitUnit = SkCU && !TheCU.getUnitDie().children().empty(); bool HasSplitUnit = SkCU && !TheCU.getUnitDie().children().empty();
if (HasSplitUnit) { if (HasSplitUnit) {
dwarf::Attribute attrDWOName = getDwarfVersion() >= 5
? dwarf::DW_AT_dwo_name
: dwarf::DW_AT_GNU_dwo_name;
finishUnitAttributes(TheCU.getCUNode(), TheCU); finishUnitAttributes(TheCU.getCUNode(), TheCU);
TheCU.addString(TheCU.getUnitDie(), attrDWOName, TheCU.addString(TheCU.getUnitDie(), dwarf::DW_AT_GNU_dwo_name,
Asm->TM.Options.MCOptions.SplitDwarfFile); 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); Asm->TM.Options.MCOptions.SplitDwarfFile);
// Emit a unique identifier for this CU. // Emit a unique identifier for this CU.
uint64_t ID = uint64_t ID =

View File

@ -554,9 +554,7 @@ bool DWARFUnit::parseDWO() {
DWARFDie UnitDie = getUnitDIE(); DWARFDie UnitDie = getUnitDIE();
if (!UnitDie) if (!UnitDie)
return false; return false;
auto DWOFileName = getVersion() >= 5 auto DWOFileName = dwarf::toString(UnitDie.find(DW_AT_GNU_dwo_name));
? dwarf::toString(UnitDie.find(DW_AT_dwo_name))
: dwarf::toString(UnitDie.find(DW_AT_GNU_dwo_name));
if (!DWOFileName) if (!DWOFileName)
return false; return false;
auto CompilationDir = dwarf::toString(UnitDie.find(DW_AT_comp_dir)); auto CompilationDir = dwarf::toString(UnitDie.find(DW_AT_comp_dir));

View File

@ -30,7 +30,7 @@
; DWARF5-NOT: Compile Unit ; DWARF5-NOT: Compile Unit
; DWARF5: DW_TAG_skeleton_unit ; DWARF5: DW_TAG_skeleton_unit
; DWARF5-NOT: DW_TAG_{{.*}} ; 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_addr_base{{.*}}0x00000008
; DWARF5: DW_AT_low_pc [DW_FORM_addrx] (indexed (00000000) address = 0x0000000000000000 ".text") ; DWARF5: DW_AT_low_pc [DW_FORM_addrx] (indexed (00000000) address = 0x0000000000000000 ".text")
; DWARF5: .debug_addr contents: ; DWARF5: .debug_addr contents:

View File

@ -60,7 +60,7 @@
; SPLIT-NOT: {{DW_TAG|contents:}} ; SPLIT-NOT: {{DW_TAG|contents:}}
; SPLIT: DW_AT_str_offsets_base [DW_FORM_sec_offset] (0x00000008) ; 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_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. ; Check for the split CU in .debug_info.dwo.
; SPLIT: .debug_info.dwo contents: ; SPLIT: .debug_info.dwo contents: