* fold-const.c (range_predecessor): Use operand_equal_p
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 23 Apr 2006 09:06:32 +0000 (09:06 +0000)
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 23 Apr 2006 09:06:32 +0000 (09:06 +0000)
as the predicate for equality.
(range_successor): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113192 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/fold-const.c

index 0b2febd..76914ef 100644 (file)
@@ -1,3 +1,9 @@
+2006-04-23  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * fold-const.c (range_predecessor): Use operand_equal_p
+       as the predicate for equality.
+       (range_successor): Likewise.
+
 2006-04-22  Kazu Hirata  <kazu@codesourcery.com>
 
        Revert:
index 39bd366..5671682 100644 (file)
@@ -4158,7 +4158,8 @@ range_predecessor (tree val)
 {
   tree type = TREE_TYPE (val);
 
-  if (INTEGRAL_TYPE_P (type) && val == TYPE_MIN_VALUE (type))
+  if (INTEGRAL_TYPE_P (type)
+      && operand_equal_p (val, TYPE_MIN_VALUE (type), 0))
     return 0;
   else
     return range_binop (MINUS_EXPR, NULL_TREE, val, 0, integer_one_node, 0);
@@ -4171,7 +4172,8 @@ range_successor (tree val)
 {
   tree type = TREE_TYPE (val);
 
-  if (INTEGRAL_TYPE_P (type) && val == TYPE_MAX_VALUE (type))
+  if (INTEGRAL_TYPE_P (type)
+      && operand_equal_p (val, TYPE_MAX_VALUE (type), 0))
     return 0;
   else
     return range_binop (PLUS_EXPR, NULL_TREE, val, 0, integer_one_node, 0);