From 928d6bafcb315182f9ed2462a83c4a8d032b7c82 Mon Sep 17 00:00:00 2001 From: Patrick Pelissier Date: Thu, 19 Apr 2018 22:14:16 +0200 Subject: [PATCH] Fix issue if there is no working stdatomic / atomic header: definition of atomic_compare_exchange_strong_explicit was wrong. Same for atomic_compare_exchange_weak_explicit --- m-atomic.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/m-atomic.h b/m-atomic.h index 27d43e2c..2d096661 100644 --- a/m-atomic.h +++ b/m-atomic.h @@ -250,9 +250,9 @@ static inline long long atomic_fetch_unlock (m_mutex_t *lock, long long val) #define atomic_thread_fence(mem) (void) 0 #define atomic_signal_fence(mem) (void) 0 #define atomic_is_lock_free(ptr) false -#define atomic_compare_exchange_strong_explicit(ptr, exp, val, mem) atomic_compare_exchange_strong(ptr, exp, val) -#define atomic_compare_exchange_weak_explicit(ptr, exp, val, mem) atomic_compare_exchange_strong(ptr, exp, val) -#define atomic_compare_exchange_weak(ptr, exp, val) atomic_compare_exchange_strong(ptr, exp, val) +#define atomic_compare_exchange_strong_explicit(ptr, exp, val, mem1, mem2) atomic_compare_exchange_strong(ptr, exp, val) +#define atomic_compare_exchange_weak_explicit(ptr, exp, val, mem1, mem2) atomic_compare_exchange_strong(ptr, exp, val) +#define atomic_compare_exchange_weak(ptr, exp, val) atomic_compare_exchange_strong(ptr, exp, val) /* TODO: Missing atomic_flag. Problem: it needs to be lock free! */