real.c (real_to_integer2): Force overflow result only for unsigned overflow.
authorRichard Henderson <rth@redhat.com>
Tue, 25 Feb 2003 23:00:54 +0000 (15:00 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Tue, 25 Feb 2003 23:00:54 +0000 (15:00 -0800)
        * real.c (real_to_integer2): Force overflow result only for
        unsigned overflow.

From-SVN: r63421

gcc/ChangeLog
gcc/real.c

index 43c24171fe9749f43838469d8f1d31be935b9458..eb767ceeb57e2bd1d5a7bf596e1c417bdfe2f213 100644 (file)
@@ -1,3 +1,8 @@
+2003-02-25  Richard Henderson  <rth@redhat.com>
+
+       * real.c (real_to_integer2): Force overflow result only for
+       unsigned overflow.
+
 2003-02-25  Kazu Hirata  <kazu@cs.umass.edu>
 
        * gcse.c (cprop_jump): Revert the 2003-02-23 change.
index 369d32401fb7cc50e9df8725dfee692f726edb45..d04afabfe1dd63443dee0b8a5e989dc5c92356c1 100644 (file)
@@ -1371,7 +1371,7 @@ real_to_integer2 (plow, phigh, r)
       exp = r->exp;
       if (exp <= 0)
        goto underflow;
-      if (exp >= 2*HOST_BITS_PER_WIDE_INT)
+      if (exp > 2*HOST_BITS_PER_WIDE_INT)
        goto overflow;
 
       rshift_significand (&t, r, 2*HOST_BITS_PER_WIDE_INT - exp);