=?UTF-8?Q?Andr=C3=A9=20Hentschel=20?=: include: Make sure interlocked_cmpxchg128 is defined on ARM64.

Alexandre Julliard julliard at winehq.org
Mon Jan 21 13:52:23 CST 2013


Module: wine
Branch: master
Commit: cf195437c66bc81481f395b4d006bcf95b3e346a
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=cf195437c66bc81481f395b4d006bcf95b3e346a

Author: André Hentschel <nerv at dawncrow.de>
Date:   Fri Jan 18 18:05:42 2013 +0100

include: Make sure interlocked_cmpxchg128 is defined on ARM64.

---

 include/wine/port.h     |    2 +-
 libs/port/interlocked.c |    4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/include/wine/port.h b/include/wine/port.h
index bd6f513..d6904c0 100644
--- a/include/wine/port.h
+++ b/include/wine/port.h
@@ -435,7 +435,7 @@ 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
+#if defined(__x86_64__) || defined(__aarch64__) || defined(_WIN64)
 extern unsigned char interlocked_cmpxchg128( __int64 *dest, __int64 xchg_high,
                                              __int64 xchg_low, __int64 *compare );
 #endif
diff --git a/libs/port/interlocked.c b/libs/port/interlocked.c
index 576714a..f5e405c 100644
--- a/libs/port/interlocked.c
+++ b/libs/port/interlocked.c
@@ -343,9 +343,9 @@ int interlocked_xchg_add( int *dest, int incr )
     return retv;
 }
 
-int interlocked_cmpxchg128( __int64 *dest, __int64 xchg_high, __int64 xchg_low, __int64 *compare )
+unsigned char interlocked_cmpxchg128( __int64 *dest, __int64 xchg_high, __int64 xchg_low, __int64 *compare )
 {
-    int retv;
+    unsigned char retv;
     pthread_mutex_lock( &interlocked_mutex );
     if (dest[0] == compare[0] && dest[1] == compare[1])
     {




More information about the wine-cvs mailing list