[llvm] r201389 - Revert "DebugInfo: Don't include the name of the CU file in the line table file list when it's unneeded"

Eric Christopher echristo at gmail.com
Thu Feb 13 21:33:16 PST 2014


Author: echristo
Date: Thu Feb 13 23:33:16 2014
New Revision: 201389

URL: http://llvm.org/viewvc/llvm-project?rev=201389&view=rev
Log:
Revert "DebugInfo: Don't include the name of the CU file in the line table file list when it's unneeded"

This reverts commit r201380 for now while we investigate.

Removed:
    llvm/trunk/test/DebugInfo/empty.ll
Modified:
    llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    llvm/trunk/lib/MC/MCObjectStreamer.cpp
    llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll

Modified: llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp?rev=201389&r1=201388&r2=201389&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp (original)
+++ llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp Thu Feb 13 23:33:16 2014
@@ -756,6 +756,9 @@ DwarfCompileUnit *DwarfDebug::constructD
   InfoHolder.addUnit(NewCU);
 
   FileIDCUMap[NewCU->getUniqueID()] = 0;
+  // Call this to emit a .file directive if it wasn't emitted for the source
+  // file this CU comes from yet.
+  getOrCreateSourceID(FN, CompilationDir, NewCU->getUniqueID());
 
   NewCU->addString(Die, dwarf::DW_AT_producer, DIUnit.getProducer());
   NewCU->addUInt(Die, dwarf::DW_AT_language, dwarf::DW_FORM_data2,

Modified: llvm/trunk/lib/MC/MCObjectStreamer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCObjectStreamer.cpp?rev=201389&r1=201388&r2=201389&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCObjectStreamer.cpp (original)
+++ llvm/trunk/lib/MC/MCObjectStreamer.cpp Thu Feb 13 23:33:16 2014
@@ -379,8 +379,7 @@ void MCObjectStreamer::EmitZeros(uint64_
 void MCObjectStreamer::FinishImpl() {
   // Dump out the dwarf file & directory tables and line tables.
   const MCSymbol *LineSectionSymbol = NULL;
-  if (!getContext().getMCLineTableSymbols().empty() ||
-      getContext().hasDwarfFiles())
+  if (getContext().hasDwarfFiles())
     LineSectionSymbol = MCDwarfFileTable::Emit(this);
 
   // If we are generating dwarf for assembly source files dump out the sections.

Modified: llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll?rev=201389&r1=201388&r2=201389&view=diff
==============================================================================
--- llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll (original)
+++ llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll Thu Feb 13 23:33:16 2014
@@ -125,14 +125,6 @@
 ; CHECK: DW_TAG_member
 ; CHECK-NEXT: DW_AT_name{{.*}}"a"
 
-; CHECK-LABEL: .debug_line contents:
-; CHECK: Line table prologue
-; CHECK-NOT: file_names[
-; CHECK: file_names{{.*}} bar.h
-; CHECK: file_names{{.*}} bar.cpp
-; CHECK-NOT: file_names[
-; CHECK-LABEL: .debug_str contents:
-
 ; Use the unit size as a rough hash/identifier for the unit we're dealing with
 ; it happens to be unambiguous at the moment, but it's hardly ideal.
 ; CHECK-LABEL: .debug_pubtypes contents:

Removed: llvm/trunk/test/DebugInfo/empty.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/empty.ll?rev=201388&view=auto
==============================================================================
--- llvm/trunk/test/DebugInfo/empty.ll (original)
+++ llvm/trunk/test/DebugInfo/empty.ll (removed)
@@ -1,20 +0,0 @@
-; RUN: llc %s -o %t -filetype=obj
-; RUN: llvm-dwarfdump -debug-dump=line %t | FileCheck %s
-
-; *-win32 doesn't emit Dwarf line table.
-; XFAIL: win32
-
-; Expect no line table entry since there are no functions and file references in this compile unit
-; CHECK: .debug_line contents:
-; CHECK: Line table prologue:
-; CHECK: total_length: 0x00000019
-; CHECK-NOT: file_names[
-
-!llvm.dbg.cu = !{!0}
-!llvm.module.flags = !{!5}
-
-!0 = metadata !{i32 720913, metadata !4, i32 12, metadata !"clang version 3.1 (trunk 143523)", i1 true, metadata !"", i32 0, metadata !2, metadata !2, metadata !2, metadata !2, null, metadata !""} ; [ DW_TAG_compile_unit ]
-!2 = metadata !{}
-!3 = metadata !{i32 786473, metadata !4} ; [ DW_TAG_file_type ]
-!4 = metadata !{metadata !"empty.c", metadata !"/home/nlewycky"}
-!5 = metadata !{i32 1, metadata !"Debug Info Version", i32 1}





More information about the llvm-commits mailing list