* Standardize how analysis results/passes as printed with the print() virtual

methods
* Eliminate AnalysisID:  Now it is just a typedef for const PassInfo*
* Simplify how AnalysisID's are initialized
* Eliminate Analysis/Writer.cpp/.h: incorporate printing functionality into
  the analyses themselves.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3116 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2002-07-27 01:12:17 +00:00
parent 97f51a3024
commit a59cbb2043
17 changed files with 247 additions and 257 deletions

View File

@@ -77,6 +77,13 @@ public:
return NormalCtor;
}
// createPass() - Use this
Pass *createPass() const {
assert(NormalCtor &&
"Cannot call createPass on PassInfo without default ctor!");
return NormalCtor();
}
// getDataCtor - 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 TArgetData object as a parameter.
@@ -111,6 +118,8 @@ struct RegisterPassBase {
~RegisterPassBase(); // Intentionally non-virtual...
inline operator PassInfo* () const { return PIObj; }
protected:
PassInfo *PIObj; // The PassInfo object for this pass
void registerPass(PassInfo *);