include: Make sure interlocked_cmpxchg128 has a prototype on ARM64 (try 2)
André Hentschel
nerv at dawncrow.de
Sun Jan 20 11:03:49 CST 2013
---
include/wine/port.h | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/include/wine/port.h b/include/wine/port.h
index bd6f513..59311e3 100644
--- a/include/wine/port.h
+++ b/include/wine/port.h
@@ -414,7 +414,7 @@ static inline int interlocked_xchg_add( int *dest, int incr )
}
#ifdef __x86_64__
-static inline unsigned char interlocked_cmpxchg128( __int64 *dest, __int64 xchg_high,
+static inline int interlocked_cmpxchg128( __int64 *dest, __int64 xchg_high,
__int64 xchg_low, __int64 *compare )
{
unsigned char ret;
@@ -435,9 +435,9 @@ extern __int64 interlocked_cmpxchg64( __int64 *dest, __int64 xchg, __int64 compa
extern int interlocked_xchg( int *dest, int val );
extern void *interlocked_xchg_ptr( void **dest, void *val );
extern int interlocked_xchg_add( int *dest, int incr );
-#ifdef _WIN64
-extern unsigned char interlocked_cmpxchg128( __int64 *dest, __int64 xchg_high,
- __int64 xchg_low, __int64 *compare );
+#if defined(__x86_64__) || defined(__aarch64__) || defined(_WIN64)
+extern int interlocked_cmpxchg128( __int64 *dest, __int64 xchg_high,
+ __int64 xchg_low, __int64 *compare );
#endif
#endif /* __GNUC__ */
--
1.8.0
--
Best Regards, André Hentschel
More information about the wine-patches
mailing list