1 /* PR rtl-optimization/89195 */
2 /* { dg-require-effective-target int32plus } */
3 
4 struct S { unsigned i : 24; };
5 
6 volatile unsigned char x;
7 
8 __attribute__((noipa)) int
foo(struct S d)9 foo (struct S d)
10 {
11   return d.i & x;
12 }
13 
14 int
main()15 main ()
16 {
17   struct S d = { 0x123456 };
18   x = 0x75;
19   if (foo (d) != (0x56 & 0x75))
20     __builtin_abort ();
21   return 0;
22 }
23