1  /* { dg-do run } */
       2  /* { dg-require-effective-target avx } */
       3  /* { dg-options "-O3 -mavx" } */
       4  
       5  #include "avx-check.h"
       6  
       7  #include "rotate-5.c"
       8  
       9  static void
      10  __attribute__((noinline))
      11  avx_test (void)
      12  {
      13    int i;
      14    for (i = 0; i < 1024; i++)
      15      a[i] = i * 1073741789U;
      16    foo ();
      17    for (i = 0; i < 1024; i++)
      18      {
      19        unsigned int x = i * 1073741789U;
      20        if (a[i] != ((x << 3) | (x >> ((-3) & 31))))
      21  	abort ();
      22      }
      23  }