2 ! Don't cycle by default through all options, just test -O0 and -O2,
3 ! as this is quite large test.
4 ! { dg-skip-if "" { ! run_expensive_tests } { "*" } { "-O0" "-O2" } }
9 integer, allocatable
:: c(:,:)
11 integer, allocatable
:: f
15 type (dl
), allocatable
:: h(:)
18 type (dl
), allocatable
:: k
21 subroutine ver_dl (obj
, val
, c
, cl1
, cu1
, cl2
, cu2
, f
)
22 type (dl
), intent (in
) :: obj
23 integer, intent (in
) :: val
, cl1
, cu1
, cl2
, cu2
24 logical, intent (in
) :: c
, f
25 if ((c
.neqv
. allocated (obj
%c
)) .or
. (f
.neqv
. allocated (obj
%f
))) STOP 1
27 if (lbound (obj
%c
, 1) /= cl1
.or
. ubound (obj
%c
, 1) /= cu1
) STOP 2
28 if (lbound (obj
%c
, 2) /= cl2
.or
. ubound (obj
%c
, 2) /= cu2
) STOP 3
31 if (obj
%a
/= val
.or
. obj
%b
/= val
) STOP 4
32 if (obj
%d
/= val
.or
. obj
%e
/= val
) STOP 5
34 if (any (obj
%c
/= val
)) STOP 6
37 if (obj
%f
/= val
) STOP 7
41 subroutine ver_dt (obj
, val
, h
, hl
, hu
, k
, c
, cl1
, cu1
, cl2
, cu2
, f
)
42 type (dt
), intent (in
) :: obj
43 integer, intent (in
) :: val
, hl
, hu
, cl1
, cu1
, cl2
, cu2
44 logical, intent (in
) :: h
, k
, c
, f
46 if ((h
.neqv
. allocated (obj
%h
)) .or
. (k
.neqv
. allocated (obj
%k
))) STOP 8
48 if (lbound (obj
%h
, 1) /= hl
.or
. ubound (obj
%h
, 1) /= hu
) STOP 9
50 call ver_dl (obj
%h(i
), val
, c
, cl1
, cu1
, cl2
, cu2
, f
)
55 call ver_dl (obj
%j(i
, j
), val
, c
, cl1
, cu1
, cl2
, cu2
, f
)
58 if (k
) call ver_dl (obj
%k
, val
, c
, cl1
, cu1
, cl2
, cu2
, f
)
60 if (obj
%g
/= val
.or
. obj
%i
/= val
) STOP 10
63 subroutine alloc_dl (obj
, val
, c
, cl1
, cu1
, cl2
, cu2
, f
)
64 type (dl
), intent (inout
) :: obj
65 integer, intent (in
) :: val
, cl1
, cu1
, cl2
, cu2
66 logical, intent (in
) :: c
, f
73 if (allocated (obj
%c
)) deallocate (obj
%c
)
75 allocate (obj
%c(cl1
:cu1
, cl2
:cu2
))
76 if (val
/= 0) obj
%c
= val
79 if (.not
.allocated (obj
%f
)) allocate (obj
%f
)
80 if (val
/= 0) obj
%f
= val
82 if (allocated (obj
%f
)) deallocate (obj
%f
)
84 end subroutine alloc_dl
85 subroutine alloc_dt (obj
, val
, h
, hl
, hu
, k
, c
, cl1
, cu1
, cl2
, cu2
, f
)
86 type (dt
), intent (inout
) :: obj
87 integer, intent (in
) :: val
, hl
, hu
, cl1
, cu1
, cl2
, cu2
88 logical, intent (in
) :: h
, k
, c
, f
94 if (allocated (obj
%h
)) deallocate (obj
%h
)
96 allocate (obj
%h(hl
:hu
))
98 call alloc_dl (obj
%h(i
), val
, c
, cl1
, cu1
, cl2
, cu2
, f
)
103 call alloc_dl (obj
%j(i
, j
), val
, c
, cl1
, cu1
, cl2
, cu2
, f
)
107 if (.not
.allocated (obj
%k
)) allocate (obj
%k
)
108 call alloc_dl (obj
%k
, val
, c
, cl1
, cu1
, cl2
, cu2
, f
)
110 if (allocated (obj
%k
)) deallocate (obj
%k
)
112 end subroutine alloc_dt
115 type (dt
), allocatable
:: y
120 type (dt
), allocatable
:: x
, y
, z(:,:)
121 logical, parameter :: F
= .false
.
122 logical, parameter :: T
= .true
.
124 !$omp parallel private (x, y, z)
125 if (allocated (x
) .or
. allocated (y
) .or
. allocated (z
)) STOP 11
127 !$omp parallel firstprivate (x, y, z)
128 if (allocated (x
) .or
. allocated (y
) .or
. allocated (z
)) STOP 12
131 !$omp parallel sections lastprivate (x, y, z) firstprivate (l)
134 if (allocated (x
) .or
. allocated (y
) .or
. allocated (z
)) STOP 13
138 if (allocated (x
) .or
. allocated (y
) .or
. allocated (z
)) STOP 14
140 allocate (x
, y
, z(-3:-3,2:3))
141 call alloc_dt (x
, 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
142 call ver_dt (x
, 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
143 call alloc_dt (y
, 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
144 call ver_dt (y
, 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
145 call alloc_dt (z(-3,2), 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
146 call ver_dt (z(-3,2), 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
147 call alloc_dt (z(-3,3), 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
148 call ver_dt (z(-3,3), 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
150 !$omp end parallel sections
151 if (.not
.allocated (x
) .or
. .not
.allocated (y
)) STOP 15
152 if (.not
.allocated (z
)) STOP 16
153 if (lbound (z
, 1) /= -3 .or
. ubound (z
, 1) /= -3) STOP 17
154 if (lbound (z
, 2) /= 2 .or
. ubound (z
, 2) /= 3) STOP 18
155 call ver_dt (x
, 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
156 call ver_dt (y
, 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
157 call ver_dt (z(-3,2), 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
158 call ver_dt (z(-3,3), 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
159 call alloc_dt (x
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
160 call ver_dt (x
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
161 call alloc_dt (y
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
162 call ver_dt (y
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
163 call alloc_dt (z(-3,2), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
164 call ver_dt (z(-3,2), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
165 call alloc_dt (z(-3,3), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
166 call ver_dt (z(-3,3), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
167 !$omp parallel private (x, y, z)
168 call ver_dt (x
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
169 call alloc_dt (x
, 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
170 call ver_dt (x
, 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
171 call ver_dt (y
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
172 call alloc_dt (y
, 14, T
, 3, 4, F
, T
, 1, 1, 2, 4, T
)
173 call ver_dt (y
, 14, T
, 3, 4, F
, T
, 1, 1, 2, 4, T
)
174 call ver_dt (z(-3,2), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
175 call alloc_dt (z(-3,2), 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
176 call ver_dt (z(-3,2), 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
177 call ver_dt (z(-3,3), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
178 call alloc_dt (z(-3,3), 14, T
, 3, 4, F
, T
, 1, 1, 2, 4, T
)
179 call ver_dt (z(-3,3), 14, T
, 3, 4, F
, T
, 1, 1, 2, 4, T
)
181 call ver_dt (x
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
182 call alloc_dt (x
, 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
183 call ver_dt (y
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
184 call alloc_dt (y
, 14, T
, 3, 4, F
, T
, 1, 1, 2, 4, T
)
185 call ver_dt (z(-3,2), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
186 call alloc_dt (z(-3,2), 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
187 call ver_dt (z(-3,3), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
188 call alloc_dt (z(-3,3), 14, T
, 3, 4, F
, T
, 1, 1, 2, 4, T
)
189 !$omp parallel private (x, y, z)
190 call ver_dt (x
, 0, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
191 call ver_dt (y
, 0, T
, 3, 4, F
, T
, 1, 1, 2, 4, T
)
192 deallocate (x
%h
, x
%k
)
195 call ver_dt (z(-3,2), 0, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
196 call ver_dt (z(-3,3), 0, T
, 3, 4, F
, T
, 1, 1, 2, 4, T
)
197 deallocate (z(-3,2)%h
, z(-3,2)%k
)
198 deallocate (z(-3,3)%h
)
201 call alloc_dt (x
, 5, T
, 1, 2, F
, T
, 2, 3, -2, -2, F
)
202 call alloc_dt (y
, 15, F
, 0, 0, T
, T
, 2, 2, 2, 2, T
)
203 call alloc_dt (z(-3,2), 5, T
, 1, 2, F
, T
, 2, 3, -2, -2, F
)
204 call alloc_dt (z(-3,3), 15, F
, 0, 0, T
, T
, 2, 2, 2, 2, T
)
205 !$omp parallel firstprivate (x, y, z)
206 call ver_dt (x
, 5, T
, 1, 2, F
, T
, 2, 3, -2, -2, F
)
207 call alloc_dt (x
, 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
208 call ver_dt (x
, 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
209 call ver_dt (y
, 15, F
, 0, 0, T
, T
, 2, 2, 2, 2, T
)
210 call alloc_dt (y
, 4, T
, 3, 4, T
, T
, 1, 1, 2, 4, T
)
211 call ver_dt (y
, 4, T
, 3, 4, T
, T
, 1, 1, 2, 4, T
)
212 call ver_dt (z(-3,2), 5, T
, 1, 2, F
, T
, 2, 3, -2, -2, F
)
213 call alloc_dt (z(-3,2), 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
214 call ver_dt (z(-3,2), 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
215 call ver_dt (z(-3,3), 15, F
, 0, 0, T
, T
, 2, 2, 2, 2, T
)
216 call alloc_dt (z(-3,3), 4, T
, 3, 4, T
, T
, 1, 1, 2, 4, T
)
217 call ver_dt (z(-3,3), 4, T
, 3, 4, T
, T
, 1, 1, 2, 4, T
)
219 call ver_dt (x
, 5, T
, 1, 2, F
, T
, 2, 3, -2, -2, F
)
220 call alloc_dt (x
, 4, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
221 call ver_dt (y
, 15, F
, 0, 0, T
, T
, 2, 2, 2, 2, T
)
222 call alloc_dt (y
, 16, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
223 call ver_dt (z(-3,2), 5, T
, 1, 2, F
, T
, 2, 3, -2, -2, F
)
224 call alloc_dt (z(-3,2), 4, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
225 call ver_dt (z(-3,3), 15, F
, 0, 0, T
, T
, 2, 2, 2, 2, T
)
226 call alloc_dt (z(-3,3), 16, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
227 !$omp parallel firstprivate (x, y, z)
228 call ver_dt (x
, 4, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
229 call alloc_dt (x
, 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
230 call ver_dt (x
, 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
231 call ver_dt (y
, 16, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
232 call alloc_dt (y
, 17, T
, 1, 2, F
, T
, 2, 2, 3, 3, F
)
233 call ver_dt (y
, 17, T
, 1, 2, F
, T
, 2, 2, 3, 3, F
)
234 call ver_dt (z(-3,2), 4, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
235 call alloc_dt (z(-3,2), 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
236 call ver_dt (z(-3,2), 4, T
, -3, -1, T
, T
, -1, -1, 2, 3, T
)
237 call ver_dt (z(-3,3), 16, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
238 call alloc_dt (z(-3,3), 17, T
, 1, 2, F
, T
, 2, 2, 3, 3, F
)
239 call ver_dt (z(-3,3), 17, T
, 1, 2, F
, T
, 2, 2, 3, 3, F
)
241 call ver_dt (x
, 4, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
242 call ver_dt (y
, 16, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
243 call alloc_dt (y
, 18, T
, 0, 1, T
, T
, 0, 1, 0, 1, T
)
244 call ver_dt (z(-3,2), 4, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
245 call ver_dt (z(-3,3), 16, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
246 call alloc_dt (z(-3,3), 18, T
, 0, 1, T
, T
, 0, 1, 0, 1, T
)
248 !$omp parallel sections lastprivate (x, y, z) firstprivate (l)
251 call ver_dt (x
, 9, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
252 call ver_dt (y
, 21, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
253 call ver_dt (z(-3,2), 9, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
254 call ver_dt (z(-3,3), 21, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
256 call ver_dt (x
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
257 call ver_dt (y
, 0, T
, 0, 1, T
, T
, 0, 1, 0, 1, T
)
258 call ver_dt (z(-3,2), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
259 call ver_dt (z(-3,3), 0, T
, 0, 1, T
, T
, 0, 1, 0, 1, T
)
262 call alloc_dt (x
, 7, T
, 1, 1, T
, T
, 1, 2, 3, 3, T
)
263 call ver_dt (x
, 7, T
, 1, 1, T
, T
, 1, 2, 3, 3, T
)
264 call alloc_dt (y
, 20, T
, 0, 0, F
, T
, 2, 2, 3, 4, F
)
265 call ver_dt (y
, 20, T
, 0, 0, F
, T
, 2, 2, 3, 4, F
)
266 call alloc_dt (z(-3,2), 7, T
, 1, 1, T
, T
, 1, 2, 3, 3, T
)
267 call ver_dt (z(-3,2), 7, T
, 1, 1, T
, T
, 1, 2, 3, 3, T
)
268 call alloc_dt (z(-3,3), 20, T
, 0, 0, F
, T
, 2, 2, 3, 4, F
)
269 call ver_dt (z(-3,3), 20, T
, 0, 0, F
, T
, 2, 2, 3, 4, F
)
272 call ver_dt (x
, 7, T
, 1, 1, T
, T
, 1, 2, 3, 3, T
)
273 call ver_dt (y
, 20, T
, 0, 0, F
, T
, 2, 2, 3, 4, F
)
274 call ver_dt (z(-3,2), 7, T
, 1, 1, T
, T
, 1, 2, 3, 3, T
)
275 call ver_dt (z(-3,3), 20, T
, 0, 0, F
, T
, 2, 2, 3, 4, F
)
277 call ver_dt (x
, 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
278 call ver_dt (y
, 0, T
, 0, 1, T
, T
, 0, 1, 0, 1, T
)
279 call ver_dt (z(-3,2), 0, F
, 0, 0, F
, F
, 0, 0, 0, 0, F
)
280 call ver_dt (z(-3,3), 0, T
, 0, 1, T
, T
, 0, 1, 0, 1, T
)
283 call alloc_dt (x
, 9, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
284 call ver_dt (x
, 9, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
285 call alloc_dt (y
, 21, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
286 call ver_dt (y
, 21, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
287 call alloc_dt (z(-3,2), 9, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
288 call ver_dt (z(-3,2), 9, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
289 call alloc_dt (z(-3,3), 21, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
290 call ver_dt (z(-3,3), 21, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
292 !$omp end parallel sections
293 call ver_dt (x
, 9, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
294 call ver_dt (y
, 21, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
295 call ver_dt (z(-3,2), 9, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
296 call ver_dt (z(-3,3), 21, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
297 !$omp parallel sections lastprivate (x, y, z) firstprivate (l)
300 call ver_dt (x
, 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
301 call ver_dt (y
, 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
302 call ver_dt (z(-3,2), 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
303 call ver_dt (z(-3,3), 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
305 call ver_dt (x
, 0, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
306 call ver_dt (y
, 0, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
307 call ver_dt (z(-3,2), 0, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
308 call ver_dt (z(-3,3), 0, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
311 call alloc_dt (x
, 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
312 call ver_dt (x
, 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
313 call alloc_dt (y
, 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
314 call ver_dt (y
, 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
315 call alloc_dt (z(-3,2), 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
316 call ver_dt (z(-3,2), 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
317 call alloc_dt (z(-3,3), 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
318 call ver_dt (z(-3,3), 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
321 call ver_dt (x
, 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
322 call ver_dt (y
, 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
323 call ver_dt (z(-3,2), 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
324 call ver_dt (z(-3,3), 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
326 call ver_dt (x
, 0, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
327 call ver_dt (y
, 0, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
328 call ver_dt (z(-3,2), 0, T
, 1, 1, F
, F
, 0, 0, 0, 0, T
)
329 call ver_dt (z(-3,3), 0, F
, 0, 0, T
, T
, 1, 2, 3, 4, T
)
332 call alloc_dt (x
, 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
333 call ver_dt (x
, 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
334 call alloc_dt (y
, 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
335 call ver_dt (y
, 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
336 call alloc_dt (z(-3,2), 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
337 call ver_dt (z(-3,2), 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
338 call alloc_dt (z(-3,3), 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
339 call ver_dt (z(-3,3), 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
341 !$omp end parallel sections
342 call ver_dt (x
, 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
343 call ver_dt (y
, 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
344 call ver_dt (z(-3,2), 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
345 call ver_dt (z(-3,3), 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
346 !$omp parallel private (x, y, z)
347 call ver_dt (x
, 0, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
348 call ver_dt (y
, 0, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
349 call ver_dt (z(-3,2), 0, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
350 call ver_dt (z(-3,3), 0, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
352 call alloc_dt (x
, 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
353 call alloc_dt (y
, 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
354 call alloc_dt (z(-3,2), 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
355 call alloc_dt (z(-3,3), 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
356 !$omp end single copyprivate (x, y, z)
357 call ver_dt (x
, 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
358 call ver_dt (y
, 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
359 call ver_dt (z(-3,2), 3, F
, 0, 0, T
, T
, 0, 1, 0, 1, F
)
360 call ver_dt (z(-3,3), 22, T
, 5, 5, F
, T
, 2, 3, 2, 2, T
)
362 call ver_dt (x
, 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
363 call ver_dt (y
, 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)
364 call ver_dt (z(-3,2), 5, F
, 0, 0, T
, T
, -1, -1, -1, -1, T
)
365 call ver_dt (z(-3,3), 23, T
, 0, 1, T
, T
, 2, 2, 2, 2, F
)