This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Some 4.4 project musings
On 01/02/2008, Richard Guenther <richard.guenther@gmail.com> wrote:
> On Feb 1, 2008 9:55 PM, Andrew MacLeod <amacleod@redhat.com> wrote:
> >
> > There are a few things that I'm considering working on for the 4.4
> > release, and I figured I'd see what others thought. Is anyone
> > considering/doing similar or related work?
> >
> > I'll summarize each, and then go into more details.
>
> > Pass Cleanup
> > -----------------
> >
> > It would sure be nice to streamline our pass pipeline. One could spend
> > the rest of ones life doing this by hand. The 2 biggest problems would
> > seem to be:
> > * we have no idea whether a pass actually does much
> > * and we have no idea whether it was actually useful
>
> I would add
>
> * re-ordering passes makes the compiler break
>
Re-ordering of passes would be easier if passes destroyed properties
when they invalidate it, and the pass manager invoked the necessary
TODO_functions to re-create them when a pass asks for a missing
property.
For example if alias information has gone stale because of some pass,
then that pass destroys PROP_alias. Now a later pass requires alias
information to do their magic but PROP_alias is missing, so they
invoke compute_may_aliases to restore PROP_alias.
This was discussed previously here:
http://gcc.gnu.org/ml/gcc/2007-09/msg00512.html
I have been thinking about this because I needed something similar to
enable SSA at -O0 so we can run -Wuninitialized.
Cheers,
Manuel.