|
MLIR 22.0.0git
|
An analysis map that contains a map for the current operation, and a set of maps for any child operations. More...
#include "mlir/Pass/AnalysisManager.h"
Public Member Functions | |
| NestedAnalysisMap (Operation *op, PassInstrumentor *instrumentor) | |
| NestedAnalysisMap (Operation *op, NestedAnalysisMap *parent) | |
| Operation * | getOperation () const |
| Get the operation for this analysis map. | |
| void | invalidate (const PreservedAnalyses &pa) |
| Invalidate any non preserved analyses. | |
| const NestedAnalysisMap * | getParent () const |
| Returns the parent analysis map for this analysis map, or null if this is the top-level map. | |
| PassInstrumentor * | getPassInstrumentor () const |
| Returns a pass instrumentation object for the current operation. | |
Public Attributes | |
| DenseMap< Operation *, std::unique_ptr< NestedAnalysisMap > > | childAnalyses |
| The cached analyses for nested operations. | |
| detail::AnalysisMap | analyses |
| The analyses for the owning operation. | |
| PointerUnion< NestedAnalysisMap *, PassInstrumentor * > | parentOrInstrumentor |
| This value has three possible states: NestedAnalysisMap*: A pointer to the parent analysis map. | |
An analysis map that contains a map for the current operation, and a set of maps for any child operations.
Definition at line 239 of file AnalysisManager.h.
|
inline |
Definition at line 240 of file AnalysisManager.h.
References analyses, and parentOrInstrumentor.
Referenced by getParent(), and NestedAnalysisMap().
|
inline |
Definition at line 242 of file AnalysisManager.h.
References analyses, NestedAnalysisMap(), and parentOrInstrumentor.
|
inline |
Get the operation for this analysis map.
Definition at line 246 of file AnalysisManager.h.
References analyses.
|
inline |
Returns the parent analysis map for this analysis map, or null if this is the top-level map.
Definition at line 253 of file AnalysisManager.h.
References NestedAnalysisMap(), and parentOrInstrumentor.
Referenced by mlir::AnalysisManager::getCachedParentAnalysis(), and getPassInstrumentor().
|
inline |
Returns a pass instrumentation object for the current operation.
This value may be null.
Definition at line 259 of file AnalysisManager.h.
References getParent(), and parentOrInstrumentor.
| void detail::NestedAnalysisMap::invalidate | ( | const PreservedAnalyses & | pa | ) |
Invalidate any non preserved analyses.
Definition at line 1161 of file Pass.cpp.
References analyses, childAnalyses, mlir::detail::PreservedAnalyses::isAll(), and mlir::detail::PreservedAnalyses::isNone().
| detail::AnalysisMap mlir::detail::NestedAnalysisMap::analyses |
The analyses for the owning operation.
Definition at line 269 of file AnalysisManager.h.
Referenced by getOperation(), invalidate(), NestedAnalysisMap(), and NestedAnalysisMap().
| DenseMap<Operation *, std::unique_ptr<NestedAnalysisMap> > mlir::detail::NestedAnalysisMap::childAnalyses |
The cached analyses for nested operations.
Definition at line 266 of file AnalysisManager.h.
Referenced by invalidate().
| PointerUnion<NestedAnalysisMap *, PassInstrumentor *> mlir::detail::NestedAnalysisMap::parentOrInstrumentor |
This value has three possible states: NestedAnalysisMap*: A pointer to the parent analysis map.
PassInstrumentor*: This analysis map is the top-level map, and this pointer is the optional pass instrumentor for the current compilation. nullptr: This analysis map is the top-level map, and there is nop pass instrumentor.
Definition at line 278 of file AnalysisManager.h.
Referenced by getParent(), getPassInstrumentor(), NestedAnalysisMap(), and NestedAnalysisMap().