diff options
author | Brad King <brad.king@kitware.com> | 2019-02-22 12:49:33 -0500 |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2019-02-25 08:26:20 -0500 |
commit | 0d489fab194efdf77970cb981dc9b636c36da2ea (patch) | |
tree | 2a744ebed24f669184638ee369534fd1bc74ea66 /Utilities | |
parent | 1699f5c231bf0a9fa411eda637564b7f4deec7f0 (diff) | |
download | cmake-0d489fab194efdf77970cb981dc9b636c36da2ea.tar.gz |
libuv: fix atomic ops compilation with xlclang
Diffstat (limited to 'Utilities')
-rw-r--r-- | Utilities/cmlibuv/src/unix/atomic-ops.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Utilities/cmlibuv/src/unix/atomic-ops.h b/Utilities/cmlibuv/src/unix/atomic-ops.h index 7cac1f9889..be741dcb70 100644 --- a/Utilities/cmlibuv/src/unix/atomic-ops.h +++ b/Utilities/cmlibuv/src/unix/atomic-ops.h @@ -37,7 +37,7 @@ UV_UNUSED(static int cmpxchgi(int* ptr, int oldval, int newval)) { : "r" (newval), "0" (oldval) : "memory"); return out; -#elif defined(_AIX) && defined(__xlC__) +#elif defined(_AIX) && (defined(__xlC__) || defined(__ibmxl__)) const int out = (*(volatile int*) ptr); __compare_and_swap(ptr, &oldval, newval); return out; @@ -63,7 +63,7 @@ UV_UNUSED(static long cmpxchgl(long* ptr, long oldval, long newval)) { : "r" (newval), "0" (oldval) : "memory"); return out; -#elif defined(_AIX) && defined(__xlC__) +#elif defined(_AIX) && (defined(__xlC__) || defined(__ibmxl__)) const long out = (*(volatile int*) ptr); # if defined(__64BIT__) __compare_and_swaplp(ptr, &oldval, newval); |