(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
riscv/
shift-shift-5.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-march=rv64gc -mabi=lp64d" } */
       3  /* { dg-skip-if "" { *-*-* } { "-O0" "-Og" } } */
       4  
       5  /* Fails if lshrsi3_zero_extend_3+1 uses a temp reg which has no REG_DEST
       6     note.  */
       7  unsigned long
       8  sub (long l)
       9  {
      10    union u {
      11  #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
      12      struct s { int a : 19; unsigned int b : 13; int x; } s;
      13  #else
      14      struct s { int x; unsigned int b : 13; int a : 19; } s;
      15  #endif
      16      long l;
      17    } u;
      18    u.l = l;
      19    return u.s.b;
      20  }
      21  /* { dg-final { scan-assembler "srliw" } } */