[llvm] [SPIR-V] Handle bfloat in getZeroFP/getOneFP (PR #202859)

Juan Manuel Martinez CaamaƱo via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 15 00:55:46 PDT 2026


================
@@ -1,17 +1,23 @@
-; RUN: not llc -O0 -mtriple=spirv32-unknown-unknown %s -o %t.spvt 2>&1 | FileCheck %s --check-prefix=CHECK-ERROR
-; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv32-unknown-unknown --spirv-ext=+SPV_KHR_bfloat16 %s -o - | FileCheck %s
-; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv64-unknown-unknown --spirv-ext=+SPV_KHR_bfloat16 %s -o - -filetype=obj | spirv-val %}
+; RUN: split-file %s %t
 
-; CHECK-ERROR: LLVM ERROR: OpTypeFloat type with bfloat requires the following SPIR-V extension: SPV_KHR_bfloat16
+; RUN: not llc -O0 -mtriple=spirv32-unknown-unknown %t/valid.ll -o %t.spvt 2>&1 | FileCheck %s --check-prefix=CHECK-ERROR
 
-; CHECK-DAG: OpCapability BFloat16TypeKHR
-; CHECK-DAG: OpExtension "SPV_KHR_bfloat16"
-; CHECK: %[[#BFLOAT:]] = OpTypeFloat 16 0
-; CHECK: %[[#]] = OpTypeVector %[[#BFLOAT]] 2
+; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv32-unknown-unknown --spirv-ext=+SPV_KHR_bfloat16 %t/valid.ll -o - | FileCheck %t/valid.ll
+; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv64-unknown-unknown --spirv-ext=+SPV_KHR_bfloat16 %t/valid.ll -o - -filetype=obj | spirv-val %}
+
+; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv32-unknown-unknown --spirv-ext=+SPV_KHR_bfloat16 %t/saturate.ll -o - | FileCheck %t/saturate.ll
 
+; CHECK-ERROR: LLVM ERROR: OpTypeFloat type with bfloat requires the following SPIR-V extension: SPV_KHR_bfloat16
+
+;--- valid.ll
 target datalayout = "e-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-n8:16:32:64"
 target triple = "spir64-unknown-unknown"
----------------
jmmartinez wrote:

We're overriding the triple anyways.
```suggestion
```

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


More information about the llvm-commits mailing list