remove 'target constructor' support.
authorChris Lattner <sabre@nondot.org>
Fri, 1 Dec 2006 22:00:50 +0000 (22:00 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 1 Dec 2006 22:00:50 +0000 (22:00 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32100 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/PassSupport.h
include/llvm/Support/PassNameParser.h

index f3cfc3fb3a53e7a5bd33d3cb28b48f1dbc01a74c..60c24b066628295533e6437464addca07a3a6e31 100644 (file)
@@ -42,15 +42,14 @@ class PassInfo {
   std::vector<const PassInfo*> ItfImpl;// Interfaces implemented by this pass
 
   Pass *(*NormalCtor)();               // No argument ctor
-  Pass *(*TargetCtor)(TargetMachine&);   // Ctor taking TargetMachine object...
 
 public:
   /// PassInfo ctor - Do not call this directly, this should only be invoked
   /// through RegisterPass.
   PassInfo(const char *name, const char *arg, const std::type_info &ti,
-           Pass *(*normal)() = 0, Pass *(*targetctor)(TargetMachine &) = 0)
+           Pass *(*normal)() = 0)
     : PassName(name), PassArgument(arg), TypeInfo(ti), IsAnalysisGroup(false),
-      NormalCtor(normal), TargetCtor(targetctor)  {
+      NormalCtor(normal) {
   }
 
   /// getPassName - Return the friendly name for the pass, never returns null
@@ -94,14 +93,6 @@ public:
     return NormalCtor();
   }
 
-  /// getTargetCtor - Return a pointer to a function that creates an instance of
-  /// the pass and returns it.  This returns a constructor for a version of the
-  /// pass that takes a TargetMachine object as a parameter.
-  ///
-  Pass *(*getTargetCtor() const)(TargetMachine &) {
-    return TargetCtor;
-  }
-
   /// addInterfaceImplemented - This method is called when this pass is
   /// registered as a member of an analysis group with the RegisterAnalysisGroup
   /// template.
@@ -143,13 +134,12 @@ struct RegisterPassBase {
   const PassInfo *getPassInfo() const { return &PIObj; }
 
   RegisterPassBase(const char *Name, const char *Arg, const std::type_info &TI,
-                   Pass *(*Normal)() = 0,
-                   Pass *(*TargetCtor)(TargetMachine &) = 0)
-    : PIObj(Name, Arg, TI, Normal, TargetCtor) {
+                   Pass *(*NormalCtor)() = 0)
+    : PIObj(Name, Arg, TI, NormalCtor) {
     registerPass();
   }
   RegisterPassBase(const std::type_info &TI)
-    : PIObj("", "", TI, 0, 0) {
+    : PIObj("", "", TI) {
     // This ctor may only be used for analysis groups: it does not auto-register
     // the pass.
     PIObj.SetIsAnalysisGroup();
index c3d4901700958b39d49df1f3085f356f465c1edb..6259257e04abe06be57758fd76b557fea37647fe 100644 (file)
@@ -57,8 +57,7 @@ public:
     // Ignore non-selectable and non-constructible passes!  Ignore
     // non-optimizations.
     return P->getPassArgument() == 0 || *P->getPassArgument() == 0 ||
-          (P->getNormalCtor() == 0 && P->getTargetCtor() == 0) ||
-          ignorablePassImpl(P);
+           P->getNormalCtor() == 0 || ignorablePassImpl(P);
   }
 
   // Implement the PassRegistrationListener callbacks used to populate our map