]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE special-casing.
authorRichard Guenther <rguenther@suse.de>
Wed, 31 Aug 2011 11:39:20 +0000 (11:39 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Wed, 31 Aug 2011 11:39:20 +0000 (11:39 +0000)
2011-08-31  Richard Guenther  <rguenther@suse.de>

* fold-const.c (extract_muldiv_1): Remove bogus TYPE_IS_SIZETYPE
special-casing.

From-SVN: r178377

gcc/ChangeLog
gcc/fold-const.c

index ef0d1945191d480683e1ec939c72d72da95f7681..084ddd244b4e813dbe1dd9e9d54f750a22eecc9d 100644 (file)
@@ -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.
index 5807a5533ba208ae88b5282544068d3b0ed419d6..0f4ca5e6222b6d367ea2ea13e421d4f492af013d 100644 (file)
@@ -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