1 /* PR target/79363 */
2 /* Reported by John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> */
3 
4 /* { dg-do compile } */
5 /* { dg-options "-O2 -fPIC -mcpu=v8" } */
6 
7 struct d { long long h; };
8 
9 struct c { struct d *e; };
10 
11 int f, g;
12 
13 extern void bar (long long *);
14 extern int baz (long long *, int);
15 
foo(struct c * desc)16 void foo (struct c *desc)
17 {
18   int begin, end, j;
19   long long k, l, h;
20   for (;;) {
21     for (;;)
22       break;
23     for (;;) {
24       j++;
25       l = desc->e[j].h;
26       for (;;) {
27         bar(&l);
28         end = h = begin / 2;
29         if (baz(&h, g))
30           begin = f;
31         break;
32       }
33       if (end) {
34         __atomic_store_n(&k, end, 5);
35         break;
36       }
37     }
38   }
39 }
40