MLIR  19.0.0git
Classes | Namespaces | Enumerations | Functions
GreedyPatternRewriteDriver.h File Reference
#include "mlir/Rewrite/FrozenRewritePatternSet.h"

Go to the source code of this file.

Classes

class  mlir::GreedyRewriteConfig
 This class allows control over how the GreedyPatternRewriteDriver works. More...
 

Namespaces

 mlir
 Include the generated interface declarations.
 

Enumerations

enum class  mlir::GreedyRewriteStrictness { mlir::AnyOp , mlir::ExistingAndNewOps , mlir::ExistingOps }
 This enum controls which ops are put on the worklist during a greedy pattern rewrite. More...
 

Functions

LogicalResult mlir::applyPatternsAndFoldGreedily (Region &region, 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 highest benefit patterns in a greedy worklist driven manner until a fixpoint is reached. More...
 
LogicalResult mlir::applyPatternsAndFoldGreedily (Operation *op, const FrozenRewritePatternSet &patterns, GreedyRewriteConfig config=GreedyRewriteConfig(), bool *changed=nullptr)
 Rewrite ops nested under the given operation, which must be isolated from above, by repeatedly applying the highest benefit patterns in a greedy worklist driven manner until a fixpoint is reached. More...
 
LogicalResult mlir::applyOpPatternsAndFold (ArrayRef< Operation * > ops, const FrozenRewritePatternSet &patterns, GreedyRewriteConfig config=GreedyRewriteConfig(), bool *changed=nullptr, bool *allErased=nullptr)
 Rewrite the specified ops by repeatedly applying the highest benefit patterns in a greedy worklist driven manner until a fixpoint is reached. More...