This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: loop.c bugfix
- To: Richard Kenner <kenner at vlsi1 dot ultra dot nyu dot edu>
- Subject: Re: loop.c bugfix
- From: Bernd Schmidt <bernds at redhat dot co dot uk>
- Date: Mon, 23 Oct 2000 10:29:11 +0100 (BST)
- cc: gcc-patches at gcc dot gnu dot org, gcc at gcc dot gnu dot org
On Fri, 20 Oct 2000, Richard Kenner wrote:
> On HP PA, certain patterns are only valid if one register has
> REGNO_POINTER_FLAG (e.g., reg + reg in a MEM). But loop.c will substitute
> one pseudo for another and assume it's OK. It is only if REGNO_POINTER_FLAG
> is copied.
This could be argued to be a bug in the PA backend.
I'm sure that quite a few of the optimizer passes assume that substituting one
pseudo for another is always valid. If we decide to disallow this, then I'm
pretty sure we'll need to add a whole lot more code than this patch in loop.c.
We certainly should add documentation.
IMHO this patch is a bad idea, and we should change the PA port instead.
These special cases for one particular port will make gcc much less
maintainable in the long run.
Bernd