Go to the first, previous, next, last section, table of contents.

Unboxed-`Double' and `Float' operations

{plus,minus,times,divide}Double# :: Double# -> Double# -> Double#
negateDouble# :: Double# -> Double#

float2Int#      :: Double# -> Int#   -- just a cast, no checking!
int2Double#     :: Int# -> Double#

expDouble#      :: Double# -> Double#
logDouble#      :: Double# -> Double#
sqrtDouble#     :: Double# -> Double#
sinDouble#      :: Double# -> Double#
cosDouble#      :: Double# -> Double#
tanDouble#      :: Double# -> Double#
asinDouble#     :: Double# -> Double#
acosDouble#     :: Double# -> Double#
atanDouble#     :: Double# -> Double#
sinhDouble#     :: Double# -> Double#
coshDouble#     :: Double# -> Double#
tanhDouble#     :: Double# -> Double#
powerDouble#    :: Double# -> Double# -> Double#
There's an exactly-matching set of unboxed-`Float' ops; replace `Double#' with `Float#' in the list above. There are two coercion functions for `Float#'/`Double#':
float2Double#   :: Float# -> Double#
double2Float#   :: Double# -> Float#
The primitive versions of `encodeDouble'/`decodeDouble':
encodeDouble#   :: Int# -> Int# -> ByteArray#   -- Integer mantissa
                -> Int#                         -- Int exponent
                -> Double#

decodeDouble#   :: Double# -> PrelNum.ReturnIntAndGMP
(And the same for `Float#'s.)
Go to the first, previous, next, last section, table of contents.