[llvm-dwp] Include the debug_line.dwo section
authorDavid Blaikie <dblaikie@gmail.com>
Fri, 4 Dec 2015 21:16:42 +0000 (21:16 +0000)
committerDavid Blaikie <dblaikie@gmail.com>
Fri, 4 Dec 2015 21:16:42 +0000 (21:16 +0000)
This probably shouldn't be generated in the .dwo file for CUs, only for
TUs, but it's in the sample .dwos (generated by clang) so dwp should
reflect that.

Arguably the DWP tool could be smart enough to know that the CUs
shouldn't need a debug_line.dwo section and skip that even when it's
legitimately generated for TUs, but that's a bit more off-book.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254767 91177308-0d34-0410-b5e6-96231b3b80d8

test/tools/llvm-dwp/X86/simple.test
tools/llvm-dwp/llvm-dwp.cpp

index 1c7b104..3c9795f 100644 (file)
@@ -45,10 +45,10 @@ CHECK:     DW_TAG_formal_parameter
 
 CHECK: .debug_cu_index contents:
 Ensure only the relevant/contained sections are included in the table:
-CHECK: Index Signature          INFO                     ABBREV                   STR_OFFSETS
+CHECK: Index Signature          INFO                     ABBREV                   LINE                     STR_OFFSETS
 Don't bother checking the Signatures, they aren't correct yet.
-CHECK:     1 [[DWOA]]           [0x00000000, 0x00000029) [0x00000000, 0x00000031) [0x00000000, 0x00000010)
-CHECK:     2 [[DWOB]]           [0x00000029, 0x0000005e) [0x00000031, 0x00000075) [0x00000010, 0x00000024)
+CHECK:     1 [[DWOA]]           [0x00000000, 0x00000029) [0x00000000, 0x00000031) [0x00000000, 0x00000011) [0x00000000, 0x00000010)
+CHECK:     2 [[DWOB]]           [0x00000029, 0x0000005e) [0x00000031, 0x00000075) [0x00000011, 0x00000022) [0x00000010, 0x00000024)
 
 CHECK: .debug_str.dwo contents:
 CHECK: "clang version
index b68ba43..f67ecbf 100644 (file)
@@ -139,6 +139,7 @@ static std::error_code write(MCStreamer &Out, ArrayRef<std::string> Inputs) {
       {"debug_str_offsets.dwo", {StrOffsetSection, DW_SECT_STR_OFFSETS}},
       {"debug_str.dwo", {StrSection, static_cast<DWARFSectionKind>(0)}},
       {"debug_loc.dwo", {MCOFI.getDwarfLocDWOSection(), DW_SECT_LOC}},
+      {"debug_line.dwo", {MCOFI.getDwarfLineDWOSection(), DW_SECT_LINE}},
       {"debug_abbrev.dwo", {MCOFI.getDwarfAbbrevDWOSection(), DW_SECT_ABBREV}}};
 
   struct UnitIndexEntry {