From 2e0aa8179f4c435211e1e5b3fadb090cf712a9b7 Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Wed, 15 Aug 2001 15:57:41 +0000 Subject: [PATCH] std_limits.h [...]: Define appropriate long double limits for m68k extended floating point. * include/bits/std_limits.h [__glibcpp_long_double_bits == 96]: Define appropriate long double limits for m68k extended floating point. (__glibcpp_f32_digits10): Corrected, off by one. (__glibcpp_f80_digits10): Likewise. (__glibcpp_f128_digits10): Likewise. * config/os/gnu-linux/bits/os_defines.h (__glibcpp_long_double_bits) [__mc68000__]: Define to 96. From-SVN: r44924 --- libstdc++-v3/ChangeLog | 11 +++++++ .../config/os/gnu-linux/bits/os_defines.h | 4 +++ libstdc++-v3/include/bits/std_limits.h | 29 +++++++++++++++++-- 3 files changed, 41 insertions(+), 3 deletions(-) diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 43743b8b8eb..cfb754f0212 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,14 @@ +2001-08-15 Andreas Schwab + + * include/bits/std_limits.h [__glibcpp_long_double_bits == 96]: + Define appropriate long double limits for m68k extended floating + point. + (__glibcpp_f32_digits10): Corrected, off by one. + (__glibcpp_f80_digits10): Likewise. + (__glibcpp_f128_digits10): Likewise. + * config/os/gnu-linux/bits/os_defines.h + (__glibcpp_long_double_bits) [__mc68000__]: Define to 96. + 2001-08-15 Gabriel Dos Reis * testsuite/18_support/numeric_limits.cc: Add more tests. diff --git a/libstdc++-v3/config/os/gnu-linux/bits/os_defines.h b/libstdc++-v3/config/os/gnu-linux/bits/os_defines.h index 63082ebeb9a..db67d9752d4 100644 --- a/libstdc++-v3/config/os/gnu-linux/bits/os_defines.h +++ b/libstdc++-v3/config/os/gnu-linux/bits/os_defines.h @@ -75,5 +75,9 @@ typedef __loff_t __off64_t; #define __glibcpp_long_double_bits 64 #endif +#if defined (__mc68000__) +#define __glibcpp_long_double_bits 96 +#endif + #endif diff --git a/libstdc++-v3/include/bits/std_limits.h b/libstdc++-v3/include/bits/std_limits.h index 2d0804d31f7..a1572df3e7d 100644 --- a/libstdc++-v3/include/bits/std_limits.h +++ b/libstdc++-v3/include/bits/std_limits.h @@ -175,7 +175,7 @@ #define __glibcpp_f32_min 1.17549435e-38F #define __glibcpp_f32_max 3.40282347e+38F #define __glibcpp_f32_digits 24 -#define __glibcpp_f32_digits10 7 +#define __glibcpp_f32_digits10 6 #define __glibcpp_f32_radix 2 #define __glibcpp_f32_epsilon 1.19209290e-07F #define __glibcpp_f32_round_error 1.0F @@ -197,7 +197,7 @@ #define __glibcpp_f80_min 3.36210314311209350626e-4932L #define __glibcpp_f80_max 1.18973149535723176502e+4932L #define __glibcpp_f80_digits 64 -#define __glibcpp_f80_digits10 19 +#define __glibcpp_f80_digits10 18 #define __glibcpp_f80_radix 2 #define __glibcpp_f80_epsilon 1.08420217248550443401e-19L #define __glibcpp_f80_round_error 1.0L @@ -205,10 +205,21 @@ #define __glibcpp_f80_min_exponent10 -4931 #define __glibcpp_f80_max_exponent 16384 #define __glibcpp_f80_max_exponent10 4932 +#define __glibcpp_f96_min 1.68105157155604675313e-4932L +#define __glibcpp_f96_max 1.18973149535723176502e+4932L +#define __glibcpp_f96_digits 64 +#define __glibcpp_f96_digits10 18 +#define __glibcpp_f96_radix 2 +#define __glibcpp_f96_epsilon 1.08420217248550443401e-19L +#define __glibcpp_f96_round_error 1.0L +#define __glibcpp_f96_min_exponent -16382 +#define __glibcpp_f96_min_exponent10 -4931 +#define __glibcpp_f96_max_exponent 16384 +#define __glibcpp_f96_max_exponent10 4932 #define __glibcpp_f128_min 3.362103143112093506262677817321752603E-4932L #define __glibcpp_f128_max 1.189731495357231765085759326628007016E+4932L #define __glibcpp_f128_digits 113 -#define __glibcpp_f128_digits10 34 +#define __glibcpp_f128_digits10 33 #define __glibcpp_f128_radix 2 #define __glibcpp_f128_epsilon 1.925929944387235853055977942584927319E-34L #define __glibcpp_f128_round_error 1.0L @@ -766,6 +777,18 @@ #define __glibcpp_long_double_min_exponent10 __glibcpp_f80_min_exponent10 #define __glibcpp_long_double_max_exponent __glibcpp_f80_max_exponent #define __glibcpp_long_double_max_exponent10 __glibcpp_f80_max_exponent10 +#elif __glibcpp_long_double_bits == 96 +#define __glibcpp_long_double_min __glibcpp_f96_min +#define __glibcpp_long_double_max __glibcpp_f96_max +#define __glibcpp_long_double_digits __glibcpp_f96_digits +#define __glibcpp_long_double_digits10 __glibcpp_f96_digits10 +#define __glibcpp_long_double_radix __glibcpp_f96_radix +#define __glibcpp_long_double_epsilon __glibcpp_f96_epsilon +#define __glibcpp_long_double_round_error __glibcpp_f96_round_error +#define __glibcpp_long_double_min_exponent __glibcpp_f96_min_exponent +#define __glibcpp_long_double_min_exponent10 __glibcpp_f96_min_exponent10 +#define __glibcpp_long_double_max_exponent __glibcpp_f96_max_exponent +#define __glibcpp_long_double_max_exponent10 __glibcpp_f96_max_exponent10 #elif __glibcpp_long_double_bits == 128 #define __glibcpp_long_double_min __glibcpp_f128_min #define __glibcpp_long_double_max __glibcpp_f128_max -- 2.30.2