Subject: Re: Another GCC bug!
To: J.T. Conklin <jconklin@netcom.com>
From: Tom I Helbekkmo <tih@Hamartun.Priv.NO>
List: current-users
Date: 05/14/1996 18:45:53
On Mon, 13 May 1996, J.T. Conklin wrote:

> The problem with paranoia is most likely do to the fact that the
> i387 (and the FPUs on i[456]86 CPUs) registers are 80 bits and
> doubles are 64 bits.  Depending on when values are loaded/stored
> from FPU registers, you can get slightly different results.  With
> some programs, the differences are significant.
> [...]
> The gcc maintainers know of the excess precision problem, and the
> -ffloat-store flag has been provided that minimizes the effect.

This sounds reasonable.  However, while compiling with -ffloat-store
did cause paranoia to give the system a clean bill of health, it did
nothing for ACM.  Now, it's possible that Riley Rainey did some weird
stuff in ACM, and it certainly does an awful lot of math, but it does
run on many different platforms, and behaves perfectly on the i486
when compiled at optimization level 1.  I'll dig further, though, and
see what I can come up with.

I haven't recompiled GCC itself at optimization level 1 -- might that
be worth an attempt?  Meanwhile, I've reverted to not using "-O2" by
default, only selecting it when I know the application needs all the
speed it can get and doesn't do any floating point stuff at all.

-tih
-- 
Tom Ivar Helbekkmo
tih@Hamartun.Priv.NO