Commit a46f03ea by Stephen L Moshier Committed by Jeff Law

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
parent c85c3232
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> Thu Nov 26 14:12:05 1998 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
* config/c4x/c4x.md (addqi3): Emit addqi3_noclobber pattern * config/c4x/c4x.md (addqi3): Emit addqi3_noclobber pattern
......
...@@ -781,9 +781,6 @@ gen_lowpart_common (mode, x) ...@@ -781,9 +781,6 @@ gen_lowpart_common (mode, x)
i = INTVAL (x); i = INTVAL (x);
r = REAL_VALUE_FROM_TARGET_SINGLE (i); 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); return CONST_DOUBLE_FROM_REAL_VALUE (r, mode);
} }
#else #else
...@@ -822,8 +819,6 @@ gen_lowpart_common (mode, x) ...@@ -822,8 +819,6 @@ gen_lowpart_common (mode, x)
i[0] = low, i[1] = high; i[0] = low, i[1] = high;
r = REAL_VALUE_FROM_TARGET_DOUBLE (i); r = REAL_VALUE_FROM_TARGET_DOUBLE (i);
if (REAL_VALUE_ISNAN (r))
return 0;
return CONST_DOUBLE_FROM_REAL_VALUE (r, mode); return CONST_DOUBLE_FROM_REAL_VALUE (r, mode);
} }
#else #else
......
...@@ -6205,11 +6205,11 @@ make_nan (nan, sign, mode) ...@@ -6205,11 +6205,11 @@ make_nan (nan, sign, mode)
abort (); abort ();
} }
if (REAL_WORDS_BIG_ENDIAN) if (REAL_WORDS_BIG_ENDIAN)
*nan++ = (sign << 15) | *p++; *nan++ = (sign << 15) | (*p++ & 0x7fff);
while (--n != 0) while (--n != 0)
*nan++ = *p++; *nan++ = *p++;
if (! REAL_WORDS_BIG_ENDIAN) if (! REAL_WORDS_BIG_ENDIAN)
*nan = (sign << 15) | *p; *nan = (sign << 15) | (*p & 0x7fff);
} }
/* This is the inverse of the function `etarsingle' invoked by /* This is the inverse of the function `etarsingle' invoked by
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment