https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119854

--- Comment #2 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The trunk branch has been updated by Thomas Schwinge <tschwi...@gcc.gnu.org>:

https://gcc.gnu.org/g:04b42c4245d85f77aa54ec002ebd7bbe6fde5f11

commit r16-2369-g04b42c4245d85f77aa54ec002ebd7bbe6fde5f11
Author: Thomas Schwinge <tschwi...@baylibre.com>
Date:   Fri Jul 18 12:56:13 2025 +0200

    Adjust 'libgomp.c++/target-cdtor-{1,2}.C' for
'targetm.cxx.use_aeabi_atexit' [PR119853, PR119854]

    Fix-up for commit aafe942227baf8c2bcd4cac2cb150e49a4b895a9
    "GCN, nvptx offloading: Host/device compatibility: Itanium C++ ABI, DSO
Object Destruction API [PR119853, PR119854]":
    we need to adjust for 'targetm.cxx.use_aeabi_atexit':

        gcc/config/arm/arm.cc:#define TARGET_CXX_USE_AEABI_ATEXIT
arm_cxx_use_aeabi_atexit

        gcc/config/arm/arm.cc:/* The EABI says __aeabi_atexit should be used to
register static
        gcc/config/arm/arm.cc-   destructors.  */
        gcc/config/arm/arm.cc-
        gcc/config/arm/arm.cc-static bool
        gcc/config/arm/arm.cc:arm_cxx_use_aeabi_atexit (void)
        gcc/config/arm/arm.cc-{
        gcc/config/arm/arm.cc-  return TARGET_AAPCS_BASED;
        gcc/config/arm/arm.cc-}

    ..., which 'gcc/cp/decl.cc:get_atexit_node' then acts on: call
'__aeabi_atexit'
    instead of '__cxa_atexit', and swap two arguments.

            PR target/119853
            PR target/119854
            libgomp/
            * testsuite/libgomp.c++/target-cdtor-1.C: Adjust for
            'targetm.cxx.use_aeabi_atexit'.
            * testsuite/libgomp.c++/target-cdtor-2.C: Likewise.

Reply via email to