[Bug tree-optimization/52678] internal compiler error: in vect_update_ivs_after_vectorizer, at tree-vect-loop-manip.c:1842

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Mar 23 09:33:00 GMT 2012


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52678

--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-03-23 09:29:07 UTC ---
The issue is that for an induction variable i in

 long i;
 for (i = 0; i < 15; i = (int) i + 1)
   ;

we know its evolution if we know the number of iterations which we know
because we know its initial value.  For the epilogue loop though we then
see (after deciding to vectorize)

 for (; i < n; i = (int) i + 1)
   ;

where we neither see the lower nor upper bound and due to the truncation
we cannot analyze its evolution anymore.

The issue is, of course, that we only need the evolution part and that
this evolution part does not change from the initial scalar loop, so
we could just use that which we could analyze easily.  But we choose
to re-analyze the epilogue loop :(



More information about the Gcc-bugs mailing list