This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] crash in coalesce_abnormal_edges, merge frommainline?
On Wed, 2003-09-10 at 12:57, Daniel Berlin wrote:
>
>
> On Wed, 10 Sep 2003, Andrew MacLeod wrote:
>
> > The bit must be set on any variable who appears in the argument of a PHI
> > node across an abonrlmal edge...
> >
> > So when you are creating a PHI node, if an argument's edge has the
> > abnormal flag set, you need to set the bit for that variable.
>
> But add_phi_arg already does this for us, and that's what we use to add
> phi arguments.
>
>
> I also made it not PRE expressions whose names occur in abnormal phi's,
> and this doesn't help.
>
> So this means the abnormal edge is created by PRE.
>
> Can we create abnormal edges during critical edge splitting (since this is
> the only case where PRE actually creates a new edge)?
>
> If so, i think i know where to add the check.
>
>
My quick check indicated that the edge was already abnormal entering
into PRE, but it was just a quick check (I hacked a dump of the CFG
before running PRE, maybe I put it in the wrong spot.. :-)).
I dont see how critical edge splitting can cause new abnormal edges...
You can't split an abnormal edge or the splitter aborts. And a critical
edge which gets split oughtn't cause any new abormal edges, right?
You probably want to take a closer look at the exact problem and see
what going on with your PHI.
Andrew