This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: egcs-1.2 stuff
- To: hjl at lucon dot org (H.J. Lu)
- Subject: Re: egcs-1.2 stuff
- From: Jeffrey A Law <law at upchuck dot cygnus dot com>
- Date: Sat, 03 Apr 1999 21:41:36 -0700
- cc: egcs at egcs dot cygnus dot com, john at feith dot com
- Reply-To: law at cygnus dot com
In message <m10O9fD-000ErMC@ocean.lucon.org>you write:
> >
> >
> >
> > In message <m10O2ic-000ErMC@ocean.lucon.org>you write:
> > > I enabled all TARGET_CMOVE and CC_FCOMI. I also optimized the fp
> > > cmove.
> > >
> > > What do you mean by that? I sent in patches months ago and you said
> > > you would take a look. What happened?
> > The FCOMI stuff I explicitly left with you and John to sort out. Last I
> > heard there were still technical problems with that patch. If you and Jo
> hn
> > think the patch is done, then send the final patch.
> >
>
> This is the latest patch I have been using. It seems ok.
>
>
> H.J.
> ----
> Mon Jan 11 20:02:56 1999 H.J. Lu (hjl@gnu.org)
>
> * i386.c (output_fp_cc0_set): Don't check the JUMP_INSN code for
> conditional move.
>
> * config/i386/i386.c (notice_update_cc, output_float_compare):
> Enable TARGET_CMOVE support.
>
> * config/i386/i386.c (output_float_compare): Fix the FLOAT
> comparison for IEEE math and CC_FCOMI.
Here's a nice simple example from the gcc testsuite that breaks with this
patch installed.
Compile & run on a PPro/PII with -O1 -march=pentiumpro
The program will abort instead of exiting with zero status:
f (double *ty)
{
*ty = -1.0;
}
main ()
{
double foo[6];
double tx = 0.0, ty, d;
f (&ty);
if (ty < 0)
ty = -ty;
d = (tx > ty) ? tx : ty;
if (ty != d)
abort ();
exit (0);
}
When you resubmit this patch, can you please test it with the gcc testsuite
first?
Thanks,
jeff