[Mlir-commits] [mlir] [mlir][spirv] Add support for GroupNonUniformQuadSwap (PR #174747)

Jakub Kuderski llvmlistbot at llvm.org
Wed Jan 7 05:48:45 PST 2026


================
@@ -147,4 +147,11 @@ spirv.module Logical GLSL450 requires #spirv.vce<v1.3, [Shader, Linkage, GroupNo
     %0 = spirv.GroupNonUniformAllEqual <Subgroup> %val : vector<4xi32>, i1
     spirv.ReturnValue %0: i1
   }
+
+  spirv.func @group_non_uniform_quad_swap(%val: vector<4xf32>) -> vector<4xf32> "None" {
+    %dir = spirv.Constant 0 : i32
+    // CHECK: %{{.+}} = spirv.GroupNonUniformQuadSwap <Subgroup> %{{.+}} %{{.+}} : vector<4xf32>, i32
+    %0 = spirv.GroupNonUniformQuadSwap <Subgroup> %val %dir : vector<4xf32>, i32
----------------
kuhar wrote:

Can you also add test cases with the swapped value being a scalar and one negative tests for unsupported types?

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


More information about the Mlir-commits mailing list