aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2019-10-17 12:38:38 +0000
committerAldy Hernandez <aldyh@gcc.gnu.org>2019-10-17 12:38:38 +0000
commitb223a28db4e098ef2005daaac6c669912f249d97 (patch)
treeef9ec95fcaa9b45c4efd421b76367237c4a84fa1 /gcc
parentf261d4808cc28a2dfd47fe06c97364c0869bb78f (diff)
downloadgcc-b223a28db4e098ef2005daaac6c669912f249d97.zip
gcc-b223a28db4e098ef2005daaac6c669912f249d97.tar.gz
gcc-b223a28db4e098ef2005daaac6c669912f249d97.tar.bz2
re PR tree-optimization/92131 (incorrect assumption that (ao >= 0) is always false)
PR tree-optimization/92131 * tree-vrp.c (value_range_base::dump): Display +INF for both pointers and integers when appropriate. From-SVN: r277107
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/evrp4.c2
-rw-r--r--gcc/tree-vrp.c4
4 files changed, 13 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9c0e754..3126adc 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2019-10-17 Aldy Hernandez <aldyh@redhat.com>
+
+ PR tree-optimization/92131
+ * tree-vrp.c (value_range_base::dump): Display +INF for both
+ pointers and integers when appropriate.
+
2019-10-17 Andre Vieira <andre.simoesdiasvieira@arm.com>
* tree-vect-loop.c (vect_analyze_loop_2): Use same condition to decide
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3949616..abd9dd1 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2019-10-17 Aldy Hernandez <aldyh@redhat.com>
+
+ * gcc.dg/tree-ssa/evrp4.c: Check for +INF instead of -1.
+
2019-10-17 Christophe Lyon <christophe.lyon@linaro.org>
* gcc.target/arm/vseleqdf.c: Add missing closing bracket.
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/evrp4.c b/gcc/testsuite/gcc.dg/tree-ssa/evrp4.c
index ba2f6b9..6710e6b 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/evrp4.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/evrp4.c
@@ -17,4 +17,4 @@ int bar (struct st *s)
foo (&s->a);
}
-/* { dg-final { scan-tree-dump "\\\[1B, -1B\\\]" "evrp" } } */
+/* { dg-final { scan-tree-dump "\\\[1B, \\+INF\\\]" "evrp" } } */
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
index 21910b3..8d4f16e 100644
--- a/gcc/tree-vrp.c
+++ b/gcc/tree-vrp.c
@@ -428,8 +428,8 @@ value_range_base::dump (FILE *file) const
fprintf (file, ", ");
- if (INTEGRAL_TYPE_P (ttype)
- && vrp_val_is_max (max ())
+ if (supports_type_p (ttype)
+ && vrp_val_is_max (max (), true)
&& TYPE_PRECISION (ttype) != 1)
fprintf (file, "+INF");
else