]> granicus.if.org Git - libatomic_ops/commit
Avoid __atomic_and/or/xor_fetch if unsupported (clang/arm-v5te)
authorIvan Maidanski <ivmai@mail.ru>
Wed, 13 Apr 2016 23:19:58 +0000 (02:19 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Wed, 13 Apr 2016 23:19:58 +0000 (02:19 +0300)
commit66f7a4d34af858c980bc47f1645deb44c2461a1e
tree401db71b408270296e4c8bd7658b12ae9ba3ef2c
parent3c52619c1796c8f6ecd43fa6c9d481cc4c026788
Avoid __atomic_and/or/xor_fetch if unsupported (clang/arm-v5te)

* src/atomic_ops/sysdeps/gcc/arm.h (AO_SKIPATOMIC_ANY_and_ANY,
AO_SKIPATOMIC_ANY_or_ANY, AO_SKIPATOMIC_ANY_xor_ANY): Define new
internal macro (before include "generic.h") if
AO_GCC_ATOMIC_TEST_AND_SET and __clang__, and not AO_ARM_HAVE_LDREX.
* src/atomic_ops/sysdeps/gcc/generic-arithm.h: Regenerate.
* src/atomic_ops/sysdeps/gcc/generic-arithm.template
(AO_XSIZE_and_XBAR): Do not define if AO_SKIPATOMIC_ANY_and_ANY.
* src/atomic_ops/sysdeps/gcc/generic-arithm.template
(AO_XSIZE_or_XBAR): Do not define if AO_SKIPATOMIC_ANY_or_ANY.
* src/atomic_ops/sysdeps/gcc/generic-arithm.template
(AO_XSIZE_xor_XBAR): Do not define if AO_SKIPATOMIC_ANY_xor_ANY.
src/atomic_ops/sysdeps/gcc/arm.h
src/atomic_ops/sysdeps/gcc/generic-arithm.h
src/atomic_ops/sysdeps/gcc/generic-arithm.template