LLVM  14.0.0git
Public Member Functions | List of all members
llvm::AnalysisResolver Class Reference

AnalysisResolver - Simple interface used by Pass objects to pull all analysis information out of pass manager that is responsible to manage the pass. More...

#include "llvm/PassAnalysisSupport.h"

Public Member Functions

 AnalysisResolver ()=delete
 
 AnalysisResolver (PMDataManager &P)
 
PMDataManagergetPMDataManager ()
 
PassfindImplPass (AnalysisID PI)
 Find pass that is implementing PI. More...
 
std::tuple< Pass *, bool > findImplPass (Pass *P, AnalysisID PI, Function &F)
 Find pass that is implementing PI. Initialize pass for Function F. More...
 
void addAnalysisImplsPair (AnalysisID PI, Pass *P)
 
void clearAnalysisImpls ()
 Clear cache that is used to connect a pass to the analysis (PassInfo). More...
 
PassgetAnalysisIfAvailable (AnalysisID ID) const
 Return analysis result or null if it doesn't exist. More...
 

Detailed Description

AnalysisResolver - Simple interface used by Pass objects to pull all analysis information out of pass manager that is responsible to manage the pass.

Definition at line 157 of file PassAnalysisSupport.h.

Constructor & Destructor Documentation

◆ AnalysisResolver() [1/2]

llvm::AnalysisResolver::AnalysisResolver ( )
delete

◆ AnalysisResolver() [2/2]

llvm::AnalysisResolver::AnalysisResolver ( PMDataManager P)
inlineexplicit

Definition at line 160 of file PassAnalysisSupport.h.

Member Function Documentation

◆ addAnalysisImplsPair()

void llvm::AnalysisResolver::addAnalysisImplsPair ( AnalysisID  PI,
Pass P 
)
inline

Definition at line 179 of file PassAnalysisSupport.h.

References findImplPass(), and P.

Referenced by llvm::PMDataManager::initializeAnalysisImpl().

◆ clearAnalysisImpls()

void llvm::AnalysisResolver::clearAnalysisImpls ( )
inline

Clear cache that is used to connect a pass to the analysis (PassInfo).

Definition at line 187 of file PassAnalysisSupport.h.

Referenced by llvm::FPPassManager::cleanup().

◆ findImplPass() [1/2]

Pass* llvm::AnalysisResolver::findImplPass ( AnalysisID  PI)
inline

Find pass that is implementing PI.

Definition at line 165 of file PassAnalysisSupport.h.

Referenced by addAnalysisImplsPair().

◆ findImplPass() [2/2]

std::tuple< Pass *, bool > AnalysisResolver::findImplPass ( Pass P,
AnalysisID  PI,
Function F 
)

Find pass that is implementing PI. Initialize pass for Function F.

Definition at line 1320 of file LegacyPassManager.cpp.

References F, llvm::PMDataManager::getOnTheFlyPass(), and P.

◆ getAnalysisIfAvailable()

Pass * AnalysisResolver::getAnalysisIfAvailable ( AnalysisID  ID) const

Return analysis result or null if it doesn't exist.

Definition at line 1315 of file LegacyPassManager.cpp.

References llvm::PMDataManager::findAnalysisPass().

◆ getPMDataManager()

PMDataManager& llvm::AnalysisResolver::getPMDataManager ( )
inline

Definition at line 162 of file PassAnalysisSupport.h.

Referenced by llvm::PMTopLevelManager::setLastUser().


The documentation for this class was generated from the following files: