[Mlir-commits] [mlir] [mlir][mesh] Exit after `signalPassFailure` to fix a crash (PR #132662)

Longsheng Mou llvmlistbot at llvm.org
Sun Mar 23 20:29:19 PDT 2025


https://github.com/CoTinker created https://github.com/llvm/llvm-project/pull/132662

Fixes #131435.

>From cf3bd2bdd73d4f71cfd0d2ef8f222aa762521755 Mon Sep 17 00:00:00 2001
From: Longsheng Mou <longshengmou at gmail.com>
Date: Mon, 24 Mar 2025 11:19:45 +0800
Subject: [PATCH 1/2] [mlir][mesh] Exit after `signalPassFailure`

---
 mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp b/mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
index 8c989cce63406..4452dd65fce9d 100644
--- a/mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
+++ b/mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
@@ -369,7 +369,7 @@ struct ShardingPropagation
     OpBuilder builder(ctx);
     if (!region.hasOneBlock()) {
       funcOp.emitOpError() << "only one block is supported!";
-      signalPassFailure();
+      return signalPassFailure();
     }
     Block &block = region.front();
 

>From 14631a1ebf80266b33964817e23783be09ab5802 Mon Sep 17 00:00:00 2001
From: Longsheng Mou <longshengmou at gmail.com>
Date: Mon, 24 Mar 2025 11:25:16 +0800
Subject: [PATCH 2/2] add test

---
 mlir/test/Dialect/Mesh/sharding-propagation-failed.mlir | 4 ++++
 1 file changed, 4 insertions(+)
 create mode 100644 mlir/test/Dialect/Mesh/sharding-propagation-failed.mlir

diff --git a/mlir/test/Dialect/Mesh/sharding-propagation-failed.mlir b/mlir/test/Dialect/Mesh/sharding-propagation-failed.mlir
new file mode 100644
index 0000000000000..b5eb98d859c36
--- /dev/null
+++ b/mlir/test/Dialect/Mesh/sharding-propagation-failed.mlir
@@ -0,0 +1,4 @@
+// RUN: mlir-opt --pass-pipeline="builtin.module(func.func(sharding-propagation))" %s -verify-diagnostics
+
+// expected-error @+1 {{'func.func' op only one block is supported!}}
+func.func private @no_block_function(i64)



More information about the Mlir-commits mailing list