diff options
author | Stephen L Moshier <moshier@world.std.com> | 1998-11-25 11:06:07 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1998-11-25 11:06:07 -0700 |
commit | a46f03ea151890ac0cfc96b843a857172fde23f8 (patch) | |
tree | d72c15b3df06205fd04c15aab9ac5157d1e6a8ca /gcc | |
parent | c85c32322e6be7fd3e82a46bba31268510304584 (diff) | |
download | gcc-a46f03ea151890ac0cfc96b843a857172fde23f8.zip gcc-a46f03ea151890ac0cfc96b843a857172fde23f8.tar.gz gcc-a46f03ea151890ac0cfc96b843a857172fde23f8.tar.bz2 |
emit-rtl.c (gen_lowpart_common): Remove earlier change.
* emit-rtl.c (gen_lowpart_common): Remove earlier change.
* real.c (make_nan): Make SIGN arg actually specify the sign bit.
From-SVN: r23874
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/emit-rtl.c | 5 | ||||
-rw-r--r-- | 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) <moshier@world.std.com> + + * 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 <m.hayes@elec.canterbury.ac.nz> * 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 @@ -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 |