]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
vrp92.c: New testcase.
authorRichard Biener <rguenther@suse.de>
Tue, 27 May 2014 15:00:29 +0000 (15:00 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 27 May 2014 15:00:29 +0000 (15:00 +0000)
2014-05-27  Richard Biener  <rguenther@suse.de>

* gcc.dg/tree-ssa/vrp92.c: New testcase.

From-SVN: r210974

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/vrp92.c [new file with mode: 0644]

index ccc321f971a7733e2c77e62015663a816cb84298..3a185ca136a3aa6703922fdd84da968369ec7079 100644 (file)
@@ -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 (file)
index 0000000..a84ba8e
--- /dev/null
@@ -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" } } */