MLIR  16.0.0git
Namespaces | Macros | Functions
Passes.h File Reference
#include "mlir/Dialect/Linalg/Transforms/Transforms.h"
#include "mlir/Dialect/Linalg/Utils/Utils.h"
#include "mlir/Pass/Pass.h"
#include "mlir/Dialect/Linalg/Passes.h.inc"
+ Include dependency graph for Passes.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 mlir
 Include the generated interface declarations.
 
 mlir::func
 
 mlir::bufferization
 

Macros

#define GEN_PASS_DECL_CONVERTELEMENTWISETOLINALG
 
#define GEN_PASS_DECL_LINALGINITTENSORTOALLOCTENSOR
 
#define GEN_PASS_DECL_LINALGFOLDUNITEXTENTDIMS
 
#define GEN_PASS_DECL_LINALGELEMENTWISEOPFUSION
 
#define GEN_PASS_DECL_LINALGNAMEDOPCONVERSION
 
#define GEN_PASS_DECL_LINALGINLINESCALAROPERANDS
 
#define GEN_PASS_DECL_LINALGLOWERTOAFFINELOOPS
 
#define GEN_PASS_DECL_LINALGLOWERTOLOOPSPASS
 
#define GEN_PASS_DECL_LINALGLOWERTOPARALLELLOOPS
 
#define GEN_PASS_DECL_LINALGBUFFERIZE
 
#define GEN_PASS_DECL_LINALGTILINGPASS
 
#define GEN_PASS_DECL_LINALGGENERALIZATION
 
#define GEN_PASS_DECL_LINALGDETENSORIZE
 
#define GEN_PASS_DECL_LINALGSTRATEGYTILEANDFUSEPASS
 
#define GEN_PASS_DECL_LINALGSTRATEGYTILEPASS
 
#define GEN_PASS_DECL_LINALGSTRATEGYPADPASS
 
#define GEN_PASS_DECL_LINALGSTRATEGYDECOMPOSEPASS
 
#define GEN_PASS_DECL_LINALGSTRATEGYPEELPASS
 
#define GEN_PASS_DECL_LINALGSTRATEGYVECTORIZEPASS
 
#define GEN_PASS_DECL_LINALGSTRATEGYENABLEPASS
 
#define GEN_PASS_DECL_LINALGSTRATEGYLOWERVECTORSPASS
 
#define GEN_PASS_DECL_LINALGSTRATEGYREMOVEMARKERSPASS
 
#define GEN_PASS_REGISTRATION
 Generate the code for registering passes. More...
 

Functions

std::unique_ptr< Passmlir::createConvertElementwiseToLinalgPass ()
 
std::unique_ptr< Passmlir::createLinalgFoldUnitExtentDimsPass ()
 
std::unique_ptr< Passmlir::createLinalgElementwiseOpFusionPass ()
 
std::unique_ptr< Pass > mlir::createFoldReshapeOpsByLinearizationPass ()
 
std::unique_ptr< Passmlir::createLinalgNamedOpConversionPass ()
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgTilingPass (ArrayRef< int64_t > tileSizes={}, linalg::LinalgTilingLoopType loopType=linalg::LinalgTilingLoopType::Loops)
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgInlineScalarOperandsPass ()
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createConvertLinalgToLoopsPass ()
 Create a pass to convert Linalg operations to scf.for loops and memref.load/memref.store accesses. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createConvertLinalgToParallelLoopsPass ()
 Create a pass to convert Linalg operations to scf.parallel loops and memref.load/memref.store accesses. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createConvertLinalgToAffineLoopsPass ()
 Create a pass to convert Linalg operations to affine.for loops and affine_load/affine_store accesses. More...
 
std::unique_ptr< Passmlir::createLinalgInitTensorToAllocTensorPass ()
 Create a pass that rewrites init_tensor to alloc_tensor. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgBufferizePass ()
 Create a pass to convert Linalg operations which work on tensors to use buffers instead. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgGeneralizationPass ()
 Create a pass to convert named Linalg operations to Linalg generic operations. More...
 
std::unique_ptr< Passmlir::createLinalgDetensorizePass ()
 Create a pass to convert Linalg operations to equivalent operations that work on primitive types, if possible. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgStrategyTileAndFusePass (StringRef opName="", const linalg::LinalgTilingAndFusionOptions &opt={}, const linalg::LinalgTransformationFilter &filter=linalg::LinalgTransformationFilter())
 Linalg strategy passes. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgStrategyTilePass (StringRef opName="", const linalg::LinalgTilingOptions &opt=linalg::LinalgTilingOptions(), const linalg::LinalgTransformationFilter &filter=linalg::LinalgTransformationFilter())
 Create a LinalgStrategyTilePass. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgStrategyPadPass (StringRef opName="", const linalg::LinalgPaddingOptions &opt=linalg::LinalgPaddingOptions(), const linalg::LinalgTransformationFilter &filter=linalg::LinalgTransformationFilter())
 Create a LinalgStrategyPadPass. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgStrategyDecomposePass (const linalg::LinalgTransformationFilter &filter=linalg::LinalgTransformationFilter())
 Create a LinalgStrategyDecomposePass. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgStrategyPeelPass (StringRef opName="", const linalg::LinalgPeelOptions &opt=linalg::LinalgPeelOptions(), const linalg::LinalgTransformationFilter &filter=linalg::LinalgTransformationFilter())
 Create a LinalgStrategyPeelPass. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgStrategyLowerVectorsPass (linalg::LinalgVectorLoweringOptions opt=linalg::LinalgVectorLoweringOptions(), const linalg::LinalgTransformationFilter &filter=linalg::LinalgTransformationFilter())
 Create a LinalgStrategyLowerVectorsPass. More...
 
std::unique_ptr< OperationPass< func::FuncOp > > mlir::createLinalgStrategyRemoveMarkersPass ()
 Create a LinalgStrategyRemoveMarkersPass. More...
 

Macro Definition Documentation

◆ GEN_PASS_DECL_CONVERTELEMENTWISETOLINALG

#define GEN_PASS_DECL_CONVERTELEMENTWISETOLINALG

Definition at line 29 of file Passes.h.

◆ GEN_PASS_DECL_LINALGBUFFERIZE

#define GEN_PASS_DECL_LINALGBUFFERIZE

Definition at line 38 of file Passes.h.

◆ GEN_PASS_DECL_LINALGDETENSORIZE

#define GEN_PASS_DECL_LINALGDETENSORIZE

Definition at line 41 of file Passes.h.

◆ GEN_PASS_DECL_LINALGELEMENTWISEOPFUSION

#define GEN_PASS_DECL_LINALGELEMENTWISEOPFUSION

Definition at line 32 of file Passes.h.

◆ GEN_PASS_DECL_LINALGFOLDUNITEXTENTDIMS

#define GEN_PASS_DECL_LINALGFOLDUNITEXTENTDIMS

Definition at line 31 of file Passes.h.

◆ GEN_PASS_DECL_LINALGGENERALIZATION

#define GEN_PASS_DECL_LINALGGENERALIZATION

Definition at line 40 of file Passes.h.

◆ GEN_PASS_DECL_LINALGINITTENSORTOALLOCTENSOR

#define GEN_PASS_DECL_LINALGINITTENSORTOALLOCTENSOR

Definition at line 30 of file Passes.h.

◆ GEN_PASS_DECL_LINALGINLINESCALAROPERANDS

#define GEN_PASS_DECL_LINALGINLINESCALAROPERANDS

Definition at line 34 of file Passes.h.

◆ GEN_PASS_DECL_LINALGLOWERTOAFFINELOOPS

#define GEN_PASS_DECL_LINALGLOWERTOAFFINELOOPS

Definition at line 35 of file Passes.h.

◆ GEN_PASS_DECL_LINALGLOWERTOLOOPSPASS

#define GEN_PASS_DECL_LINALGLOWERTOLOOPSPASS

Definition at line 36 of file Passes.h.

◆ GEN_PASS_DECL_LINALGLOWERTOPARALLELLOOPS

#define GEN_PASS_DECL_LINALGLOWERTOPARALLELLOOPS

Definition at line 37 of file Passes.h.

◆ GEN_PASS_DECL_LINALGNAMEDOPCONVERSION

#define GEN_PASS_DECL_LINALGNAMEDOPCONVERSION

Definition at line 33 of file Passes.h.

◆ GEN_PASS_DECL_LINALGSTRATEGYDECOMPOSEPASS

#define GEN_PASS_DECL_LINALGSTRATEGYDECOMPOSEPASS

Definition at line 45 of file Passes.h.

◆ GEN_PASS_DECL_LINALGSTRATEGYENABLEPASS

#define GEN_PASS_DECL_LINALGSTRATEGYENABLEPASS

Definition at line 48 of file Passes.h.

◆ GEN_PASS_DECL_LINALGSTRATEGYLOWERVECTORSPASS

#define GEN_PASS_DECL_LINALGSTRATEGYLOWERVECTORSPASS

Definition at line 49 of file Passes.h.

◆ GEN_PASS_DECL_LINALGSTRATEGYPADPASS

#define GEN_PASS_DECL_LINALGSTRATEGYPADPASS

Definition at line 44 of file Passes.h.

◆ GEN_PASS_DECL_LINALGSTRATEGYPEELPASS

#define GEN_PASS_DECL_LINALGSTRATEGYPEELPASS

Definition at line 46 of file Passes.h.

◆ GEN_PASS_DECL_LINALGSTRATEGYREMOVEMARKERSPASS

#define GEN_PASS_DECL_LINALGSTRATEGYREMOVEMARKERSPASS

Definition at line 50 of file Passes.h.

◆ GEN_PASS_DECL_LINALGSTRATEGYTILEANDFUSEPASS

#define GEN_PASS_DECL_LINALGSTRATEGYTILEANDFUSEPASS

Definition at line 42 of file Passes.h.

◆ GEN_PASS_DECL_LINALGSTRATEGYTILEPASS

#define GEN_PASS_DECL_LINALGSTRATEGYTILEPASS

Definition at line 43 of file Passes.h.

◆ GEN_PASS_DECL_LINALGSTRATEGYVECTORIZEPASS

#define GEN_PASS_DECL_LINALGSTRATEGYVECTORIZEPASS

Definition at line 47 of file Passes.h.

◆ GEN_PASS_DECL_LINALGTILINGPASS

#define GEN_PASS_DECL_LINALGTILINGPASS

Definition at line 39 of file Passes.h.

◆ GEN_PASS_REGISTRATION

#define GEN_PASS_REGISTRATION

Generate the code for registering passes.

Definition at line 154 of file Passes.h.