/* { dg-options { -nostartfiles below100.o -Tbelow100.ld -O2 } } */ | |
/* { dg-final { scan-assembler "set1 32532,#7" } } */ | |
typedef struct | |
{ | |
unsigned char b0:1; | |
unsigned char b1:1; | |
unsigned char b2:1; | |
unsigned char b3:1; | |
unsigned char b4:1; | |
unsigned char b5:1; | |
unsigned char b6:1; | |
unsigned char b7:1; | |
} BitField; | |
#define SFR (*((volatile BitField*)0x7f14)) | |
unsigned char *p = (unsigned char *) 0x7f14; | |
void | |
Do (void) | |
{ | |
SFR.b7 = 1; | |
} | |
int | |
main (void) | |
{ | |
*p = 0x34; | |
Do (); | |
return (*p == 0xb4) ? 0 : 1; | |
} |