float-i128.h (FLT_EVAL_METHOD, [...]): Define.
authorRichard Henderson <rth@redhat.com>
Wed, 31 Jan 2001 19:49:00 +0000 (11:49 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Wed, 31 Jan 2001 19:49:00 +0000 (11:49 -0800)
        * config/float-i128.h (FLT_EVAL_METHOD, DECIMAL_DIG): Define.
        * config/float-i32.h: Likewise.
        * config/float-i64.h: Likewise.
        * config/float-sh.h: Likewise.
        * config/float-sparc.h: Likewise.

From-SVN: r39383

gcc/ChangeLog
gcc/config/float-i128.h
gcc/config/float-i32.h
gcc/config/float-i64.h
gcc/config/float-m68k.h
gcc/config/float-sh.h
gcc/config/float-sparc.h

index 8da6c4e0de3165861bb628f1f1be7ea756e96128..d0c5aaac1acfaf99bb63836e29d21de21522966b 100644 (file)
@@ -1,3 +1,11 @@
+2001-01-31  Richard Henderson  <rth@redhat.com>
+
+       * config/float-i128.h (FLT_EVAL_METHOD, DECIMAL_DIG): Define.
+       * config/float-i32.h: Likewise.
+       * config/float-i64.h: Likewise.
+       * config/float-sh.h: Likewise.
+       * config/float-sparc.h: Likewise.
+
 2001-01-31  DJ Delorie  <dj@redhat.com>
 
        * expmed.c (extract_bit_field): allow non-integral modes if we
index 6a9dd48b1a30719764e06eab23624dc5be546923..f7ce3b34894164a6865bef513fcbc6b4221aeff2 100644 (file)
 #undef LDBL_MAX_10_EXP
 #define LDBL_MAX_10_EXP 4932
 
+#if __STDC_VERSION__ >= 199901L
+   /* The floating-point expression evaluation method.
+        -1  indeterminate
+         0  evaluate all operations and constants just to the range and
+            precision of the type
+         1  evaluate operations and constants of type float and double
+            to the range and precision of the double type, evaluate
+            long double operations and constants to the range and
+            precision of the long double type
+         2  evaluate all operations and constants to the range and
+            precision of the long double type
+   */
+# undef FLT_EVAL_METHOD
+# define FLT_EVAL_METHOD       0
+
+   /* Number of decimal digits to enable rounding to the given number of
+      decimal digits without loss of precision.
+         if FLT_RADIX == 10^n:  #mantissa * log10 (FLT_RADIX)
+         else                :  ceil (1 + #mantissa * log10 (FLT_RADIX))
+      where #mantissa is the number of bits in the mantissa of the widest
+      supported floating-point type.
+   */
+# undef DECIMAL_DIG
+# define DECIMAL_DIG   36
+
+#endif /* C99 */
+
 #endif /*  _FLOAT_H_ */
index c834926b0857ca686a9c3746ef35aaa7f0936c2c..27e3394a5fb5276c8b00e4c71a3d74d02b09883a 100644 (file)
 #undef LDBL_MAX_10_EXP
 #define LDBL_MAX_10_EXP 38
 
+#if __STDC_VERSION__ >= 199901L
+   /* The floating-point expression evaluation method.
+        -1  indeterminate
+         0  evaluate all operations and constants just to the range and
+            precision of the type
+         1  evaluate operations and constants of type float and double
+            to the range and precision of the double type, evaluate
+            long double operations and constants to the range and
+            precision of the long double type
+         2  evaluate all operations and constants to the range and
+            precision of the long double type
+   */
+# undef FLT_EVAL_METHOD
+# define FLT_EVAL_METHOD       0
+
+   /* Number of decimal digits to enable rounding to the given number of
+      decimal digits without loss of precision.
+         if FLT_RADIX == 10^n:  #mantissa * log10 (FLT_RADIX)
+         else                :  ceil (1 + #mantissa * log10 (FLT_RADIX))
+      where #mantissa is the number of bits in the mantissa of the widest
+      supported floating-point type.
+   */
+# undef DECIMAL_DIG
+# define DECIMAL_DIG   9
+
+#endif /* C99 */
+
 #endif /*  _FLOAT_H_ */
index 7dbe4e92a10eb234ccef843e4064d007492ce6cc..b045fb35eef042e88a4db970be52fad5259a1f0b 100644 (file)
 #undef LDBL_MAX_10_EXP
 #define LDBL_MAX_10_EXP 308
 
+#if __STDC_VERSION__ >= 199901L
+   /* The floating-point expression evaluation method.
+        -1  indeterminate
+         0  evaluate all operations and constants just to the range and
+            precision of the type
+         1  evaluate operations and constants of type float and double
+            to the range and precision of the double type, evaluate
+            long double operations and constants to the range and
+            precision of the long double type
+         2  evaluate all operations and constants to the range and
+            precision of the long double type
+   */
+# undef FLT_EVAL_METHOD
+# define FLT_EVAL_METHOD       0
+
+   /* Number of decimal digits to enable rounding to the given number of
+      decimal digits without loss of precision.
+         if FLT_RADIX == 10^n:  #mantissa * log10 (FLT_RADIX)
+         else                :  ceil (1 + #mantissa * log10 (FLT_RADIX))
+      where #mantissa is the number of bits in the mantissa of the widest
+      supported floating-point type.
+   */
+# undef DECIMAL_DIG
+# define DECIMAL_DIG   17
+
+#endif /* C99 */
+
 #endif /*  _FLOAT_H_ */
index b36d447cb87782e1ba583fc07ecbd589a5a7357f..8294b66f3d054ca4f7c133f209ee9464f387f6ba 100644 (file)
@@ -94,4 +94,7 @@
 #undef LDBL_MAX_10_EXP
 #define LDBL_MAX_10_EXP 4932
 
+/* ??? FLT_EVAL_METHOD depends on TARGET_68040_ONLY.  We do not currently
+   have a preprocessor token that we can use to tell that this is on.  */
+
 #endif /*  _FLOAT_H_ */
index 446692428c2e42d521d4e1e1bff67e101846da4c..7c074ac53cd0a8e4c5c70ea0785ce18bbb1b2e52 100644 (file)
 #undef LDBL_MAX_10_EXP
 #define LDBL_MAX_10_EXP 308
 
+#if __STDC_VERSION__ >= 199901L
+   /* The floating-point expression evaluation method.
+        -1  indeterminate
+         0  evaluate all operations and constants just to the range and
+            precision of the type
+         1  evaluate operations and constants of type float and double
+            to the range and precision of the double type, evaluate
+            long double operations and constants to the range and
+            precision of the long double type
+         2  evaluate all operations and constants to the range and
+            precision of the long double type
+   */
+# undef FLT_EVAL_METHOD
+# define FLT_EVAL_METHOD       0
+
+   /* Number of decimal digits to enable rounding to the given number of
+      decimal digits without loss of precision.
+         if FLT_RADIX == 10^n:  #mantissa * log10 (FLT_RADIX)
+         else                :  ceil (1 + #mantissa * log10 (FLT_RADIX))
+      where #mantissa is the number of bits in the mantissa of the widest
+      supported floating-point type.
+   */
+# undef DECIMAL_DIG
+# define DECIMAL_DIG   17
+
+#endif /* C99 */
+
 #endif /*  _FLOAT_H_ */
index 0138ecf884ae6f152ec91da31d46558f5409a71f..307528e07b3441ea637b6a972a86b16781655218 100644 (file)
 
 #endif /* sparc32 */
 
+#if __STDC_VERSION__ >= 199901L
+   /* The floating-point expression evaluation method.
+        -1  indeterminate
+         0  evaluate all operations and constants just to the range and
+            precision of the type
+         1  evaluate operations and constants of type float and double
+            to the range and precision of the double type, evaluate
+            long double operations and constants to the range and
+            precision of the long double type
+         2  evaluate all operations and constants to the range and
+            precision of the long double type
+   */
+# undef FLT_EVAL_METHOD
+# define FLT_EVAL_METHOD       0
+
+   /* Number of decimal digits to enable rounding to the given number of
+      decimal digits without loss of precision.
+         if FLT_RADIX == 10^n:  #mantissa * log10 (FLT_RADIX)
+         else                :  ceil (1 + #mantissa * log10 (FLT_RADIX))
+      where #mantissa is the number of bits in the mantissa of the widest
+      supported floating-point type.
+   */
+# undef DECIMAL_DIG
+# if LDBL_MANT_DIG == 53
+#  define DECIMAL_DIG  17
+# else
+#  define DECIMAL_DIG  36
+# endif
+
+#endif /* C99 */
+
 #endif /*  _FLOAT_H_ */