include: Make sure interlocked_cmpxchg128 is defined on ARM64.

This commit is contained in:
André Hentschel 2013-01-18 18:05:42 +01:00 committed by Alexandre Julliard
parent 0066f31ef7
commit cf195437c6
2 changed files with 3 additions and 3 deletions

View File

@ -435,7 +435,7 @@ extern __int64 interlocked_cmpxchg64( __int64 *dest, __int64 xchg, __int64 compa
extern int interlocked_xchg( int *dest, int val ); extern int interlocked_xchg( int *dest, int val );
extern void *interlocked_xchg_ptr( void **dest, void *val ); extern void *interlocked_xchg_ptr( void **dest, void *val );
extern int interlocked_xchg_add( int *dest, int incr ); 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, extern unsigned char interlocked_cmpxchg128( __int64 *dest, __int64 xchg_high,
__int64 xchg_low, __int64 *compare ); __int64 xchg_low, __int64 *compare );
#endif #endif

View File

@ -343,9 +343,9 @@ int interlocked_xchg_add( int *dest, int incr )
return retv; 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 ); pthread_mutex_lock( &interlocked_mutex );
if (dest[0] == compare[0] && dest[1] == compare[1]) if (dest[0] == compare[0] && dest[1] == compare[1])
{ {