Hi!

On Fri, Nov 10, 2017 at 06:03:29PM -0500, Michael Meissner wrote:
> On Fri, Nov 10, 2017 at 11:45:23AM -0600, Segher Boessenkool wrote:
> > > After a burn-in period, I plan to backport a reduced version of the patch
> > > (XXBRD only) to gcc 7, unless you think it shouldn't go into gcc 7.
> > 
> > Well, why do we want it on 7?
> 
> Advanced customers and the kernel team using pre-production power9 servers 
> have
> asked for it.  Since GCC 8 likely won't be out for several months, I figured 
> to
> ask for it to go into GCC 7.

Well, convince me (off-list, if you want).

> > > +(define_insn "bswapdi2_xxbrd"
> > > +  [(set (match_operand:DI 0 "gpc_reg_operand" "=wo")
> > > + (bswap:DI (match_operand:DI 1 "gpc_reg_operand" "wo")))]
> > > +  "TARGET_POWERPC64 && TARGET_P9_VECTOR"
> > > +  "xxbrd %x0,%x1"
> > > +  [(set_attr "type" "vecperm")])
> > 
> > This doesn't need TARGET_POWERPC64 I think.
> > 
> > Please look at that.  The patch is okay for trunk.  Thanks!
> 
> I removed the test for POWERPC64.  It isn't needed, but I don't have any way 
> of
> testing whether the resulting code is slower or faster.  I'll attach the patch
> of the changes I checked in.

> +  if (TARGET_P9_VECTOR && !MEM_P (src) && !MEM_P (dest))
> +    {
> +      emit_insn (gen_bswapdi2_xxbrd (dest, src));
> +      DONE;
> +    }

That's not what I asked -- just remove the TARGET_POWERPC from the insn,
you shouldn't change the expander (unless it really works better?  I doubt
it though).


Segher

Reply via email to