1 /* { dg-do compile } */
2 /* { dg-require-effective-target vect_int } */
3
4 typedef struct {
5 int iatom[3];
6 int blocknr;
7 } t_sortblock;
8
9 #define DIM 3
10
foo(int ncons,t_sortblock * sb,int * iatom)11 void foo (int ncons, t_sortblock *sb, int *iatom)
12 {
13 int i, m;
14
15 for(i=0; (i<ncons); i++,iatom+=3)
16 for(m=0; (m<DIM); m++)
17 iatom[m]=sb[i].iatom[m];
18 }
19
20 /* The testcase was originally added for correctness reasons but now we
21 can vectorize it correctly if the target supports the permutations
22 required. */
23
24 /* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 0 "vect" { target { ! vect_perm } } } } */
25