Hi Carl, on 2024/6/20 00:13, Carl Love wrote: > GCC maintainers: > > version 2: Updated per the feedback from Peter, Kewen and Segher. Note, > Peter suggested the -mdejagnu-cpu= value must be power7. > The test fails if -mdejagnu-cpu= is set to power7, needs to be power8. Patch > has been retested on a Power 10 box, it succeeds > with 2 passes and no fails.
IMHO Peter's suggestion on power7 (-mdejagnu-cpu=power7) is mainly for altivec-1-runnable.c. Both your testing and the comments in the test case show this altivec-2-runnable.c requires at least power8. > > Per the additional feedback after patch: > > commit c892525813c94b018464d5a4edc17f79186606b7 > Author: Carl Love <c...@linux.ibm.com> > Date: Tue Jun 11 14:01:16 2024 -0400 > > rs6000, altivec-2-runnable.c should be a runnable test > > The test case has "dg-do compile" set not "dg-do run" for a runnable > test. This patch changes the dg-do command argument to run. > > gcc/testsuite/ChangeLog:gcc/testsuite/ChangeLog: > * gcc.target/powerpc/altivec-2-runnable.c: Change dg-do > argument to run. > > was approved and committed, I have updated the dg-require-effective-target > and dg-options as requested so the test will compile with -O2 on a > machine that has a minimum support of Power 8 vector hardware. > > The patch has been tested on Power 10 with no regression failures. > > Please let me know if this patch is acceptable for mainline. Thanks. > > Carl > > ---------------------------------------------------------------- > rs6000, altivec-2-runnable.c update the require-effective-target > > The test requires a minimum of Power8 vector HW and a compile level > of -O2. > > gcc/testsuite/ChangeLog:gcc/testsuite/ChangeLog: > * gcc.target/powerpc/altivec-2-runnable.c: Change the > require-effective-target for the test. > --- > gcc/testsuite/gcc.target/powerpc/altivec-2-runnable.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/gcc/testsuite/gcc.target/powerpc/altivec-2-runnable.c > b/gcc/testsuite/gcc.target/powerpc/altivec-2-runnable.c > index 17b23eb9d50..9e7ef89327b 100644 > --- a/gcc/testsuite/gcc.target/powerpc/altivec-2-runnable.c > +++ b/gcc/testsuite/gcc.target/powerpc/altivec-2-runnable.c > @@ -1,7 +1,7 @@ > -/* { dg-do run } */ > -/* { dg-options "-mvsx" } */ > -/* { dg-additional-options "-mdejagnu-cpu=power8" { target { ! has_arch_pwr8 > } } } */ > -/* { dg-require-effective-target powerpc_vsx } */ > +/* { dg-do run { target vsx_hw } } */ As this test case requires power8 and up, and dg-options specifies -mdejagnu-cpu=power8, we should use p8vector_hw instead of vsx_hw here, otherwise it will fail on power7 env. > +/* { dg-do compile { target { ! vmx_hw } } } */ This condition should be ! <the one used for dg-do run>, so ! p8vector_hw. > +/* { dg-options "-O2 -mdejagnu-cpu=power8" } */> +/* { > dg-require-effective-target powerpc_altivec } */ This should be powerpc_vsx instead, otherwise this case can still be tested with -mno-vsx -maltivec, then this test case would fail. Besides, as the discussion on the name of this test case, could you also rename this to p8vector-builtin-9.c instead? BR, Kewen