This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
float-i386.h long double cleanup
- To: gcc-patches at gcc dot gnu dot org, sxking at uswest dot net
- Subject: float-i386.h long double cleanup
- From: Benjamin Kosnik <bkoz at cygnus dot com>
- Date: Tue, 22 Aug 2000 10:18:09 -0700
This patch is necessary for the c++ library shadow headers work. More
commentary can be found at this thread:
http://sources.redhat.com/ml/libstdc++/2000-08/msg00047.html
OK to install?
-benjamin
2000-08-22 Steven King <sxking@uswest.net>
* config/float-i386.h (LDBL_EPSILON): Remove __convert_long_double
machinery.
(LDBL_MAX): Same here.
Index: float-i386.h
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/float-i386.h,v
retrieving revision 1.2
diff -c -p -r1.2 float-i386.h
*** float-i386.h 1998/12/16 20:59:44 1.2
--- float-i386.h 2000/08/22 17:17:02
***************
*** 74,93 ****
#define LDBL_DIG 18
/* Difference between 1.0 and the minimum long double greater than 1.0 */
#undef LDBL_EPSILON
! #ifndef __LDBL_UNION__
! #define __LDBL_UNION__
! union __convert_long_double {
! unsigned __convert_long_double_i[4];
! long double __convert_long_double_d;
! };
! #endif
! #define LDBL_EPSILON (__extension__ ((union __convert_long_double) {__convert_long_double_i: {0x0, 0x80000000, 0x3fc0, 0x0}}).__convert_long_double_d)
/* Minimum int x such that FLT_RADIX**(x-1) is a normalised long double */
#undef LDBL_MIN_EXP
#define LDBL_MIN_EXP (-16381)
/* Minimum normalised long double */
#undef LDBL_MIN
! #define LDBL_MIN (__extension__ ((union __convert_long_double) {__convert_long_double_i: {0x0, 0x80000000, 0x1, 0x0}}).__convert_long_double_d)
/* Minimum int x such that 10**x is a normalised long double */
#undef LDBL_MIN_10_EXP
#define LDBL_MIN_10_EXP (-4931)
--- 74,86 ----
#define LDBL_DIG 18
/* Difference between 1.0 and the minimum long double greater than 1.0 */
#undef LDBL_EPSILON
! #define LDBL_EPSILON 1.08420217248550443401e-19L
/* Minimum int x such that FLT_RADIX**(x-1) is a normalised long double */
#undef LDBL_MIN_EXP
#define LDBL_MIN_EXP (-16381)
/* Minimum normalised long double */
#undef LDBL_MIN
! #define LDBL_MIN 3.36210314311209350626e-4932L
/* Minimum int x such that 10**x is a normalised long double */
#undef LDBL_MIN_10_EXP
#define LDBL_MIN_10_EXP (-4931)
*************** union __convert_long_double {
*** 96,102 ****
#define LDBL_MAX_EXP 16384
/* Maximum long double */
#undef LDBL_MAX
! #define LDBL_MAX (__extension__ ((union __convert_long_double) {__convert_long_double_i: {0xffffffff, 0xffffffff, 0x107ffe, 0x0}}).__convert_long_double_d)
/* Maximum int x such that 10**x is a representable long double */
#undef LDBL_MAX_10_EXP
#define LDBL_MAX_10_EXP 4932
--- 89,95 ----
#define LDBL_MAX_EXP 16384
/* Maximum long double */
#undef LDBL_MAX
! #define LDBL_MAX 1.18973149535723176502e+4932L
/* Maximum int x such that 10**x is a representable long double */
#undef LDBL_MAX_10_EXP
#define LDBL_MAX_10_EXP 4932