tree-vrp.c (extract_range_from_unary_expr): Do not set the range for the result of...
authorEric Botcazou <ebotcazou@libertysurf.fr>
Thu, 8 Sep 2005 16:37:20 +0000 (18:37 +0200)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Thu, 8 Sep 2005 16:37:20 +0000 (16:37 +0000)
* tree-vrp.c (extract_range_from_unary_expr): Do not set the range for
the result of a conversion if the new min and max cannot be compared.

From-SVN: r104036

gcc/ChangeLog
gcc/tree-vrp.c

index aaaf308405889d0a9673575daa6a573582d1d1a4..2548e32d1926134734bba6da67a24b99d3fa427d 100644 (file)
@@ -1,3 +1,8 @@
+2005-09-08  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * tree-vrp.c (extract_range_from_unary_expr): Do not set the range for
+       the result of a conversion if the new min and max cannot be compared.
+
 2005-09-08  Andreas Krebbel  <krebbel1@de.ibm.com>
 
        * config/s390/s390.c (s390_sr_alias_set): Variable removed.
index ab6dc58e7ed3efee9fd3ff006c02b082f35bb881..a7be2d9cc2ec0487fec689185061b32049a9f1d5 100644 (file)
@@ -1341,7 +1341,7 @@ extract_range_from_unary_expr (value_range_t *vr, tree expr)
              && tree_int_cst_equal (new_min, vr0.min)
              && tree_int_cst_equal (new_max, vr0.max)
              && compare_values (new_min, new_max) <= 0
-             && compare_values (new_min, new_max) >= -2)
+             && compare_values (new_min, new_max) >= -1)
            {
              set_value_range (vr, VR_RANGE, new_min, new_max, vr->equiv);
              return;