23#define GEN_PASS_DEF_LINALGMORPHOPSPASS
24#include "mlir/Dialect/Linalg/Passes.h.inc"
27#define DEBUG_TYPE "linalg-morphism"
33struct LinalgMorphOpsPass
37 LinalgMorphOpsPass>::LinalgMorphOpsPassBase;
39 void runOnOperation()
override;
42void LinalgMorphOpsPass::runOnOperation() {
49 if (namedToGeneric || categoryToGeneric)
53 if (genericToNamed || genericToCategory) {
void populateLinalgNamedOpsGeneralizationPatterns(RewritePatternSet &patterns)
Linalg generalization patterns.
void populateLinalgNamedToElementwisePatterns(RewritePatternSet &patterns)
Populates patterns that convert linalg named ops e.g.
void populateLinalgGenericOpsSpecializationPatterns(RewritePatternSet &patterns, const GenericOpSpecializationOptions &options={})
Populates patterns with patterns to convert linalg.generic ops to named or category ops where possibl...
Include the generated interface declarations.
LogicalResult applyPatternsGreedily(Region ®ion, const FrozenRewritePatternSet &patterns, GreedyRewriteConfig config=GreedyRewriteConfig(), bool *changed=nullptr)
Rewrite ops in the given region, which must be isolated from above, by repeatedly applying the highes...