[Openmp-commits] [openmp] a969d57 - [OpenMP] Remove special handling for SPIR-V uinc atomic (#180747)

via Openmp-commits openmp-commits at lists.llvm.org
Tue Feb 10 08:21:21 PST 2026


Author: Joseph Huber
Date: 2026-02-10T10:21:16-06:00
New Revision: a969d572c27d49f9d8d4852fba798cfd41c76987

URL: https://github.com/llvm/llvm-project/commit/a969d572c27d49f9d8d4852fba798cfd41c76987
DIFF: https://github.com/llvm/llvm-project/commit/a969d572c27d49f9d8d4852fba798cfd41c76987.diff

LOG: [OpenMP] Remove special handling for SPIR-V uinc atomic (#180747)

Summary:
No longer necessary after
https://github.com/llvm/llvm-project/pull/179114

Added: 
    

Modified: 
    openmp/device/include/Synchronization.h

Removed: 
    


################################################################################
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