[llvm] [SPIR-V] Add Int64Atomics to Vulkan available capabilities (PR #203194)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 11 01:15:54 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-spir-v
Author: Arseniy Obolenskiy (aobolensk)
<details>
<summary>Changes</summary>
fixes #<!-- -->202456
---
Full diff: https://github.com/llvm/llvm-project/pull/203194.diff
2 Files Affected:
- (modified) llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp (+1)
- (modified) llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedAdd_spv_i64.ll (-4)
``````````diff
diff --git a/llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp b/llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
index bb6245778b2ea..42a7c51426196 100644
--- a/llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
+++ b/llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
@@ -1003,6 +1003,7 @@ void RequirementHandler::initAvailableCapabilitiesForVulkan(
// Core in Vulkan 1.1 and earlier.
addAvailableCaps({Capability::Int64,
+ Capability::Int64Atomics,
Capability::Float16,
Capability::Float64,
Capability::GroupNonUniform,
diff --git a/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedAdd_spv_i64.ll b/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedAdd_spv_i64.ll
index d95bc50af1110..794c0a925862a 100644
--- a/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedAdd_spv_i64.ll
+++ b/llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedAdd_spv_i64.ll
@@ -1,10 +1,6 @@
; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv1.6-vulkan1.3-compute %s -o - | FileCheck %s
; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv1.6-vulkan1.3-compute %s -o - -filetype=obj | spirv-val %}
-; XFAIL: *
-; Int64Atomics capability is not yet available for Vulkan targets.
-; See https://github.com/llvm/llvm-project/issues/202456
-
; Test lowering of llvm.spv.interlocked.add with i64 to OpAtomicIAdd.
; CHECK-DAG: %[[#ulong:]] = OpTypeInt 64 0
``````````
</details>
https://github.com/llvm/llvm-project/pull/203194
More information about the llvm-commits
mailing list