This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH: [4.5 Regression] ICE with graphite enabled in cairo-1.8.10
> Huh, the patch looks odd. ?We now fall through to
> insert_out_of_ssa_copy_on_edge. ?Why not fix
> insert_out_of_ssa_copy instead?
>
> ?stmt = SSA_NAME_DEF_STMT (var);
> ?if (gimple_code (stmt) == GIMPLE_PHI)
>
> the def STMT isn't a PHI if it isn't an SSA name.
>
I am sorry, I do not see how to fix insert_out_of_ssa_copy, could you
please be more specific?
Also please note that on trunk the code under the condition looks like
this: we insert the out of SSA copy just after the definition of arg,
so we have to have an SSA_NAME to get the SSA_NAME_DEF_STMT at this point
if (TREE_CODE (arg) == SSA_NAME
&& e->src == bb->loop_father->latch)
insert_out_of_ssa_copy (scop, zero_dim_array, arg,
SSA_NAME_DEF_STMT (arg));
/* Insert the assignment "RES := EXPR" just after AFTER_STMT. */
static void
insert_out_of_ssa_copy (scop_p scop, tree res, tree expr, gimple after_stmt)