PATCH: [4.5 Regression] ICE with graphite enabled in cairo-1.8.10

Richard Guenther richard.guenther@gmail.com
Wed Dec 1 10:38:00 GMT 2010


On Tue, Nov 30, 2010 at 6:02 PM, Sebastian Pop <sebpop@gmail.com> wrote:
>> 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)
>

The trunk looks different anyway it seems.  But yes, I didn't look
carefully enough, so ignore my comments.

Richard.



More information about the Gcc-patches mailing list