diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2020-10-01 12:54:37 +0100 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2020-10-01 12:54:37 +0100 |
commit | 026ca1121c2f4514494c10860ef3c49f18eccf9d (patch) | |
tree | 07e634869a8c6a5e2e48986b3f6183b19f8f7442 | |
parent | f9c86e3105d786cccc88ac5bdbfd2393dc75f8b5 (diff) | |
download | gcc-026ca1121c2f4514494c10860ef3c49f18eccf9d.zip gcc-026ca1121c2f4514494c10860ef3c49f18eccf9d.tar.gz gcc-026ca1121c2f4514494c10860ef3c49f18eccf9d.tar.bz2 |
libstdc++: Fix test_and_acquire for EABI
libstdc++-v3/ChangeLog:
* config/cpu/arm/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST_AND_ACQUIRE):
Do not try to dereference return value of __atomic_load_n.
-rw-r--r-- | libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h b/libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h index 4fb3486..a08afed 100644 --- a/libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h +++ b/libstdc++-v3/config/cpu/arm/cxxabi_tweaks.h @@ -48,7 +48,7 @@ namespace __cxxabiv1 typedef int __guard; #define _GLIBCXX_GUARD_TEST_AND_ACQUIRE(x) \ - _GLIBCXX_GUARD_TEST(__atomic_load_n(x, __ATOMIC_ACQUIRE)) + ((__atomic_load_n(x, __ATOMIC_ACQUIRE) & 1) != 0) #define _GLIBCXX_GUARD_SET_AND_RELEASE(x) \ __atomic_store_n(x, 1, __ATOMIC_RELEASE) |