diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/pr121619.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/pr121619.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/pr121619.c b/gcc/testsuite/gcc.dg/pr121619.c new file mode 100644 index 0000000..a63896d --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr121619.c @@ -0,0 +1,33 @@ +/* { dg-do run } */ +/* { dg-options "-O3 -fno-gcse -fno-tree-ter -fno-guess-branch-probability -fno-forward-propagate" } */ + +int printf(const char *, ...); +long a, c, d; +char b; +int main() { +f : { + short g = 100; + int h = 1; + while (1) { + char i = 0; + if (a) + i = h = -b; + short j = g; + c = h ^ g; + g = ~(-h / c + 1); + if (b > 6) { + a = g && -1; + goto f; + } + if (j < 100) + printf("%ld\n", d); + if (g - 1) + break; + b = i; + } + int k = 2L % g; + if (k) + goto f; + } + return 0; +} |