On 4/11/25 1:05 PM, Alexandre Oliva wrote: > Multiple tests on ilp32 get TARGET_POWERPC64 enabled by -mdejagnu-cpu > options, but the results they expect are only attained without > enabling it, so disable it explicitly. [snip] > diff --git a/gcc/testsuite/gcc.target/powerpc/bfp/scalar-extract-sig-2.c > b/gcc/testsuite/gcc.target/powerpc/bfp/scalar-extract-sig-2.c > index 4f2129f136b40..87c5c084a8e4e 100644 > --- a/gcc/testsuite/gcc.target/powerpc/bfp/scalar-extract-sig-2.c > +++ b/gcc/testsuite/gcc.target/powerpc/bfp/scalar-extract-sig-2.c > @@ -1,6 +1,6 @@ > /* { dg-do compile { target { powerpc*-*-* } } } */ > /* { dg-skip-if "" { has_arch_ppc64 } } */ > -/* { dg-options "-mdejagnu-cpu=power9 -mvsx" } */ > +/* { dg-options "-mdejagnu-cpu=power9 -mvsx -mno-powerpc64" } */ > /* { dg-require-effective-target powerpc_vsx } */
But -mcpu= should not enable -mpowerpc64 by default for -m32 compiles. It doesn't for Linux and I highly doubt it should for powerpc-elf builds. bergner@perch:~/$ gcc -E -dM -m32 -mcpu=power9 empty.c | grep _ARCH_PPC64 bergner@perch:~/$ gcc -E -dM -m32 -mcpu=power9 -mpowerpc64 empty.c | grep _ARCH_PPC64 #define _ARCH_PPC64 1 bergner@perch:~/$ gcc-powerpc-elf -E -dM -m32 -mcpu=power9 empty.c | grep _ARCH_PPC64 #define _ARCH_PPC64 1 bergner@perch:~/$ gcc-powerpc-elf -E -dM -m32 empty.c | grep ARCH_PPC64 bergner@perch:~/$ gcc-powerpc-elf -E -dM -m32 -mcpu=603 empty.c | grep ARCH_PPC64 bergner@perch:~/$ ...but here we can see that is does, when the -mcpu=CPU has OPTION_MASK_POWERPC64 as one of its masks. That looks like a bug to me. I'm not sure why atm we don't see that happening on Linux when compiling with -m32. I think if we fix this bug, then we won't need to modify the test cases as you're doing here. Peter