Emit debug info for data-only files.  This version
applies to ppc Darwin only.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53353 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/PowerPC/PPCAsmPrinter.cpp b/lib/Target/PowerPC/PPCAsmPrinter.cpp
index 9c9dd39..98b4b4a 100644
--- a/lib/Target/PowerPC/PPCAsmPrinter.cpp
+++ b/lib/Target/PowerPC/PPCAsmPrinter.cpp
@@ -790,9 +790,6 @@
 /// method to print assembly for each instruction.
 ///
 bool DarwinAsmPrinter::runOnMachineFunction(MachineFunction &MF) {
-  // We need this for Personality functions.
-  MMI = &getAnalysis<MachineModuleInfo>();
-  DW.SetModuleInfo(MMI);
 
   SetupMachineFunction(MF);
   O << "\n\n";
@@ -887,6 +884,15 @@
      
   bool Result = AsmPrinter::doInitialization(M);
   
+  // Emit initial debug information.
+  DW.BeginModule(&M);
+
+  // We need this for Personality functions.
+  // AsmPrinter::doInitialization should have done this analysis.
+  MMI = getAnalysisToUpdate<MachineModuleInfo>();
+  assert(MMI);
+  DW.SetModuleInfo(MMI);
+
   // Darwin wants symbols to be quoted if they have complex names.
   Mang->setUseQuotes(true);
   
@@ -903,8 +909,6 @@
   }
   SwitchToTextSection(TAI->getTextSection());
   
-  // Emit initial debug information.
-  DW.BeginModule(&M);
   return Result;
 }