commit 40fc691eac0ea9414f7908826c91afc70ff78617 Author: law Date: Thu Dec 6 00:40:08 2018 +0000 PR rtl-optimization/85770 * gcc.target/i386/pr85770.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@266839 138bc75d-0d04-0410-961f-82ee72b054a4 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8bed4b455e0..cc5d556eeca 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2018-12-05 Jeff Law + + PR rtl-optimization/85770 + * gcc.target/i386/pr85770.c: New test. + 2018-12-05 Martin Sebor 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 index 00000000000..dbb685fd83f --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr85770.c @@ -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; +} +