1 /* { dg-do compile } */ 2 /* { dg-require-effective-target arm_thumb1_ok } */ 3 /* { dg-options "-O1 -mthumb" } */ 4 5 struct foo 6 { 7 unsigned b31 : 1; 8 unsigned b30 : 1; 9 unsigned b29 : 1; 10 unsigned b28 : 1; 11 unsigned rest : 28; 12 }; 13 14 unsigned foo(a)15foo(a) 16 struct foo a; 17 { 18 return a.b30; 19 } 20 21 /* { dg-final { scan-assembler-times "lsl" 1 } } */ 22 /* { dg-final { scan-assembler-times "lsr" 1 } } */ 23