1 /* { dg-do compile } */
2 /* { dg-require-effective-target arm_thumb2_ok } */
3 /* { dg-options "-O" } */
4 
foo(unsigned short x)5 unsigned short foo (unsigned short x)
6 {
7   unsigned char i = 0;
8   for (i = 0; i < 8; i++)
9     {
10       x >>= 1;
11       x &= 0x7fff;
12     }
13   return x;
14 }
15 
16 /* { dg-final { scan-assembler "ands" } } */
17 /* { dg-final { scan-assembler-not "uxtb" } } */
18 /* { dg-final { scan-assembler-not "cmp" } } */
19