This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] Removal of gotos from cfg based ir
On Thu, 2003-11-27 at 18:40, Zdenek Dvorak wrote:
> Hello,
> >
> > Are simply talking about removing all the GOTO_EXPR's in the program,
> > and letting the CFG edges represent those GOTO's?.
>
> Yes.
>
> > Is there
> > anything *other* than explicit GOTOs which are involved?
>
> No.
>
> > And the reason
> > this is better is because we dont have to deal with GOTOs that are
> > required in new basic blocks caused by forwarder blocks which get
> > created when GOTOs are required?
>
> Yes (at least it is the main reason, the other are less important).
>
> > Because this is far less intrusive than what we (or at least I :-)
> > originally started arguing about. :-) And it would be in this state
> > presumably starting when the cfg is created, and the GOTOs replced when
> > the CFg is destroyed?
>
> Exactly; you may want to check
>
> http://gcc.gnu.org/ml/gcc-patches/2003-11/msg01371.html
>
> where the complete patch I propose is, if there are other details
> you are unsure of.
>
This doesn't constitute approval of the patch, but I am inclined to
agree with the idea. I want to think about it overnight in those terms
:-) I thought there was much more involved than just this...
I did a grep and sure enough, no one else ever seems to care about the
GOTOs, which is an even better case for you :-). CCP seems to look at
it, I assume whatever reason it has are probably superceded by anything
the CFG routines would do.
Andrew