Lines Matching defs:PI
130 // Find pass that is implementing PI.
131 Pass *findImplPass(AnalysisID PI) {
134 if (AnalysisImpls[i].first == PI) {
142 // Find pass that is implementing PI. Initialize pass for Function F.
143 Pass *findImplPass(Pass *P, AnalysisID PI, Function &F);
145 void addAnalysisImplsPair(AnalysisID PI, Pass *P) {
146 if (findImplPass(PI) == P)
148 std::pair<AnalysisID, Pass*> pir = std::make_pair(PI,P);
182 const void *PI = &AnalysisType::ID;
184 Pass *ResultPass = Resolver->getAnalysisIfAvailable(PI, true);
191 return (AnalysisType*)ResultPass->getAdjustedAnalysisPointer(PI);
205 AnalysisType &Pass::getAnalysisID(AnalysisID PI) const {
206 assert(PI && "getAnalysis for unregistered pass!");
208 // PI *must* appear in AnalysisImpls. Because the number of passes used
211 Pass *ResultPass = Resolver->findImplPass(PI);
220 return *(AnalysisType*)ResultPass->getAdjustedAnalysisPointer(PI);
235 AnalysisType &Pass::getAnalysisID(AnalysisID PI, Function &F) {
236 assert(PI && "getAnalysis for unregistered pass!");
238 // PI *must* appear in AnalysisImpls. Because the number of passes used
241 Pass *ResultPass = Resolver->findImplPass(this, PI, F);
248 return *(AnalysisType*)ResultPass->getAdjustedAnalysisPointer(PI);