1 /* PR middle-end/57344 */ 2 3 struct __attribute__((packed)) S 4 { 5 int a : 27; 6 #if __SIZEOF_INT__ * __CHAR_BIT__ >= 32 7 int b : 22; 8 #else 9 int b : 13; 10 #endif 11 char c; 12 int : 0; 13 } s[2]; 14 int i; 15 16 __attribute__((noinline, noclone)) void foo(int x)17foo (int x) 18 { 19 if (x != -3161) 20 __builtin_abort (); 21 asm volatile ("" : : : "memory"); 22 } 23 24 int main()25main () 26 { 27 struct S t = { 0, -3161L }; 28 s[1] = t; 29 for (; i < 1; i++) 30 foo (s[1].b); 31 return 0; 32 } 33