On Mon, 22 Jun 2026 at 10:56, Torbjorn SVENSSON
<[email protected]> wrote:
>
> Hi Jonathan,
>
> Did you find any way to get this to work without atomics?

https://gcc.gnu.org/pipermail/gcc-patches/2026-June/721613.html should
solve this.

Are you able to check that, or should I push it to the forge and ask
the linaro ci-bot to check it?


>
> Kind regards,
> Torbjörn
>
> On 2026-06-12 12:01, Torbjorn SVENSSON wrote:
> >
> >
> > On 2026-06-12 11:49, Jonathan Wakely wrote:
> >> On Mon, 8 Jun 2026 at 14:21, Torbjörn SVENSSON
> >> <[email protected]> wrote:
> >>>
> >>> Ok for trunk?
> >>
> >> Hmm, I think I'd rather make this work without atomics.
> >> I can look at this on Monday.
> >
> > That would be even better.
> > If you find a way to make this work without atomics, please let me know and 
> > I'll drop this patch from my queue.
> >
> > Btw, forgot to mention that I see the error starting with 
> > r17-471-ge79f0f818c0e42.
> >
> > Kind regards,
> > Torbjörn
> >
> >>
> >>>
> >>> Kind regards,
> >>> Torbjörn
> >>>
> >>> --
> >>>
> >>> On target that does not support atomic word operations, like Cortex-M0,
> >>> the following error can be seen in the logs:
> >>>
> >>> /build/r17-1372-g80b78b2504fba0/arm-none-eabi/bin/ld: 
> >>> /build/r17-1372-g80b78b2504fba0/bin/../lib/gcc/arm-none-eabi/17.0.0/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libstdc++.a(tzdb.o):
> >>>  in function 
> >>> `std::chrono::__detail::__recent_leap_second_info(std::chrono::leap_second_info&,
> >>>  unsigned int)':
> >>> (.text._ZNSt6chrono8__detail25__recent_leap_second_infoERNS_16leap_second_infoEj+0xf0):
> >>>  undefined reference to `__atomic_compare_exchange_4'
> >>> /build/r17-1372-g80b78b2504fba0/arm-none-eabi/bin/ld: 
> >>> (__atomic_compare_exchange_4): Unknown destination type (ARM/Thumb) in 
> >>> /build/r17-1372-g80b78b2504fba0/bin/../lib/gcc/arm-none-eabi/17.0.0/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libstdc++.a(tzdb.o)
> >>> (.text._ZNSt6chrono8__detail25__recent_leap_second_infoERNS_16leap_second_infoEj+0xf0):
> >>>  dangerous relocation: unsupported relocation
> >>> collect2: error: ld returned 1 exit status
> >>>
> >>> libstdc++-v3/ChangeLog:
> >>>
> >>>          * testsuite/std/time/clock/gps/1.cc: Add
> >>>          dg-require-atomic-cmpxchg-word to test.
> >>>          * testsuite/std/time/clock/tai/1.cc: Likewise.
> >>>          * testsuite/std/time/clock/utc/1.cc: Likewise.
> >>>          * testsuite/std/time/clock/utc/io.cc: Likewise.
> >>>          * testsuite/std/time/clock/utc/leap_second_info-2.cc: Likewise.
> >>>          * testsuite/std/time/clock/utc/leap_second_info.cc: Likewise.
> >>>          * testsuite/std/time/exceptions.cc: Likewise.
> >>>          * testsuite/std/time/format/empty_spec.cc: Likewise.
> >>>          * testsuite/std/time/format/format.cc: Likewise.
> >>>          * testsuite/std/time/hash.cc: Likewise.
> >>>          * testsuite/std/time/leap_seconds/io.cc: Likewise.
> >>>          * testsuite/std/time/parse/114240.cc: Likewise.
> >>>          * testsuite/std/time/parse/114279.cc: Likewise.
> >>>          * testsuite/std/time/time_zone/116110.cc: Likewise.
> >>>          * testsuite/std/time/time_zone/124513.cc: Likewise.
> >>>          * testsuite/std/time/time_zone/get_info_local.cc: Likewise.
> >>>          * testsuite/std/time/time_zone/get_info_sys.cc: Likewise.
> >>>          * testsuite/std/time/time_zone/numeric_save.cc: Likewise.
> >>>          * testsuite/std/time/time_zone/sys_info_abbrev.cc: Likewise.
> >>>          * testsuite/std/time/time_zone/until_day_on.cc: Likewise.
> >>>          * testsuite/std/time/tzdb/1.cc: Likewise.
> >>>          * testsuite/std/time/tzdb/leap_seconds.cc: Likewise.
> >>>          * testsuite/std/time/tzdb/links.cc: Likewise.
> >>>          * testsuite/std/time/tzdb_list/1.cc: Likewise.
> >>>          * testsuite/std/time/tzdb_list/pr118811.cc: Likewise.
> >>>          * testsuite/std/time/zoned_time/1.cc: Likewise.
> >>>          * testsuite/std/time/zoned_time/custom.cc: Likewise.
> >>>          * testsuite/std/time/zoned_time/io.cc: Likewise.
> >>>          * testsuite/std/time/zoned_traits.cc: Likewise.
> >>>
> >>> Signed-off-by: Torbjörn SVENSSON <[email protected]>
> >>> ---
> >>>   libstdc++-v3/testsuite/std/time/clock/gps/1.cc                  | 1 +
> >>>   libstdc++-v3/testsuite/std/time/clock/tai/1.cc                  | 1 +
> >>>   libstdc++-v3/testsuite/std/time/clock/utc/1.cc                  | 1 +
> >>>   libstdc++-v3/testsuite/std/time/clock/utc/io.cc                 | 1 +
> >>>   libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info-2.cc | 1 +
> >>>   libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info.cc   | 1 +
> >>>   libstdc++-v3/testsuite/std/time/exceptions.cc                   | 1 +
> >>>   libstdc++-v3/testsuite/std/time/format/empty_spec.cc            | 1 +
> >>>   libstdc++-v3/testsuite/std/time/format/format.cc                | 1 +
> >>>   libstdc++-v3/testsuite/std/time/hash.cc                         | 1 +
> >>>   libstdc++-v3/testsuite/std/time/leap_seconds/io.cc              | 1 +
> >>>   libstdc++-v3/testsuite/std/time/parse/114240.cc                 | 1 +
> >>>   libstdc++-v3/testsuite/std/time/parse/114279.cc                 | 1 +
> >>>   libstdc++-v3/testsuite/std/time/time_zone/116110.cc             | 1 +
> >>>   libstdc++-v3/testsuite/std/time/time_zone/124513.cc             | 1 +
> >>>   libstdc++-v3/testsuite/std/time/time_zone/get_info_local.cc     | 1 +
> >>>   libstdc++-v3/testsuite/std/time/time_zone/get_info_sys.cc       | 1 +
> >>>   libstdc++-v3/testsuite/std/time/time_zone/numeric_save.cc       | 1 +
> >>>   libstdc++-v3/testsuite/std/time/time_zone/sys_info_abbrev.cc    | 1 +
> >>>   libstdc++-v3/testsuite/std/time/time_zone/until_day_on.cc       | 1 +
> >>>   libstdc++-v3/testsuite/std/time/tzdb/1.cc                       | 1 +
> >>>   libstdc++-v3/testsuite/std/time/tzdb/leap_seconds.cc            | 1 +
> >>>   libstdc++-v3/testsuite/std/time/tzdb/links.cc                   | 1 +
> >>>   libstdc++-v3/testsuite/std/time/tzdb_list/1.cc                  | 1 +
> >>>   libstdc++-v3/testsuite/std/time/tzdb_list/pr118811.cc           | 1 +
> >>>   libstdc++-v3/testsuite/std/time/zoned_time/1.cc                 | 1 +
> >>>   libstdc++-v3/testsuite/std/time/zoned_time/custom.cc            | 1 +
> >>>   libstdc++-v3/testsuite/std/time/zoned_time/io.cc                | 1 +
> >>>   libstdc++-v3/testsuite/std/time/zoned_traits.cc                 | 1 +
> >>>   29 files changed, 29 insertions(+)
> >>>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/clock/gps/1.cc 
> >>> b/libstdc++-v3/testsuite/std/time/clock/gps/1.cc
> >>> index 8be517b316b..48ae2e9b3ae 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/clock/gps/1.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/clock/gps/1.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>
> >>>   #include <chrono>
> >>>   #include <testsuite_hooks.h>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/clock/tai/1.cc 
> >>> b/libstdc++-v3/testsuite/std/time/clock/tai/1.cc
> >>> index 63cc9927859..5ad27d4f532 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/clock/tai/1.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/clock/tai/1.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>
> >>>   #include <chrono>
> >>>   #include <testsuite_hooks.h>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/clock/utc/1.cc 
> >>> b/libstdc++-v3/testsuite/std/time/clock/utc/1.cc
> >>> index 4852658001e..f574ff41686 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/clock/utc/1.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/clock/utc/1.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>
> >>>   #include <chrono>
> >>>   #include <testsuite_hooks.h>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/clock/utc/io.cc 
> >>> b/libstdc++-v3/testsuite/std/time/clock/utc/io.cc
> >>> index ed1daa7a855..8e168bc35d7 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/clock/utc/io.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/clock/utc/io.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-timeout-factor 2 }
> >>>
> >>>   #include <chrono>
> >>> diff --git 
> >>> a/libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info-2.cc 
> >>> b/libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info-2.cc
> >>> index 59634b34944..7cf97ca271d 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info-2.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info-2.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>   // { dg-xfail-run-if "no weak override on AIX" { powerpc-ibm-aix* } }
> >>> diff --git 
> >>> a/libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info.cc 
> >>> b/libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info.cc
> >>> index 2fabda49423..7272772188a 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/clock/utc/leap_second_info.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-additional-options "-DHAVE_TZDB" { target tzdb } }
> >>>
> >>>   #include <chrono>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/exceptions.cc 
> >>> b/libstdc++-v3/testsuite/std/time/exceptions.cc
> >>> index 06b8a53c353..e455eb6f271 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/exceptions.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/exceptions.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>
> >>>   #include <chrono>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/format/empty_spec.cc 
> >>> b/libstdc++-v3/testsuite/std/time/format/empty_spec.cc
> >>> index b84f84a3069..6eef475d815 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/format/empty_spec.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/format/empty_spec.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target hosted }
> >>>   // { dg-timeout-factor 5 }
> >>>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/format/format.cc 
> >>> b/libstdc++-v3/testsuite/std/time/format/format.cc
> >>> index d1aee053acd..ac8c1cc1f59 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/format/format.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/format/format.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-timeout-factor 2 }
> >>>
> >>>   #include <chrono>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/hash.cc 
> >>> b/libstdc++-v3/testsuite/std/time/hash.cc
> >>> index ed9139bb810..a511099207e 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/hash.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/hash.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++26 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>
> >>>   #include <chrono>
> >>>   #include <unordered_set>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/leap_seconds/io.cc 
> >>> b/libstdc++-v3/testsuite/std/time/leap_seconds/io.cc
> >>> index 511fafdd1a0..3c721f29543 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/leap_seconds/io.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/leap_seconds/io.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/parse/114240.cc 
> >>> b/libstdc++-v3/testsuite/std/time/parse/114240.cc
> >>> index 46310efd09a..188690ab9d9 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/parse/114240.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/parse/114240.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>
> >>>   // PR libstdc++/114240 sys_days not being parsed with only a date in 
> >>> the stream
> >>>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/parse/114279.cc 
> >>> b/libstdc++-v3/testsuite/std/time/parse/114279.cc
> >>> index 67e5cba23bd..dbb9fdb5774 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/parse/114279.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/parse/114279.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>
> >>>   #include <chrono>
> >>>   #include <sstream>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/time_zone/116110.cc 
> >>> b/libstdc++-v3/testsuite/std/time/time_zone/116110.cc
> >>> index 26b9ba33c31..47fa427b7f7 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/time_zone/116110.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/time_zone/116110.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/time_zone/124513.cc 
> >>> b/libstdc++-v3/testsuite/std/time/time_zone/124513.cc
> >>> index 49d7ba8bb01..c02beb28147 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/time_zone/124513.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/time_zone/124513.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>   // { dg-xfail-run-if "no weak override on AIX" { powerpc-ibm-aix* } }
> >>> diff --git a/libstdc++-v3/testsuite/std/time/time_zone/get_info_local.cc 
> >>> b/libstdc++-v3/testsuite/std/time/time_zone/get_info_local.cc
> >>> index d2972aca7df..609dc6ae49a 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/time_zone/get_info_local.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/time_zone/get_info_local.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>
> >>>   #include <chrono>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/time_zone/get_info_sys.cc 
> >>> b/libstdc++-v3/testsuite/std/time/time_zone/get_info_sys.cc
> >>> index 88f16b76ff4..05f1b40cf65 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/time_zone/get_info_sys.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/time_zone/get_info_sys.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>
> >>>   #include <chrono>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/time_zone/numeric_save.cc 
> >>> b/libstdc++-v3/testsuite/std/time/time_zone/numeric_save.cc
> >>> index 687524bb355..4761e3d3c5e 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/time_zone/numeric_save.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/time_zone/numeric_save.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>   // { dg-xfail-run-if "no weak override on AIX" { powerpc-ibm-aix* } }
> >>> diff --git a/libstdc++-v3/testsuite/std/time/time_zone/sys_info_abbrev.cc 
> >>> b/libstdc++-v3/testsuite/std/time/time_zone/sys_info_abbrev.cc
> >>> index f1a8fff02f5..86508c543a0 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/time_zone/sys_info_abbrev.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/time_zone/sys_info_abbrev.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>   // { dg-xfail-run-if "no weak override on AIX" { powerpc-ibm-aix* } }
> >>> diff --git a/libstdc++-v3/testsuite/std/time/time_zone/until_day_on.cc 
> >>> b/libstdc++-v3/testsuite/std/time/time_zone/until_day_on.cc
> >>> index 38e4bc254cc..9ca407655ab 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/time_zone/until_day_on.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/time_zone/until_day_on.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>   // { dg-xfail-run-if "no weak override on AIX" { powerpc-ibm-aix* } }
> >>> diff --git a/libstdc++-v3/testsuite/std/time/tzdb/1.cc 
> >>> b/libstdc++-v3/testsuite/std/time/tzdb/1.cc
> >>> index 7a31c1c20ba..d68968da226 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/tzdb/1.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/tzdb/1.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>
> >>>   #include <chrono>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/tzdb/leap_seconds.cc 
> >>> b/libstdc++-v3/testsuite/std/time/tzdb/leap_seconds.cc
> >>> index 5999635a89f..0a1cf04a62e 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/tzdb/leap_seconds.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/tzdb/leap_seconds.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>   // { dg-xfail-run-if "no weak override on AIX" { powerpc-ibm-aix* } }
> >>> diff --git a/libstdc++-v3/testsuite/std/time/tzdb/links.cc 
> >>> b/libstdc++-v3/testsuite/std/time/tzdb/links.cc
> >>> index 0ba214846c6..676e1ba7804 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/tzdb/links.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/tzdb/links.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>   // { dg-xfail-run-if "no weak override on AIX" { powerpc-ibm-aix* } }
> >>> diff --git a/libstdc++-v3/testsuite/std/time/tzdb_list/1.cc 
> >>> b/libstdc++-v3/testsuite/std/time/tzdb_list/1.cc
> >>> index 587aa950277..18827f15378 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/tzdb_list/1.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/tzdb_list/1.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/tzdb_list/pr118811.cc 
> >>> b/libstdc++-v3/testsuite/std/time/tzdb_list/pr118811.cc
> >>> index fe86602ecce..38139e5ca38 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/tzdb_list/pr118811.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/tzdb_list/pr118811.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>   // { dg-require-static-libstdcxx "" }
> >>> diff --git a/libstdc++-v3/testsuite/std/time/zoned_time/1.cc 
> >>> b/libstdc++-v3/testsuite/std/time/zoned_time/1.cc
> >>> index a77cd99dd55..dfead853e26 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/zoned_time/1.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/zoned_time/1.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/zoned_time/custom.cc 
> >>> b/libstdc++-v3/testsuite/std/time/zoned_time/custom.cc
> >>> index 83e1f6dca43..1f5056c3c76 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/zoned_time/custom.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/zoned_time/custom.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target tzdb }
> >>>
> >>>   #include <chrono>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/zoned_time/io.cc 
> >>> b/libstdc++-v3/testsuite/std/time/zoned_time/io.cc
> >>> index c113eea6d3f..a95bc629698 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/zoned_time/io.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/zoned_time/io.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>   // { dg-timeout-factor 2 }
> >>>
> >>> diff --git a/libstdc++-v3/testsuite/std/time/zoned_traits.cc 
> >>> b/libstdc++-v3/testsuite/std/time/zoned_traits.cc
> >>> index 83cf6635127..4ccf6e74aaf 100644
> >>> --- a/libstdc++-v3/testsuite/std/time/zoned_traits.cc
> >>> +++ b/libstdc++-v3/testsuite/std/time/zoned_traits.cc
> >>> @@ -1,4 +1,5 @@
> >>>   // { dg-do run { target c++20 } }
> >>> +// { dg-require-atomic-cmpxchg-word "" }
> >>>   // { dg-require-effective-target cxx11_abi }
> >>>
> >>>   #include <chrono>
> >>> --
> >>> 2.43.0
> >>>
> >>
> >
>

Reply via email to