MEGAPATCH checkin.
For details, See: docs/2002-06-25-MegaPatchInfo.txt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2778 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/analyze/analyze.cpp b/tools/analyze/analyze.cpp
index cd35a10..2d960e9 100644
--- a/tools/analyze/analyze.cpp
+++ b/tools/analyze/analyze.cpp
@@ -41,12 +41,12 @@
// way of using operator<< works great, so we use it directly...
//
template<class PassType>
-static void printPass(PassType &P, ostream &O, Module *M) {
+static void printPass(PassType &P, ostream &O, Module &M) {
O << P;
}
template<class PassType>
-static void printPass(PassType &P, ostream &O, Function *F) {
+static void printPass(PassType &P, ostream &O, Function &F) {
O << P;
}
@@ -54,19 +54,18 @@
// specialize the template here for them...
//
template<>
-static void printPass(DataStructure &P, ostream &O, Module *M) {
- P.print(O, M);
+static void printPass(DataStructure &P, ostream &O, Module &M) {
+ P.print(O, &M);
}
template<>
-static void printPass(FindUsedTypes &FUT, ostream &O, Module *M) {
- FUT.printTypes(O, M);
+static void printPass(FindUsedTypes &FUT, ostream &O, Module &M) {
+ FUT.printTypes(O, &M);
}
template<>
-static void printPass(FindUnsafePointerTypes &FUPT, ostream &O,
- Module *M) {
- FUPT.printResults(M, O);
+static void printPass(FindUnsafePointerTypes &FUPT, ostream &O, Module &M) {
+ FUPT.printResults(&M, O);
}
@@ -83,7 +82,7 @@
const char *getPassName() const { return "IP Pass Printer"; }
- virtual bool run(Module *M) {
+ virtual bool run(Module &M) {
std::cout << Message << "\n";
printPass(getAnalysis<PassName>(ID), std::cout, M);
return false;
@@ -103,8 +102,8 @@
const char *getPassName() const { return "Function Pass Printer"; }
- virtual bool runOnFunction(Function *F) {
- std::cout << Message << " on function '" << F->getName() << "'\n";
+ virtual bool runOnFunction(Function &F) {
+ std::cout << Message << " on function '" << F.getName() << "'\n";
printPass(getAnalysis<PassName>(ID), std::cout, F);
return false;
}
@@ -137,8 +136,8 @@
struct InstForestHelper : public FunctionPass {
const char *getPassName() const { return "InstForest Printer"; }
- void doit(Function *F) {
- std::cout << InstForest<char>(F);
+ void doit(Function &F) {
+ std::cout << InstForest<char>(&F);
}
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
@@ -149,7 +148,7 @@
struct IndVars : public FunctionPass {
const char *getPassName() const { return "IndVars Printer"; }
- void doit(Function *F) {
+ void doit(Function &F) {
LoopInfo &LI = getAnalysis<LoopInfo>();
for (inst_iterator I = inst_begin(F), E = inst_end(F); I != E; ++I)
if (PHINode *PN = dyn_cast<PHINode>(*I)) {
@@ -168,8 +167,8 @@
struct Exprs : public FunctionPass {
const char *getPassName() const { return "Expression Printer"; }
- static void doit(Function *F) {
- std::cout << "Classified expressions for: " << F->getName() << "\n";
+ static void doit(Function &F) {
+ std::cout << "Classified expressions for: " << F.getName() << "\n";
for (inst_iterator I = inst_begin(F), E = inst_end(F); I != E; ++I) {
std::cout << *I;
@@ -207,8 +206,8 @@
public:
PrinterPass(const string &M) : Message(M) {}
- virtual bool runOnFunction(Function *F) {
- std::cout << Message << " on function '" << F->getName() << "'\n";
+ virtual bool runOnFunction(Function &F) {
+ std::cout << Message << " on function '" << F.getName() << "'\n";
TraitClass::doit(F);
return false;
@@ -330,7 +329,7 @@
}
}
- Analyses.run(CurMod);
+ Analyses.run(*CurMod);
delete CurMod;
return 0;