From 0061df4ed91c91d6b20f3edc0aab437f3fed4969 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Mon, 1 Jun 1998 14:26:00 +0000 Subject: Update. 1998-05-30 Philip Blundell * stdlib/gmp-impl.h: Support strange mixed-endian double format used by ARM systems. * sysdeps/arm/fpu/bits/fenv.h (FE_EXCEPTION_SHIFT): Rename to FE_EXCEPT_SHIFT. * sysdeps/arm/bits/fenv.h: Deleted. * sysdeps/arm/fpu/ieee754.h: New file. * sysdeps/arm/gmp-mparam.h: New file. * stdlib/longlong.h (umul_ppmm): Temporarily disable broken ARM implementation. --- stdlib/gmp-impl.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'stdlib/gmp-impl.h') diff --git a/stdlib/gmp-impl.h b/stdlib/gmp-impl.h index 837fcfdb28..3dbb837d1e 100644 --- a/stdlib/gmp-impl.h +++ b/stdlib/gmp-impl.h @@ -327,6 +327,23 @@ extern void impn_sqr_n _PROTO ((mp_ptr prodp, mp_srcptr up, mp_size_t size, #define IEEE_DOUBLE_BIG_ENDIAN 1 #endif +#ifndef IEEE_DOUBLE_MIXED_ENDIAN +#define IEEE_DOUBLE_MIXED_ENDIAN 0 +#endif + +#if IEEE_DOUBLE_MIXED_ENDIAN +union ieee_double_extract +{ + struct + { + unsigned int manh:20; + unsigned int exp:11; + unsigned int sig:1; + unsigned int manl:32; + } s; + double d; +}; +#else #if IEEE_DOUBLE_BIG_ENDIAN union ieee_double_extract { @@ -352,3 +369,4 @@ union ieee_double_extract double d; }; #endif +#endif -- cgit 1.4.1