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, vectorizer] Fix PR33953 ICE in vectorizable_operation at tree-vect-transform.c:4017


Ira Rosen/Haifa/IBM wrote on 06/11/2007 00:25:02:

> Dorit Nuzman/Haifa/IBM wrote on 06/11/2007 10:20:40:
>
...
> > > +                     for (k = 0; k < slp_node->vec_stmts_size - 1;
k++)
> > > +                       VEC_quick_push (tree, vec_oprnds1,
vec_oprnd1);
> > > +                   }
> >
> > would this work also if it was a different (scalar) shift-amounts
> > for the generated vector stmts? i.e. if the testcase was:
> >
> > > +         dstdata[0] |= srcdata[0] << srcshift1;
> > > +         dstdata[1] |= srcdata[1] << srcshift1;
> > > +         dstdata[2] |= srcdata[2] << srcshift1;
> > > +         dstdata[3] |= srcdata[3] << srcshift1;
> > > +         dstdata[4] |= srcdata[4] << srcshift2;
> > > +         dstdata[5] |= srcdata[5] << srcshift2;
> > > +         dstdata[6] |= srcdata[6] << srcshift2;
> > > +         dstdata[7] |= srcdata[7] << srcshift2;
> >
> > ?
>
> We check during the analysis that all the shift arguments in case of
> scalar shift arguments are equal. I will add a comment here to explain
this.
>

shall we open a missed-optimization PR for this (or add it to the todo list
in http://gcc.gnu.org/wiki/VectorizationTasks?)

thanks,
dorit

> Thanks,
> Ira
>
> >
> > thanks,
> > dorit
> >


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