cvs commit: fptools/ghc/compiler/nativeGen MachCode.lhs MachMisc.lhs
PprMach.lhs
Julian Seward
sewardj@glass.cse.ogi.edu
Thu, 20 Dec 2001 07:20:38 -0800
sewardj 2001/12/20 07:20:38 PST
Modified files:
ghc/compiler/nativeGen MachCode.lhs MachMisc.lhs PprMach.lhs
Log:
Generate floating-point comparisons on x86 which deal with NaNs in what
I assume is an IEEE854 compliant fashion. For
== >= > <= <
if either arg is a NaN, produce False, and for
/=
if either arg is a NaN, produce True.
This is the behaviour that gcc has, by default.
Requires some ultramagical x86 code frags to be emitted. A big comment
in PprMach explains how it works.
Revision Changes Path
1.88 +9 -18 fptools/ghc/compiler/nativeGen/MachCode.lhs
1.56 +5 -1 fptools/ghc/compiler/nativeGen/MachMisc.lhs
1.59 +81 -6 fptools/ghc/compiler/nativeGen/PprMach.lhs