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: 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)


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