1/* PR tree-optimization/29581 */ 2/* Origin: gcc.dg/vect/vect-85.c */ 3/* { dg-do run } */ 4/* { dg-options "-O2 -ftree-loop-linear" } */ 5 6extern void abort (void); 7 8#define N 16 9 10int main1 (int *a) 11{ 12 int i, j, k; 13 int b[N]; 14 15 for (i = 0; i < N; i++) 16 { 17 for (j = 0; j < N; j++) 18 { 19 k = i + N; 20 a[j] = k; 21 } 22 b[i] = k; 23 } 24 25 26 for (j = 0; j < N; j++) 27 if (a[j] != i + N - 1) 28 abort(); 29 30 for (j = 0; j < N; j++) 31 if (b[j] != j + N) 32 abort(); 33 34 return 0; 35} 36 37int main (void) 38{ 39 int a[N] __attribute__ ((__aligned__(16))); 40 41 main1 (a); 42 43 return 0; 44} 45