[Mlir-commits] [mlir] [mlir][spirv][gpu] Add lowering for gpu.subgroup_broadcast (PR #187947)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Tue Mar 24 22:56:39 PDT 2026


================
@@ -542,6 +554,32 @@ LogicalResult GPURotateConversion::matchAndRewrite(
   return success();
 }
 
+//===----------------------------------------------------------------------===//
+// Subgroup broadcast
+//===----------------------------------------------------------------------===//
+
+LogicalResult GPUSubgroupBroadcastConversion::matchAndRewrite(
+    gpu::SubgroupBroadcastOp op, OpAdaptor adaptor,
+    ConversionPatternRewriter &rewriter) const {
+  Location loc = op.getLoc();
+  auto scope = rewriter.getAttr<spirv::ScopeAttr>(spirv::Scope::Subgroup);
+  Value result;
+
+  switch (op.getBroadcastType()) {
----------------
hankluo6 wrote:

No, the op only has these two types. I added a default case with `llvm_unreachable(...)`.

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


More information about the Mlir-commits mailing list