Index: llvm/lib/DebugInfo/DWARF/DWARFDie.cpp =================================================================== --- llvm/lib/DebugInfo/DWARF/DWARFDie.cpp +++ llvm/lib/DebugInfo/DWARF/DWARFDie.cpp @@ -59,12 +59,14 @@ const DWARFAddressRangesVector &Ranges, unsigned AddressSize, unsigned Indent, const DIDumpOptions &DumpOpts) { + if (!DumpOpts.ShowAddresses) + return; + ArrayRef SectionNames; if (DumpOpts.Verbose) SectionNames = Obj.getSectionNames(); for (const DWARFAddressRange &R : Ranges) { - OS << '\n'; OS.indent(Indent); R.dump(OS, AddressSize); Index: llvm/test/DebugInfo/X86/dwarfdump-ranges-unrelocated.s =================================================================== --- llvm/test/DebugInfo/X86/dwarfdump-ranges-unrelocated.s +++ llvm/test/DebugInfo/X86/dwarfdump-ranges-unrelocated.s @@ -21,6 +21,16 @@ # BRIEF-NEXT: [0x0000000000000000, 0x0000000000000002) # BRIEF-NEXT: [0x0000000000000000, 0x0000000000000003)) +# RUN: llvm-dwarfdump -diff %t | FileCheck %s --check-prefix=DIFF +# DIFF: DW_TAG_compile_unit +# DIFF-NEXT: DW_AT_producer () +# DIFF-NEXT: DW_AT_language (DW_LANG_C_plus_plus) +# DIFF-NEXT: DW_AT_name () +# DIFF-NEXT: DW_AT_stmt_list () +# DIFF-NEXT: DW_AT_comp_dir () +# DIFF-NEXT: DW_AT_low_pc () +# DIFF-NEXT: DW_AT_ranges () + ## Asm code for testcase is a reduced and modified output from next ## invocation and source: # clang test.cpp -S -o test.s -gmlt -ffunction-sections