]> granicus.if.org Git - libatomic_ops/commitdiff
Do not force GCC atomic intrinsics usage if AO_PREFER_BUILTIN_ATOMICS
authorIvan Maidanski <ivmai@mail.ru>
Thu, 21 Apr 2016 07:59:18 +0000 (10:59 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Thu, 21 Apr 2016 07:59:18 +0000 (10:59 +0300)
The macro should only prevent usage of assembly completely but only
if at least some of GCC atomic intrinsics are available.

* src/atomic_ops/sysdeps/gcc/arm.h (AO_PREFER_BUILTIN_ATOMICS): Remove
from the condition whether to include generic.h.
* src/atomic_ops/sysdeps/gcc/mips.h (AO_PREFER_BUILTIN_ATOMICS):
Likewise.

src/atomic_ops/sysdeps/gcc/arm.h
src/atomic_ops/sysdeps/gcc/mips.h

index 0f7c958d4a260791ba7af59845f7e1fd04de9e7d..84a96e1691a8c28bd75622f8a0c9d41fb8834620 100644 (file)
@@ -17,9 +17,7 @@
 
 #if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) \
      || __clang_major__ > 3 \
-     || (__clang_major__ == 3 && __clang_minor__ >= 5) \
-     || (defined(AO_PREFER_BUILTIN_ATOMICS) \
-         && __GNUC__ == 4 && __GNUC_MINOR__ >= 2)) \
+     || (__clang_major__ == 3 && __clang_minor__ >= 5)) \
     && !defined(AO_DISABLE_GCC_ATOMICS)
   /* Probably, it could be enabled even for earlier gcc/clang versions. */
 # define AO_GCC_ATOMIC_TEST_AND_SET
index 429ab0737f6da7d8876c0d46e62cbf0a3118bf54..191ad26822d28850e011e92aa71691bd783362cd 100644 (file)
@@ -25,9 +25,7 @@
 
 #if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 9) \
      || __clang_major__ > 3 \
-     || (__clang_major__ == 3 && __clang_minor__ >= 5) \
-     || (defined(AO_PREFER_BUILTIN_ATOMICS) \
-         && __GNUC__ == 4 && __GNUC_MINOR__ >= 2)) \
+     || (__clang_major__ == 3 && __clang_minor__ >= 5)) \
     && !defined(AO_DISABLE_GCC_ATOMICS)
   /* Probably, it could be enabled even for earlier gcc/clang versions. */