aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/fold-const.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 44b4ce4..69797f6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2014-12-12 Marek Polacek <polacek@redhat.com>
+
+ PR middle-end/64274
+ * fold-const.c (fold_binary_loc): Add ANY_INTEGRAL_TYPE_P check.
+
2014-12-12 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/64269
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index ec5ad98..d71fa94 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -10082,7 +10082,8 @@ fold_binary_loc (location_t loc,
/* Reassociate (plus (plus (mult) (foo)) (mult)) as
(plus (plus (mult) (mult)) (foo)) so that we can
take advantage of the factoring cases below. */
- if (TYPE_OVERFLOW_WRAPS (type)
+ if (ANY_INTEGRAL_TYPE_P (type)
+ && TYPE_OVERFLOW_WRAPS (type)
&& (((TREE_CODE (arg0) == PLUS_EXPR
|| TREE_CODE (arg0) == MINUS_EXPR)
&& TREE_CODE (arg1) == MULT_EXPR)