1/* { dg-options { -nostartfiles below100.o -Tbelow100.ld -O2 } } */ 2/* { dg-final { scan-assembler "clr1 B100,#7" } } */ 3 4typedef struct 5{ 6 unsigned short b0:1; 7 unsigned short b1:1; 8 unsigned short b2:1; 9 unsigned short b3:1; 10 unsigned short b4:1; 11 unsigned short b5:1; 12 unsigned short b6:1; 13 unsigned short b7:1; 14 unsigned short b8:1; 15 unsigned short b9:1; 16 unsigned short b10:1; 17 unsigned short b11:1; 18 unsigned short b12:1; 19 unsigned short b13:1; 20 unsigned short b14:1; 21 unsigned short b15:1; 22} BitField; 23 24char acDummy[0xf0] __attribute__ ((__BELOW100__)); 25BitField B100 __attribute__ ((__BELOW100__)) = 26{ 271, 1, 0, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1}; 28unsigned short *p = (unsigned short *) &B100; 29 30void 31Do (void) 32{ 33 B100.b7 = 0; 34} 35 36int 37main (void) 38{ 39 Do (); 40 return (*p == 0xed4b) ? 0 : 1; 41} 42