On Sun, May 19, 2024 at 6:38 AM Iain Sandoe <iains....@gmail.com> wrote: > > As per the analysis in the PR, tested on x86_64, i686 and aarch64 Darwin > (and on x86_64 linux), pushed to trunk, thanks, > Iain
Thanks for doing this. Thanks, Andrew > > --- 8< --- > > For Darwin, non-weak functions defined in a TU always bind locally > and so cxa_atexit-6.C is not applicable here. > > PR testsuite/114982 > > gcc/testsuite/ChangeLog: > > * g++.dg/tree-ssa/cxa_atexit-6.C: Skip for Darwin. > > Signed-off-by: Iain Sandoe <i...@sandoe.co.uk> > --- > gcc/testsuite/g++.dg/tree-ssa/cxa_atexit-6.C | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/gcc/testsuite/g++.dg/tree-ssa/cxa_atexit-6.C > b/gcc/testsuite/g++.dg/tree-ssa/cxa_atexit-6.C > index f6599a3c9f4..e22036067dd 100644 > --- a/gcc/testsuite/g++.dg/tree-ssa/cxa_atexit-6.C > +++ b/gcc/testsuite/g++.dg/tree-ssa/cxa_atexit-6.C > @@ -2,10 +2,14 @@ > /* { dg-require-effective-target fpic } */ > /* { dg-options "-O2 -fdump-tree-cddce1-details -fdump-tree-optimized -fPIC" > } */ > // { dg-require-effective-target cxa_atexit } > +/* This test is not appropriate for targets where non-weak functions defined > + in the TU always bind locally; see PR114982. */ > +/* { dg-skip-if "PR114982" { *-*-darwin* } } */ > /* PR tree-optimization/19661 */ > > /* The call to axexit should not be removed as A::~A() cannot be figured if > it > - is a pure/const function call as the function call g does not bind > locally. */ > + is a pure/const function call for platforms where the function call g does > + not bind locally. */ > > __attribute__((noinline)) > void g() {} > -- > 2.39.2 (Apple Git-143) >