diff --git a/lib/MC/MCDwarf.cpp b/lib/MC/MCDwarf.cpp index 5bc0e43f59d..95cfe24eaae 100644 --- a/lib/MC/MCDwarf.cpp +++ b/lib/MC/MCDwarf.cpp @@ -613,7 +613,8 @@ static void EmitGenDwarfAranges(MCStreamer *MCOS, // The 4 byte offset to the compile unit in the .debug_info from the start // of the .debug_info. if (InfoSectionSymbol) - MCOS->EmitSymbolValue(InfoSectionSymbol, 4); + MCOS->EmitSymbolValue(InfoSectionSymbol, 4, + asmInfo->needsDwarfSectionOffsetDirective()); else MCOS->EmitIntValue(0, 4); // The 1 byte size of an address. diff --git a/test/DebugInfo/X86/dbg-asm.s b/test/DebugInfo/X86/dbg-asm.s index de4e8e4a97b..f6e5233ba45 100644 --- a/test/DebugInfo/X86/dbg-asm.s +++ b/test/DebugInfo/X86/dbg-asm.s @@ -14,6 +14,9 @@ _a: # CHECK-COFF: 0x6 IMAGE_REL_I386_SECREL .debug_abbrev # CHECK-COFF: 0xC IMAGE_REL_I386_SECREL .debug_line # CHECK-COFF: } +# CHECK-COFF: Section {{.*}} .debug_aranges { +# CHECK-COFF: 0x6 IMAGE_REL_I386_SECREL .debug_info +# CHECK-COFF: } # CHECK-COFF: ] # CHECK-ELF: Relocations [ @@ -21,4 +24,7 @@ _a: # CHECK-ELF: 0x6 R_386_32 .debug_abbrev # CHECK-ELF: 0xC R_386_32 .debug_line # CHECK-ELF: } +# CHECK-ELF: Section {{.*}} .rel.debug_aranges { +# CHECK-ELF: 0x6 R_386_32 .debug_info +# CHECK-ELF: } # CHECK-ELF: ]