[Mlir-commits] [mlir] [MLIR][XeGPU] Add handling for unit-dim expansion in ShapeCast workgroup-to-subgroup distribution (PR #171758)

Jianhui Li llvmlistbot at llvm.org
Tue Dec 16 10:45:29 PST 2025


================
@@ -609,10 +609,6 @@ void LayoutInfoPropagation::visitVectorBroadCastOp(
     propagateIfChanged(operands[0], operands[0]->meet(LayoutInfo(sliceLayout)));
     return;
   }
-
-  SetVector<int64_t> broadcastUnitDims = broadcast.computeBroadcastedUnitDims();
-  resultLayout = cast<xegpu::DistributeLayoutAttr>(resultLayout.get())
-                     .setUnitDimData(broadcastUnitDims);
----------------
Jianhui-Li wrote:

This is for the special case that source and dest rank matches. In this, we need to keep this layout intact to pass to preceding ShapeCast, which will add a slice on top. We can't change the layout here. 

> if the bcast source has another user that require the correct sg_data
When source and dest rank match, the bcast source must come from shapecast and can only used by bcast. 

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


More information about the Mlir-commits mailing list