You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
//expected-error@+4 {{loop after '#pragma omp fuse' is not in canonical form}}
51
51
//expected-error@+3 {{increment clause of OpenMP for loop must perform simple addition or subtraction on loop variable 'i'}}
52
-
#pragma omp fuse
52
+
#pragma omp fuse
53
53
{
54
54
for(int i = 0; i < 10; i*=2) {
55
55
;
@@ -58,25 +58,25 @@ void func() {
58
58
}
59
59
60
60
//expected-error@+2 {{loop sequence after '#pragma omp fuse' must contain at least 1 canonical loop or loop-generating construct}}
61
-
#pragma omp fuse
61
+
#pragma omp fuse
62
62
{}
63
63
64
64
//expected-error@+3 {{statement after '#pragma omp fuse' must be a for loop}}
65
-
#pragma omp fuse
65
+
#pragma omp fuse
66
66
{
67
-
#pragma omp unroll full
67
+
#pragma omp unroll full
68
68
for(int i = 0; i < 10; ++i);
69
-
69
+
70
70
for(int j = 0; j < 10; ++j);
71
71
}
72
72
73
-
//expected-warning@+2 {{loop range in '#pragma omp fuse' contains only a single loop, resulting in redundant fusion}}
73
+
//expected-warning@+2 {{looprange clause selects a single loop, resulting in redundant fusion}}
74
74
#pragma omp fuse
75
75
{
76
76
for(int i = 0; i < 10; ++i);
77
77
}
78
78
79
-
//expected-warning@+1 {{loop range in '#pragma omp fuse' contains only a single loop, resulting in redundant fusion}}
79
+
//expected-warning@+1 {{looprange clause selects a single loop, resulting in redundant fusion}}
80
80
#pragma omp fuse looprange(1, 1)
81
81
{
82
82
for(int i = 0; i < 10; ++i);
@@ -99,23 +99,23 @@ void func() {
99
99
100
100
constint x = 1;
101
101
constexprint y = 4;
102
-
//expected-error@+1 {{loop range in '#pragma omp fuse' exceeds the number of available loops: range end '4' is greater than the total number of loops '3'}}
102
+
//expected-error@+1 {{looprange clause selects loops from 1 to 4 but this exceeds the number of loops (3) in the loop sequence}}
103
103
#pragma omp fuse looprange(x,y)
104
104
{
105
105
for(int i = 0; i < 10; ++i);
106
106
for(int j = 0; j < 100; ++j);
107
107
for(int k = 0; k < 50; ++k);
108
108
}
109
109
110
-
//expected-error@+1 {{loop range in '#pragma omp fuse' exceeds the number of available loops: range end '420' is greater than the total number of loops '3'}}
110
+
//expected-error@+1 {{looprange clause selects loops from 1 to 420 but this exceeds the number of loops (3) in the loop sequence}}
111
111
#pragma omp fuse looprange(1,420)
112
112
{
113
113
for(int i = 0; i < 10; ++i);
114
114
for(int j = 0; j < 100; ++j);
115
115
for(int k = 0; k < 50; ++k);
116
116
}
117
117
118
-
//expected-error@+1 {{loop range in '#pragma omp fuse' exceeds the number of available loops: range end '6' is greater than the total number of loops '5'}}
118
+
//expected-error@+1 {{looprange clause selects loops from 1 to 6 but this exceeds the number of loops (5) in the loop sequence}}
119
119
#pragma omp fuse looprange(1,6)
120
120
{
121
121
for(int i = 0; i < 10; ++i);
@@ -130,21 +130,21 @@ void func() {
130
130
}
131
131
}
132
132
133
-
//expected-error@+1 {{loop range in '#pragma omp fuse' exceeds the number of available loops: range end '4' is greater than the total number of loops '3'}}
133
+
//expected-error@+1 {{looprange clause selects loops from 2 to 4 but this exceeds the number of loops (3) in the loop sequence}}
134
134
#pragma omp fuse looprange(2,3)
135
135
{
136
136
#pragma omp unroll partial(2)
137
137
for(int i = 0; i < 10; ++i);
138
-
138
+
139
139
#pragma omp reverse
140
140
for(int j = 0; j < 10; ++j);
141
141
142
-
#pragma omp fuse
142
+
#pragma omp fuse
143
143
{
144
144
{
145
145
#pragma omp reverse
146
146
for(int j = 0; j < 10; ++j);
147
-
}
147
+
}
148
148
for(int k = 0; k < 50; ++k);
149
149
}
150
150
}
@@ -154,15 +154,15 @@ void func() {
154
154
template <typename T>
155
155
staticvoidtemplated_func() {
156
156
157
-
//expected-warning@+1 {{loop range in '#pragma omp fuse' contains only a single loop, resulting in redundant fusion}}
157
+
//expected-warning@+1 {{looprange clause selects a single loop, resulting in redundant fusion}}
158
158
#pragma omp fuse looprange(2,1)
159
159
{
160
160
for(int i = 0; i < 10; ++i);
161
161
for(int j = 0; j < 100; ++j);
162
162
for(int k = 0; k < 50; ++k);
163
163
}
164
164
165
-
//expected-error@+1 {{loop range in '#pragma omp fuse' exceeds the number of available loops: range end '5' is greater than the total number of loops '3'}}
165
+
//expected-error@+1 {{looprange clause selects loops from 3 to 5 but this exceeds the number of loops (3) in the loop sequence}}
0 commit comments