Floating point problems

Florian Weimer fw at deneb.enyo.de
Thu Aug 31 01:44:33 EDT 2006


* > On Wed, 2006-08-30 at 14:58 -0400, David Roundy wrote:
>> It's
>> sad, but we're stuck with it, as I'm not aware of any compiler that is
>> capable of generating IEEE arithmetic.
>
> Gcc man page:
>
> -ffast-math

You quoted the wrong paragraph.  Here's the right one:

`-ffloat-store'
     Do not store floating point variables in registers, and inhibit
     other options that might change whether a floating point value is
     taken from a register or memory.

     This option prevents undesirable excess precision on machines such
     as the 68000 where the floating registers (of the 68881) keep more
     precision than a `double' is supposed to have.  Similarly for the
     x86 architecture.  For most programs, the excess precision does
     only good, but a few programs rely on the precise definition of
     IEEE floating point.  Use `-ffloat-store' for such programs, after
     modifying them to store all pertinent intermediate computations
     into variables.


More information about the Glasgow-haskell-users mailing list