13 #ifndef MLIR_DIALECT_MEMREF_TRANSFORMS_PASSES_H 14 #define MLIR_DIALECT_MEMREF_TRANSFORMS_PASSES_H 118 #define GEN_PASS_REGISTRATION 119 #include "mlir/Dialect/MemRef/Transforms/Passes.h.inc" 124 #endif // MLIR_DIALECT_MEMREF_TRANSFORMS_PASSES_H Include the generated interface declarations.
void populateExpandOpsPatterns(RewritePatternSet &patterns)
Collects a set of patterns to rewrite ops within the memref dialect.
void populateResolveShapedTypeResultDimsPatterns(RewritePatternSet &patterns)
Appends patterns that resolve memref.dim operations with values that are defined by operations that i...
This class represents an efficient way to signal success or failure.
void populateFoldSubViewOpPatterns(RewritePatternSet &patterns)
Appends patterns for folding memref.subview ops into consumer load/store ops into patterns...
void populateResolveRankedShapeTypeResultDimsPatterns(RewritePatternSet &patterns)
Appends patterns that resolve memref.dim operations with values that are defined by operations that i...
std::unique_ptr< Pass > createFoldSubViewOpsPass()
Creates an operation pass to fold memref.subview ops into consumer load/store ops into patterns...
std::unique_ptr< OperationPass< ModuleOp > > createNormalizeMemRefsPass()
Creates an interprocedural pass to normalize memrefs to have a trivial (identity) layout map...
std::unique_ptr< Pass > createResolveRankedShapeTypeResultDimsPass()
Creates an operation pass to resolve memref.dim operations with values that are defined by operations...
LogicalResult multiBuffer(memref::AllocOp allocOp, unsigned multiplier)
Transformation to do multi-buffering/array expansion to remove dependencies on the temporary allocati...
std::unique_ptr< Pass > createExpandOpsPass()
Creates an instance of the ExpandOps pass that legalizes memref dialect ops to be convertible to LLVM...
std::unique_ptr< Pass > createResolveShapedTypeResultDimsPass()
Creates an operation pass to resolve memref.dim operations with values that are defined by operations...