Use PassManager instead of FunctionPassManager in CodeGen. r210280 has introduced ModulePass in CodeGenPass.

llvm-svn: 210441
diff --git a/dragonegg/src/Backend.cpp b/dragonegg/src/Backend.cpp
index 5737d85..791d09f 100644
--- a/dragonegg/src/Backend.cpp
+++ b/dragonegg/src/Backend.cpp
@@ -152,7 +152,7 @@
 /// code generator.
 static FunctionPassManager *PerFunctionPasses = 0;
 static PassManager *PerModulePasses = 0;
-static FunctionPassManager *CodeGenPasses = 0;
+static PassManager *CodeGenPasses = 0;
 
 static void createPerFunctionOptimizationPasses();
 static void createPerModuleOptimizationPasses();
@@ -780,8 +780,7 @@
     // FIXME: This is disabled right now until bugs can be worked out.  Reenable
     // this for fast -O0 compiles!
     if (PerModulePasses || 1) {
-      FunctionPassManager *PM = CodeGenPasses =
-          new FunctionPassManager(TheModule);
+      PassManager *PM = CodeGenPasses = new PassManager();
       PM->add(new DataLayoutPass(*TheTarget->getDataLayout()));
       TheTarget->addAnalysisPasses(*PM);
 
@@ -1980,12 +1979,7 @@
     void *OldHandlerData = Context.getInlineAsmDiagnosticContext();
     Context.setInlineAsmDiagnosticHandler(InlineAsmDiagnosticHandler, 0);
 
-    CodeGenPasses->doInitialization();
-    for (Module::iterator I = TheModule->begin(), E = TheModule->end(); I != E;
-         ++I)
-      if (!I->isDeclaration())
-        CodeGenPasses->run(*I);
-    CodeGenPasses->doFinalization();
+    CodeGenPasses->run(*TheModule);
 
     Context.setInlineAsmDiagnosticHandler(OldHandler, OldHandlerData);
   }