[project @ 1999-02-18 12:26:11 by simonm]
authorsimonm <unknown>
Thu, 18 Feb 1999 12:26:17 +0000 (12:26 +0000)
committersimonm <unknown>
Thu, 18 Feb 1999 12:26:17 +0000 (12:26 +0000)
commite58d0e9b37910fbf802804f534accb159235d539
tree7993e059e177a0931ea8d2ff6bfcaeb1db1231d0
parent1f9caae54f58c5da481717c25b67ec59aa6ba734
[project @ 1999-02-18 12:26:11 by simonm]
Add two new operations to StgPrimFloat.c:

__int_encodeFloat
__int_encodeDouble

for encoding floats/doubles from small integers.  This avoids having
to convert small integers to large ones before an encodeFloat
operation, and fixes the two cases of slowdown in nofib after the
small integer changes.

Also:
- remove encodeFloat and decodeFloat as primops
- use foreign import for encode{Float,Double} and
  the various isNaN etc. ccalls in PrelNumExtra.
ghc/compiler/absCSyn/Costs.lhs
ghc/compiler/prelude/PrimOp.lhs
ghc/includes/PrimOps.h
ghc/lib/std/PrelGHC.hi-boot
ghc/lib/std/PrelNumExtra.lhs
ghc/rts/StgPrimFloat.c