(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
aarch64/
pr100028.c
       1  /* PR target/100028 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-O2" } */
       4  
       5  #define W	3
       6  #define L	11
       7  
       8  int
       9  foo (int d, int s)
      10  {
      11    int wmask = (1 << W) - 1;
      12    return (d & ~wmask) | ((s >> L) & wmask);
      13  }
      14  
      15  long long int
      16  bar (long long int d, long long int s)
      17  {
      18    long long int wmask = (1LL << W) - 1;
      19    return (d & ~wmask) | ((s >> L) & wmask);
      20  }
      21  
      22  /* { dg-final { scan-assembler-times {\tbfxil\t} 2 } } */