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: Fix ICE in loop unrolling


Hi,

> Here is an update of the patch with your suggestion also implemented.
> Regstrapped on amd64-linux.  Okay for trunk?

this is OK.  It would be also nice to replace this:

> +  cond = last_stmt (exit->src);
> +  COND_EXPR_COND (cond) = (exit->flags & EDGE_TRUE_VALUE) ? boolean_true_node
> +    : boolean_false_node;
> +  update_stmt (cond);
>    update_ssa (TODO_update_ssa);

by removing the non-exit edge.  That will completely remove the loop,
though, and I am not sure whether the code using this function would to
handle this correcly (we definitely do not want to do that in stage 3,
unless there turns out to be some PR requiring it).

Zdenek


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