My Project
|
#include <AnalysisManager.h>
Public Types | |
using | PreservedAnalyses = detail::PreservedAnalyses |
Public Member Functions | |
template<typename AnalysisT > | |
Optional< std::reference_wrapper< AnalysisT > > | getCachedParentAnalysis (Operation *parentOp) const |
template<typename AnalysisT > | |
AnalysisT & | getAnalysis () |
template<typename AnalysisT > | |
Optional< std::reference_wrapper< AnalysisT > > | getCachedAnalysis () const |
template<typename AnalysisT > | |
AnalysisT & | getChildAnalysis (Operation *op) |
Query for a analysis of a child operation, constructing it if necessary. More... | |
template<typename AnalysisT > | |
Optional< std::reference_wrapper< AnalysisT > > | getCachedChildAnalysis (Operation *op) const |
Query for a cached analysis of a child operation, or return null. More... | |
AnalysisManager | slice (Operation *op) |
Get an analysis manager for the given child operation. More... | |
void | invalidate (const PreservedAnalyses &pa) |
Invalidate any non preserved analyses,. More... | |
void | clear () |
Clear any held analyses. More... | |
PassInstrumentor * | getPassInstrumentor () const |
Returns a pass instrumentation object for the current operation. More... | |
Friends | |
class | ModuleAnalysisManager |
Allow access to the constructor. More... | |
This class represents an analysis manager for a particular operation instance. It is used to manage and cache analyses on the operation as well as those for child operations, via nested AnalysisManager instances accessible via 'slice'. This class is intended to be passed around by value, and cannot be constructed directly.
|
inline |
Clear any held analyses.
|
inline |
|
inline |
|
inline |
Query for a cached analysis of a child operation, or return null.
|
inline |
|
inline |
Query for a analysis of a child operation, constructing it if necessary.
PassInstrumentor * AnalysisManager::getPassInstrumentor | ( | ) | const |
Returns a pass instrumentation object for the current operation.
Returns a pass instrumentation object for the current operation. This value may be null.
|
inline |
Invalidate any non preserved analyses,.
AnalysisManager AnalysisManager::slice | ( | Operation * | op | ) |
Get an analysis manager for the given child operation.
|
friend |
Allow access to the constructor.