annotate libgomp/testsuite/libgomp.oacc-c-c++-common/parallel-loop-2.h @ 143:76e1cf5455ef

add cbc_gc test
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 23 Dec 2018 19:24:05 +0900
parents 84e7813d76e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
1 #ifndef VARS
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2 #define VARS
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3 int a[1500];
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
4 float b[10][15][10];
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
5 #pragma acc routine
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 __attribute__((noreturn)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
7 noreturn (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9 for (;;);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
10 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11 #endif
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12 #ifndef SC
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
13 #define SC
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
14 #endif
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
15
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
16 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
17 N(f0) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
18 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
19 int i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
20 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
21 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
22 a[i] += 2;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
23 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
24
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
25 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
26 N(f1) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
27 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
28 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
29 for (unsigned int i = __INT_MAX__; i < 3000U + __INT_MAX__; i += 2)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
30 a[(i - __INT_MAX__) >> 1] -= 2;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
31 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
32
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
33 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
34 N(f2) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
35 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
36 unsigned long long i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
37 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
38 for (i = __LONG_LONG_MAX__ + 4500ULL - 27;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
39 i > __LONG_LONG_MAX__ - 27ULL; i -= 3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
40 a[(i + 26LL - __LONG_LONG_MAX__) / 3] -= 4;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
41 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
42
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
43 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
44 N(f3) (long long n1, long long n2, long long s3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
45 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
46 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
47 for (long long i = n1 + 23; i > n2 - 25; i -= s3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
48 a[i + 48] += 7;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
49 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
50
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
51 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
52 N(f4) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
53 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
54 unsigned int i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
55 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
56 for (i = 30; i < 20; i += 2)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
57 a[i] += 10;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
58 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
59
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
60 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
61 N(f5) (int n11, int n12, int n21, int n22, int n31, int n32,
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
62 int s1, int s2, int s3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
63 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
64 SC int v1, v2, v3;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
65 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
66 for (v1 = n11; v1 < n12; v1 += s1)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
67 #pragma acc loop S
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
68 for (v2 = n21; v2 < n22; v2 += s2)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
69 for (v3 = n31; v3 < n32; v3 += s3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
70 b[v1][v2][v3] += 2.5;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
71 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
72
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
73 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
74 N(f6) (int n11, int n12, int n21, int n22, long long n31, long long n32,
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
75 int s1, int s2, long long int s3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
76 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
77 SC int v1, v2;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
78 SC long long v3;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
79 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
80 for (v1 = n11; v1 > n12; v1 += s1)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
81 #pragma acc loop S
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
82 for (v2 = n21; v2 > n22; v2 += s2)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
83 for (v3 = n31; v3 > n32; v3 += s3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
84 b[v1][v2 / 2][v3] -= 4.5;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
85 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
86
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
87 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
88 N(f7) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
89 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
90 SC unsigned int v1, v3;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
91 SC unsigned long long v2;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
92 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
93 for (v1 = 0; v1 < 20; v1 += 2)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
94 #pragma acc loop S
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
95 for (v2 = __LONG_LONG_MAX__ + 16ULL;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
96 v2 > __LONG_LONG_MAX__ - 29ULL; v2 -= 3)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
97 for (v3 = 10; v3 > 0; v3--)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
98 b[v1 >> 1][(v2 - __LONG_LONG_MAX__ + 64) / 3 - 12][v3 - 1] += 5.5;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
99 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
100
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
101 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
102 N(f8) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
103 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
104 SC long long v1, v2, v3;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
105 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
106 for (v1 = 0; v1 < 20; v1 += 2)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
107 #pragma acc loop S
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
108 for (v2 = 30; v2 < 20; v2++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
109 for (v3 = 10; v3 < 0; v3--)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
110 b[v1][v2][v3] += 5.5;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
111 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
112
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
113 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
114 N(f9) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
115 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
116 int i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
117 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
118 for (i = 20; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
119 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
120 a[i] += 2;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
121 noreturn ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
122 a[i] -= 4;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
123 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
124 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
125
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
126 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
127 N(f10) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
128 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
129 SC int i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
130 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
131 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
132 #pragma acc loop S
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
133 for (int j = 10; j < 8; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
134 for (long k = -10; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
135 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
136 b[i][j][k] += 4;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
137 noreturn ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
138 b[i][j][k] -= 8;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
139 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
140 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
141
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
142 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
143 N(f11) (int n)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
144 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
145 int i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
146 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
147 for (i = 20; i < n; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
148 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
149 a[i] += 8;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
150 noreturn ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
151 a[i] -= 16;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
152 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
153 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
154
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
155 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
156 N(f12) (int n)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
157 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
158 SC int i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
159 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
160 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
161 #pragma acc loop S
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
162 for (int j = n; j < 8; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
163 for (long k = -10; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
164 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
165 b[i][j][k] += 16;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
166 noreturn ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
167 b[i][j][k] -= 32;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
168 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
169 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
170
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
171 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
172 N(f13) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
173 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
174 int *i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
175 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
176 for (i = a; i < &a[1500]; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
177 i[0] += 2;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
178 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
179
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
180 __attribute__((noinline, noclone)) void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
181 N(f14) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
182 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
183 SC float *i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
184 #pragma acc PK loop L F
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
185 for (i = &b[0][0][0]; i < &b[0][0][10]; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
186 #pragma acc loop S
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
187 for (float *j = &b[0][15][0]; j > &b[0][0][0]; j -= 10)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
188 for (float *k = &b[0][0][10]; k > &b[0][0][0]; --k)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
189 b[i - &b[0][0][0]][(j - &b[0][0][0]) / 10 - 1][(k - &b[0][0][0]) - 1]
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
190 -= 3.5;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
191 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
192
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
193 __attribute__((noinline, noclone)) int
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
194 N(test) (void)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
195 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
196 int i, j, k;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
197 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
198 a[i] = i - 25;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
199 N(f0) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
200 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
201 if (a[i] != i - 23)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
202 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
203 N(f1) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
204 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
205 if (a[i] != i - 25)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
206 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
207 N(f2) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
208 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
209 if (a[i] != i - 29)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
210 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
211 N(f3) (1500LL - 1 - 23 - 48, -1LL + 25 - 48, 1LL);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
212 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
213 if (a[i] != i - 22)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
214 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
215 N(f3) (1500LL - 1 - 23 - 48, 1500LL - 1, 7LL);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
216 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
217 if (a[i] != i - 22)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
218 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
219 N(f4) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
220 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
221 if (a[i] != i - 22)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
222 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
223 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
224 for (j = 0; j < 15; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
225 for (k = 0; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
226 b[i][j][k] = i - 2.5 + 1.5 * j - 1.5 * k;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
227 N(f5) (0, 10, 0, 15, 0, 10, 1, 1, 1);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
228 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
229 for (j = 0; j < 15; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
230 for (k = 0; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
231 if (b[i][j][k] != i + 1.5 * j - 1.5 * k)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
232 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
233 N(f5) (0, 10, 30, 15, 0, 10, 4, 5, 6);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
234 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
235 for (j = 0; j < 15; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
236 for (k = 0; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
237 if (b[i][j][k] != i + 1.5 * j - 1.5 * k)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
238 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
239 N(f6) (9, -1, 29, 0, 9, -1, -1, -2, -1);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
240 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
241 for (j = 0; j < 15; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
242 for (k = 0; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
243 if (b[i][j][k] != i - 4.5 + 1.5 * j - 1.5 * k)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
244 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
245 N(f7) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
246 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
247 for (j = 0; j < 15; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
248 for (k = 0; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
249 if (b[i][j][k] != i + 1.0 + 1.5 * j - 1.5 * k)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
250 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
251 N(f8) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
252 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
253 for (j = 0; j < 15; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
254 for (k = 0; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
255 if (b[i][j][k] != i + 1.0 + 1.5 * j - 1.5 * k)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
256 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
257 N(f9) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
258 N(f10) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
259 N(f11) (10);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
260 N(f12) (12);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
261 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
262 if (a[i] != i - 22)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
263 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
264 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
265 for (j = 0; j < 15; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
266 for (k = 0; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
267 if (b[i][j][k] != i + 1.0 + 1.5 * j - 1.5 * k)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
268 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
269 N(f13) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
270 N(f14) ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
271 for (i = 0; i < 1500; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
272 if (a[i] != i - 20)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
273 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
274 for (i = 0; i < 10; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
275 for (j = 0; j < 15; j++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
276 for (k = 0; k < 10; k++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
277 if (b[i][j][k] != i - 2.5 + 1.5 * j - 1.5 * k)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
278 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
279 return 0;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
280 }