Adding basic support for Dwarf line number debug information.

I promise to keep future commits smaller.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25396 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/PowerPC/PPCAsmPrinter.cpp b/lib/Target/PowerPC/PPCAsmPrinter.cpp
index de865db..55f54c4 100644
--- a/lib/Target/PowerPC/PPCAsmPrinter.cpp
+++ b/lib/Target/PowerPC/PPCAsmPrinter.cpp
@@ -215,9 +215,11 @@
     : DwarfWriter(o, ap)
     {
       needsSet = true;
-      DwarfAbbrevSection = ".section __DWARFA,__debug_abbrev,regular,debug";
-      DwarfInfoSection = ".section __DWARFA,__debug_info,regular,debug";
-      DwarfLineSection = ".section __DWARFA,__debug_line,regular,debug";
+      DwarfAbbrevSection = ".section __DWARF,__debug_abbrev,regular,debug";
+      DwarfInfoSection = ".section __DWARF,__debug_info,regular,debug";
+      DwarfLineSection = ".section __DWARF,__debug_line,regular,debug";
+      TextSection = ".text";
+      DataSection = ".data";
     }
   };
 
@@ -607,6 +609,9 @@
     }
   }
 
+  // Emit initial debug information.
+  DW.EndModule();
+
   // Funny Darwin hack: This flag tells the linker that no global symbols
   // contain code that falls through to other global symbols (e.g. the obvious
   // implementation of multiple entry points).  If this doesn't occur, the
@@ -614,9 +619,6 @@
   // code that does this, it is always safe to set.
   O << "\t.subsections_via_symbols\n";
 
-  // Emit initial debug information.
-  DW.EndModule();
-
   AsmPrinter::doFinalization(M);
   return false; // success
 }