From: Timothy Pearson tpearson@raptorengineering.com
Signed-off-by: André Hentschel nerv@dawncrow.de --- include/wine/port.h | 2 +- libs/port/interlocked.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/wine/port.h b/include/wine/port.h index 4db452db39a..33392273b74 100644 --- a/include/wine/port.h +++ b/include/wine/port.h @@ -463,7 +463,7 @@ extern void *interlocked_cmpxchg_ptr( void **dest, void *xchg, void *compare ); extern void *interlocked_xchg_ptr( void **dest, void *val ); #endif
-#if defined(__x86_64__) || defined(__aarch64__) || defined(_WIN64) +#if defined(__x86_64__) || defined(__aarch64__) || defined(__powerpc64__) || 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 040ab756eba..eab66dcbd1e 100644 --- a/libs/port/interlocked.c +++ b/libs/port/interlocked.c @@ -222,7 +222,7 @@ __ASM_GLOBAL_FUNC(interlocked_cmpxchg128, "ret") #endif
-#elif defined(__powerpc__) +#elif defined(__powerpc__) && !defined(__powerpc64__)
#if !(defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4) && __SIZEOF_POINTER__ == 4) \ && !(defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8) && __SIZEOF_POINTER__ == 8)