On Thu, Jun 17, 2021 at 01:11:58PM -0500, Segher Boessenkool wrote:
> On Tue, Jun 08, 2021 at 08:22:40PM -0400, Michael Meissner wrote:
> > 
> >     * gcc.target/powerpc/float128-minmax.c: Adjust expected code for
> >     power10.
> >     * lib/target-supports.exp (check_effective_target_has_arch_pwr10):
> >     New target support.
> > ---
> >  gcc/testsuite/gcc.target/powerpc/float128-minmax.c |  8 +++++---
> >  gcc/testsuite/lib/target-supports.exp              | 10 ++++++++++
> >  2 files changed, 15 insertions(+), 3 deletions(-)
> > 
> > diff --git a/gcc/testsuite/gcc.target/powerpc/float128-minmax.c 
> > b/gcc/testsuite/gcc.target/powerpc/float128-minmax.c
> > index fe397518f2f..a7d3a3a0b3e 100644
> > --- a/gcc/testsuite/gcc.target/powerpc/float128-minmax.c
> > +++ b/gcc/testsuite/gcc.target/powerpc/float128-minmax.c
> > @@ -1,6 +1,5 @@
> > -/* { dg-do compile { target lp64 } } */
> 
> Does that work?  Why was it there before?

The lp64 eliminates 32-bit, which does not support hardware IEEE 128-bit due to
the lack of TImode.  The test was written before the ppc_float128_hw test.  Now
that we have ppc_float128_hw, we don't need an explicit lp64.
 
> >  /* { dg-require-effective-target powerpc_p9vector_ok } */
> > -/* { dg-require-effective-target float128 } */
> > +/* { dg-require-effective-target ppc_float128_hw } */
> 
> Why is it okay to no longer run this test where it ran before?

The ppc_float128_hw test is a more precise test than just float128 and power9.
For 64-bit, it doesn't matter, but it allows us to drop the lp64 test.
 
> > -/* { dg-final { scan-assembler     {\mxscmpuqp\M} } } */
> > +/* Adjust code power10 which has native min/max instructions.  */
> > +/* { dg-final { scan-assembler     {\mxscmpuqp\M} { target { ! 
> > has_arch_pwr10 } } } } */
> 
> You need scan-assembler-times here?  (Not that it had that before this
> patch, of course).
> 
> > +/* { dg-final { scan-assembler     {\mxsmincqp\M} { target {   
> > has_arch_pwr10 } } } } */
> > +/* { dg-final { scan-assembler     {\mxsmaxcqp\M} { target {   
> > has_arch_pwr10 } } } } */
> 
> You can write just  { target has_arch_pwr10 }  here, I think?  Please do
> so (if that works, I haven't actually tested it :-) )
> 
> 
> Segher

-- 
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA
email: meiss...@linux.ibm.com, phone: +1 (978) 899-4797

Reply via email to