1 /* { dg-do compile } */ 2 /* { dg-options "-march=rv64gc -mabi=lp64d -O2" } */ 3 4 /* Fails if lshrsi3_zero_extend_3+1 uses a temp reg which has no REG_DEST 5 note. */ 6 unsigned long sub(long l)7sub (long l) 8 { 9 union u { 10 struct s { int a : 19; unsigned int b : 13; int x; } s; 11 long l; 12 } u; 13 u.l = l; 14 return u.s.b; 15 } 16 /* { dg-final { scan-assembler "srliw" } } */ 17