aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2011-08-31 11:39:20 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2011-08-31 11:39:20 +0000
commit32950a5d853b26880702b3ae471492dce637da8f (patch)
treecc8220e03fb99a500d9b0356e307a565b565be8a /gcc
parentdbb45bf915039d806c7827d715b3153efc8d6105 (diff)
downloadgcc-32950a5d853b26880702b3ae471492dce637da8f.zip
gcc-32950a5d853b26880702b3ae471492dce637da8f.tar.gz
gcc-32950a5d853b26880702b3ae471492dce637da8f.tar.bz2
fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE special-casing.
2011-08-31 Richard Guenther <rguenther@suse.de> * fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE special-casing. From-SVN: r178377
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/fold-const.c8
2 files changed, 8 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ef0d194..084ddd2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2011-08-31 Richard Guenther <rguenther@suse.de>
+
+ * fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE
+ special-casing.
+
2011-08-31 Marc Glisse <marc.glisse@inria.fr>
* doc/generic.texi (Types for C++): CP_TYPE_QUALS -> cp_type_quals.
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 5807a55..0f4ca5e 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -5888,11 +5888,9 @@ extract_muldiv_1 (tree t, tree c, enum tree_code code, tree wide_type,
multiple of the other, in which case we replace this with either an
operation or CODE or TCODE.
- If we have an unsigned type that is not a sizetype, we cannot do
- this since it will change the result if the original computation
- overflowed. */
- if ((TYPE_OVERFLOW_UNDEFINED (ctype)
- || (TREE_CODE (ctype) == INTEGER_TYPE && TYPE_IS_SIZETYPE (ctype)))
+ If we have an unsigned type, we cannot do this since it will change
+ the result if the original computation overflowed. */
+ if (TYPE_OVERFLOW_UNDEFINED (ctype)
&& ((code == MULT_EXPR && tcode == EXACT_DIV_EXPR)
|| (tcode == MULT_EXPR
&& code != TRUNC_MOD_EXPR && code != CEIL_MOD_EXPR