1 /* { dg-do compile } */
2 /* { dg-options "-O2 -mtune=generic" } */
3 
4 typedef struct
5 {
6   unsigned int c1:8;
7   unsigned int c2:8;
8   unsigned int c3:8;
9   unsigned int c4:8;
10 
11 } foo_t;
12 
13 int
14 #ifndef __x86_64__
15 __attribute__((regparm(3)))
16 #endif
foo(foo_t x)17 foo (foo_t x)
18 {
19    return x.c2 > 4;
20 }
21 
22 /* { dg-final { scan-assembler-times "cmp\[b\]?\[^\\n\]*%\[a-z0-9\]+h" 1 } } */
23 /* { dg-final { scan-assembler-not "cmp\[b\]?\[^\\n\]*%\[a-z0-9\]+l" } } */
24