[ast-optimizer-branch] Goto/Break/Continue/Switch elimination

Diego Novillo dnovillo@redhat.com
Thu May 2 11:27:00 GMT 2002


On Thu, 2002-05-02 at 14:16, Richard Henderson wrote:

> I wonder if there's some way to write the tree optimizations such that
> they use an abstract cfg.  If goto elimination was "easy", then we use
> a set of cfg routines that sort-of generate the cfg on the fly as we
> examine it.  Otherwise we do the full graph thing.
> 
The usage I've seen advertised for goto/break elimination passes is
things like parallelizing loops.  We already have a generic CFG builder
that deals with anything you throw at it.

I don't think we should always apply this transformation.  However, it
may happen that for some transformations we want/need to deal with a
simpler CFG.  In those cases we can call the goto elimination pass.  As
usual, we should try to balance the code bloat vs performance vs
compilation speed.


Diego.



More information about the Gcc-patches mailing list