blob: a25b92977b0046d99cdffd32dc6e471ce842243e [file] [log] [blame]
/* PR target/100028 */
/* { dg-do compile } */
/* { dg-options "-O2" } */
#define W 3
#define L 11
int
foo (int d, int s)
{
int wmask = (1 << W) - 1;
return (d & ~wmask) | ((s >> L) & wmask);
}
long long int
bar (long long int d, long long int s)
{
long long int wmask = (1LL << W) - 1;
return (d & ~wmask) | ((s >> L) & wmask);
}
/* { dg-final { scan-assembler-times {\tbfxil\t} 2 } } */