aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/c-c++-common/goacc/tile.c
blob: 2a81427f053b47de0313798c5d7677e373040050 (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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
/* { dg-do compile } */

int
main ()
{
  int i, *a, b;

#pragma acc parallel loop tile (10)
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (*)
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (10, *)
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (10, *, i)
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile // { dg-error "expected '\\\('" }
  for (i = 0; i < 100; i++)
    ;  

#pragma acc parallel loop tile () // { dg-error "" }
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (,1) // { dg-error "" }
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (,,) // { dg-error "" }
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (1.1) // { dg-error "'tile' value must be integral" }
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (-3) // { dg-warning "'tile' value must be positive" }
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (10,-3) // { dg-warning "'tile' value must be positive" }
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (-100,10,5) // { dg-warning "'tile' value must be positive" }
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (1,2.0,true) // { dg-error "" }
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (*a, 1)
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (1, *a, b)
  for (i = 0; i < 100; i++)
    ;

#pragma acc parallel loop tile (b, 1, *a)
  for (i = 0; i < 100; i++)
    ;

  return 0;
}