forked from pool/mono-core
21 lines
939 B
Diff
21 lines
939 B
Diff
--- mono/io-layer/atomic.h
|
|
+++ mono/io-layer/atomic.h
|
|
@@ -475,7 +475,7 @@
|
|
return result - 1;
|
|
}
|
|
|
|
-#define InterlockedCompareExchangePointer(dest,exch,comp) InterlockedCompareExchange((volatile gint32 *)(dest), (gint32)(exch), (gint32)(comp))
|
|
+#define InterlockedCompareExchangePointer(dest,exch,comp) (gpointer)InterlockedCompareExchange((volatile gint32 *)(dest), (gint32)(exch), (gint32)(comp))
|
|
|
|
static inline gint32 InterlockedCompareExchange(volatile gint32 *dest,
|
|
gint32 exch, gint32 comp) {
|
|
@@ -504,7 +504,7 @@
|
|
: "=r" (tmp) : "0" (tmp), "b" (dest), "r" (exch): "cc", "memory");
|
|
return(tmp);
|
|
}
|
|
-#define InterlockedExchangePointer(dest,exch) InterlockedExchange((volatile gint32 *)(dest), (gint32)(exch))
|
|
+#define InterlockedExchangePointer(dest,exch) (gpointer)InterlockedExchange((volatile gint32 *)(dest), (gint32)(exch))
|
|
|
|
static inline gint32 InterlockedExchangeAdd(volatile gint32 *dest, gint32 add)
|
|
{
|