aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlga Golovanevsky <olga@gcc.gnu.org>2007-04-24 15:54:18 +0000
committerOlga Golovanevsky <olga@gcc.gnu.org>2007-04-24 15:54:18 +0000
commit8173746830c9a85136a896bdb9eb3075a34e68e5 (patch)
tree2f22240d5b014bc7297afc02b7d4fb4dc1a9512a
parent9905fb5e5fede0e4d865b3ba42b9ecb35e40c0c4 (diff)
downloadgcc-8173746830c9a85136a896bdb9eb3075a34e68e5.zip
gcc-8173746830c9a85136a896bdb9eb3075a34e68e5.tar.gz
gcc-8173746830c9a85136a896bdb9eb3075a34e68e5.tar.bz2
fix for PR31617
From-SVN: r124109
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/fold-const.c1
-rw-r--r--gcc/testsuite/ChangeLog5
3 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7cc6435..9ab42d9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2007-04-24 Richard Guenther <rguenther@suse.de>
+ Olga Golovanevsky <olga@il.ibm.com>
+
+ * fold-const.c (multiple_of_p): Check for bottom
+ to be zero.
+
2007-04-24 Richard Henderson <rth@redhat.com>
* libgcc2.h (AVOID_FP_TYPE_CONVERSION): Rename from
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 4e8f34f..7a8afcd 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -13216,6 +13216,7 @@ multiple_of_p (tree type, tree top, tree bottom)
case INTEGER_CST:
if (TREE_CODE (bottom) != INTEGER_CST
+ || integer_zerop (bottom)
|| (TYPE_UNSIGNED (type)
&& (tree_int_cst_sgn (top) < 0
|| tree_int_cst_sgn (bottom) < 0)))
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 0e11c69..7980e53 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2007-04-24 Andrew Pinski <andrew_pinski@playstation.sony.com>
+ Olga Golovanevsky <olga@il.ibm.com>
+
+ * g++.dg/other/str_empty.C: New test.
+
2007-04-24 Richard Henderson <rth@redhat.com>
* gcc.dg/vect/vect.exp: Don't run tests on Alpha.