collectRequiredAnalysisPasses().

Include RequiredTrainsitiveSet also.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32508 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Devang Patel 2006-12-12 23:09:32 +00:00
parent 54e247d2d0
commit 27aaab2bd3

View File

@ -678,6 +678,14 @@ void PMDataManager::collectRequiredAnalysisPasses(std::vector<Pass *> &RP,
assert (AnalysisPass && "Analysis pass is not available");
RP.push_back(AnalysisPass);
}
const std::vector<AnalysisID> &IDs = AnUsage.getRequiredTransitiveSet();
for (std::vector<AnalysisID>::const_iterator I = IDs.begin(),
E = IDs.end(); I != E; ++I) {
Pass *AnalysisPass = findAnalysisPass(*I, true);
assert (AnalysisPass && "Analysis pass is not available");
RP.push_back(AnalysisPass);
}
}
// All Required analyses should be available to the pass as it runs! Here