A new patch for the x86 -fpic and -fomit-frame-pointer bug
Manfred Hollstein
manfred@s-direktnet.de
Sun Jul 26 00:51:00 GMT 1998
On Sun, 26 July 1998, 01:36:26, law@hurl.cygnus.com wrote:
>
> In message < m0yvqx5-000266C@ocean.lucon.org >you write:
> > Here is a new patch for
> >
> > http://www.cygnus.com/ml/egcs-bugs/1998-Jun/0306.html
> >
> > My previous one
> >
> > http://www.cygnus.com/ml/egcs-patches/1998-Jul/0262.html
> >
> > is incorrect. This one seems to work. The problem is reg-stack.c will
> > generate insn to load 0 into a fp register.
> >
> > # grep CONST0_RTX reg-stack.c
> >
> > will show that.
> >
> > Thanks.
> >
> >
> > --
> > H.J. Lu (hjl@gnu.org)
> > ---
> > Mon Jul 13 08:36:01 1998 H.J. Lu (hjl@gnu.org)
> >
> > * config/i386/i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Return 0
> > for PIC if reload is not completed yet.
> You should have added some comments in the code about why the change
> was made in the code. This should be standard operating procedure
> for complex bugs.
>
> The idea is someone should be able to look at that code and know exactly
> why it is rejecting constants in some cases. I've added some comments
> to help clarify why this change was needed.
>
> I also changed the code to allow the constants when not eliminating
> the frame pointer, which should be safe.
>
> I've installed the updated patch on the egcs-1.1 branch as well as
> in the mainline sources.
>
> Manfred -- can you try your aggressive build & test cycle to verify
> that the problem has indeed been fixed and that others have not crept
> i?
>
This is what I did with my last two cycles. First I ran without any
patch and got the failure, then I applied H.J.'s patch, rebuilt the
compiler, removed all in ${target} and rebuilt the runtime
libraries. A following "make check" didn't show up the failure, while
all other results kept equal.
>
> Thanks!
> jeff
Thank you!
manfred
More information about the Gcc-patches
mailing list