blob: 4271d66faefa65856dba1197964c61a597f3de7b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
/* { dg-do compile } */
/* { dg-options "-fopenmp -fdump-tree-gimple" } */
/* Test that we adjust pointer offsets for sink variables
correctly. */
typedef struct {
char stuff[400];
} foo;
foo *end, *begin, *p;
template<int N>
void
funk ()
{
int i,j;
#pragma omp parallel for ordered(1)
for (p=end; p > begin; p--)
{
#pragma omp ordered depend(sink:p+1)
void bar ();
bar();
#pragma omp ordered depend(source)
}
}
void foobar()
{
funk<3>();
}
/* { dg-final { scan-tree-dump-times "depend\\(sink:p\\+400\\)" 1 "gimple" } } */
|