Add a testcase for PR ipa/80565
authorH.J. Lu <hongjiu.lu@intel.com>
Thu, 29 Jun 2017 12:53:47 +0000 (12:53 +0000)
committerH.J. Lu <hjl@gcc.gnu.org>
Thu, 29 Jun 2017 12:53:47 +0000 (05:53 -0700)
The testcase in

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80565

is passing now.  Check in the testcase and resolve it as fixed.

PR ipa/80565
* gcc.dg/torture/pr80565.c: New file.

From-SVN: r249782

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/pr80565.c [new file with mode: 0644]

index c38422a7797cac3329f1e7410f62a7c7b041b24b..ad77af28b93705b74e5371defd6663fb416c030b 100644 (file)
@@ -1,3 +1,8 @@
+2017-06-29  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ipa/80565
+       * gcc.dg/torture/pr80565.c: New file.
+
 2017-06-29  Bin Cheng  <bin.cheng@arm.com>
 
        PR tree-optimization/81196
diff --git a/gcc/testsuite/gcc.dg/torture/pr80565.c b/gcc/testsuite/gcc.dg/torture/pr80565.c
new file mode 100644 (file)
index 0000000..6662065
--- /dev/null
@@ -0,0 +1,41 @@
+/* { dg-do compile } */
+
+int a, b, c, e, h, j;
+char d;
+short f, g;
+static short fn2(int p1) {
+  for (;;)
+    for (; g; g++)
+      if (p1)
+        break;
+}
+
+static short fn3(void);
+static char fn4(char p1) {
+  int i;
+  for (; d;)
+    f = 8;
+  for (; f; f = 0)
+    for (; i; i++) {
+      j = 0;
+      for (; j; j++)
+        ;
+    }
+}
+
+static short fn1(short p1) { fn2(b || fn3()); }
+
+short fn3(void) {
+  if (c) {
+    fn4(e);
+    h = 0;
+    for (;; h++)
+      ;
+  }
+}
+
+int main() {
+  for (; a;)
+    fn1(c);
+  return 0;
+}