aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2006-12-07 21:02:08 +0000
committerDevang Patel <dpatel@apple.com>2006-12-07 21:02:08 +0000
commit1b17033bc741814777988b56f5e958355ceb0096 (patch)
treece302fa65c9a127c6ce7c4599687a559058f88d4
parent3e44559d0137f2c3e3bf7a0c1e0004e0a5c81137 (diff)
downloadexternal_llvm-1b17033bc741814777988b56f5e958355ceb0096.zip
external_llvm-1b17033bc741814777988b56f5e958355ceb0096.tar.gz
external_llvm-1b17033bc741814777988b56f5e958355ceb0096.tar.bz2
While initializing AvailableAnalysis info, make ImmutablePasses available
immediately. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32323 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/VMCore/PassManager.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/VMCore/PassManager.cpp b/lib/VMCore/PassManager.cpp
index 1809432..3ab0185 100644
--- a/lib/VMCore/PassManager.cpp
+++ b/lib/VMCore/PassManager.cpp
@@ -218,6 +218,12 @@ public:
void initializeAnalysisInfo() {
AvailableAnalysis.clear();
LastUser.clear();
+
+ // Include immutable passes into AvailableAnalysis vector.
+ std::vector<ImmutablePass *> &ImmutablePasses = TPM->getImmutablePasses();
+ for (std::vector<ImmutablePass *>::iterator I = ImmutablePasses.begin(),
+ E = ImmutablePasses.end(); I != E; ++I)
+ recordAvailableAnalysis(*I);
}
// All Required analyses should be available to the pass as it runs! Here