1 /* { dg-do compile } */ 2 3 #define N 64 4 signed short image[N][N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))); 5 signed short block[N][N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))); 6 signed short out[N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))); 7 8 /* Can't do outer-loop vectorization because of non-consecutive access. */ 9 10 void foo()11foo (){ 12 int i,j; 13 int diff; 14 15 for (i = 0; i < N; i++) { 16 diff = 0; 17 for (j = 0; j < N; j+=8) { 18 diff += (image[i][j] - block[i][j]); 19 } 20 out[i]=diff; 21 } 22 } 23 24 /* { dg-final { scan-tree-dump-times "OUTER LOOP VECTORIZED" 1 "vect" { xfail *-*-* } } } */ 25 /* { dg-final { scan-tree-dump-times "grouped access in outer loop" 1 "vect" } } */ 26