------- Comment #53 from rguenther at suse dot de  2008-05-02 15:05 -------
Subject: Re:  [4.3/4.4 Regression]  Revision
 126326 causes 12% slowdown

On Fri, 2 May 2008, mmitchel at gcc dot gnu dot org wrote:

> ------- Comment #52 from mmitchel at gcc dot gnu dot org  2008-05-02 14:16 
> -------
> Yes, the "perfect pass" problem is what concerns me too.  For example, if we
> try to do dynamic reordering of passes, or allow users to specify that, we 
> have
> to worry that, in practice, the compiler will crash or generate wrong code. 
> We'll have no good way of ever validating even a small set of the possible
> combinations.

True.  Still if we don't have this ability to easily re-order passes
we'll never know ;)

So I still would like to have our pass-manager scripted, if it is
only for development purposes of GCC.

> Perhaps we need to make the passes fast, so we can run them more often?  Or
> weave some of them together, even though of course it's nice if each pass is
> logically separate and does a single thing?

Most of the cleanup passes are fast, and one of the most important things
in my view is maintainability which helps to reduce possible wrong-code
bugs.  This of course is easier with passes that do one single thing.

One thing we should consider is to keep more information around across
passes to make passes simpler.  For example VRP throws away range
information - we could separate out jump threading if we didn't do that,
likewise other passes could benefit from this information.  FRE and PRE
compute value numbers which are also thrown away.

Richard.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32921

Reply via email to