[PATCH, PR68976] Use reaching def phi arg in sese_add_exit_phis_edge

2016-01-15 Thread Tom de Vries
Hi, Consider testcase test.c: ... int kw = -1, hv = -1, ju; int mc[1]; void foo (void) { for (; kw; ++kw) for (; hv; ++hv) for (ju = 0; ju < 2; ++ju) mc[kw+1] = mc[0]; } ... When compiled with -O2 -fgraphite-identity, we run into an ICE: ... test.c: In function ‘foo’:

Re: [PATCH, PR68976] Use reaching def phi arg in sese_add_exit_phis_edge

2016-01-15 Thread Sebastian Pop
On Fri, Jan 15, 2016 at 7:58 AM, Tom de Vries wrote: > During scop detection/canonicalize_loop_closed_ssa_form, an exit phi is > introduced in the loop for _24: > ... > : > # _58 = PHI <_24(22)> > ... > Note that _24 is not defined in the loop, but before it. AFAIU the

Re: [PATCH, PR68976] Use reaching def phi arg in sese_add_exit_phis_edge

2016-01-15 Thread Sebastian Pop
On Fri, Jan 15, 2016 at 11:19 AM, Sebastian Pop wrote: > On Fri, Jan 15, 2016 at 7:58 AM, Tom de Vries wrote: >> During scop detection/canonicalize_loop_closed_ssa_form, an exit phi is >> introduced in the loop for _24: >> ... >> : >> # _58 = PHI