blob: 0d4ab27ee3b4278375116b7736c0a8a9bbc247b9 [file] [log] [blame]
/* A testcase to check generation of the following SH2A specific
instructions.
BLD #imm3, Rn
BLD.B #imm3, @(disp12, Rn)
*/
/* { dg-do compile { target { sh2a } } } */
/* { dg-options "-Os -mbitops" } */
/* { dg-final { scan-assembler "bld"} } */
/* { dg-final { scan-assembler "bld.b"} } */
volatile struct
{
union
{
unsigned char BYTE;
struct
{
unsigned char BIT7:1;
unsigned char BIT6:1;
unsigned char BIT5:1;
unsigned char BIT4:1;
unsigned char BIT3:1;
unsigned char BIT2:1;
unsigned char BIT1:1;
unsigned char BIT0:1;
}
BIT;
}
ICR0;
}
USRSTR;
int
main ()
{
volatile unsigned char a, b, c;
USRSTR.ICR0.BIT.BIT6 &= a;
USRSTR.ICR0.BIT.BIT5 |= b;
USRSTR.ICR0.BIT.BIT4 ^= c;
return 0;
}