[Mlir-commits] [mlir] [MLIR][XeGPU] Add blocking and subgroup to lane distribution support for ConvertLayout operation (PR #183837)

Artem Kroviakov llvmlistbot at llvm.org
Sat Feb 28 01:14:35 PST 2026


================
@@ -2060,6 +2060,29 @@ struct VectorStepSliceDistribution final : public gpu::WarpDistributionPattern {
   }
 };
 
+struct ConvertLayoutDistribution
+    : public OpRewritePattern<xegpu::ConvertLayoutOp> {
+  using OpRewritePattern::OpRewritePattern;
+
+  LogicalResult matchAndRewrite(xegpu::ConvertLayoutOp op,
+                                PatternRewriter &rewriter) const override {
+    auto inputLayout = op.getInputLayoutAttr();
+    auto targetLayout = op.getTargetLayoutAttr();
+
+    if (!inputLayout || !targetLayout)
+      return rewriter.notifyMatchFailure(op, "missing layout attributes");
+
+    if (!inputLayout.isCompatibleWith(targetLayout, xegpu::LayoutKind::Lane)) {
+      op.emitError()
----------------
akroviakov wrote:

```suggestion
     return op.emitError()
```

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


More information about the Mlir-commits mailing list