Eliminate IntrinsicLowering from TargetMachine.
Make the CBE and V9 backends create their own, since they're the only ones that use it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26974 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/CBackend/CBackend.cpp b/lib/Target/CBackend/CBackend.cpp
index 8988189..5389387 100644
--- a/lib/Target/CBackend/CBackend.cpp
+++ b/lib/Target/CBackend/CBackend.cpp
@@ -67,7 +67,7 @@
   /// module to a C translation unit.
   class CWriter : public FunctionPass, public InstVisitor<CWriter> {
     std::ostream &Out;
-    IntrinsicLowering &IL;
+    DefaultIntrinsicLowering IL;
     Mangler *Mang;
     LoopInfo *LI;
     const Module *TheModule;
@@ -75,7 +75,7 @@
 
     std::map<const ConstantFP *, unsigned> FPConstantMap;
   public:
-    CWriter(std::ostream &o, IntrinsicLowering &il) : Out(o), IL(il) {}
+    CWriter(std::ostream &o) : Out(o) {}
 
     virtual const char *getPassName() const { return "C backend"; }
 
@@ -1931,6 +1931,6 @@
   PM.add(createLowerInvokePass());
   PM.add(createCFGSimplificationPass());   // clean up after lower invoke.
   PM.add(new CBackendNameAllUsedStructsAndMergeFunctions());
-  PM.add(new CWriter(o, getIntrinsicLowering()));
+  PM.add(new CWriter(o));
   return false;
 }
diff --git a/lib/Target/CBackend/CTargetMachine.h b/lib/Target/CBackend/CTargetMachine.h
index f5894aa..f947f65 100644
--- a/lib/Target/CBackend/CTargetMachine.h
+++ b/lib/Target/CBackend/CTargetMachine.h
@@ -17,12 +17,10 @@
 #include "llvm/Target/TargetMachine.h"
 
 namespace llvm {
-class IntrinsicLowering;
 
 struct CTargetMachine : public TargetMachine {
-  CTargetMachine(const Module &M, IntrinsicLowering *IL,
-                 const std::string &FS) :
-    TargetMachine("CBackend", IL, M) {}
+  CTargetMachine(const Module &M, const std::string &FS)
+    : TargetMachine("CBackend", M) {}
 
   // This is the only thing that actually does anything here.
   virtual bool addPassesToEmitFile(PassManager &PM, std::ostream &Out,
diff --git a/lib/Target/CBackend/Writer.cpp b/lib/Target/CBackend/Writer.cpp
index 8988189..5389387 100644
--- a/lib/Target/CBackend/Writer.cpp
+++ b/lib/Target/CBackend/Writer.cpp
@@ -67,7 +67,7 @@
   /// module to a C translation unit.
   class CWriter : public FunctionPass, public InstVisitor<CWriter> {
     std::ostream &Out;
-    IntrinsicLowering &IL;
+    DefaultIntrinsicLowering IL;
     Mangler *Mang;
     LoopInfo *LI;
     const Module *TheModule;
@@ -75,7 +75,7 @@
 
     std::map<const ConstantFP *, unsigned> FPConstantMap;
   public:
-    CWriter(std::ostream &o, IntrinsicLowering &il) : Out(o), IL(il) {}
+    CWriter(std::ostream &o) : Out(o) {}
 
     virtual const char *getPassName() const { return "C backend"; }
 
@@ -1931,6 +1931,6 @@
   PM.add(createLowerInvokePass());
   PM.add(createCFGSimplificationPass());   // clean up after lower invoke.
   PM.add(new CBackendNameAllUsedStructsAndMergeFunctions());
-  PM.add(new CWriter(o, getIntrinsicLowering()));
+  PM.add(new CWriter(o));
   return false;
 }