diff options
author | Owen Anderson <resistor@mac.com> | 2010-08-05 23:42:04 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2010-08-05 23:42:04 +0000 |
commit | 9ccaf53ada99c63737547c0235baeb8454b04e80 (patch) | |
tree | 8b23d84cacaae3aee3fe11becc219685443905c5 /tools/bugpoint | |
parent | 7365c091f92db5e68c98d7faedc6c34e1bbbc898 (diff) | |
download | external_llvm-9ccaf53ada99c63737547c0235baeb8454b04e80.zip external_llvm-9ccaf53ada99c63737547c0235baeb8454b04e80.tar.gz external_llvm-9ccaf53ada99c63737547c0235baeb8454b04e80.tar.bz2 |
Don't use PassInfo* as a type identifier for passes. Instead, use the address of the static
ID member as the sole unique type identifier. Clean up APIs related to this change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110396 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/bugpoint')
-rw-r--r-- | tools/bugpoint/ExtractFunction.cpp | 3 | ||||
-rw-r--r-- | tools/bugpoint/TestPasses.cpp | 4 | ||||
-rw-r--r-- | tools/bugpoint/bugpoint.cpp | 3 |
3 files changed, 6 insertions, 4 deletions
diff --git a/tools/bugpoint/ExtractFunction.cpp b/tools/bugpoint/ExtractFunction.cpp index 6913fd0..bbdc728 100644 --- a/tools/bugpoint/ExtractFunction.cpp +++ b/tools/bugpoint/ExtractFunction.cpp @@ -100,7 +100,8 @@ Module *BugDriver::deleteInstructionFromProgram(const Instruction *I, } static const PassInfo *getPI(Pass *P) { - const PassInfo *PI = P->getPassInfo(); + const void *ID = P->getPassID(); + const PassInfo *PI = PassRegistry::getPassRegistry()->getPassInfo(ID); delete P; return PI; } diff --git a/tools/bugpoint/TestPasses.cpp b/tools/bugpoint/TestPasses.cpp index 900bf63..4ae23f5 100644 --- a/tools/bugpoint/TestPasses.cpp +++ b/tools/bugpoint/TestPasses.cpp @@ -27,7 +27,7 @@ namespace { class CrashOnCalls : public BasicBlockPass { public: static char ID; // Pass ID, replacement for typeid - CrashOnCalls() : BasicBlockPass(&ID) {} + CrashOnCalls() : BasicBlockPass(ID) {} private: virtual void getAnalysisUsage(AnalysisUsage &AU) const { AU.setPreservesAll(); @@ -54,7 +54,7 @@ namespace { class DeleteCalls : public BasicBlockPass { public: static char ID; // Pass ID, replacement for typeid - DeleteCalls() : BasicBlockPass(&ID) {} + DeleteCalls() : BasicBlockPass(ID) {} private: bool runOnBasicBlock(BasicBlock &BB) { for (BasicBlock::iterator I = BB.begin(), E = BB.end(); I != E; ++I) diff --git a/tools/bugpoint/bugpoint.cpp b/tools/bugpoint/bugpoint.cpp index ba5234b..b4bc455 100644 --- a/tools/bugpoint/bugpoint.cpp +++ b/tools/bugpoint/bugpoint.cpp @@ -90,7 +90,8 @@ namespace { AddToDriver(BugDriver &_D) : D(_D) {} virtual void add(Pass *P) { - const PassInfo *PI = P->getPassInfo(); + const void *ID = P->getPassID(); + const PassInfo *PI = PassRegistry::getPassRegistry()->getPassInfo(ID); D.addPasses(&PI, &PI + 1); } }; |