1  /* { dg-do compile } */
       2  /* { dg-options "-O2" } */
       3  
       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  }