Implement `decodeDouble_Int64#` primop

Authored by hvr on Sep 17 2014, 10:54 AM.

Description

Implement decodeDouble_Int64# primop

The existing decodeDouble_2Int# primop is rather inconvenient to use
(and in fact is not even used by integer-gmp) as the mantissa is split
into 3 components which would actually fit in an Int64# value.

However, decodeDouble_Int64# is to be used by the new integer-gmp2
re-implementation (see Trac #9281).

Moreover, decodeDouble_2Int# performs direct bit-wise operations on the
IEEE representation which can be replaced by a combination of the
portable standard C99 scalbn(3) and frexp(3) functions.

Differential Revision: https://phabricator.haskell.org/D160

Details

Committed
hvrSep 17 2014, 10:55 AM
Pushed
bgamariAug 25 2016, 1:39 PM
Differential Revision
D160: Implement `decodeDouble_Int64#` primop
Parents
rGHCDIFF3c2829017943: Typo in comment
Branches
Unknown
Tags
Unknown