|
@@ -104,6 +104,16 @@ public:
|
|
|
return PassID;
|
|
|
}
|
|
|
|
|
|
+ /// doInitialization - Virtual method overridden by subclasses to do
|
|
|
+ /// any necessary initialization before any pass is run.
|
|
|
+ ///
|
|
|
+ virtual bool doInitialization(Module &) { return false; }
|
|
|
+
|
|
|
+ /// doFinalization - Virtual method overriden by subclasses to do any
|
|
|
+ /// necessary clean up after all passes have run.
|
|
|
+ ///
|
|
|
+ virtual bool doFinalization(Module &) { return false; }
|
|
|
+
|
|
|
/// print - Print out the internal state of the pass. This is called by
|
|
|
/// Analyze to print out the contents of an analysis. Otherwise it is not
|
|
|
/// necessary to implement this method. Beware that the module pointer MAY be
|
|
@@ -227,20 +237,10 @@ public:
|
|
|
/// createPrinterPass - Get a module printer pass.
|
|
|
Pass *createPrinterPass(raw_ostream &O, const std::string &Banner) const;
|
|
|
|
|
|
- /// doInitialization - Virtual method overridden by subclasses to do
|
|
|
- /// any necessary initialization before any pass is run.
|
|
|
- ///
|
|
|
- virtual bool doInitialization(Module &) { return false; }
|
|
|
-
|
|
|
/// runOnModule - Virtual method overriden by subclasses to process the module
|
|
|
/// being operated on.
|
|
|
virtual bool runOnModule(Module &M) = 0;
|
|
|
|
|
|
- /// doFinalization - Virtual method overriden by subclasses to do any
|
|
|
- /// necessary clean up after all passes have run.
|
|
|
- ///
|
|
|
- virtual bool doFinalization(Module &) { return false; }
|
|
|
-
|
|
|
virtual void assignPassManager(PMStack &PMS,
|
|
|
PassManagerType T);
|
|
|
|
|
@@ -297,21 +297,11 @@ public:
|
|
|
/// createPrinterPass - Get a function printer pass.
|
|
|
Pass *createPrinterPass(raw_ostream &O, const std::string &Banner) const;
|
|
|
|
|
|
- /// doInitialization - Virtual method overridden by subclasses to do
|
|
|
- /// any necessary per-module initialization.
|
|
|
- ///
|
|
|
- virtual bool doInitialization(Module &);
|
|
|
-
|
|
|
/// runOnFunction - Virtual method overriden by subclasses to do the
|
|
|
/// per-function processing of the pass.
|
|
|
///
|
|
|
virtual bool runOnFunction(Function &F) = 0;
|
|
|
|
|
|
- /// doFinalization - Virtual method overriden by subclasses to do any post
|
|
|
- /// processing needed after all passes have run.
|
|
|
- ///
|
|
|
- virtual bool doFinalization(Module &);
|
|
|
-
|
|
|
virtual void assignPassManager(PMStack &PMS,
|
|
|
PassManagerType T);
|
|
|
|
|
@@ -338,10 +328,8 @@ public:
|
|
|
/// createPrinterPass - Get a basic block printer pass.
|
|
|
Pass *createPrinterPass(raw_ostream &O, const std::string &Banner) const;
|
|
|
|
|
|
- /// doInitialization - Virtual method overridden by subclasses to do
|
|
|
- /// any necessary per-module initialization.
|
|
|
- ///
|
|
|
- virtual bool doInitialization(Module &);
|
|
|
+ using llvm::Pass::doInitialization;
|
|
|
+ using llvm::Pass::doFinalization;
|
|
|
|
|
|
/// doInitialization - Virtual method overridden by BasicBlockPass subclasses
|
|
|
/// to do any necessary per-function initialization.
|
|
@@ -358,11 +346,6 @@ public:
|
|
|
///
|
|
|
virtual bool doFinalization(Function &);
|
|
|
|
|
|
- /// doFinalization - Virtual method overriden by subclasses to do any post
|
|
|
- /// processing needed after all passes have run.
|
|
|
- ///
|
|
|
- virtual bool doFinalization(Module &);
|
|
|
-
|
|
|
virtual void assignPassManager(PMStack &PMS,
|
|
|
PassManagerType T);
|
|
|
|