aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/c-c++-common/gomp/unroll-non-rect-1.c
blob: fa3926176cb75eebe44ed6d087c90d9d92036745 (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
extern void dummy (int);

void
test1 (void)
{
  #pragma omp target parallel for collapse(3)
  for (int i = -300; i != 100; ++i)
    for (int j = i; j != i * 2; ++j)
      #pragma omp unroll partial
      for (int k = 2; k != 100; ++k)
	dummy (i);

  #pragma omp unroll full
  for (int i = -300; i != 100; ++i)
    for (int j = i; j != i * 2; ++j)
      for (int k = 2; k != 100; ++k)
	dummy (i);

  for (int i = -300; i != 100; ++i)
    #pragma omp unroll full
    for (int j = i; j != i + 10; ++j)
      for (int k = 2; k != 100; ++k)
	dummy (i);

  for (int i = -300; i != 100; ++i)
    #pragma omp unroll full
    for (int j = i; j != i + 10; ++j)
      for (int k = j; k != 100; ++k)
	dummy (i);
}