[Mlir-commits] [mlir] [MLIR][XeGPU] Add 2D `vector.multi_reduction` optimization (PR #171154)
Jianhui Li
llvmlistbot at llvm.org
Fri Dec 19 09:32:28 PST 2025
================
@@ -473,6 +556,17 @@ struct XeGPUOptimizeBlockLoadsPass final
auto laneData = layout.getEffectiveLaneDataAsInt();
return !canBeOptimizedForTranspose(laneLayout, laneData);
});
+
+ target.addDynamicallyLegalOp<vector::MultiDimReductionOp>(
+ [=](Operation *op) -> bool {
+ auto layout = xegpu::getDistributeLayoutAttr(op->getResult(0));
+ if (!layout || !layout.isForSubgroup())
+ return true;
+ if (auto reductionOp = dyn_cast<vector::MultiDimReductionOp>(op))
----------------
Jianhui-Li wrote:
nit: this check can be removed since it is always TRUE?
https://github.com/llvm/llvm-project/pull/171154
More information about the Mlir-commits
mailing list