[Openmp-commits] [openmp] [OpenMP] Remove special handling for SPIR-V uinc atomic (PR #180747)
Joseph Huber via Openmp-commits
openmp-commits at lists.llvm.org
Tue Feb 10 06:40:45 PST 2026
https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/180747
Summary:
No longer necessary after https://github.com/llvm/llvm-project/pull/179114
>From bfa4f17d1003dd8236ba6a30dc322455f8591083 Mon Sep 17 00:00:00 2001
From: Joseph Huber <huberjn at outlook.com>
Date: Tue, 10 Feb 2026 08:39:00 -0600
Subject: [PATCH] [OpenMP] Remove special handling for SPIR-V uinc atomic
Summary:
No longer necessary after https://github.com/llvm/llvm-project/pull/179114
---
openmp/device/include/Synchronization.h | 13 -------------
1 file changed, 13 deletions(-)
diff --git a/openmp/device/include/Synchronization.h b/openmp/device/include/Synchronization.h
index acf42274a0664..f164a55e46a12 100644
--- a/openmp/device/include/Synchronization.h
+++ b/openmp/device/include/Synchronization.h
@@ -42,20 +42,7 @@ enum MemScopeTy {
template <typename Ty, typename V = utils::remove_addrspace_t<Ty>>
V inc(Ty *Address, V Val, atomic::OrderingTy Ordering,
MemScopeTy MemScope = MemScopeTy::device) {
-#if defined(__SPIRV__)
- uint32_t Old;
- while (true) {
- Old = load(Address, Ordering, MemScope);
- if (Old >= Val) {
- if (cas(Address, Old, 0u, Ordering, Ordering, MemScope))
- break;
- } else if (cas(Address, Old, Old + 1, Ordering, Ordering, MemScope))
- break;
- }
- return Old;
-#else
return __scoped_atomic_fetch_uinc(Address, Val, Ordering, MemScope);
-#endif
}
template <typename Ty, typename V = utils::remove_addrspace_t<Ty>>
More information about the Openmp-commits
mailing list