diff options
author | Hans-Peter Nilsson <hp@axis.com> | 2023-10-04 04:16:18 +0200 |
---|---|---|
committer | Hans-Peter Nilsson <hp@bitrange.com> | 2023-10-13 02:20:30 +0200 |
commit | ba0cde8ba2d93b7193050eb5ef3cc6f7a2cdfe61 (patch) | |
tree | ee197f14dce4060b33cd9fac8fd5770be063e015 | |
parent | 2a4d9e4f533c77870cc0eb60fbbd8047da4c7386 (diff) | |
download | gcc-ba0cde8ba2d93b7193050eb5ef3cc6f7a2cdfe61.zip gcc-ba0cde8ba2d93b7193050eb5ef3cc6f7a2cdfe61.tar.gz gcc-ba0cde8ba2d93b7193050eb5ef3cc6f7a2cdfe61.tar.bz2 |
testsuite: Replace many dg-require-thread-fence with dg-require-atomic-cmpxchg-word
These tests actually use a form of atomic compare and exchange
operation, not just atomic loading and storing. Some targets (not
supported by e.g. libatomic) have atomic loading and storing, but not
compare and exchange, yielding linker errors for missing library
functions.
This change is just for existing uses of
dg-require-thread-fence. It does not fix any other tests
that should also be gated on dg-require-atomic-cmpxchg-word.
* testsuite/29_atomics/atomic/compare_exchange_padding.cc,
testsuite/29_atomics/atomic_flag/clear/1.cc,
testsuite/29_atomics/atomic_flag/cons/value_init.cc,
testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc,
testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc,
testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc,
testsuite/29_atomics/atomic_ref/generic.cc,
testsuite/29_atomics/atomic_ref/integral.cc,
testsuite/29_atomics/atomic_ref/pointer.cc: Replace
dg-require-thread-fence with dg-require-atomic-cmpxchg-word.
9 files changed, 9 insertions, 9 deletions
diff --git a/libstdc++-v3/testsuite/29_atomics/atomic/compare_exchange_padding.cc b/libstdc++-v3/testsuite/29_atomics/atomic/compare_exchange_padding.cc index 01f7475..859629e 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic/compare_exchange_padding.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic/compare_exchange_padding.cc @@ -1,5 +1,5 @@ // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // { dg-add-options libatomic } #include <atomic> diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_flag/clear/1.cc b/libstdc++-v3/testsuite/29_atomics/atomic_flag/clear/1.cc index 89ed381..2e15417 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_flag/clear/1.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_flag/clear/1.cc @@ -1,5 +1,5 @@ // { dg-do run { target c++11 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // Copyright (C) 2009-2023 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/value_init.cc b/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/value_init.cc index f3f38b5..6439873 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/value_init.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/value_init.cc @@ -16,7 +16,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } #include <atomic> #include <testsuite_hooks.h> diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc b/libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc index 6f723eb..6cb1ae2 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc @@ -1,5 +1,5 @@ // { dg-do run { target c++11 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // Copyright (C) 2008-2023 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc b/libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc index 6f723eb..6cb1ae2 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc @@ -1,5 +1,5 @@ // { dg-do run { target c++11 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // Copyright (C) 2008-2023 Free Software Foundation, Inc. // diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc b/libstdc++-v3/testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc index 2a3d1d4..25ccd2e 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc @@ -1,5 +1,5 @@ // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // { dg-add-options libatomic } #include <atomic> diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_ref/generic.cc b/libstdc++-v3/testsuite/29_atomics/atomic_ref/generic.cc index f875175..c342b1a 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_ref/generic.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_ref/generic.cc @@ -16,7 +16,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // { dg-add-options libatomic } #include <atomic> diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_ref/integral.cc b/libstdc++-v3/testsuite/29_atomics/atomic_ref/integral.cc index eb22afc..134fb16 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_ref/integral.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_ref/integral.cc @@ -16,7 +16,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // { dg-add-options libatomic } #include <atomic> diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_ref/pointer.cc b/libstdc++-v3/testsuite/29_atomics/atomic_ref/pointer.cc index 6fe00b5..fd26a05 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic_ref/pointer.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_ref/pointer.cc @@ -16,7 +16,7 @@ // <http://www.gnu.org/licenses/>. // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // { dg-add-options libatomic } #include <atomic> |