[Mlir-commits] [mlir] [MLIR][XeGPU] Add Layout Propagation support for multi-reduction/reduction op with scalar result (PR #189133)

Jianhui Li llvmlistbot at llvm.org
Wed Apr 1 11:01:58 PDT 2026


================
@@ -652,13 +686,14 @@ xegpu::DistributeLayoutAttr xegpu::setupInsertStridedSliceResultLayout(
     }
   } else if (layoutKind == xegpu::LayoutKind::Lane) {
     for (int dim = 0; dim < srcRank; dim++) {
-      assert(srcShape[dim] % consumerLaneLayout[dim] == 0 &&
-             "srcShape must be divisible by laneLayout for all dimensions");
-      laneDataValue = std::min(srcShape[dim] / consumerLaneLayout[dim],
-                               consumerLaneData[dim]);
-
-      requiredResLayout =
-          requiredResLayout.setDimData(dim, -1, -1, laneDataValue);
+      if (consumerLaneData[dim] != srcShape[dim]) {
----------------
Jianhui-Li wrote:

The check here is to support the wrap-around layout which is only relevant at sg/lane layout, not inst_layout. added a comment. 

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


More information about the Mlir-commits mailing list