From 7942907878dd4c263ba7431067c33ce6b5d53ceb Mon Sep 17 00:00:00 2001 From: James Almer Date: Sun, 2 Apr 2017 00:57:17 -0300 Subject: compat/atomics: fix atomic_fetch_xor --- compat/atomics/dummy/stdatomic.h | 2 +- compat/atomics/gcc/stdatomic.h | 4 ++-- compat/atomics/pthread/stdatomic.h | 2 +- compat/atomics/suncc/stdatomic.h | 2 +- compat/atomics/win32/stdatomic.h | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) (limited to 'compat') diff --git a/compat/atomics/dummy/stdatomic.h b/compat/atomics/dummy/stdatomic.h index c26f629..59d85f9 100644 --- a/compat/atomics/dummy/stdatomic.h +++ b/compat/atomics/dummy/stdatomic.h @@ -156,7 +156,7 @@ FETCH_MODIFY(and, &) atomic_fetch_or(object, operand) #define atomic_fetch_xor_explicit(object, operand, order) \ - atomic_fetch_sub(object, operand) + atomic_fetch_xor(object, operand) #define atomic_fetch_and_explicit(object, operand, order) \ atomic_fetch_and(object, operand) diff --git a/compat/atomics/gcc/stdatomic.h b/compat/atomics/gcc/stdatomic.h index 2b64687..e13ed0e 100644 --- a/compat/atomics/gcc/stdatomic.h +++ b/compat/atomics/gcc/stdatomic.h @@ -147,10 +147,10 @@ do { \ atomic_fetch_or(object, operand) #define atomic_fetch_xor(object, operand) \ - __sync_fetch_and_sub(object, operand) + __sync_fetch_and_xor(object, operand) #define atomic_fetch_xor_explicit(object, operand, order) \ - atomic_fetch_sub(object, operand) + atomic_fetch_xor(object, operand) #define atomic_fetch_and(object, operand) \ __sync_fetch_and_and(object, operand) diff --git a/compat/atomics/pthread/stdatomic.h b/compat/atomics/pthread/stdatomic.h index 1b7278e..81a60f1 100644 --- a/compat/atomics/pthread/stdatomic.h +++ b/compat/atomics/pthread/stdatomic.h @@ -177,7 +177,7 @@ FETCH_MODIFY(and, &) atomic_fetch_or(object, operand) #define atomic_fetch_xor_explicit(object, operand, order) \ - atomic_fetch_sub(object, operand) + atomic_fetch_xor(object, operand) #define atomic_fetch_and_explicit(object, operand, order) \ atomic_fetch_and(object, operand) diff --git a/compat/atomics/suncc/stdatomic.h b/compat/atomics/suncc/stdatomic.h index 119c2ba..4a864a4 100644 --- a/compat/atomics/suncc/stdatomic.h +++ b/compat/atomics/suncc/stdatomic.h @@ -166,7 +166,7 @@ static inline intptr_t atomic_fetch_and(intptr_t *object, intptr_t operand) atomic_fetch_or(object, operand) #define atomic_fetch_xor_explicit(object, operand, order) \ - atomic_fetch_sub(object, operand) + atomic_fetch_xor(object, operand) #define atomic_fetch_and_explicit(object, operand, order) \ atomic_fetch_and(object, operand) diff --git a/compat/atomics/win32/stdatomic.h b/compat/atomics/win32/stdatomic.h index 4cbba9c..fa7ef51 100644 --- a/compat/atomics/win32/stdatomic.h +++ b/compat/atomics/win32/stdatomic.h @@ -159,7 +159,7 @@ static inline int atomic_compare_exchange_strong(intptr_t *object, intptr_t *exp atomic_fetch_or(object, operand) #define atomic_fetch_xor_explicit(object, operand, order) \ - atomic_fetch_sub(object, operand) + atomic_fetch_xor(object, operand) #define atomic_fetch_and_explicit(object, operand, order) \ atomic_fetch_and(object, operand) -- cgit v1.1