From a45440d5c952db69843cbf5bb3add8986305d139 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Fri, 29 Aug 2008 21:42:09 +0200 Subject: the native atomic ops implementation for amd64 seems to work fine --- src/pulsecore/atomic.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/pulsecore/atomic.h') diff --git a/src/pulsecore/atomic.h b/src/pulsecore/atomic.h index a1afc074..23d56244 100644 --- a/src/pulsecore/atomic.h +++ b/src/pulsecore/atomic.h @@ -42,7 +42,7 @@ #error "Please include config.h before including this file!" #endif -#ifdef HAVE_ATOMIC_BUILTINS +#if HAVE_ATOMIC_BUILTINS /* __sync based implementation */ @@ -109,7 +109,7 @@ static inline pa_bool_t pa_atomic_ptr_cmpxchg(pa_atomic_ptr_t *a, void *old_p, v #elif defined(__GNUC__) && (defined(__amd64__) || defined(__x86_64__)) -#error "The native atomic operations implementation for AMD64 has not been tested. libatomic_ops is known to not work properly on AMD64 and your gcc version is too old for the gcc-builtin atomic ops support. You have three options now: make the native atomic operations implementation for AMD64 work, fix libatomic_ops, or upgrade your GCC." +#warn "The native atomic operations implementation for AMD64 has not been tested. libatomic_ops is known to not work properly on AMD64 and your gcc version is too old for the gcc-builtin atomic ops support. You have three options now: make the native atomic operations implementation for AMD64 work, fix libatomic_ops, or upgrade your GCC." /* Addapted from glibc */ @@ -156,7 +156,7 @@ static inline pa_bool_t pa_atomic_cmpxchg(pa_atomic_t *a, int old_i, int new_i) : "=a" (result), "=m" (a->value) : "r" (new_i), "m" (a->value), "0" (old_i)); - return result == oldval; + return result == old_i; } typedef struct pa_atomic_ptr { -- cgit