blob: 185aa62fa9a4e0ed3e98896f603f733ff984a98f [file] [log] [blame]
/* { dg-do assemble } */
/* { dg-options "-O2 -save-temps" } */
void
foo (unsigned short u)
{
volatile unsigned short u2 = u << 5;
}
void
foo2 (short s)
{
volatile unsigned short s2 = s << 5;
}
void
foo3 (unsigned short u)
{
volatile unsigned short u2 = u >> 5;
}
void
foo4 (signed short s)
{
volatile signed short s2 = s >> 5;
}
/* { dg-final { scan-assembler-times "(?n)shl\\.b16.*%r" 2 } } */
/* { dg-final { scan-assembler "(?n)shr\\.u16.*%r" } } */
/* { dg-final { scan-assembler "(?n)shr\\.s16.*%r" } } */