[Mlir-commits] [mlir] [mlir][affine] Wrap SimplifyAffineMinMax in a pass (PR #145741)

Nicolas Vasilache llvmlistbot at llvm.org
Thu Jun 26 04:59:05 PDT 2025


================
@@ -172,3 +192,79 @@ LogicalResult mlir::affine::simplifyAffineMinMaxOps(RewriterBase &rewriter,
     *modified = changed;
   return success();
 }
+
+namespace {
+
+struct SimplifyAffineMaxOp : public OpRewritePattern<AffineMaxOp> {
+  using OpRewritePattern<AffineMaxOp>::OpRewritePattern;
+
+  LogicalResult matchAndRewrite(AffineMaxOp affineOp,
+                                PatternRewriter &rewriter) const override {
+    return success(simplifyAffineMaxOp(rewriter, affineOp));
+  }
+};
+
+struct SimplifyAffineMinOp : public OpRewritePattern<AffineMinOp> {
+  using OpRewritePattern<AffineMinOp>::OpRewritePattern;
+
+  LogicalResult matchAndRewrite(AffineMinOp affineOp,
+                                PatternRewriter &rewriter) const override {
+    return success(simplifyAffineMinOp(rewriter, affineOp));
+  }
+};
+
+struct SimplifyAffineApplyOp : public OpRewritePattern<AffineApplyOp> {
+  using OpRewritePattern<AffineApplyOp>::OpRewritePattern;
+
+  LogicalResult matchAndRewrite(AffineApplyOp affineOp,
+                                PatternRewriter &rewriter) const override {
+    LLVM_DEBUG({ DBGS() << "SimplifyAffineApplyOp: `" << affineOp << "`\n"; });
----------------
nicolasvasilache wrote:

good point, this was useful when used with a very long and noisy pass pipeline but it is not upstream's problem.

https://github.com/llvm/llvm-project/pull/145741


More information about the Mlir-commits mailing list