Hi Jakub, On Fri, Feb 03, 2017 at 10:10:47AM +0100, Jakub Jelinek wrote: > As mentioned in the PR, for the following testcase we emit a power9 > instruction even with -mcpu=power8. Similar movsf_hardfloat instruction > uses wb constraint for the stxssp insn source rather than wu, which it > only uses for stxsspx (power7?). > > Bootstrapped/regtested on powerpc64{,le}-linux, ok for trunk?
Yes please. Thanks! Some testcase stuff below... > --- gcc/testsuite/gcc.target/powerpc/pr79354.c.jj 2017-02-03 > 02:37:44.147938375 +0100 > +++ gcc/testsuite/gcc.target/powerpc/pr79354.c 2017-02-03 > 02:38:34.838303987 +0100 > @@ -0,0 +1,23 @@ > +/* PR target/79354 */ > +/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */ powerpc*-*-* instead? And why is lp64 needed? > +/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { > "-mcpu=power8" } } */ > +/* { dg-require-effective-target powerpc_p8vector_ok } */ > +/* { dg-options "-mcpu=power8 -O2" } */ > +/* { dg-final { scan-assembler-not "stxssp\[^x]" } } */ \M is nicer and more future-proof, but this works. Segher