aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-08-07 07:34:50 +0000
committerChris Lattner <sabre@nondot.org>2008-08-07 07:34:50 +0000
commite2c5ecd46a3a2c2cd11de8c5dadd5d52a2801420 (patch)
tree4f590ded5629c38e98764229b510eb7b846763e8
parente3d920699c6df959f3e0844aeadd983b2955b23e (diff)
Don't verify passes when assertions are disabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54446 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/VMCore/PassManager.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/VMCore/PassManager.cpp b/lib/VMCore/PassManager.cpp
index e2baecb6fc..4392bee5eb 100644
--- a/lib/VMCore/PassManager.cpp
+++ b/lib/VMCore/PassManager.cpp
@@ -598,8 +598,12 @@ bool PMDataManager::preserveHigherLevelAnalysis(Pass *P) {
return true;
}
-/// verifyPreservedAnalysis -- Verify analysis presreved by pass P.
+/// verifyPreservedAnalysis -- Verify analysis preserved by pass P.
void PMDataManager::verifyPreservedAnalysis(Pass *P) {
+ // Don't do this unless assertions are enabled.
+#ifdef NDEBUG
+ return;
+#endif
AnalysisUsage AnUsage;
P->getAnalysisUsage(AnUsage);
const std::vector<AnalysisID> &PreservedSet = AnUsage.getPreservedSet();
@@ -608,8 +612,7 @@ void PMDataManager::verifyPreservedAnalysis(Pass *P) {
for (std::vector<AnalysisID>::const_iterator I = PreservedSet.begin(),
E = PreservedSet.end(); I != E; ++I) {
AnalysisID AID = *I;
- Pass *AP = findAnalysisPass(AID, true);
- if (AP)
+ if (Pass *AP = findAnalysisPass(AID, true))
AP->verifyAnalysis();
}
}
@@ -1318,7 +1321,7 @@ MPPassManager::runOnModule(Module &M) {
dumpPassInfo(MP, MODIFICATION_MSG, ON_MODULE_MSG,
M.getModuleIdentifier().c_str());
dumpAnalysisSetInfo("Preserved", MP, AnUsage.getPreservedSet());
-
+
verifyPreservedAnalysis(MP);
removeNotPreservedAnalysis(MP);
recordAvailableAnalysis(MP);