[Mlir-commits] [mlir] 24b8cfa - [mlir][SPIR-V] Add roundtrip and validation test for spirv.Switch (NFC) (#200572)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Mon Jun 1 01:35:34 PDT 2026
Author: Arseniy Obolenskiy
Date: 2026-06-01T10:35:29+02:00
New Revision: 24b8cfa374d7c78fadcbb41bf9cb497c84f8dda5
URL: https://github.com/llvm/llvm-project/commit/24b8cfa374d7c78fadcbb41bf9cb497c84f8dda5
DIFF: https://github.com/llvm/llvm-project/commit/24b8cfa374d7c78fadcbb41bf9cb497c84f8dda5.diff
LOG: [mlir][SPIR-V] Add roundtrip and validation test for spirv.Switch (NFC) (#200572)
Add missing `spirv-val` tests for spirv.Switch operation
Added:
Modified:
mlir/test/Target/SPIRV/selection.mlir
Removed:
################################################################################
diff --git a/mlir/test/Target/SPIRV/selection.mlir b/mlir/test/Target/SPIRV/selection.mlir
index d0ad118b01c8a..317c951f2ba8d 100644
--- a/mlir/test/Target/SPIRV/selection.mlir
+++ b/mlir/test/Target/SPIRV/selection.mlir
@@ -346,3 +346,32 @@ spirv.module Logical GLSL450 requires #spirv.vce<v1.5, [Shader], []> {
spirv.EntryPoint "GLCompute" @main
spirv.ExecutionMode @main "LocalSize", 1, 1, 1
}
+
+// -----
+
+// Switch with only a default target (no case literals).
+
+spirv.module Logical GLSL450 requires #spirv.vce<v1.0, [Shader, Linkage], []> {
+// CHECK-LABEL: @switch_default_only
+ spirv.func @switch_default_only(%cond: i32) -> () "None" {
+// CHECK: spirv.mlir.selection
+ spirv.mlir.selection {
+// CHECK-NEXT: spirv.Switch %{{.*}} : i32, [
+// CHECK-NEXT: default: ^[[DEFAULT:.+]]]
+ spirv.Switch %cond : i32, [
+ default: ^default
+ ]
+
+// CHECK-NEXT: ^[[DEFAULT]]:
+ ^default:
+// CHECK-NEXT: spirv.Branch ^[[MERGE:.+]]
+ spirv.Branch ^merge
+
+// CHECK-NEXT: ^[[MERGE]]:
+ ^merge:
+// CHECK-NEXT: spirv.mlir.merge
+ spirv.mlir.merge
+ }
+ spirv.Return
+ }
+}
More information about the Mlir-commits
mailing list