/* { dg-do compile { target { riscv64*-*-* } } } */
/* { dg-options "-march=rv64gc -mabi=lp64" } */
/* { dg-skip-if "" { *-*-* } { "-O0" } } */
int a, b, e;
struct c *d;
struct c
{
  int bins;
  int binmap[10];
}
f(void)
{
  for (;;)
    {
      e = (unsigned) a >> 3;
      b = (long) &d[e];
      if (b)
	d->binmap[0] = e;
    }
}
/* { dg-final { scan-assembler-times "sext.w" 0 } } */
