This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH]: Machine independent patch, was: Update SSE5 vector multiplication, shift, rotate


On Tue, 22 Apr 2008, Andrew Pinski wrote:

> On Tue, Apr 22, 2008 at 8:39 AM, Paolo Bonzini <bonzini@gnu.org> wrote:
> >  I agree a lot with this (Michael's).  OTOH if you want to go the other way,
> > I attach a patch to convert the SPU port (mostly untested); this goes with
> > the patch I already posted for AltiVec.
> 
> Actually is there a reason why we need an extra vector << scalar ?
> Can't we have it match with vec_duplicate and have the tree level
> always accept vector shift vector including the tree vectorizer
> producing that?  The SPU part already does this for constants really
> with the 'W' constraint.

The only reason I see is if a machine supports both shifting the whole
vector and shifting the elements by a scalar.  You cannot easily
distinguish these cases (unless you require a (subreg:TI (reg:V4SI))
as operand or so)

Richard.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]