1 /* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
2 /* { dg-require-effective-target powerpc_p8vector_ok } */
3 /* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power8" } } */
4 /* { dg-options "-mcpu=power8 -O1" } */
5 
6 typedef long a;
7 enum c { e, f, g, h, i, ab } j();
8 int l, n, o, p;
9 a q, r;
10 void *memcpy();
11 void b();
k(int * s)12 static int k(int *s) {
13   int m;
14   if (j(&m))
15     *s = m;
16   return !0;
17 }
d(char s)18 void d(char s) {
19   int af[4];
20   int ag;
21   enum c ah;
22   char ai[24 << 11];
23   unsigned aj;
24   if (!k(&aj))
25     goto ak;
26   for (;;) {
27     if (!k(&ag))
28       goto ak;
29     switch (ah) {
30     case e:
31       b("");
32       b("bad length %d for GUID in fileinfo v%u for \"%s\"");
33     case i:
34       b("bad length %d for TTH in fileinfo v%u for \"%s\"", aj);
35     case ab:
36       if (ag % 24)
37         b("for \"%s\"", s);
38     case f:
39       if (20 == ag)
40       case h:
41         if (20 == ag)
42           o = 0;
43       break;
44     case g:
45       memcpy(af, ai, sizeof af);
46       b();
47       if (p) {
48         a al, am;
49         r = al << 2 | am;
50         n = af[2];
51         al = n;
52         l = __builtin_bswap32(af[3]);
53         am = q = n | l;
54       }
55     default:
56       b("%s0 unhandled field ID %u 0", __func__);
57     }
58   }
59 ak:;
60 }
61