From f8c195b7213477b72136bb46f4eceaaa9e5c5435 Mon Sep 17 00:00:00 2001 From: law Date: Wed, 25 Nov 1998 18:06:07 +0000 Subject: [PATCH] * emit-rtl.c (gen_lowpart_common): Remove earlier change. * real.c (make_nan): Make SIGN arg actually specify the sign bit. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23874 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/emit-rtl.c | 5 ----- gcc/real.c | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 803fb78..22188d5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Wed Nov 25 19:02:55 1998 (Stephen L Moshier) + + * emit-rtl.c (gen_lowpart_common): Remove earlier change. + * real.c (make_nan): Make SIGN arg actually specify the sign bit. + Thu Nov 26 14:12:05 1998 Michael Hayes * config/c4x/c4x.md (addqi3): Emit addqi3_noclobber pattern diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index 9a19de1..037269a 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -781,9 +781,6 @@ gen_lowpart_common (mode, x) i = INTVAL (x); r = REAL_VALUE_FROM_TARGET_SINGLE (i); - /* Avoid changing the bit pattern of a NaN. */ - if (REAL_VALUE_ISNAN (r)) - return 0; return CONST_DOUBLE_FROM_REAL_VALUE (r, mode); } #else @@ -822,8 +819,6 @@ gen_lowpart_common (mode, x) i[0] = low, i[1] = high; r = REAL_VALUE_FROM_TARGET_DOUBLE (i); - if (REAL_VALUE_ISNAN (r)) - return 0; return CONST_DOUBLE_FROM_REAL_VALUE (r, mode); } #else diff --git a/gcc/real.c b/gcc/real.c index 7fac64d..d40a0f3 100644 --- a/gcc/real.c +++ b/gcc/real.c @@ -6205,11 +6205,11 @@ make_nan (nan, sign, mode) abort (); } if (REAL_WORDS_BIG_ENDIAN) - *nan++ = (sign << 15) | *p++; + *nan++ = (sign << 15) | (*p++ & 0x7fff); while (--n != 0) *nan++ = *p++; if (! REAL_WORDS_BIG_ENDIAN) - *nan = (sign << 15) | *p; + *nan = (sign << 15) | (*p & 0x7fff); } /* This is the inverse of the function `etarsingle' invoked by -- 2.7.4