From 2714b8b08a54add45b7d6f54e1eee0ea7e8002b3 Mon Sep 17 00:00:00 2001 From: Hsiangkai Wang Date: Fri, 9 May 2025 09:33:10 +0100 Subject: [PATCH] [mlir][spirv] Sync GroupNonUniformRotateKHR format with other non-uniform ops There is no comma after execution scope in other gpu non-uniform operations. This patch updates GroupNonUniformRotateKHR to follow the same syntax. --- .../Dialect/SPIRV/IR/SPIRVNonUniformOps.td | 6 +++--- .../test/Dialect/SPIRV/IR/non-uniform-ops.mlir | 18 +++++++++--------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td b/mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td index 2dd3dbd28d436..3fdaff2470cba 100644 --- a/mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td +++ b/mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td @@ -1404,8 +1404,8 @@ def SPIRV_GroupNonUniformRotateKHROp : SPIRV_Op<"GroupNonUniformRotateKHR", [ ```mlir %four = spirv.Constant 4 : i32 - %0 = spirv.GroupNonUniformRotateKHR , %value, %delta : f32, i32 -> f32 - %1 = spirv.GroupNonUniformRotateKHR , %value, %delta, + %0 = spirv.GroupNonUniformRotateKHR %value, %delta : f32, i32 -> f32 + %1 = spirv.GroupNonUniformRotateKHR %value, %delta, clustersize(%four) : f32, i32, i32 -> f32 ``` }]; @@ -1429,7 +1429,7 @@ def SPIRV_GroupNonUniformRotateKHROp : SPIRV_Op<"GroupNonUniformRotateKHR", [ ); let assemblyFormat = [{ - $execution_scope `,` $value `,` $delta (`,` `cluster_size` `(` $cluster_size^ `)`)? attr-dict `:` type($value) `,` type($delta) (`,` type($cluster_size)^)? `->` type(results) + $execution_scope $value `,` $delta (`,` `cluster_size` `(` $cluster_size^ `)`)? attr-dict `:` type($value) `,` type($delta) (`,` type($cluster_size)^)? `->` type(results) }]; } diff --git a/mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir b/mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir index bf383d3837b6e..6990f2b3751f5 100644 --- a/mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir +++ b/mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir @@ -613,8 +613,8 @@ func.func @group_non_uniform_logical_xor(%val: i32) -> i32 { // CHECK-LABEL: @group_non_uniform_rotate_khr func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32) -> f32 { - // CHECK: %{{.+}} = spirv.GroupNonUniformRotateKHR , %{{.+}} : f32, i32 -> f32 - %0 = spirv.GroupNonUniformRotateKHR , %val, %delta : f32, i32 -> f32 + // CHECK: %{{.+}} = spirv.GroupNonUniformRotateKHR %{{.+}} : f32, i32 -> f32 + %0 = spirv.GroupNonUniformRotateKHR %val, %delta : f32, i32 -> f32 return %0: f32 } @@ -622,9 +622,9 @@ func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32) -> f32 { // CHECK-LABEL: @group_non_uniform_rotate_khr func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32) -> f32 { - // CHECK: %{{.+}} = spirv.GroupNonUniformRotateKHR , %{{.+}} : f32, i32, i32 -> f32 + // CHECK: %{{.+}} = spirv.GroupNonUniformRotateKHR %{{.+}} : f32, i32, i32 -> f32 %four = spirv.Constant 4 : i32 - %0 = spirv.GroupNonUniformRotateKHR , %val, %delta, cluster_size(%four) : f32, i32, i32 -> f32 + %0 = spirv.GroupNonUniformRotateKHR %val, %delta, cluster_size(%four) : f32, i32, i32 -> f32 return %0: f32 } @@ -633,7 +633,7 @@ func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32) -> f32 { func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32) -> f32 { %four = spirv.Constant 4 : i32 // expected-error @+1 {{execution scope must be 'Workgroup' or 'Subgroup'}} - %0 = spirv.GroupNonUniformRotateKHR , %val, %delta, cluster_size(%four) : f32, i32, i32 -> f32 + %0 = spirv.GroupNonUniformRotateKHR %val, %delta, cluster_size(%four) : f32, i32, i32 -> f32 return %0: f32 } @@ -642,7 +642,7 @@ func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32) -> f32 { func.func @group_non_uniform_rotate_khr(%val: f32, %delta: si32) -> f32 { %four = spirv.Constant 4 : i32 // expected-error @+1 {{op operand #1 must be 8/16/32/64-bit signless/unsigned integer, but got 'si32'}} - %0 = spirv.GroupNonUniformRotateKHR , %val, %delta, cluster_size(%four) : f32, si32, i32 -> f32 + %0 = spirv.GroupNonUniformRotateKHR %val, %delta, cluster_size(%four) : f32, si32, i32 -> f32 return %0: f32 } @@ -651,7 +651,7 @@ func.func @group_non_uniform_rotate_khr(%val: f32, %delta: si32) -> f32 { func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32) -> f32 { %four = spirv.Constant 4 : si32 // expected-error @+1 {{op operand #2 must be 8/16/32/64-bit signless/unsigned integer, but got 'si32'}} - %0 = spirv.GroupNonUniformRotateKHR , %val, %delta, cluster_size(%four) : f32, i32, si32 -> f32 + %0 = spirv.GroupNonUniformRotateKHR %val, %delta, cluster_size(%four) : f32, i32, si32 -> f32 return %0: f32 } @@ -659,7 +659,7 @@ func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32) -> f32 { func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32, %four: i32) -> f32 { // expected-error @+1 {{cluster size operand must come from a constant op}} - %0 = spirv.GroupNonUniformRotateKHR , %val, %delta, cluster_size(%four) : f32, i32, i32 -> f32 + %0 = spirv.GroupNonUniformRotateKHR %val, %delta, cluster_size(%four) : f32, i32, i32 -> f32 return %0: f32 } @@ -668,6 +668,6 @@ func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32, %four: i32) -> f func.func @group_non_uniform_rotate_khr(%val: f32, %delta: i32) -> f32 { %five = spirv.Constant 5 : i32 // expected-error @+1 {{cluster size operand must be a power of two}} - %0 = spirv.GroupNonUniformRotateKHR , %val, %delta, cluster_size(%five) : f32, i32, i32 -> f32 + %0 = spirv.GroupNonUniformRotateKHR %val, %delta, cluster_size(%five) : f32, i32, i32 -> f32 return %0: f32 }