From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2152) id 209CF385773C; Fri, 13 Oct 2023 00:21:10 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 209CF385773C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1697156470; bh=4z104xnH3M4GgK8gQH0VOfd7PlXF65+BkaOuklyydEo=; h=From:To:Subject:Date:From; b=e4OA0Dm85naEhPBceHOaYJyeYhDhCq/Jyusf9KckChR7388VByZeuPq9QpAkyZs3Q R3hwlIcm6AJxejBCy92qFByuHdjDVStVeZ/I6iYMbfAzmME8P+38UwRDFKnBTRR/Ro NrPxkP/bJ8qsp7QhI2oJGpAFlvPVV7uDScYuUeZw= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Hans-Peter Nilsson To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r14-4604] testsuite: Replace many dg-require-thread-fence with dg-require-atomic-cmpxchg-word X-Act-Checkin: gcc X-Git-Author: Hans-Peter Nilsson X-Git-Refname: refs/heads/master X-Git-Oldrev: 2a4d9e4f533c77870cc0eb60fbbd8047da4c7386 X-Git-Newrev: ba0cde8ba2d93b7193050eb5ef3cc6f7a2cdfe61 Message-Id: <20231013002110.209CF385773C@sourceware.org> Date: Fri, 13 Oct 2023 00:21:10 +0000 (GMT) List-Id: https://gcc.gnu.org/g:ba0cde8ba2d93b7193050eb5ef3cc6f7a2cdfe61 commit r14-4604-gba0cde8ba2d93b7193050eb5ef3cc6f7a2cdfe61 Author: Hans-Peter Nilsson Date: Wed Oct 4 04:16:18 2023 +0200 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. Diff: --- libstdc++-v3/testsuite/29_atomics/atomic/compare_exchange_padding.cc | 2 +- libstdc++-v3/testsuite/29_atomics/atomic_flag/clear/1.cc | 2 +- libstdc++-v3/testsuite/29_atomics/atomic_flag/cons/value_init.cc | 2 +- libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc | 2 +- libstdc++-v3/testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc | 2 +- .../testsuite/29_atomics/atomic_ref/compare_exchange_padding.cc | 2 +- libstdc++-v3/testsuite/29_atomics/atomic_ref/generic.cc | 2 +- libstdc++-v3/testsuite/29_atomics/atomic_ref/integral.cc | 2 +- libstdc++-v3/testsuite/29_atomics/atomic_ref/pointer.cc | 2 +- 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 01f7475631e..859629e625f 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 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 89ed381fe05..2e154178dbd 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 f3f38b54dbc..6439873be13 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 @@ // . // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } #include #include 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 6f723eb5f4e..6cb1ae2b6dd 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 6f723eb5f4e..6cb1ae2b6dd 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 2a3d1d468c2..25ccd2e9433 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 diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_ref/generic.cc b/libstdc++-v3/testsuite/29_atomics/atomic_ref/generic.cc index f8751756d02..c342b1aae29 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 @@ // . // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // { dg-add-options libatomic } #include diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_ref/integral.cc b/libstdc++-v3/testsuite/29_atomics/atomic_ref/integral.cc index eb22afca03a..134fb16506c 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 @@ // . // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // { dg-add-options libatomic } #include diff --git a/libstdc++-v3/testsuite/29_atomics/atomic_ref/pointer.cc b/libstdc++-v3/testsuite/29_atomics/atomic_ref/pointer.cc index 6fe00b55756..fd26a053151 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 @@ // . // { dg-do run { target c++20 } } -// { dg-require-thread-fence "" } +// { dg-require-atomic-cmpxchg-word "" } // { dg-add-options libatomic } #include