blob: fded3cd3d6ac80f2befa963b40d5f01919d0e0c3 [file] [log] [blame] [edit]
--- libuv-1.40.0/src/win/atomicops-inl.h.orig 2021-01-12 14:43:58.259375600 -0800
+++ libuv-1.40.0/src/win/atomicops-inl.h 2021-01-12 14:49:35.587505100 -0800
@@ -41,6 +41,8 @@
#else /* GCC */
+#if defined(__i386__) || defined(__x86_64__)
+
/* Mingw-32 version, hopefully this works for 64-bit gcc as well. */
static inline char uv__atomic_exchange_set(char volatile* target) {
const char one = 1;
@@ -52,6 +54,14 @@
return old_value;
}
+#else
+
+static inline char uv__atomic_exchange_set(char volatile* target) {
+ return __atomic_exchange_n(target, 1, __ATOMIC_SEQ_CST);
+}
+
+#endif
+
#endif
#endif /* UV_WIN_ATOMICOPS_INL_H_ */