This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: What to do with new-ra for GCC 4.0
- From: Jeffrey A Law <law at redhat dot com>
- To: Ulrich Weigand <uweigand at de dot ibm dot com>
- Cc: Bernd Schmidt <bernds_cb1 at t-online dot de>, Steven Bosscher <stevenb at suse dot de>, Jan Vroonhof <jvlists at ntlworld dot com>, Daniel Berlin <dberlin at dberlin dot org>, gcc at gcc dot gnu dot org, "Bjoern.M.Haase" <Bjoern dot M dot Haase at web dot de>
- Date: Mon, 17 Jan 2005 07:57:22 -0700
- Subject: Re: What to do with new-ra for GCC 4.0
- Organization: Red Hat, Inc
- References: <200501162109.j0GL9NuS024938@53v30g15.boeblingen.de.ibm.com>
- Reply-to: law at redhat dot com
On Sun, 2005-01-16 at 22:09 +0100, Ulrich Weigand wrote:
> Bernd Schmidt wrote:
>
> > I'm attaching a proof-of-concept patch, against a checkout from
> > 20050106. The main things this patch does
> > * replace reload insn ordering using RELOAD_FOR_blah by dependencies
> > automatically generated from the replacements
> > * replace reload inheritance by a separate pass that is run on data
> > collected by find_reloads
> > * try to make inheritance powerful enough that many other random
> > optimizations scattered across reload can be deleted (I hope that
> > eventually, reload_cse_regs can go as well)
>
> This is very nice! I've tried the patch on s390; here's what I found
> until now ...
>
> > The changes in genoutput.c are necessary to deal with the fact that some
> > machine descriptions have output operands without a "=" constraint letter.
>
> Wouldn't it be better to simply fix the backends? Testing your patch
> revealed a bug in s390.md where I had a superfluous "=" ...
Agreed. The backends really need to be fixed. I'm pretty sure missing
a '=' can create incorrect code; I don't know offhand if a superflous
'=' could create incorrect code.
Jeff