This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [rs6000] Enable scalar shifts of vectors
- From: David Miller <davem at davemloft dot net>
- To: rth at redhat dot com
- Cc: dje dot gcc at gmail dot com, gcc-patches at gcc dot gnu dot org
- Date: Wed, 12 Oct 2011 18:37:04 -0400 (EDT)
- Subject: Re: [rs6000] Enable scalar shifts of vectors
- References: <4E96158E.5030106@redhat.com>
From: Richard Henderson <rth@redhat.com>
Date: Wed, 12 Oct 2011 15:32:46 -0700
> I suppose technically the middle-end could be improved to implement
> ashl<mode> as vashl<mode> by broadcasting the scalar, but Altivec
> is the only extant SIMD ISA that would make use of this. All of
> the others can arrange for constant shifts to be encoded into the
> insn, and so implement the ashl<mode> named pattern.
I'm pretty sure Sparc's VIS3 can do this too, see the
'<vis3_shift_insn><vbits>_vis' patterns in sparc.md