re PR rtl-optimization/85770 (ICE: in lra_eliminate, at lra-eliminations.c:1439 with...
authorJeff Law <law@redhat.com>
Thu, 6 Dec 2018 00:40:08 +0000 (17:40 -0700)
committerJeff Law <law@gcc.gnu.org>
Thu, 6 Dec 2018 00:40:08 +0000 (17:40 -0700)
PR rtl-optimization/85770
* gcc.target/i386/pr85770.c: New test.

From-SVN: r266839

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr85770.c [new file with mode: 0644]

index 8bed4b455e0414ddaf930235330d238c7e395477..cc5d556eeca73745fdc5d195958718140c09d1a2 100644 (file)
@@ -1,3 +1,8 @@
+2018-12-05  Jeff Law  <law@redhat.com>
+
+       PR rtl-optimization/85770
+       * gcc.target/i386/pr85770.c: New test.
+
 2018-12-05  Martin Sebor  <msebor@redhat.com>
 
        PR c/87028
diff --git a/gcc/testsuite/gcc.target/i386/pr85770.c b/gcc/testsuite/gcc.target/i386/pr85770.c
new file mode 100644 (file)
index 0000000..dbb685f
--- /dev/null
@@ -0,0 +1,17 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -march=nano-1000 -fnon-call-exceptions -fno-tree-coalesce-vars" } */
+
+unsigned a, b, c, d, e, f, g, h, i;
+unsigned __int128 j;
+
+__int128 foo(char k, unsigned short l, unsigned m, unsigned n, __int128 o,
+             unsigned char p) {
+  long q;
+  p |= -k;
+  __builtin_add_overflow(p, m, &q);
+  m *= ~__builtin_clrsbll(0);
+  j = j >> (o & 127) | j << (o & 7);
+  return k + l + m + n + o + a + b + c + d + j + l + e + f + q + 4294967295 +
+         p + g + h + i;
+}
+