aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.dg/pr54919.c
blob: 9f1affce234f2d601e5b3c23607e44cf01e53f19 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/* PR tree-optimization/54919 */
/* Testcase by Zdenek Sojka <zsojka@seznam.cz> */

/* { dg-do run } */
/* { dg-options "-O3 -ffast-math -funroll-loops -fvariable-expansion-in-unroller" } */

int a[10];
extern void abort(void) __attribute__((noreturn));

int __attribute__((__noinline__, __noclone__))
foo (void)
{
  double d;
  int i;
  for (i = 0, d = 0; i < 64; i++)
    d--;
  return (int) d;
}

int
main (void)
{
  if (foo () != -64)
    abort ();
  return 0;
}