summaryrefslogtreecommitdiffstats
path: root/Utilities/cmlibuv/src/unix/atomic-ops.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2018-01-19 18:03:04 (GMT)
committerBrad King <brad.king@kitware.com>2018-01-19 18:03:04 (GMT)
commitb58d48c15f9ee18015960e2eed7410f5166c855f (patch)
tree640add606d5ca6c0a03f58589a7528eaa9511428 /Utilities/cmlibuv/src/unix/atomic-ops.h
parente8b57c2283f731f42b4c7eece0531dab67df3d41 (diff)
parentf4a26c748b5ea2cafecdf5490b744a2b167c01ae (diff)
downloadCMake-b58d48c15f9ee18015960e2eed7410f5166c855f.zip
CMake-b58d48c15f9ee18015960e2eed7410f5166c855f.tar.gz
CMake-b58d48c15f9ee18015960e2eed7410f5166c855f.tar.bz2
Merge branch 'upstream-libuv' into update-libuv
* upstream-libuv: libuv 2018-01-19 (63de1eca)
Diffstat (limited to 'Utilities/cmlibuv/src/unix/atomic-ops.h')
-rw-r--r--Utilities/cmlibuv/src/unix/atomic-ops.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/Utilities/cmlibuv/src/unix/atomic-ops.h b/Utilities/cmlibuv/src/unix/atomic-ops.h
index 9dac255..7cac1f9 100644
--- a/Utilities/cmlibuv/src/unix/atomic-ops.h
+++ b/Utilities/cmlibuv/src/unix/atomic-ops.h
@@ -20,7 +20,6 @@
#if defined(__SUNPRO_C) || defined(__SUNPRO_CC)
#include <atomic.h>
-#define __sync_val_compare_and_swap(p, o, n) atomic_cas_ptr(p, o, n)
#endif
UV_UNUSED(static int cmpxchgi(int* ptr, int oldval, int newval));
@@ -49,6 +48,8 @@ UV_UNUSED(static int cmpxchgi(int* ptr, int oldval, int newval)) {
return oldval;
else
return op4;
+#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
+ return atomic_cas_uint(ptr, oldval, newval);
#else
return __sync_val_compare_and_swap(ptr, oldval, newval);
#endif
@@ -83,6 +84,8 @@ UV_UNUSED(static long cmpxchgl(long* ptr, long oldval, long newval)) {
return oldval;
else
return op4;
+#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
+ return atomic_cas_ulong(ptr, oldval, newval);
#else
return __sync_val_compare_and_swap(ptr, oldval, newval);
#endif