1  /* { dg-do run } */
       2  
       3  #include "tree-vect.h"
       4  
       5  long a[1024];
       6  long b[1024];
       7  
       8  void __attribute__((noipa)) foo ()
       9  {
      10    for (int i = 0; i < 256; ++i)
      11      {
      12        a[3*i] = b[1023 - 3*i - 2];
      13        a[3*i + 1] = b[1023 - 3*i - 1];
      14        a[3*i + 2] = b[1023 - 3*i];
      15      }
      16  }
      17  
      18  int main()
      19  {
      20    for (int i = 0; i < 1024; ++i)
      21      b[i] = i;
      22    foo ();
      23    for (int i = 0; i < 256; ++i)
      24      if (a[3*i] != 1023 - 3*i - 2
      25  	|| a[3*i+1] != 1023 - 3*i - 1
      26  	|| a[3*i+2] != 1023 - 3*i)
      27        __builtin_abort ();
      28    return 0;
      29  }