aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2014-05-27 15:00:29 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2014-05-27 15:00:29 +0000
commit4dd3be8165d785478763d3e5409df874d2ac5da0 (patch)
tree63520babe1a70dc5916a85245578738d13bbf9e0
parent7ea7f668fc91fc3d08b389b1be38aa9b8cbca27c (diff)
downloadgcc-4dd3be8165d785478763d3e5409df874d2ac5da0.zip
gcc-4dd3be8165d785478763d3e5409df874d2ac5da0.tar.gz
gcc-4dd3be8165d785478763d3e5409df874d2ac5da0.tar.bz2
vrp92.c: New testcase.
2014-05-27 Richard Biener <rguenther@suse.de> * gcc.dg/tree-ssa/vrp92.c: New testcase. From-SVN: r210974
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/vrp92.c23
2 files changed, 27 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index ccc321f..3a185ca 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2014-05-27 Richard Biener <rguenther@suse.de>
+
+ * gcc.dg/tree-ssa/vrp92.c: New testcase.
+
2014-05-27 Marek Polacek <polacek@redhat.com>
PR testsuite/61319
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/vrp92.c b/gcc/testsuite/gcc.dg/tree-ssa/vrp92.c
new file mode 100644
index 0000000..a84ba8e
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/tree-ssa/vrp92.c
@@ -0,0 +1,23 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-vrp1-details" } */
+
+void bar (void);
+int foo (int i, int j)
+{
+ int res = 1;
+ if (i < j)
+ {
+ /* We should be able to simplify the following conditional
+ during propagation. */
+ if (i > j)
+ res = 0;
+ }
+ /* And compute res as having a value-range of [1,1]. */
+ if (res)
+ return i;
+ return j;
+}
+
+/* { dg-final { scan-tree-dump "res_.: \\\[1, 1\\\]" "vrp1" } } */
+/* { dg-final { scan-tree-dump-not "Threaded" "vrp1" } } */
+/* { dg-final { cleanup-tree-dump "vrp1" } } */