|
|
@@ -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);
|