Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/c-c++-common/gomp/schedule-modifiers-1.c @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children | 1830386684a0 |
comparison
equal
deleted
inserted
replaced
68:561a7518be6b | 111:04ced10e8804 |
---|---|
1 /* { dg-do compile } */ | |
2 /* { dg-options "-fopenmp" } */ | |
3 | |
4 void | |
5 foo (void) | |
6 { | |
7 int i; | |
8 #pragma omp for simd schedule (simd, simd: static, 5) | |
9 for (i = 0; i < 64; i++) | |
10 ; | |
11 #pragma omp for simd schedule (monotonic, simd: static) | |
12 for (i = 0; i < 64; i++) | |
13 ; | |
14 #pragma omp for simd schedule (simd , monotonic : static, 6) | |
15 for (i = 0; i < 64; i++) | |
16 ; | |
17 #pragma omp for schedule (monotonic, monotonic : static, 7) | |
18 for (i = 0; i < 64; i++) | |
19 ; | |
20 #pragma omp for schedule (nonmonotonic, nonmonotonic : dynamic) | |
21 for (i = 0; i < 64; i++) | |
22 ; | |
23 #pragma omp for simd schedule (nonmonotonic , simd : dynamic, 3) | |
24 for (i = 0; i < 64; i++) | |
25 ; | |
26 #pragma omp for simd schedule (nonmonotonic,simd:guided,4) | |
27 for (i = 0; i < 64; i++) | |
28 ; | |
29 #pragma omp for schedule (monotonic: static, 2) | |
30 for (i = 0; i < 64; i++) | |
31 ; | |
32 #pragma omp for schedule (monotonic : static) | |
33 for (i = 0; i < 64; i++) | |
34 ; | |
35 #pragma omp for schedule (monotonic : dynamic) | |
36 for (i = 0; i < 64; i++) | |
37 ; | |
38 #pragma omp for schedule (monotonic : dynamic, 3) | |
39 for (i = 0; i < 64; i++) | |
40 ; | |
41 #pragma omp for schedule (monotonic : guided) | |
42 for (i = 0; i < 64; i++) | |
43 ; | |
44 #pragma omp for schedule (monotonic : guided, 7) | |
45 for (i = 0; i < 64; i++) | |
46 ; | |
47 #pragma omp for schedule (monotonic : runtime) | |
48 for (i = 0; i < 64; i++) | |
49 ; | |
50 #pragma omp for schedule (monotonic : auto) | |
51 for (i = 0; i < 64; i++) | |
52 ; | |
53 #pragma omp for schedule (nonmonotonic : dynamic) | |
54 for (i = 0; i < 64; i++) | |
55 ; | |
56 #pragma omp for schedule (nonmonotonic : dynamic, 3) | |
57 for (i = 0; i < 64; i++) | |
58 ; | |
59 #pragma omp for schedule (nonmonotonic : guided) | |
60 for (i = 0; i < 64; i++) | |
61 ; | |
62 #pragma omp for schedule (nonmonotonic : guided, 7) | |
63 for (i = 0; i < 64; i++) | |
64 ; | |
65 } | |
66 | |
67 void | |
68 bar (void) | |
69 { | |
70 int i; | |
71 #pragma omp for schedule (nonmonotonic: static, 2) /* { dg-error ".nonmonotonic. modifier specified for .static. schedule kind" } */ | |
72 for (i = 0; i < 64; i++) | |
73 ; | |
74 #pragma omp for schedule (nonmonotonic : static) /* { dg-error ".nonmonotonic. modifier specified for .static. schedule kind" } */ | |
75 for (i = 0; i < 64; i++) | |
76 ; | |
77 #pragma omp for schedule (nonmonotonic : runtime) /* { dg-error ".nonmonotonic. modifier specified for .runtime. schedule kind" } */ | |
78 for (i = 0; i < 64; i++) | |
79 ; | |
80 #pragma omp for schedule (nonmonotonic : auto) /* { dg-error ".nonmonotonic. modifier specified for .auto. schedule kind" } */ | |
81 for (i = 0; i < 64; i++) | |
82 ; | |
83 #pragma omp for schedule (nonmonotonic, dynamic) ordered /* { dg-error ".nonmonotonic. schedule modifier specified together with .ordered. clause" } */ | |
84 for (i = 0; i < 64; i++) | |
85 #pragma omp ordered | |
86 ; | |
87 #pragma omp for ordered schedule(nonmonotonic, dynamic, 5) /* { dg-error ".nonmonotonic. schedule modifier specified together with .ordered. clause" } */ | |
88 for (i = 0; i < 64; i++) | |
89 #pragma omp ordered | |
90 ; | |
91 #pragma omp for schedule (nonmonotonic, guided) ordered(1) /* { dg-error ".nonmonotonic. schedule modifier specified together with .ordered. clause" } */ | |
92 for (i = 0; i < 64; i++) | |
93 { | |
94 #pragma omp ordered depend(sink: i - 1) | |
95 #pragma omp ordered depend(source) | |
96 } | |
97 #pragma omp for ordered(1) schedule(nonmonotonic, guided, 2) /* { dg-error ".nonmonotonic. schedule modifier specified together with .ordered. clause" } */ | |
98 for (i = 0; i < 64; i++) | |
99 { | |
100 #pragma omp ordered depend(source) | |
101 #pragma omp ordered depend(sink: i - 1) | |
102 } | |
103 #pragma omp for schedule (nonmonotonic , monotonic : dynamic) /* { dg-error "both .monotonic. and .nonmonotonic. modifiers specified" } */ | |
104 for (i = 0; i < 64; i++) | |
105 ; | |
106 #pragma omp for schedule (monotonic,nonmonotonic:dynamic) /* { dg-error "both .monotonic. and .nonmonotonic. modifiers specified" } */ | |
107 for (i = 0; i < 64; i++) | |
108 ; | |
109 } |