David pointed out to me that pr48258-2 was failing on AIX, and it was failing under Linux as well. In terms of the Linux failures, this was because the test was failing if the xxsldwi was generated. I decided the test conditions were too specific, and loosened them to just check that the compiler did vectorize the reductions, but not to count how many instructions were generated.
David does this also fix the AIX side of things and can be checked in? [gcc/testsuite] 2012-11-02 Michael Meissner <[email protected]> * gcc.target/powerpc/pr48258-2.c: Simplfy the acceptance conditions to verify the reduction code is vectorized. Index: gcc/testsuite/gcc.target/powerpc/pr48258-2.c =================================================================== --- gcc/testsuite/gcc.target/powerpc/pr48258-2.c (revision 193095) +++ gcc/testsuite/gcc.target/powerpc/pr48258-2.c (working copy) @@ -1,17 +1,10 @@ /* { dg-do compile } */ /* { dg-skip-if "" { powerpc*-*-darwin* } { "*" } { "" } } */ /* { dg-require-effective-target powerpc_vsx_ok } */ -/* { dg-options "-O3 -mcpu=power7 -mabi=altivec -ffast-math -fno-unroll-loops" } */ -/* { dg-final { scan-assembler-times "xvadddp" 1 } } */ -/* { dg-final { scan-assembler-times "xvmindp" 1 } } */ -/* { dg-final { scan-assembler-times "xvmaxdp" 1 } } */ -/* { dg-final { scan-assembler-times "xsadddp" 1 } } */ -/* { dg-final { scan-assembler-times "xsmindp" 1 } } */ -/* { dg-final { scan-assembler-times "xsmaxdp" 1 } } */ -/* { dg-final { scan-assembler-not "xxsldwi" } } */ -/* { dg-final { scan-assembler-not "stvx" } } */ -/* { dg-final { scan-assembler-not "stxvd2x" } } */ -/* { dg-final { scan-assembler-not "stxvw4x" } } */ +/* { dg-options "-O3 -mcpu=power7 -mabi=altivec -ffast-math" } */ +/* { dg-final { scan-assembler "xvadddp" } } */ +/* { dg-final { scan-assembler "xvmindp" } } */ +/* { dg-final { scan-assembler "xvmaxdp" } } */ #include <stddef.h> -- Michael Meissner, IBM 5 Technology Place Drive, M/S 2757, Westford, MA 01886-3141, USA [email protected] fax +1 (978) 399-6899
