summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFrank Schaefer <frank.schaefer@tekcomms.com>2015-06-09 17:10:00 -0500
committerIvan Maidanski <ivmai@mail.ru>2015-06-14 00:26:23 +0300
commit437c10b73ae4b83306f77c851cf8385172ae3759 (patch)
treeeb295055568a70905e5b61e69e62b559d1b051be /src
parentccad54b9fd4a6a695817781c973f79f89962a8e9 (diff)
downloadlibatomic_ops-437c10b73ae4b83306f77c851cf8385172ae3759.tar.gz
Fix GCC 5.x compatibility for AArch64 double-wide primitives
Small change to make aarch64 support work with gcc 5.x. Otherwise it demands gcc -latomic and still fails test_stack. * src/atomic_ops/sysdeps/gcc/aarch64.h (AO_double_load, AO_double_load_acquire, AO_double_store, AO_double_store_release, AO_double_compare_and_swap, AO_double_compare_and_swap_acquire, AO_double_compare_and_swap_release, AO_double_compare_and_swap_full): Use assembly implementation even for GCC v5+ (not just GCC 4.x).
Diffstat (limited to 'src')
-rw-r--r--src/atomic_ops/sysdeps/gcc/aarch64.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/atomic_ops/sysdeps/gcc/aarch64.h b/src/atomic_ops/sysdeps/gcc/aarch64.h
index f969f13..b7f2ef0 100644
--- a/src/atomic_ops/sysdeps/gcc/aarch64.h
+++ b/src/atomic_ops/sysdeps/gcc/aarch64.h
@@ -30,7 +30,7 @@
#endif
/* TODO: Adjust version check on fixing double-wide AO support in GCC. */
-#if __GNUC__ == 4
+#if __GNUC__ >= 4
AO_INLINE AO_double_t
AO_double_load(const volatile AO_double_t *addr)
@@ -195,6 +195,6 @@
return !result;
}
# define AO_HAVE_double_compare_and_swap_full
-#endif /* __GNUC__ == 4 */
+#endif /* __GNUC__ >= 4 */
#include "generic.h"