[Haskell-cafe] question about Data.Binary and Double instance
Ian Lynagh
igloo at earth.li
Sun Apr 22 17:43:23 EDT 2007
On Tue, Apr 17, 2007 at 11:42:40PM -0400, Brian Alliet wrote:
>
> > Perhaps we just don't care about ARM or other arches where GHC runs that
>
> Are there really any architectures supported by GHC that don't use IEEE
> floating point? If so GHC.Float is wrong as isIEEE is always true.
The one most likely to be non-IEEE is ARM, which has a middle-endian
representation; to make it explicit, it's the middle case here
(FLOAT_WORDS_BIGENDIAN but not WORDS_BIGENDIAN):
#if WORDS_BIGENDIAN
unsigned int negative:1;
unsigned int exponent:11;
unsigned int mantissa0:20;
unsigned int mantissa1:32;
#else
#if FLOAT_WORDS_BIGENDIAN
unsigned int mantissa0:20;
unsigned int exponent:11;
unsigned int negative:1;
unsigned int mantissa1:32;
#else
unsigned int mantissa1:32;
unsigned int mantissa0:20;
unsigned int exponent:11;
unsigned int negative:1;
#endif
#endif
Does anyone know if that makes it non-IEEE?
Thanks
Ian
More information about the Haskell-Cafe
mailing list