re PR rtl-optimization/83852 (ICE in sel_redirect_edge_and_branch, at sel-sched-ir...
authorAndrey Belevantsev <abel@ispras.ru>
Fri, 13 Apr 2018 10:24:02 +0000 (13:24 +0300)
committerAndrey Belevantsev <abel@gcc.gnu.org>
Fri, 13 Apr 2018 10:24:02 +0000 (13:24 +0300)
        PR rtl-optimization/83852
        * gcc.dg/pr83852.c: New testcase.

From-SVN: r259373

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

index 7ab5274..29ac9f8 100644 (file)
@@ -1,3 +1,8 @@
+2018-04-13  Andrey Belevantsev  <abel@ispras.ru>
+
+       PR rtl-optimization/83852
+       * gcc.dg/pr83852.c: New testcase.
+
 2018-04-13  Andreas Krebbel  <krebbel@linux.ibm.com>
 
         PR testsuite/85326
diff --git a/gcc/testsuite/gcc.dg/pr83852.c b/gcc/testsuite/gcc.dg/pr83852.c
new file mode 100644 (file)
index 0000000..68ef78b
--- /dev/null
@@ -0,0 +1,33 @@
+/* { dg-do compile { target powerpc*-*-* ia64-*-* i?86-*-* x86_64-*-* } } */
+/* { dg-options "-std=gnu99 -O2 -fselective-scheduling -fno-if-conversion -fno-tree-dse -w" } */
+long long int uo;
+unsigned int vt;
+
+void
+r5 (long long int h8, long long int pu)
+{
+  short int wj;
+  long long int *mh = h8;
+
+  for (wj = 0; wj < 3; ++wj)
+    {
+      int oq;
+      long long int ns, xf;
+
+      h8 += 2;
+      oq = !!h8 && !!wj;
+      ++uo;
+      vt ^= oq + uo;
+      ns = !!uo && !!vt;
+      xf = (h8 != 0) ? mh : 1;
+      pu += ns < xf;
+    }
+
+  for (pu = 0; pu < 1; ++pu)
+    {
+      int *sc;
+
+      sc = (int *)&pu;
+      *sc = 0;
+    }
+}