This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

float-i386.h long double cleanup



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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]