Update concepts branch to revision 131834
[official-gcc.git] / libgomp / testsuite / libgomp.c / autopar-1.c
blobe56549b484554ed52b52153bd83198b5652bd84a
1 /* { dg-do run } */
2 /* { dg-options "-ftree-parallelize-loops=4 -O2 -ffast-math" } */
4 extern void abort (void);
6 double d[1024], e[1024];
7 int f[1024], g[1024];
9 double __attribute__((noinline))
10 foo (void)
12 double s = 0.0;
13 int i;
14 for (i = 0; i < 1024; i++)
15 s += d[i] - e[i];
16 return s;
19 int __attribute__((noinline))
20 bar (void)
22 int s = 0, i;
23 for (i = 0; i < 1024; i++)
24 s += f[i] - g[i];
25 return s;
28 int
29 main (void)
31 int i;
32 for (i = 0; i < 1024; i++)
34 d[i] = i * 2;
35 e[i] = i;
36 f[i] = i * 2;
37 g[i] = i;
39 if (foo () != 1023 * 1024 / 2)
40 abort ();
41 if (bar () != 1023 * 1024 / 2)
42 abort ();
43 return 0;