emit-rtl.c (gen_lowpart_common): Remove earlier change.
authorStephen L Moshier <moshier@world.std.com>
Wed, 25 Nov 1998 18:06:07 +0000 (11:06 -0700)
committerJeff Law <law@gcc.gnu.org>
Wed, 25 Nov 1998 18:06:07 +0000 (11:06 -0700)
        * emit-rtl.c (gen_lowpart_common): Remove earlier change.
        * real.c (make_nan): Make SIGN arg actually specify the sign bit.

From-SVN: r23874

gcc/ChangeLog
gcc/emit-rtl.c
gcc/real.c

index 803fb78e5797265d280ad821e5a295d34d09f2dd..22188d50034ae158abd3315d13425c135cc5edc6 100644 (file)
@@ -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
index 9a19de121da26a43498f7d4d66c3d3c9e98fe3c3..037269a61a5199c6d1ef83d12364d3d5b51f420b 100644 (file)
@@ -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
index 7fac64d19a63553c74c4f86b2bab099f05b416e0..d40a0f374d0e79f66b025e414622c4b25c5f6932 100644 (file)
@@ -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