My Project
Protected Member Functions | List of all members
mlir::OperationPass< PassT, OpT > Class Template Reference

#include <Pass.h>

Inheritance diagram for mlir::OperationPass< PassT, OpT >:
Inheritance graph
[legend]
Collaboration diagram for mlir::OperationPass< PassT, OpT >:
Collaboration graph
[legend]

Protected Member Functions

 OperationPass ()
 
OpT getOperation ()
 Return the current operation being transformed. More...
 
- Protected Member Functions inherited from mlir::detail::PassModel< PassT, OpPassBase< OpT > >
 PassModel (Optional< StringRef > opName=llvm::None)
 
void signalPassFailure ()
 
AnalysisT & getAnalysis ()
 Query an analysis for the current ir unit. More...
 
Optional< std::reference_wrapper< AnalysisT > > getCachedAnalysis ()
 
void markAllAnalysesPreserved ()
 Mark all analyses as preserved. More...
 
void markAnalysesPreserved ()
 Mark the provided analyses as preserved. More...
 
void markAnalysesPreserved (const AnalysisID *id)
 
StringRef getName () override
 Returns the derived pass name. More...
 
std::unique_ptr< Pass > clone () const override
 A clone method to create a copy of this pass. More...
 
Optional< std::reference_wrapper< AnalysisT > > getCachedParentAnalysis (Operation *parent)
 Returns the analysis for the parent operation if it exists. More...
 
Optional< std::reference_wrapper< AnalysisT > > getCachedParentAnalysis ()
 
Optional< std::reference_wrapper< AnalysisT > > getCachedChildAnalysis (Operation *child)
 Returns the analysis for the given child operation if it exists. More...
 
AnalysisT & getChildAnalysis (Operation *child)
 
- Protected Member Functions inherited from mlir::Pass
 Pass (const PassID *passID, Optional< StringRef > opName=llvm::None)
 
detail::PassExecutionState & getPassState ()
 Returns the current pass state. More...
 
MLIRContext & getContext ()
 Return the MLIR context for the current function being transformed. More...
 
virtual void runOnOperation ()=0
 The polymorphic API that runs the pass over the currently held operation. More...
 
Operation * getOperation ()
 Return the current operation being transformed. More...
 
AnalysisManager getAnalysisManager ()
 Returns the current analysis manager. More...
 
void copyOptionValuesFrom (const Pass *other)
 

Additional Inherited Members

- Public Member Functions inherited from mlir::Pass
virtual ~Pass ()=default
 
const PassID * getPassID () const
 Returns the unique identifier that corresponds to this pass. More...
 
const PassInfo * lookupPassInfo () const
 Returns the pass info for this pass. More...
 
Optional< StringRef > getOpName () const
 
LogicalResult initializeOptions (StringRef options)
 Attempt to initialize the options of this pass from the given string. More...
 
void printAsTextualPipeline (raw_ostream &os)
 
ArrayRef< Statistic * > getStatistics () const
 Returns the main statistics for this pass instance. More...
 
MutableArrayRef< Statistic * > getStatistics ()
 
- Static Public Member Functions inherited from mlir::detail::PassModel< PassT, OpPassBase< OpT > >
static bool classof (const Pass *pass)
 Support isa/dyn_cast functionality for the derived pass class. More...
 
- Static Public Member Functions inherited from mlir::OpPassBase< OpT >
static bool classof (const Pass *pass)
 Support isa/dyn_cast functionality. More...
 
- Static Public Member Functions inherited from mlir::Pass
static const PassInfo * lookupPassInfo (const PassID *passID)
 Returns the pass info for the specified pass class or null if unknown. More...
 
template<typename PassT >
static const PassInfo * lookupPassInfo ()
 

Detailed Description

template<typename PassT, typename OpT = void>
class mlir::OperationPass< PassT, OpT >

Pass to transform an operation of a specific type.

Operation passes must not:

Derived function passes are expected to provide the following:

Constructor & Destructor Documentation

◆ OperationPass()

template<typename PassT, typename OpT = void>
mlir::OperationPass< PassT, OpT >::OperationPass ( )
inlineprotected

Member Function Documentation

◆ getOperation()

template<typename PassT, typename OpT = void>
OpT mlir::OperationPass< PassT, OpT >::getOperation ( )
inlineprotected

Return the current operation being transformed.


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