https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112729
--- Comment #5 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> --- > --- Comment #3 from Hongyu Wang <wwwhhhyyy333 at gmail dot com> --- [...] > Hi Rainer, can you help verify if the change make these test pass on > solaris/FreeBSD? They do on Solaris/x86. Thanks. FreeBSD was more involved (I'd only noticed the failure there on gcc-testresults). Unfortunately, there's no FreeBSD/x86_64 system in the cfarm. However, I had an old FreeBSD 13 VM around which could be coaxed into a gcc build with some effort. With your patch, the failures are gone there, too. One nit: diff --git a/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c b/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c index d78c96d36a3..1d73aab1128 100644 --- a/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c +++ b/gcc/testsuite/gcc.target/i386/apx-push2pop2-1.c @@ -1,5 +1,5 @@ /* { dg-do compile { target { ! ia32 } } } */ -/* { dg-options "-O2 -mapx-features=push2pop2" } */ +/* { dg-options "-O2 -fomit-frame-pointer -mapx-features=push2pop2" } */ /* { dg-skip-if "does not emit .cfi_xxx" "*-*-darwin*" } */ extern int bar (int); diff --git a/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c b/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c index 3cac7b10769..4e2259f0c99 100644 --- a/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c +++ b/gcc/testsuite/gcc.target/i386/apx-push2pop2_force_drap-1.c @@ -1,5 +1,5 @@ /* { dg-do compile { target { ! ia32 } } } */ -/* { dg-options "-O2 -mapx-features=push2pop2 -mforce-drap" } */ +/* { dg-options "-O2 -mapx-features=push2pop2 -fomit-frame-pointer -mforce-drap" } */ /* { dg-skip-if "does not emit .cfi_xxx" "*-*-darwin*" } */ #include "apx-push2pop2-1.c" Is there a reason to have -fomit-frame-pointer once before and once after -mapx-features=push2pop2?