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