summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/arc/bits/endian.h
diff options
context:
space:
mode:
authorPavel Kozlov <pavel.kozlov@synopsys.com>2023-11-09 15:01:53 +0400
committerWaldemar Brodkorb <wbx@openadk.org>2023-11-10 16:14:19 +0100
commitdfa72192f19f130d73e6587d0c3f7ef4e22c52c7 (patch)
tree1d828f1ce8e629f6560f0646fe06cc300380e870 /libc/sysdeps/linux/arc/bits/endian.h
parent4bf3912213ed8d0fa937fb4784a3e8e0c8fd8c3c (diff)
arc: add acq/rel variants for atomic cmpxchg/xchg
Add acquire/release variants for atomic functions cmpxchg/xchg and provide a memory barrier after/before exchange. For cmpxchg use compiler builtins. For xchg functions add memory barrier explicitly. These barriers are required to keep memory consistency of ARCv3 CPU cores in SMP. For ARC700 barriers are not required and the compiler doesn't provide _atomic_compare_exchange*, use current asm insertion without acquire/release variants for ARC700. Signed-off-by: Pavel Kozlov <pavel.kozlov@synopsys.com>
Diffstat (limited to 'libc/sysdeps/linux/arc/bits/endian.h')
0 files changed, 0 insertions, 0 deletions