summaryrefslogtreecommitdiffstats
path: root/gcc/enquire.c
diff options
context:
space:
mode:
authorrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>1993-09-22 19:15:37 +0000
committerrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>1993-09-22 19:15:37 +0000
commit50a3c18634117dc4fa8eaca7d509ccca9a214e01 (patch)
treef43fb3dfa9076933fa143e0b67928034ef10b64b /gcc/enquire.c
parente04a978fc825fe9c79bf573d90780618d07297a5 (diff)
downloadppe42-gcc-50a3c18634117dc4fa8eaca7d509ccca9a214e01.tar.gz
ppe42-gcc-50a3c18634117dc4fa8eaca7d509ccca9a214e01.zip
(FPROP): Recognize 80387 or 68881 XFmode format.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@5410 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/enquire.c')
-rw-r--r--gcc/enquire.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/enquire.c b/gcc/enquire.c
index d9e16f16788..029fbd2ee91 100644
--- a/gcc/enquire.c
+++ b/gcc/enquire.c
@@ -29,6 +29,10 @@
Richard Stallman, May 93:
In F_check, check NO_LONG_DOUBLE_IO.
+ Changes by Stephen Moshier, installed Sep 93:
+ (FPROP): Recognize 80387 or 68881 XFmode format.
+
+
COMPILING
With luck and a following wind, just the following will work:
cc enquire.c -o enquire
@@ -2678,6 +2682,14 @@ int FPROP(bits_per_byte) int bits_per_byte; {
if (f_radix != 10) {
hidden=0;
mantbits=floor_log(2, (Long_double)f_radix)*f_mant_dig;
+ if (mantbits == 64
+ && iexp == 15
+ && f_max_exp+f_min_exp > 0 /* ??? f_min_exp may be wrong. */
+ && mantbits+iexp+17 == (int)sizeof(Number)*bits_per_byte) {
+ Vprintf("%sArithmetic probably doesn't use a hidden bit%s\n", co, oc);
+ Vprintf("%sIt's probably 80387 or 68881 extended real%s\n", co, oc);
+ goto is_extended;
+ }
if (mantbits+iexp == (int)sizeof(Number)*bits_per_byte) {
hidden=1;
Vprintf("%sArithmetic uses a hidden bit%s\n", co, oc);
@@ -2698,6 +2710,7 @@ int FPROP(bits_per_byte) int bits_per_byte; {
f_mant_dig==53 ? "double" :
f_mant_dig >53 ? "extended" :
"some", oc);
+is_extended:
if (f_rounds != 1 || normal) {
Vprintf("%s though ", co);
if (f_rounds != 1) {
OpenPOWER on IntegriCloud