[llvm-commits] [llvm] r38469 - in /llvm/trunk: include/llvm/Pass.h lib/VMCore/PassManager.cpp
Devang Patel
dpatel at apple.com
Mon Jul 9 13:52:39 PDT 2007
Author: dpatel
Date: Mon Jul 9 15:52:39 2007
New Revision: 38469
URL: http://llvm.org/viewvc/llvm-project?rev=38469&view=rev
Log:
Fix memory leak.
Modified:
llvm/trunk/include/llvm/Pass.h
llvm/trunk/lib/VMCore/PassManager.cpp
Modified: llvm/trunk/include/llvm/Pass.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Pass.h?rev=38469&r1=38468&r2=38469&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Pass.h (original)
+++ llvm/trunk/include/llvm/Pass.h Mon Jul 9 15:52:39 2007
@@ -130,8 +130,14 @@
}
// Access AnalysisResolver
- inline void setResolver(AnalysisResolver *AR) { Resolver = AR; }
- inline AnalysisResolver *getResolver() { return Resolver; }
+ inline void setResolver(AnalysisResolver *AR) {
+ assert (!Resolver && "Resolver is already set");
+ Resolver = AR;
+ }
+ inline AnalysisResolver *getResolver() {
+ assert (Resolver && "Resolver is not set");
+ return Resolver;
+ }
/// getAnalysisUsage - This function should be overriden by passes that need
/// analysis information to do their job. If a pass specifies that it uses a
Modified: llvm/trunk/lib/VMCore/PassManager.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/VMCore/PassManager.cpp?rev=38469&r1=38468&r2=38469&view=diff
==============================================================================
--- llvm/trunk/lib/VMCore/PassManager.cpp (original)
+++ llvm/trunk/lib/VMCore/PassManager.cpp Mon Jul 9 15:52:39 2007
@@ -1380,9 +1380,6 @@
PM->setTopLevelManager(TPM);
}
- AnalysisResolver *AR = new AnalysisResolver(*Top);
- P->setResolver(AR);
-
S.push_back(PM);
}
More information about the llvm-commits
mailing list