aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Burnus <burnus@net-b.de>2007-05-27 10:09:51 +0200
committerTobias Burnus <burnus@gcc.gnu.org>2007-05-27 10:09:51 +0200
commitfe67caf6297762ca40524e1efe2783c62585d811 (patch)
tree9b53d39a447a3446de9ba64556a6cdc1f5aceda7
parent8ff43db0f9b217bcdfd0743187a8b6920e68a190 (diff)
downloadgcc-fe67caf6297762ca40524e1efe2783c62585d811.zip
gcc-fe67caf6297762ca40524e1efe2783c62585d811.tar.gz
gcc-fe67caf6297762ca40524e1efe2783c62585d811.tar.bz2
re PR middle-end/32083 (bug in transfer integer->real->integer)
2007-05-26 Tobias Burnus <burnus@net-b.de> PR fortran/32083 * real.c (mpfr_from_real): Fix sign of -Inf. 2007-05-26 Tobias Burnus <burnus@net-b.de> PR fortran/32083 * gfortran.dg/transfer_simplify_3.f90: New. From-SVN: r125108
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/real.c2
-rw-r--r--gcc/testsuite/ChangeLog5
3 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8edffc7..4df2a05 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2007-05-27 Tobias Burnus <burnus@net-b.de>
+
+ PR middle-end/32083
+ * real.c (mpfr_from_real): Fix sign of -Inf.
+
2007-05-27 H.J. Lu <hongjiu.lu@intel.com>
* tree-vect-transform.c (vectorizable_conversion): Initialize
diff --git a/gcc/real.c b/gcc/real.c
index f5d842e..867fdc7 100644
--- a/gcc/real.c
+++ b/gcc/real.c
@@ -4746,7 +4746,7 @@ mpfr_from_real (mpfr_ptr m, const REAL_VALUE_TYPE *r, mp_rnd_t rndmode)
/* Take care of Infinity and NaN. */
if (r->cl == rvc_inf)
{
- mpfr_set_inf (m, r->sign);
+ mpfr_set_inf (m, r->sign == 1 ? -1 : 1);
return;
}
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 1aa92c1..29b1eac 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2007-05-27 Tobias Burnus <burnus@net-b.de>
+
+ PR middle-end/32083
+ * gfortran.dg/transfer_simplify_3.f90: New.
+
2007-05-26 Uros Bizjak <ubizjak@gmail.com>
PR target/32065