re PR rtl-optimization/81595 (ICE: verify_flow_info failed (error: multiple hot/cold...
authorJakub Jelinek <jakub@redhat.com>
Fri, 8 Dec 2017 19:05:56 +0000 (20:05 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Fri, 8 Dec 2017 19:05:56 +0000 (20:05 +0100)
PR rtl-optimization/81595
* gcc.c-torture/compile/pr81595.c: New test.

From-SVN: r255516

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/pr81595.c [new file with mode: 0644]

index 396e26a61361ef7ee45c3b3421f0ffef19b7cd83..79f6d24b8c3b91a1a0a53f9b1dd738ac3f3ddf72 100644 (file)
@@ -1,3 +1,8 @@
+2017-12-08  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/81595
+       * gcc.c-torture/compile/pr81595.c: New test.
+
 2017-12-08  Michael Matz  <matz@suse.de>
 
        Fix PR tree-optimization/83323
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr81595.c b/gcc/testsuite/gcc.c-torture/compile/pr81595.c
new file mode 100644 (file)
index 0000000..2576d8b
--- /dev/null
@@ -0,0 +1,39 @@
+/* PR rtl-optimization/81595 */
+
+void
+foo (__INTPTR_TYPE__ *x, int *y, int *z, int u, int v)
+{
+  while (u != 0)
+    {
+      if (*x != 0)
+       {
+         int a = 1;
+ l1:
+         if (*y != 0)
+           {
+             while (a < 2)
+               {
+                 a = 0;
+                 x = (__INTPTR_TYPE__ *)&x;
+ l2:
+                 ++a;
+               }
+             while (*z != 0)
+               ;
+           }
+         a /= 0;
+       }
+      else
+       {
+         *z /= (*z != 0) ? 2 : 0;
+         while (v < 1)
+           {
+             *y = 0;
+             if (v != 0)
+               goto l1;
+             ++v;
+           }
+         goto l2;
+       }
+    }
+}