aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorschwab <schwab@138bc75d-0d04-0410-961f-82ee72b054a4>2001-08-15 15:57:41 +0000
committerschwab <schwab@138bc75d-0d04-0410-961f-82ee72b054a4>2001-08-15 15:57:41 +0000
commite342e8bca222c6cfdd6754d151afb7049360dd53 (patch)
tree34bf35318eed8253791f8813140f776d988e20f9 /libstdc++-v3
parentcdef69b5e0042dfdae3c3e9d457ab128e2d55aa9 (diff)
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44924 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog11
-rw-r--r--libstdc++-v3/config/os/gnu-linux/bits/os_defines.h4
-rw-r--r--libstdc++-v3/include/bits/std_limits.h29
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 <schwab@suse.de>
+
+ * 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 <gdr@merlin.codesourcery.com>
* 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