1  /* Remove the redundant sign-extension after the sign-extraction.  */
       2  /* { dg-do compile } */
       3  /* { dg-options "-march=octeon -mgp64" } */
       4  /* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
       5  /* { dg-final { scan-assembler-times "\texts\t" 1 } } */
       6  /* { dg-final { scan-assembler-not "\td?(sll|sra)" } } */
       7  
       8  struct bar
       9  {
      10    long long a:18;
      11    long long b:24;
      12    long long c:22;
      13  };
      14  
      15  NOMIPS16 int
      16  f1 (struct bar *s)
      17  {
      18    return s->b;
      19  }