[patch, vectorizer] Fix PR33953 ICE in vectorizable_operation at tree-vect-transform.c:4017
Ira Rosen
IRAR@il.ibm.com
Wed Nov 7 07:33:00 GMT 2007
Dorit Nuzman/Haifa/IBM wrote on 06/11/2007 20:00:32:
> 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?)
I think I'll add it to the (SLP) todo list.
Ira
>
> thanks,
> dorit
>
> > Thanks,
> > Ira
> >
> > >
> > > thanks,
> > > dorit
> > >
More information about the Gcc-patches
mailing list