Add single-lane SLP support to .GOMP_SIMD_LANE vectorization
[official-gcc.git] / gcc / testsuite / g++.dg / ipa / ipa-sra-1.C
blobef7d704b3f5d56a5854bf17adee4406b84f78d3b
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fipa-sra"  } */
4 void fn1(int *, int *, double *, int *, double *);
5 int a, c, d, e, f, g, k;
6 double *b;
7 double h, i;
8 void fn2(int *p1, int *p2, double *p3) {
9   int l = 0, j, q, r;
10   double m, n, o, p, s, t, u;
11   --p3;
12   for (; a;) {
13     if (c) {
14       ++*p2;
15       goto L170;
16     }
17     m = n = b[c];
18     p = t = m;
19     for (; j; ++j) {
20       u = 1.;
21       if (k) {
22         s = o;
23         u = -1.;
24       }
25     }
26     i = u * p;
27   L60:
28     p3[1] = s;
29     for (; d;)
30       goto L60;
31     fn1(&f, &g, &h, &l, &p3[1]);
32     o = p3[1];
33   L100:
34     o *= i;
35     if (e)
36       goto L100;
37   L170:;
38   }
39   if (*p1)
40     for (;;) {
41       if (r)
42         q = *p2;
43       d = q - j;
44       r = j;
45     }