We've observed failures of this test on powerpc configurations that default to different calling conventions and alignment requirements. Both settings are needed for the original expectations to be met.
The test was later modified to have different expectations for big and little endian code generation. This patch restores the original codegen expectations, that, with the explicit options, don't vary any more. Tested with gcc-14 targeting ppc-vx7r2 and ppc64-vx7r2. Also tested with trunk on ppc64le-linux-gnu, and with gcc-14 targeting powerpc-elf. Ok to install? for gcc/testsuite/ChangeLog * gcc.target/powerpc/pr88233.c: Make some alignment strictness and calling conventions assumptions explicit. Restore uniform codegen expectations. --- gcc/testsuite/gcc.target/powerpc/pr88233.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gcc/testsuite/gcc.target/powerpc/pr88233.c b/gcc/testsuite/gcc.target/powerpc/pr88233.c index 27c73717a3f79..46a3ebfa28775 100644 --- a/gcc/testsuite/gcc.target/powerpc/pr88233.c +++ b/gcc/testsuite/gcc.target/powerpc/pr88233.c @@ -1,5 +1,5 @@ /* { dg-require-effective-target lp64 } */ -/* { dg-options "-O2 -mdejagnu-cpu=power8" } */ +/* { dg-options "-O2 -mdejagnu-cpu=power8 -mno-strict-align -fpcc-struct-return" } */ typedef struct { double a[2]; } A; A @@ -9,6 +9,5 @@ foo (const A *a) } /* { dg-final { scan-assembler-not {\mmtvsr} } } */ -/* { dg-final { scan-assembler-times {\mlxvd2x\M} 1 { target { be } } } } */ -/* { dg-final { scan-assembler-times {\mstxvd2x\M} 1 { target { be } } } } */ -/* { dg-final { scan-assembler-times {\mlfd\M} 2 { target { le } } } } */ +/* { dg-final { scan-assembler-times {\mlxvd2x\M} 1 } } */ +/* { dg-final { scan-assembler-times {\mstxvd2x\M} 1 } } */ -- Alexandre Oliva, happy hacker https://blog.lx.oliva.nom.br/ Free Software Activist FSFLA co-founder GNU Toolchain Engineer More tolerance and less prejudice are key for inclusion and diversity. Excluding neuro-others for not behaving ""normal"" is *not* inclusive!