This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [lno] [PATCH] Loop Versioning
Hello,
> >this patch should fix this.
>
> It causes abort() at
>
> find_induction_variable() --> find_givs() -->
> get_loop_body_in_dom_order()
>
> >But first, could you please check with what
> >statement the preheader of the loop in this case ends?
>
> conditional statement
> if (cond) goto L1; else goto L2;
>
> >I assumed that
> >since I force the preheader to have just a single successor,
>
> hmm... in loop versioning I create a pre-header with two
> successors. One is original loop and second is new version of
> original loop.
could you please change this (call loop_split_edge_with (e, NULL)
on both created edges), so that this property is fulfilled? It makes
some loop manipulation functions simpler, and some of them thus rely
on the fact that it is so.
Zdenek