3 /* Test multiple struct dereferences on one directive, and slices starting at
12 int main(int argc
, char* argv
[])
15 mystruct
*m
= (mystruct
*) malloc (sizeof (*m
));
18 m
->a
= (int *) malloc (N
* sizeof (int));
19 m
->b
= (int *) malloc (N
* sizeof (int));
20 m
->c
= (int *) malloc (N
* sizeof (int));
22 for (i
= 0; i
< N
; i
++)
29 #pragma acc enter data copyin(m[0:1])
31 for (int i
= 0; i
< 99; i
++)
34 #pragma acc parallel loop copy(m->a[0:N])
35 for (j
= 0; j
< N
; j
++)
37 #pragma acc parallel loop copy(m->b[0:N], m->c[5:N-10])
38 for (j
= 0; j
< N
; j
++)
41 if (j
> 5 && j
< N
- 5)
46 #pragma acc exit data copyout(m[0:1])
48 for (i
= 0; i
< N
; i
++)