This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Load hoisting bug
On Fri, Dec 07, 2001 at 05:16:28PM -0700, law@redhat.com wrote:
> > We have not had enough fun with loop optimizations lately, so I
> > found one...
> >
> > The divconst-3.c regression on AIX which appeared at the beginning
> > of November is due to GCC miscompiling itself. The miscompilation is
> > caused by a loop optimization which was not safe.
> [ ... ]
> Note that the handling of hard registers in loops changed in early November.
> I believe this is the patch:
>
> * loop.c (loop_regs_scan): Don't invalidate PIC register.
>
> You might try without that patch and see if this problem goes away.
It will go away. The problem is almost certainly the DImode.
There's a missing HARD_REGNO_NREGS somewhere in the loop code.
r~