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: [tree-ssa] Removal of gotos from cfg based ir


On Thu, 2003-11-27 at 18:24, Zdenek Dvorak wrote:
> Hello,
> 
> > > Your's commit_edge_redirections is disband_implicit_edges.
> > > Rest of Zdenek's patch is mostly about removing things that are no
> > > longer needed and reorganizing things so the gotos are alliminated from
> > 
> > 
> > I think mine is a lot less intrusive than removing all the GOTOs , using
> > CFG edges everywhere, and then rewriting all the GOTO's and labels when
> > done.
> 
> in what exactly you see intrusivity of my approach? Note that there are
> absolutely no changes in optimizers outside tree-cfg.c.
> 

First answer the last question:

Are simply talking about removing all the GOTO_EXPR's in the program,
and letting the CFG edges represent those GOTO's? . Is there
anything *other* than explicit GOTOs which are involved? 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?

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?

Andrew






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