1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
3 
foo(int s)4 int foo (int s)
5 {
6   for (;;)
7     {
8       int a[32];
9       int y, z;
10       __asm__ __volatile__ ("" : "=c" (y), "=D" (z)
11 			    : "a" (0), "0" (32), "1" (a) : "memory");
12       if (({ register char r;
13 	     __asm__ __volatile__ ("" : "=q" (r)
14 				   : "r" (s % 32), "m" (a[s / 32])
15 				   : "cc"); r; }))
16         continue;
17       else if (({ register char r;
18 		  __asm__ __volatile__ ("" : "=q" (r)
19 					: "r" (0), "m" (a[0])
20 					: "cc"); r; }))
21         continue;
22     }
23   return 0;
24 }
25