diff options
author | Devang Patel <dpatel@apple.com> | 2007-05-01 21:15:47 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2007-05-01 21:15:47 +0000 |
commit | 794fd75c67a2cdc128d67342c6d88a504d186896 (patch) | |
tree | 6b805aa4a576e9de6cbf096d2fb85063b3fb8fca /lib | |
parent | e50fb9ac174b791047ffa8648443ab94b2097cd9 (diff) |
Do not use typeinfo to identify pass in pass manager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36632 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
122 files changed, 529 insertions, 80 deletions
diff --git a/lib/Analysis/AliasAnalysis.cpp b/lib/Analysis/AliasAnalysis.cpp index c7b68fab68..7499db562b 100644 --- a/lib/Analysis/AliasAnalysis.cpp +++ b/lib/Analysis/AliasAnalysis.cpp @@ -34,6 +34,7 @@ using namespace llvm; // Register the AliasAnalysis interface, providing a nice name to refer to. namespace { + const int AliasAnalysis::ID = 0; RegisterAnalysisGroup<AliasAnalysis> Z("Alias Analysis"); } diff --git a/lib/Analysis/AliasAnalysisCounter.cpp b/lib/Analysis/AliasAnalysisCounter.cpp index fcd5edc768..ee1980fc4c 100644 --- a/lib/Analysis/AliasAnalysisCounter.cpp +++ b/lib/Analysis/AliasAnalysisCounter.cpp @@ -34,7 +34,8 @@ namespace { const char *Name; Module *M; public: - AliasAnalysisCounter() { + static const int ID; // Class identification, replacement for typeinfo + AliasAnalysisCounter() : ModulePass((intptr_t) &ID) { No = May = Must = 0; NoMR = JustRef = JustMod = MR = 0; } @@ -107,6 +108,7 @@ namespace { } }; + const int AliasAnalysisCounter::ID = 0; RegisterPass<AliasAnalysisCounter> X("count-aa", "Count Alias Analysis Query Responses"); RegisterAnalysisGroup<AliasAnalysis> Y(X); diff --git a/lib/Analysis/AliasAnalysisEvaluator.cpp b/lib/Analysis/AliasAnalysisEvaluator.cpp index 73ea423c45..f2631cb8ba 100644 --- a/lib/Analysis/AliasAnalysisEvaluator.cpp +++ b/lib/Analysis/AliasAnalysisEvaluator.cpp @@ -50,6 +50,9 @@ namespace { unsigned NoModRef, Mod, Ref, ModRef; public: + static const int ID; // Pass identifcation, replacement for typeid + AAEval() : FunctionPass((intptr_t)&ID) {} + virtual void getAnalysisUsage(AnalysisUsage &AU) const { AU.addRequired<AliasAnalysis>(); AU.setPreservesAll(); @@ -70,6 +73,7 @@ namespace { bool doFinalization(Module &M); }; + const int AAEval::ID = 0; RegisterPass<AAEval> X("aa-eval", "Exhaustive Alias Analysis Precision Evaluator"); } |