xref: /illumos-gate/usr/src/tools/smatch/src/validation/linear/bitfield-init-mask.c (revision edd580643f2cf1434e252cd7779e83182ea84945)
1 struct bfu {
2 	unsigned int a:11;
3 	unsigned int f:9;
4 	unsigned int z:3;
5 };
6 
7 struct bfu bfu_init_00_11(int a)
8 {
9 	struct bfu bfu = { .a = a, };
10 	return bfu;
11 }
12 
13 struct bfu bfu_init_20_23(int a)
14 {
15 	struct bfu bfu = { .z = a, };
16 	return bfu;
17 }
18 
19 /*
20  * check-name: bitfield initializer mask
21  * check-command: test-linearize -fdump-ir=linearize -Wno-decl $file
22  * check-output-ignore
23  *
24  * check-output-contains: and\\..*fffff800\$
25  * check-output-contains: shl\\..* \\$20
26  * check-output-contains: and\\..*ff8fffff\$
27  */
28