This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: GCC 3.5 Status (2004-08-29)
- From: Steven Bosscher <stevenb at suse dot de>
- To: Mark Mitchell <mark at codesourcery dot com>, gcc at gcc dot gnu dot org
- Date: Mon, 30 Aug 2004 01:48:54 +0200
- Subject: Re: GCC 3.5 Status (2004-08-29)
- Organization: SUSE Labs
- References: <4132641E.3030206@codesourcery.com>
On Monday 30 August 2004 01:17, Mark Mitchell wrote:
> The following changes will be postponed until GCC 3.6. These changes
> either provide too little benefit, are too risky, or will take too
> much time to complete.
>
> * Aliasing improvements for structure fields [Berlin]
I believe this is a big mistake. Yes I know this may or may not be
ready on time according to _your_ schedule as the RM. But you should
realize that this analysis is absolutely critical if GCC 3.5 is going
to perform reasonably well.
I have done extensive testing of the effect of some RTL passes on GCC
bootstraps over the past few weeks. One of my findings is that:
1) almost all opportunities for jump threading we still do on RTL, and
2) almost all (like ~99%) store motion opportunities,
only happen because we miss alias information for fields at the tree
level. We *need* this alias analysis to be able to simplify or remove
some RTL passes. In the end, that is the *only* way to retrieve the
compiler speed we have lost with ~60 new passes we do since tree-ssa
was merged.
[ That doesn't even take into account the extra optimizations we can
do on trees with this information. ]
This new optimization frame work we have is fun and cool and gread and
all. But I don't believe GCC 3.5 should be released without alias
analysis that is at least capable of catching as much as what we catch
now on RTL.
Gr.
Steven