]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgomp/ChangeLog
Add obj-c++.srcman target to gcc/objcp/Makefile.
[thirdparty/gcc.git] / libgomp / ChangeLog
CommitLineData
c9db17b8
GA
12021-10-09 liuhongt <hongtao.liu@intel.com>
2
3 * testsuite/libgomp.c++/scan-10.C: Add option -fvect-cost-model=cheap.
4 * testsuite/libgomp.c++/scan-11.C: Ditto.
5 * testsuite/libgomp.c++/scan-12.C: Ditto.
6 * testsuite/libgomp.c++/scan-13.C: Ditto.
7 * testsuite/libgomp.c++/scan-14.C: Ditto.
8 * testsuite/libgomp.c++/scan-15.C: Ditto.
9 * testsuite/libgomp.c++/scan-16.C: Ditto.
10 * testsuite/libgomp.c++/scan-9.C: Ditto.
11 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: Ditto.
12 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: Ditto.
13 * testsuite/libgomp.c/scan-11.c: Ditto.
14 * testsuite/libgomp.c/scan-12.c: Ditto.
15 * testsuite/libgomp.c/scan-13.c: Ditto.
16 * testsuite/libgomp.c/scan-14.c: Ditto.
17 * testsuite/libgomp.c/scan-15.c: Ditto.
18 * testsuite/libgomp.c/scan-16.c: Ditto.
19 * testsuite/libgomp.c/scan-17.c: Ditto.
20 * testsuite/libgomp.c/scan-18.c: Ditto.
21 * testsuite/libgomp.c/scan-19.c: Ditto.
22 * testsuite/libgomp.c/scan-20.c: Ditto.
23 * testsuite/libgomp.c/scan-21.c: Ditto.
24 * testsuite/libgomp.c/scan-22.c: Ditto.
25
262021-10-09 Jakub Jelinek <jakub@redhat.com>
27
28 * libgomp.texi (OpenMP 5.1): Mention implemented support for
29 structured block sequences in C/C++. Mention support for
30 unconstrained/reproducible modifiers on order clause.
31 Mention partial (C/C++ only) support of extentensions to atomics
32 construct. Mention partial (C/C++ on clause only) support of
33 align/allocator modifiers on allocate clause.
34
e3e07b89
GA
352021-10-02 Tobias Burnus <tobias@codesourcery.com>
36
37 * testsuite/libgomp.fortran/order-reproducible-1.f90: New test
38 based on libgomp.c-c++-common/order-reproducible-1.c.
39 * testsuite/libgomp.fortran/order-reproducible-2.f90: Likewise.
40 * testsuite/libgomp.fortran/my-usleep.c: New test.
41
9d116bcc
GA
422021-10-01 Tobias Burnus <tobias@codesourcery.com>
43
44 * testsuite/libgomp.fortran/alloc-10.f90: Fix alignment check.
45 * testsuite/libgomp.fortran/alloc-7.f90: Fix array access.
46 * testsuite/libgomp.fortran/alloc-8.f90: Likewise.
47 * testsuite/libgomp.fortran/alloc-11.f90: New test for omp_realloc,
48 based on libgomp.c-c++-common/alloc-9.c.
49
502021-10-01 Jakub Jelinek <jakub@redhat.com>
51
52 * testsuite/libgomp.c-c++-common/order-reproducible-1.c: New test.
53 * testsuite/libgomp.c-c++-common/order-reproducible-2.c: New test.
54
552021-10-01 Jakub Jelinek <jakub@redhat.com>
56
57 * affinity-fmt.c (omp_get_team_num, omp_get_num_teams): Add
58 ialias_redirect.
59 * env.c (handle_omp_display_env): Use ialias_call.
60 * icv-device.c: Move ialias right below each function.
61 (omp_get_device_num): Use ialias_call.
62 * fortran.c (omp_fulfill_event): Add ialias_redirect.
63 * icv.c (omp_get_active_level): Add ialias_redirect.
64
652021-10-01 Jakub Jelinek <jakub@redhat.com>
66
67 * omp.h.in (omp_aligned_alloc, omp_aligned_calloc): Add
68 __alloc_align__ (1) attribute.
69 * testsuite/libgomp.c-c++-common/alloc-9.c: New test.
70
24679983
GA
712021-09-30 Tobias Burnus <tobias@codesourcery.com>
72
73 * testsuite/libgomp.fortran/alloc-7.f90: Add dg-prune-output
74 for -fintrinsic-modules-path= warning of the C compiler.
75 * testsuite/libgomp.fortran/alloc-9.f90: Likewise.
76 * testsuite/libgomp.fortran/alloc-10.f90: Likewise.
77
782021-09-30 Tobias Burnus <tobias@codesourcery.com>
79
80 * libgomp.texi (OpenMP 5.1): Set implementation status to Y for
81 omp_aligned_{,c}alloc and omp_{c,re}alloc routines.
82 * omp_lib.f90.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
83 omp_realloc): Add.
84 * omp_lib.h.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
85 omp_realloc): Add.
86 * testsuite/libgomp.fortran/alloc-10.f90: New test.
87 * testsuite/libgomp.fortran/alloc-6.f90: New test.
88 * testsuite/libgomp.fortran/alloc-7.c: New test.
89 * testsuite/libgomp.fortran/alloc-7.f90: New test.
90 * testsuite/libgomp.fortran/alloc-8.f90: New test.
91 * testsuite/libgomp.fortran/alloc-9.f90: New test.
92
932021-09-30 Jakub Jelinek <jakub@redhat.com>
94
95 * omp.h.in (omp_aligned_alloc, omp_calloc, omp_aligned_calloc,
96 omp_realloc): New prototypes.
97 (omp_alloc): Move after omp_free prototype, add __malloc__ (omp_free)
98 attribute.
99 * allocator.c: Include string.h.
100 (omp_aligned_alloc): No longer static, add ialias. Add new_alignment
101 variable and use it instead of alignment so that when retrying the old
102 alignment is used again. Don't retry if new alignment is the same
103 as old alignment, unless allocator had pool size.
104 (omp_alloc, GOMP_alloc, GOMP_free): Use ialias_call.
105 (omp_aligned_calloc, omp_calloc, omp_realloc): New functions.
106 * libgomp.map (OMP_5.0.2): Export omp_aligned_alloc, omp_calloc,
107 omp_aligned_calloc and omp_realloc.
108 * testsuite/libgomp.c-c++-common/alloc-4.c (main): Add
109 omp_aligned_alloc, omp_calloc and omp_aligned_calloc tests.
110 * testsuite/libgomp.c-c++-common/alloc-5.c: New test.
111 * testsuite/libgomp.c-c++-common/alloc-6.c: New test.
112 * testsuite/libgomp.c-c++-common/alloc-7.c: New test.
113 * testsuite/libgomp.c-c++-common/alloc-8.c: New test.
114
fd133479
GA
1152021-09-28 Tobias Burnus <tobias@codesourcery.com>
116
117 PR libgomp/96661
118 * configure.ac: Only check for int-type = 2*size_t support when
119 building with Fortran support.
120 * configure: Regenerate.
121
1222021-09-28 Thomas Schwinge <thomas@codesourcery.com>
123
124 * testsuite/libgomp.oacc-fortran/if-1.f90: Adjust.
125 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
126
cf966403
GA
1272021-09-27 Aldy Hernandez <aldyh@redhat.com>
128
129 * team.c: Initialize start_data.
130 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
131 * testsuite/libgomp.graphite/force-parallel-8.c: Adjust.
132
1332021-09-27 Tobias Burnus <tobias@codesourcery.com>
134
135 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Change
136 dg-message back to dg-note.
137
1382021-09-27 Tobias Burnus <tobias@codesourcery.com>
139
140 PR fortran/94070
141 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Update
142 expected dg-note output.
143
e4777439
GA
1442021-09-22 Tobias Burnus <tobias@codesourcery.com>
145
146 PR fortran/55534
147 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Revert
148 r12-3722 by removing -Wno-missing-include-dirs.
149 * testsuite/libgomp.oacc-fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
150
1512021-09-22 Jakub Jelinek <jakub@redhat.com>
152
153 * testsuite/libgomp.c-c++-common/allocate-2.c: New test.
154 * testsuite/libgomp.c-c++-common/allocate-3.c: New test.
155
2c41dd82
GA
1562021-09-21 Tobias Burnus <tobias@codesourcery.com>
157
158 PR fortran/55534
159 * testsuite/libgomp.fortran/fortran.exp: Add -Wno-missing-include-dirs
160 to ALWAYS_CFLAGS.
161 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
162
cf74e7b5
GA
1632021-09-18 Jakub Jelinek <jakub@redhat.com>
164
165 * testsuite/libgomp.c++/default-1.C: New test.
166 * testsuite/libgomp.c-c++-common/default-1.c: New test.
167 * libgomp.texi (OpenMP 5.1): Mark "private and firstprivate argument
168 to default clause in C and C++" as implemented.
169
0a4cb439
GA
1702021-09-17 Julian Brown <julian@codesourcery.com>
171
172 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Update.
173
1742021-09-17 Julian Brown <julian@codesourcery.com>
175
176 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: New test.
177
1782021-09-17 Jakub Jelinek <jakub@redhat.com>
179
180 * libgomp.texi (OpenMP 5.1): Spelling fix,
181 declare variante -> declare variant.
182
1832021-09-17 Jakub Jelinek <jakub@redhat.com>
184
185 * testsuite/libgomp.c-c++-common/atomic-19.c: Drop c effective target.
186 Use /* */ comments instead of //.
187 * testsuite/libgomp.c-c++-common/atomic-20.c: Likewise.
188 * testsuite/libgomp.c-c++-common/atomic-21.c: Likewise.
189 * testsuite/libgomp.c++/atomic-16.C: New test.
190 * testsuite/libgomp.c++/atomic-17.C: New test.
191
a26206ec
GA
1922021-09-10 Jakub Jelinek <jakub@redhat.com>
193
194 * testsuite/libgomp.c-c++-common/atomic-19.c: New test.
195 * testsuite/libgomp.c-c++-common/atomic-20.c: New test.
196 * testsuite/libgomp.c-c++-common/atomic-21.c: New test.
197
b2748138
GA
1982021-09-07 Tobias Burnus <tobias@codesourcery.com>
199
200 * libgomp.texi (OpenMP Implementation Status): Extend
201 OpenMP 5.0 section.
202 (OpenACC Profiling Interface): Fix typo.
203
2042021-09-07 Tobias Burnus <tobias@codesourcery.com>
205
206 * libgomp.texi (Enabling OpenMP): Refer to OMP spec in general
207 not to 4.5; link to new section.
208 (OpenMP Implementation Status): New.
209
9f99555f
GA
2102021-09-06 Thomas Schwinge <thomas@codesourcery.com>
211
212 * testsuite/libgomp.c/target-43.c: '-latomic' for nvptx offloading.
213
7b739540
GA
2142021-09-03 Tobias Burnus <tobias@codesourcery.com>
215
216 * testsuite/libgomp.c-c++-common/error-1.c: Use \r\n not \n\r in
217 dg-output.
218 * testsuite/libgomp.fortran/error-1.f90: Likewise.
219
38b19c5b
GA
2202021-08-23 Thomas Schwinge <thomas@codesourcery.com>
221 Jakub Jelinek <jakub@redhat.com>
222
223 * testsuite/libgomp.c/address-space-1.c: New file.
224
2252021-08-23 Thomas Schwinge <thomas@codesourcery.com>
226
227 * testsuite/lib/libgomp.exp
228 (check_effective_target_offload_target_intelmic): Remove 'proc'.
229 (check_effective_target_offload_device_intel_mic): New 'proc'.
230 * testsuite/libgomp.c-c++-common/on_device_arch.h
231 (device_arch_intel_mic, on_device_arch_intel_mic): New.
232 * testsuite/libgomp.c-c++-common/target-45.c: Use that for
233 'dg-xfail-run-if'.
234 * testsuite/libgomp.fortran/target10.f90: Likewise.
235
2362021-08-23 Tobias Burnus <tobias@codesourcery.com>
237
238 * testsuite/libgomp.fortran/taskloop-4-a.f90: New test.
239 * testsuite/libgomp.fortran/taskloop-4.f90: New test.
240 * testsuite/libgomp.fortran/taskloop-5-a.f90: New test.
241 * testsuite/libgomp.fortran/taskloop-5.f90: New test.
242
2432021-08-23 Jakub Jelinek <jakub@redhat.com>
244
245 * taskloop.c (GOMP_taskloop): Handle GOMP_TASK_FLAG_STRICT.
246 * testsuite/libgomp.c-c++-common/taskloop-4.c (main): Fix up comment.
247 * testsuite/libgomp.c-c++-common/taskloop-5.c: New test.
248
5b2876f9
GA
2492021-08-22 Thomas Schwinge <thomas@codesourcery.com>
250
251 * config/nvptx/error.c (fwrite, exit): Override, too.
252 * testsuite/libgomp.c-c++-common/error-1.c: Add a minimum amount
253 of offloading testing.
254 * testsuite/libgomp.fortran/error-1.f90: Likewise.
255
7c9e1645
GA
2562021-08-20 Tobias Burnus <tobias@codesourcery.com>
257
258 * testsuite/libgomp.fortran/error-1.f90: New test.
259
2602021-08-20 Jakub Jelinek <jakub@redhat.com>
261
262 * libgomp.map (GOMP_5.1): Add GOMP_error and GOMP_warning.
263 * libgomp_g.h (GOMP_warning, GOMP_error): Declare.
264 * error.c (GOMP_warning, GOMP_error): New functions.
265 * testsuite/libgomp.c-c++-common/error-1.c: New test.
266
6e529985
GA
2672021-08-18 Tobias Burnus <tobias@codesourcery.com>
268
269 * omp_lib.f90.in (omp_alloc, omp_free, omp_target_alloc,
270 omp_target_free. omp_target_is_present, omp_target_memcpy,
271 omp_target_memcpy_rect, omp_target_associate_ptr,
272 omp_target_disassociate_ptr): Add interface.
273 * omp_lib.h.in (omp_alloc, omp_free, omp_target_alloc,
274 omp_target_free. omp_target_is_present, omp_target_memcpy,
275 omp_target_memcpy_rect, omp_target_associate_ptr,
276 omp_target_disassociate_ptr): Add interface.
277 * testsuite/libgomp.fortran/alloc-1.F90: Remove local
278 interface block for omp_alloc + omp_free.
279 * testsuite/libgomp.fortran/alloc-4.f90: Likewise.
280 * testsuite/libgomp.fortran/refcount-1.f90: New test.
281 * testsuite/libgomp.fortran/target-12.f90: New test.
282
2832021-08-18 Jakub Jelinek <jakub@redhat.com>
284
285 * testsuite/libgomp.c-c++-common/nothing-1.c: New test.
286
2d14d64b
GA
2872021-08-17 Tobias Burnus <tobias@codesourcery.com>
288
289 * testsuite/libgomp.fortran/scope-1.f90: New test.
290 * testsuite/libgomp.fortran/task-reduction-16.f90: New test.
291
2922021-08-17 Jakub Jelinek <jakub@redhat.com>
293
294 * Makefile.am (libgomp_la_SOURCES): Add scope.c
295 * Makefile.in: Regenerated.
296 * libgomp_g.h (GOMP_scope_start): Declare.
297 * libgomp.map: Add GOMP_scope_start@@GOMP_5.1.
298 * scope.c: New file.
299 * testsuite/libgomp.c-c++-common/scope-1.c: New test.
300 * testsuite/libgomp.c-c++-common/task-reduction-16.c: New test.
301
9d1d9fc8
GA
3022021-08-16 Thomas Schwinge <thomas@codesourcery.com>
303
304 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Address
305 '?:' issues.
306
3072021-08-16 Tobias Burnus <tobias@codesourcery.com>
308
309 * testsuite/libgomp.fortran/masked-1.f90: New test.
310
261512fa
GA
3112021-08-13 Thomas Schwinge <thomas@codesourcery.com>
312
313 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Adjust.
314
72be20e2
GA
3152021-08-12 Jakub Jelinek <jakub@redhat.com>
316
317 * testsuite/libgomp.c-c++-common/masked-1.c: New test.
318
3192021-08-12 Tobias Burnus <tobias@codesourcery.com>
320
321 * env.c (parse_bind_var): Accept 'primary' as alias for
322 'master'.
323 (omp_display_env): Add TODO comment to
324 change 'master' to 'primary' in proc_bind for OpenMP 5.1.
325 * libgomp.texi: Change 'master thread' to 'primary thread'
326 in line with OpenMP 5.1.
327 (omp_get_proc_bind): Add omp_proc_bind_primary and note that
328 omp_proc_bind_master is an alias of it.
329 (OMP_PROC_BIND): Mention 'PRIMARY'.
330 * omp.h.in (__GOMP_DEPRECATED_5_1): Define.
331 (omp_proc_bind_primary): Add.
332 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
333 * omp_lib.f90.in (omp_proc_bind_primary): Add.
334 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
335 * omp_lib.h.in (omp_proc_bind_primary): Add.
336 * testsuite/libgomp.c/affinity-1.c: Check that
337 'primary' works and is identical to 'master'.
338
37768150
GA
3392021-08-09 Julian Brown <julian@codesourcery.com>
340 Kwok Cheung Yeung <kcy@codesourcery.com>
341 Thomas Schwinge <thomas@codesourcery.com>
342
343 * plugin/plugin-gcn.c (gcn_exec): Change default number of workers to
344 16.
345 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
346 [acc_device_radeon]: Update.
347 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c
348 [ACC_DEVICE_TYPE_radeon]: Likewise.
349 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
350 [acc_device_radeon]: Likewise.
351 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c
352 [ACC_DEVICE_TYPE_radeon]: Likewise.
353 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: XFAIL for
354 'openacc_radeon_accel_selected' and '-O0'.
355 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
356
8ebf4fb5
GA
3572021-08-05 Chung-Lin Tang <cltang@codesourcery.com>
358
359 * icv-device.c (omp_get_device_num): New API function, host side.
360 * fortran.c (omp_get_device_num_): New interface function.
361 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Define macro symbol.
362 * libgomp.map (OMP_5.0.2): New version space with omp_get_device_num,
363 omp_get_device_num_.
364 * libgomp.texi (omp_get_device_num): Add documentation for new API
365 function.
366 * omp.h.in (omp_get_device_num): Add declaration.
367 * omp_lib.f90.in (omp_get_device_num): Likewise.
368 * omp_lib.h.in (omp_get_device_num): Likewise.
369 * target.c (gomp_load_image_to_device): If additional entry for device
370 number exists at end of returned entries from 'load_image_func' hook,
371 copy the assigned device number over to the device variable.
372 * config/gcn/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
373 (omp_get_device_num): New API function, device side.
374 * plugin/plugin-gcn.c ("symcat.h"): Add include.
375 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
376 at end of returned 'target_table' entries.
377 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
378 (omp_get_device_num): New API function, device side.
379 * plugin/plugin-nvptx.c ("symcat.h"): Add include.
380 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
381 at end of returned 'target_table' entries.
382 * testsuite/lib/libgomp.exp
383 (check_effective_target_offload_target_intelmic): New function for
384 testing for intelmic offloading.
385 * testsuite/libgomp.c-c++-common/target-45.c: New test.
386 * testsuite/libgomp.fortran/target10.f90: New test.
387
4d17ca1b
GA
3882021-07-30 Thomas Schwinge <thomas@codesourcery.com>
389 Ulrich Drepper <drepper@redhat.com>
390
391 * fortran.c (omp_display_env_, omp_display_env_8_): Only
392 '#ifndef LIBGOMP_OFFLOADED_ONLY'.
393
3942021-07-29 Thomas Schwinge <thomas@codesourcery.com>
395 Julian Brown <julian@codesourcery.com>
396 Kwok Cheung Yeung <kcy@codesourcery.com>
397
398 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c:
399 's%oaccdevlow%oaccloops%g'.
400 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
401 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
402 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c:
403 Likewise.
404 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c:
405 Likewise.
406 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c:
407 Likewise.
408 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c:
409 Likewise.
410 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c:
411 Likewise.
412 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c:
413 Likewise.
414 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c:
415 Likewise.
416 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c:
417 Likewise.
418 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
419
872c1a56
ML
4202021-07-29 Aldy Hernandez <aldyh@redhat.com>
421
422 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for
423 threader.
424 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
425
af3f12e6
GA
4262021-07-27 Ulrich Drepper <drepper@gmail.com>
427
428 * env.c (wait_policy, stacksize): New static variables,
429 move out of handle_omp_display_env.
430 (omp_display_env): New function. The meat of the old
431 handle_omp_display_env function.
432 (handle_omp_display_env): Change to not take parameters
433 and instead use the global variables. Only perform
434 parsing, defer to omp_display_env for the implementation.
435 (initialize_env): Remove local variables wait_policy and
436 stacksize. Don't pass parameters to handle_omp_display_env.
437 * fortran.c: Add ialias_redirect for omp_display_env.
438 (omp_display_env_, omp_display_env_8_): New functions.
439 * libgomp.map (OMP_5.1): New version. Add omp_display_env,
440 omp_display_env_, and omp_display_env_8_.
441 * omp.h.in: Declare omp_display_env.
442 * omp_lib.f90.in: Likewise.
443 * omp_lib.h.in: Likewise.
444
4452021-07-27 Thomas Schwinge <thomas@codesourcery.com>
446 Julian Brown <julian@codesourcery.com>
447
448 * target.c (gomp_coalesce_buf_add): Update comment.
449 (gomp_copy_host2dev, gomp_map_vars_internal): Don't expect to see
450 'aq && cbuf'.
451 (gomp_map_vars_internal): Only 'if (!aq)', do
452 'gomp_coalesce_buf_add'.
453 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Remove
454 XFAIL.
455
4562021-07-27 Julian Brown <julian@codesourcery.com>
457 Thomas Schwinge <thomas@codesourcery.com>
458
459 * libgomp.h (gomp_copy_host2dev): Update prototype.
460 * oacc-mem.c (memcpy_tofrom_device, update_dev_host): Add new
461 argument to gomp_copy_host2dev (false).
462 * plugin/plugin-gcn.c (struct copy_data): Remove free_src field.
463 (copy_data): Don't free src.
464 (queue_push_copy): Remove free_src handling.
465 (GOMP_OFFLOAD_dev2dev): Update call to queue_push_copy.
466 (GOMP_OFFLOAD_openacc_async_host2dev): Remove source-data
467 snapshotting.
468 (GOMP_OFFLOAD_openacc_async_dev2host): Update call to
469 queue_push_copy.
470 * target.c (goacc_device_copy_async): Add SRCADDR_ORIG parameter.
471 (gomp_copy_host2dev): Add EPHEMERAL parameter. Snapshot source
472 data when true, and set up deferred freeing of temporary buffer.
473 (gomp_copy_dev2host): Update call to goacc_device_copy_async.
474 (gomp_map_vars_existing, gomp_map_pointer, gomp_attach_pointer)
475 (gomp_detach_pointer, gomp_map_vars_internal, gomp_update): Update
476 calls to gomp_copy_host2dev with appropriate ephemeral argument.
477 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: Remove
478 XFAIL.
479
4802021-07-27 Thomas Schwinge <thomas@codesourcery.com>
481 Tom de Vries <tom@codesourcery.com>
482
483 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: New file.
484 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Likewise.
485
4862021-07-27 Thomas Schwinge <thomas@codesourcery.com>
487
488 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Clarify
489 sequencing of 'async' data copying vs. profiling events.
490 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
491 Likewise.
492
4932021-07-27 Thomas Schwinge <thomas@codesourcery.com>
494 Julian Brown <julian@codesourcery.com>
495
496 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: Fix OpenACC
497 'async'/'wait' issue.
498 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: Likewise.
499 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: Likewise.
500 * testsuite/libgomp.oacc-fortran/lib-16.f90: Likewise.
501
419c6c68
GA
5022021-07-21 Thomas Schwinge <thomas@codesourcery.com>
503 Joseph Myers <joseph@codesourcery.com>
504 Cesar Philippidis <cesar@codesourcery.com>
505
506 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c: New
507 file.
508 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
509 Likewise.
510 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2_2.c:
511 Likewise.
512 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
513
92d45509
GA
5142021-07-20 Thomas Schwinge <thomas@codesourcery.com>
515
516 PR target/101484
517 * configure.tgt [amdgcn*-*-*] (XCFLAGS): Add
518 '-Wno-error=array-bounds'.
519 * config/gcn/team.c: Remove '-Werror=array-bounds' work-around.
520 * libgomp.h [__AMDGCN__]: Likewise.
521
21ea2f93
GA
5222021-07-19 Thomas Schwinge <thomas@codesourcery.com>
523
524 PR target/101484
525 * config/gcn/team.c: Apply '-Werror=array-bounds' work-around.
526 * libgomp.h [__AMDGCN__]: Likewise.
527
0e775456
GA
5282021-07-13 Jakub Jelinek <jakub@redhat.com>
529 Florian Weimer <fweimer@redhat.com>
530
531 * config/linux/sem.h: Don't include limits.h.
532 (SEM_WAIT): Define to -__INT_MAX__ - 1 instead of INT_MIN.
533 * config/linux/affinity.c: Include limits.h.
534
bea7c16a
GA
5352021-07-01 Jakub Jelinek <jakub@redhat.com>
536
537 PR middle-end/94366
538 * testsuite/libgomp.c-c++-common/pr94366.c: New test.
539
6bc18203
GA
5402021-06-29 Tobias Burnus <tobias@codesourcery.com>
541
542 PR other/67300
543 * testsuite/libgomp.c-c++-common/reduction-16.c: Replace
544 -foffload=nvptx-none= by -foffload-options=nvptx-none= to
545 avoid disabling other offload targets.
546 * testsuite/libgomp.c-c++-common/reduction-5.c: Likewise.
547 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
548 * testsuite/libgomp.c/target-44.c: Likewise.
549
5502021-06-29 Tobias Burnus <tobias@codesourcery.com>
551
552 * testsuite/libgomp.fortran/defaultmap-8.f90 (bar): Determine whether
553 target has shared memory and disable some scalar pointer/allocatable
554 checks if not as firstprivate does not work.
555
90708f87
GA
5562021-06-25 Chung-Lin Tang <cltang@codesourcery.com>
557
558 PR testsuite/101114
559 * testsuite/libgomp.c-c++-common/struct-elem-5.c:
560 Add "target offload_device_nonshared_as" condition for enabling test.
561
9aa8327e
GA
5622021-06-24 Jakub Jelinek <jakub@redhat.com>
563
564 * testsuite/libgomp.c-c++-common/target-in-reduction-1.c: New test.
565 * testsuite/libgomp.c-c++-common/target-in-reduction-2.c: New test.
566 * testsuite/libgomp.c++/target-in-reduction-1.C: New test.
567 * testsuite/libgomp.c++/target-in-reduction-2.C: New test.
568
fcf617f0
GA
5692021-06-23 Jakub Jelinek <jakub@redhat.com>
570
571 PR middle-end/101167
572 * testsuite/libgomp.c-c++-common/task-reduction-15.c: New test.
573
688359a2
GA
5742021-06-17 Chung-Lin Tang <cltang@codesourcery.com>
575
576 * hashtab.h (htab_clear): New function with initialization code
577 factored out from...
578 (htab_create): ...here, adjust to use htab_clear function.
579 * libgomp.h (REFCOUNT_SPECIAL): New symbol to denote range of
580 special refcount values, add comments.
581 (REFCOUNT_INFINITY): Adjust definition to use REFCOUNT_SPECIAL.
582 (REFCOUNT_LINK): Likewise.
583 (REFCOUNT_STRUCTELEM): New special refcount range for structure
584 element siblings.
585 (REFCOUNT_STRUCTELEM_P): Macro for testing for structure element
586 sibling maps.
587 (REFCOUNT_STRUCTELEM_FLAG_FIRST): Flag to indicate first sibling.
588 (REFCOUNT_STRUCTELEM_FLAG_LAST): Flag to indicate last sibling.
589 (REFCOUNT_STRUCTELEM_FIRST_P): Macro to test _FIRST flag.
590 (REFCOUNT_STRUCTELEM_LAST_P): Macro to test _LAST flag.
591 (struct splay_tree_key_s): Add structelem_refcount and
592 structelem_refcount_ptr fields into a union with dynamic_refcount.
593 Add comments.
594 (gomp_map_vars): Delete declaration.
595 (gomp_map_vars_async): Likewise.
596 (gomp_unmap_vars): Likewise.
597 (gomp_unmap_vars_async): Likewise.
598 (goacc_map_vars): New declaration.
599 (goacc_unmap_vars): Likewise.
600 * oacc-mem.c (acc_map_data): Adjust to use goacc_map_vars.
601 (goacc_enter_datum): Likewise.
602 (goacc_enter_data_internal): Likewise.
603 * oacc-parallel.c (GOACC_parallel_keyed): Adjust to use goacc_map_vars
604 and goacc_unmap_vars.
605 (GOACC_data_start): Adjust to use goacc_map_vars.
606 (GOACC_data_end): Adjust to use goacc_unmap_vars.
607 * target.c (hash_entry_type): New typedef.
608 (htab_alloc): New function hook for hashtab.h.
609 (htab_free): Likewise.
610 (htab_hash): Likewise.
611 (htab_eq): Likewise.
612 (hashtab.h): Add file include.
613 (gomp_increment_refcount): New function.
614 (gomp_decrement_refcount): Likewise.
615 (gomp_map_vars_existing): Add refcount_set parameter, adjust to use
616 gomp_increment_refcount.
617 (gomp_map_fields_existing): Add refcount_set parameter, adjust calls
618 to gomp_map_vars_existing.
619 (gomp_map_vars_internal): Add refcount_set parameter, add local openmp_p
620 variable to guard OpenMP specific paths, adjust calls to
621 gomp_map_vars_existing, add structure element sibling splay_tree_key
622 sequence creation code, adjust Fortran map case to avoid increment
623 under OpenMP.
624 (gomp_map_vars): Adjust to static, add refcount_set parameter, manage
625 local refcount_set if caller passed in NULL, adjust call to
626 gomp_map_vars_internal.
627 (gomp_map_vars_async): Adjust and rename into...
628 (goacc_map_vars): ...this new function, adjust call to
629 gomp_map_vars_internal.
630 (gomp_remove_splay_tree_key): New function with code factored out from
631 gomp_remove_var_internal.
632 (gomp_remove_var_internal): Add code to handle removing multiple
633 splay_tree_key sequence for structure elements, adjust code to use
634 gomp_remove_splay_tree_key for splay-tree key removal.
635 (gomp_unmap_vars_internal): Add refcount_set parameter, adjust to use
636 gomp_decrement_refcount.
637 (gomp_unmap_vars): Adjust to static, add refcount_set parameter, manage
638 local refcount_set if caller passed in NULL, adjust call to
639 gomp_unmap_vars_internal.
640 (gomp_unmap_vars_async): Adjust and rename into...
641 (goacc_unmap_vars): ...this new function, adjust call to
642 gomp_unmap_vars_internal.
643 (GOMP_target): Manage refcount_set and adjust calls to gomp_map_vars and
644 gomp_unmap_vars.
645 (GOMP_target_ext): Likewise.
646 (gomp_target_data_fallback): Adjust call to gomp_map_vars.
647 (GOMP_target_data): Likewise.
648 (GOMP_target_data_ext): Likewise.
649 (GOMP_target_end_data): Adjust call to gomp_unmap_vars.
650 (gomp_exit_data): Add refcount_set parameter, adjust to use
651 gomp_decrement_refcount, adjust to queue splay-tree keys for removal
652 after main loop.
653 (GOMP_target_enter_exit_data): Manage refcount_set and adjust calls to
654 gomp_map_vars and gomp_exit_data.
655 (gomp_target_task_fn): Likewise.
656 * testsuite/libgomp.c-c++-common/refcount-1.c: New testcase.
657 * testsuite/libgomp.c-c++-common/struct-elem-1.c: New testcase.
658 * testsuite/libgomp.c-c++-common/struct-elem-2.c: New testcase.
659 * testsuite/libgomp.c-c++-common/struct-elem-3.c: New testcase.
660 * testsuite/libgomp.c-c++-common/struct-elem-4.c: New testcase.
661 * testsuite/libgomp.c-c++-common/struct-elem-5.c: New testcase.
662
ede6c356
GA
6632021-06-15 Tobias Burnus <tobias@codesourcery.com>
664
665 PR fortran/92568
666 * testsuite/libgomp.fortran/defaultmap-8.f90: New test.
667
43c35d0d
GA
6682021-06-10 Andrew Stubbs <ams@codesourcery.com>
669 Thomas Schwinge <thomas@codesourcery.com>
670
671 * libgomp.map (GOACC_2.0.2): New symbol version.
672 * libgomp_g.h (GOACC_enter_data, GOACC_exit_data) New prototypes.
673 * oacc-mem.c (GOACC_enter_data, GOACC_exit_data) New functions.
674
6752021-06-10 Thomas Schwinge <thomas@codesourcery.com>
676 Andrew Stubbs <ams@codesourcery.com>
677
678 * oacc-mem.c (goacc_enter_exit_data_internal): New function,
679 extracted from...
680 (GOACC_enter_exit_data): ... here.
681 (GOACC_declare): Use it.
682
6832021-06-10 Thomas Schwinge <thomas@codesourcery.com>
684
685 * oacc-parallel.c (GOACC_declare): Move...
686 * oacc-mem.c: ... here.
687 * libgomp_g.h: Adjust.
688
6892021-06-10 Andrew Stubbs <ams@codesourcery.com>
690 Thomas Schwinge <thomas@codesourcery.com>
691
692 * oacc-parallel.c (GOACC_declare): Clean up 'GOMP_MAP_POINTER'
693 handling.
694
6952021-06-10 Jakub Jelinek <jakub@redhat.com>
696
697 PR tree-optimization/100981
698 * testsuite/libgomp.fortran/pr100981-2.f90 (cdcdot): Initialize
699 dsdotr and dsdoti to 0.
700
4f625f47
GA
7012021-06-09 H.J. Lu <hjl.tools@gmail.com>
702
703 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -march=i486
704 if atomic compare-and-swap is supported on 'int'.
705
7062021-06-09 Richard Biener <rguenther@suse.de>
707
708 PR tree-optimization/100981
709 * testsuite/libgomp.fortran/pr100981-2.f90: New testcase.
710
c6038721
GA
7112021-06-08 Thomas Schwinge <thomas@codesourcery.com>
712
713 * plugin/plugin-gcn.c (gcn_exec): Force 'num_workers (1)'
714 unconditionally.
715 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
716 Update.
717 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
718 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
719
7202021-06-08 Thomas Schwinge <thomas@codesourcery.com>
721
722 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Enable for all but
723 '-DACC_MEM_SHARED=0'.
724 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
725 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
726 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
727 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
728 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
729 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
730 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
731 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
732 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
733 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
734 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
735 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
736 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
737 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
738 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Add
739 'acc_device_radeon' testing.
740 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
741 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
742 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
743 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Enable for all.
744 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
745 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
746 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
747 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
748 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
749 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
750 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Improve checking
751 for non-'openacc_nvidia_accel_selected'.
752 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
753 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Clarify that "Not
754 all implement this checking".
755 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
756 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
757 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
758 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
759 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
760
7612021-06-08 Thomas Schwinge <thomas@codesourcery.com>
762
763 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Simplify.
764 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: Update.
765
7662021-06-08 Thomas Schwinge <thomas@codesourcery.com>
767
768 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Fix
769 for 'acc_device_radeon'.
770
7712021-06-08 Thomas Schwinge <thomas@codesourcery.com>
772
773 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Enhance
774 for non-'acc_device_nvidia'.
775
7762021-06-08 Thomas Schwinge <thomas@codesourcery.com>
777
778 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Add
779 'acc_device_radeon' testing.
780 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
781 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
782 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
783
7842021-06-08 Thomas Schwinge <thomas@codesourcery.com>
785
786 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Don't
787 require 'openacc_nvidia_accel_selected'. Fix up for
788 'ACC_DEVICE_TYPE_radeon'.
789
7902021-06-08 Thomas Schwinge <thomas@codesourcery.com>
791
792 * testsuite/libgomp.oacc-c++/declare-1.C: Don't require
793 'openacc_nvidia_accel_selected'.
794 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
795
7962021-06-08 Thomas Schwinge <thomas@codesourcery.com>
797
798 * testsuite/lib/libgomp.exp
799 (check_effective_target_openacc_radeon_accel_selected):
800 Streamline.
801
8022021-06-08 Thomas Schwinge <thomas@codesourcery.com>
803
804 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Revert
805 PR80547 workaround.
806
8072021-06-08 Thomas Schwinge <thomas@codesourcery.com>
808
809 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
810 <acc_device_nvidia>: Update comment.
811
48166757
GA
8122021-05-28 Tobias Burnus <tobias@codesourcery.com>
813
814 * testsuite/libgomp.fortran/depend-iterator-2.f90: New test.
815
cd62d089
GA
8162021-05-27 Jakub Jelinek <jakub@redhat.com>
817
818 * testsuite/lib/libgomp.exp (check_effective_target_openacc_cuda,
819 check_effective_target_openacc_cublas,
820 check_effective_target_openacc_cudart): New.
821 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Require effective
822 target openacc_cublas.
823 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
824 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
825 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Require effective
826 target openacc_cuda.
827 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
828 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
829 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
830 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
831 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
832 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
833 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
834 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
835 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Likewise.
836 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
837 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
838 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
839 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
840 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
841 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
842 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
843 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Require effective
844 targets openacc_cublas and openacc_cudart.
845 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
846 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
847 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
848 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
849 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c:
850 Require effective target openacc_cudart.
851 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Add -DUSE_CUDA_H
852 for effective target openacc_cuda and add && defined USE_CUDA_H to
853 preprocessor conditionals. Guard -lcuda also on openacc_cuda
854 effective target.
855
01c59ef2
GA
8562021-05-26 Jakub Jelinek <jakub@redhat.com>
857
858 PR libgomp/100573
859 * config/nvptx/target.c (GOMP_target_ext, GOMP_target_data_ext,
860 GOMP_target_end_data, GOMP_target_update_ext,
861 GOMP_target_enter_exit_data): New dummy entrypoints.
862 * config/gcn/target.c (GOMP_target_ext, GOMP_target_data_ext,
863 GOMP_target_end_data, GOMP_target_update_ext,
864 GOMP_target_enter_exit_data): Likewise.
865 * testsuite/libgomp.c-c++-common/for-3.c (DO_PRAGMA, OMPTEAMS,
866 OMPFROM, OMPTO): Define.
867 (main): Remove #pragma omp target teams around all the tests.
868 * testsuite/libgomp.c-c++-common/target-41.c: New test.
869 * testsuite/libgomp.c-c++-common/target-42.c: New test.
870
2bc6dace
GA
8712021-05-25 Jakub Jelinek <jakub@redhat.com>
872
873 PR middle-end/99928
874 * testsuite/libgomp.c-c++-common/reduction-17.c: New test.
875
637569df
GA
8762021-05-24 Tobias Burnus <tobias@codesourcery.com>
877
878 PR fortran/86470
879 * testsuite/libgomp.fortran/class-firstprivate-1.f90: New test.
880 * testsuite/libgomp.fortran/class-firstprivate-2.f90: New test.
881 * testsuite/libgomp.fortran/class-firstprivate-3.f90: New test.
882
15d30d2f
GA
8832021-05-22 Thomas Schwinge <thomas@codesourcery.com>
884
885 PR testsuite/90115
886 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Prune
887 uninteresting/varying diagnostics.
888
2832d51b
GA
8892021-05-21 Thomas Schwinge <thomas@codesourcery.com>
890
891 PR middle-end/90115
892 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Update.
893 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
894
8952021-05-21 Thomas Schwinge <thomas@codesourcery.com>
896
897 PR middle-end/90115
898 * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: New
899 file.
900 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
901 * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Likewise.
902 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
903 Likewise.
904 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
905 Likewise.
906 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
907 Likewise.
908 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
909 Likewise.
910 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
911 Likewise.
912 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
913 Likewise.
914 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
915 Likewise.
916 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
917 Likewise.
918 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
919 Likewise.
920 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
921 Likewise.
922 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
923 Likewise.
924 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
925 Likewise.
926 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
927 Likewise.
928 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
929 Likewise.
930 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
931 Likewise.
932 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
933 Likewise.
934 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
935 Likewise.
936 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
937 Likewise.
938 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
939 Likewise.
940 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
941 Likewise.
942 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
943 Likewise.
944 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
945 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
946 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
947 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
948 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
949 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
950 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
951 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
952 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
953 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
954 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
955 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
956 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
957 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
958 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
959 Likewise.
960 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c:
961 Likewise.
962 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c:
963 Likewise.
964 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
965 Likewise.
966 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
967 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
968 Likewise.
969 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
970 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
971 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
972 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
973 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
974 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
975 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
976 Likewise.
977 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
978 Likewise.
979 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
980 Likewise.
981 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
982 Likewise.
983 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
984 Likewise.
985 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
986 Likewise.
987 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
988 Likewise.
989 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
990 Likewise.
991 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
992 Likewise.
993 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
994 Likewise.
995 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
996 Likewise.
997 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
998 Likewise.
999 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
1000 Likewise.
1001 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
1002 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
1003 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
1004 Likewise.
1005 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
1006 Likewise.
1007 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
1008 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
1009 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
1010
10112021-05-21 Julian Brown <julian@codesourcery.com>
1012 Chung-Lin Tang <cltang@codesourcery.com>
1013 Thomas Schwinge <thomas@codesourcery.com>
1014
1015 PR middle-end/90115
1016 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c: New
1017 test.
1018 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
1019 Likewise.
1020 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
1021 Likewise.
1022
10232021-05-21 Thomas Schwinge <thomas@codesourcery.com>
1024
1025 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Don't skip
1026 for nvptx offloading.
1027
10282021-05-21 Tobias Burnus <tobias@codesourcery.com>
1029
1030 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: New.
1031
65f32e5d
GA
10322021-05-19 Thomas Schwinge <thomas@codesourcery.com>
1033
1034 PR target/83812
1035 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: New.
1036
10372021-05-19 Julian Brown <julian@codesourcery.com>
1038
1039 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: New.
1040
a8daf9a1
GA
10412021-05-18 Thomas Schwinge <thomas@codesourcery.com>
1042
1043 * testsuite/lib/libgomp.exp
1044 (check_effective_target_offload_target_nvptx): Don't shadow global
1045 'offload_targets' variable.
1046
10472021-05-18 Thomas Schwinge <thomas@codesourcery.com>
1048
1049 * testsuite/libgomp.c-c++-common/reduction-5.c: Restrict
1050 '-latomic' to nvptx offloading compilation.
1051 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
1052
10532021-05-18 Thomas Schwinge <thomas@codesourcery.com>
1054
1055 * testsuite/libgomp.c/target-44.c: Restrict '-latomic' to nvptx
1056 offloading compilation.
1057
a7ffc1ef
GA
10582021-05-17 Kwok Cheung Yeung <kcy@codesourcery.com>
1059
1060 * task.c (omp_fulfill_event): Call gomp_team_barrier_set_task_pending
1061 if new tasks generated.
1062 * testsuite/libgomp.c-c++-common/task-detach-13.c: New.
1063
87a7d10c
GA
10642021-05-14 Tobias Burnus <tobias@codesourcery.com>
1065
1066 * testsuite/libgomp.fortran/parallel-master.f90: New test.
1067
f9af11c7
GA
10682021-05-13 Martin Liska <mliska@suse.cz>
1069
1070 PR testsuite/100569
1071 * testsuite/libgomp.c/omp-nested-3.c: Prune new LTO warning.
1072 * testsuite/libgomp.c/pr46032-2.c: Likewise.
1073 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c: Likewise.
1074 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c: Likewise.
1075
0ff3a0f2
GA
10762021-05-12 Tobias Burnus <tobias@codesourcery.com>
1077
1078 * testsuite/libgomp.c-c++-common/task-detach-12.c: New test.
1079 * testsuite/libgomp.fortran/task-detach-12.f90: New test.
1080
037e3661
GA
10812021-05-11 Jakub Jelinek <jakub@redhat.com>
1082
1083 PR middle-end/100471
1084 * taskloop.c (GOMP_taskloop): If GOMP_TASK_FLAG_REDUCTION and not
1085 GOMP_TASK_FLAG_NOGROUP, when doing early return clear the task
1086 reduction pointer.
1087 * testsuite/libgomp.c/task-reduction-4.c: New test.
1088
62d87a32
GA
10892021-05-07 Tobias Burnus <tobias@codesourcery.com>
1090 Tom de Vries <tdevries@suse.de>
1091
1092 * testsuite/libgomp.c-c++-common/reduction-5.c: New test, testing
1093 complex/floating-point || + && reduction with 'omp target'.
1094 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
1095
99e8df7a
GA
10962021-05-04 Tobias Burnus <tobias@codesourcery.com>
1097
1098 * testsuite/libgomp.c-c++-common/reduction-1.c: New test.
1099 * testsuite/libgomp.c-c++-common/reduction-2.c: New test.
1100 * testsuite/libgomp.c-c++-common/reduction-3.c: New test.
1101 * testsuite/libgomp.c-c++-common/reduction-4.c: New file.
1102
11032021-05-04 Tobias Burnus <tobias@codesourcery.com>
1104
1105 PR testsuite/100397
1106 * testsuite/libgomp.fortran/depobj-1.f90 (dep2, dep3): Move var
1107 declaration to scope of non-'depend'-guarded assignment to avoid races.
1108
e690396d
GA
11092021-05-03 Tom de Vries <tdevries@suse.de>
1110
1111 PR target/100321
1112 * testsuite/libgomp.c/target-44.c: New test.
1113
9326049e
GA
11142021-04-30 Roman Zhuykov <zhroma@ispras.ru>
1115
1116 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-3.c: New test.
1117
3c8e539d
GA
11182021-04-29 Tom de Vries <tdevries@suse.de>
1119
1120 * testsuite/libgomp.c/pr81778.c: New test.
1121
11222021-04-29 Tom de Vries <tdevries@suse.de>
1123
1124 PR target/100232
1125 * testsuite/libgomp.c/target-43.c: New file.
1126
e4ff4ffb
GA
11272021-04-28 Jakub Jelinek <jakub@redhat.com>
1128 Tobias Burnus <tobias@codesourcery.com>
1129
1130 * configure.ac (OFFLOAD_DEFAULTED): AC_DEFINE if offload-defaulted.
1131 * target.c (gomp_load_plugin_for_device): If set and if a plugin
1132 can't be dlopened, silently assume it has no devices.
1133 * Makefile.in: Regenerate.
1134 * config.h.in: Regenerate.
1135 * configure: Regenerate.
1136
c0fa3f2f
GA
11372021-04-26 Tobias Burnus <tobias@codesourcery.com>
1138
1139 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
1140 Use [Ww]arning in dg-bogus as FE diagnostic and default
1141 diagnostic differ and the result depends on ENABLE_OFFLOAD.
1142 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
1143 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
1144 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
1145
11462021-04-26 Tobias Burnus <tobias@codesourcery.com>
1147
1148 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
1149 Correct spelling in dg-bogus to match -Wopenacc-parallelism.
1150 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
1151 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
1152 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
1153
11542021-04-26 Thomas Schwinge <thomas@codesourcery.com>
1155 Nathan Sidwell <nathan@codesourcery.com>
1156 Tom de Vries <vries@codesourcery.com>
1157 Julian Brown <julian@codesourcery.com>
1158 Kwok Cheung Yeung <kcy@codesourcery.com>
1159
1160 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Specify
1161 '-Wopenacc-parallelism', and match diagnostics, as appropriate.
1162 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
1163 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
1164 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
1165 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
1166 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c:
1167 Likewise.
1168 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
1169 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
1170 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
1171 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
1172 Likewise.
1173 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
1174 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
1175 Likewise.
1176 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
1177 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
1178 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
1179 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
1180 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
1181 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
1182 Likewise.
1183 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
1184 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
1185 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
1186 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
1187 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
1188 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
1189 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
1190 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
1191 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
1192 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
1193 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
1194
11952021-04-26 Thomas Schwinge <thomas@codesourcery.com>
1196
1197 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Don't
1198 compile with '-w'.
1199 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
1200 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
1201 Likewise.
1202 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
1203 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: Likewise.
1204 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
1205 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
1206 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
1207 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
1208 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
1209
e3948473
GA
12102021-04-22 Richard Biener <rguenther@suse.de>
1211
1212 * testsuite/libgomp.c-c++-common/reduction-16.c: Use -latomic
1213 only on nvptx-none.
1214
c1ef0c92
GA
12152021-04-21 Tobias Burnus <tobias@codesourcery.com>
1216
1217 * testsuite/libgomp.fortran/depobj-1.f90: Use omp_lib's
1218 omp_depend_kind instead of defining it as 16.
1219
12202021-04-21 Tobias Burnus <tobias@codesourcery.com>
1221
1222 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
1223 New, based on check_effective_target_offload_target_nvptx.
1224 (check_effective_target_offload_target_nvptx): Call it.
1225 (check_effective_target_offload_target_amdgcn): New.
1226 * testsuite/libgomp.c-c++-common/function-not-offloaded.c:
1227 Require target offload_target_nvptx || offload_target_amdgcn.
1228 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: Likewise.
1229 * testsuite/libgomp.c/pr86416-1.c: Likewise.
1230 * testsuite/libgomp.c/pr86416-2.c: Likewise.
1231
12322021-04-21 Tobias Burnus <tobias@codesourcery.com>
1233
1234 * testsuite/libgomp.fortran/depobj-1.f90: New test.
1235
6e81e015
GA
12362021-04-19 Thomas Schwinge <thomas@codesourcery.com>
1237
1238 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
1239 '-fopenacc-kernels=[...]' -> '--param=openacc-kernels=[...]'.
1240 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
1241 Likewise.
1242 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
1243 Likewise.
1244 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
1245
ee351f7f
GA
12462021-04-15 Thomas Schwinge <thomas@codesourcery.com>
1247
1248 PR target/99555
1249 * testsuite/lib/libgomp.exp
1250 (check_effective_target_offload_device_nvptx): New.
1251 * testsuite/libgomp.c/pr99555-1.c <nvptx offload device>: Until
1252 resolved, make sure that we exit quickly, with error status,
1253 XFAILed.
1254 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise.
1255 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
1256
df3b1289
GA
12572021-04-14 Jakub Jelinek <jakub@redhat.com>
1258
1259 PR testsuite/100071
1260 * testsuite/libgomp.fortran/alloc-1.F90: Call c_f_pointer after last
1261 cp = omp_alloc with cp, p arguments instead of cq, q and call
1262 c_f_pointer after last cq = omp_alloc with cq, q.
1263
a0ecde22
GA
12642021-04-11 Hafiz Abid Qadeer <abidh@codesourcery.com>
1265
1266 PR middle-end/98088
1267 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Add check
1268 for loop with GT/GE condition.
1269 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
1270
3115aba8
GA
12712021-04-09 Thomas Schwinge <thomas@codesourcery.com>
1272
1273 PR middle-end/84991
1274 PR middle-end/84992
1275 PR middle-end/90779
1276 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: New.
1277
12782021-04-09 Jakub Jelinek <jakub@redhat.com>
1279
1280 PR libgomp/99984
1281 * team.c (gomp_thread_start): Call pthread_setspecific for
1282 !(defined HAVE_TLS || defined USE_EMUTLS) only after local_thr
1283 has been initialized to avoid false positive warning.
1284
65374af2
GA
12852021-03-29 Tobias Burnus <tobias@codesourcery.com>
1286
1287 PR target/99555
1288 * testsuite/lib/on_device_arch.c: Move to ...
1289 * testsuite/libgomp.c-c++-common/on_device_arch.h: ... here.
1290 * testsuite/libgomp.fortran/on_device_arch.c: New file;
1291 #include on_device_arch.h.
1292 * testsuite/libgomp.c-c++-common/task-detach-6.c: #include
1293 on_device_arch.h instead of using dg-additional-source.
1294 * testsuite/libgomp.c/pr99555-1.c: Likewise.
1295 * testsuite/libgomp.fortran/task-detach-6.f90: Update to use
1296 on_device_arch.c without relative paths.
1297
4493b1c1
GA
12982021-03-25 Thomas Schwinge <thomas@codesourcery.com>
1299
1300 * plugin/plugin-gcn.c (init_environment_variables): Don't prepend
1301 the 'HSA_RUNTIME_LIB' path to 'libhsa-runtime64.so'.
1302 * plugin/configfrag.ac (HSA_RUNTIME_LIB): Clean up.
1303 * config.h.in: Regenerate.
1304 * configure: Likewise.
1305
13062021-03-25 Thomas Schwinge <thomas@codesourcery.com>
1307
1308 PR target/99555
1309 * testsuite/lib/on_device_arch.c: New file.
1310 * testsuite/libgomp.c/pr99555-1.c: Likewise.
1311 * testsuite/libgomp.c-c++-common/task-detach-6.c: Until resolved,
1312 skip for nvptx offloading, with error status.
1313 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
1314
13152021-03-25 Thomas Schwinge <thomas@codesourcery.com>
1316
1317 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
1318 OpenACC 'serial' construct diagnostic for nvptx offloading.
1319
3c5b6d24
GA
13202021-03-15 Tobias Burnus <tobias@codesourcery.com>
1321
1322 PR c++/99509
1323 * testsuite/libgomp.c-c++-common/declare_target-1.c: New test.
1324
6da2762a
GA
13252021-03-12 Tobias Burnus <tobias@codesourcery.com>
1326
1327 PR fortran/98858
1328 * testsuite/libgomp.fortran/use_device_ptr-3.f90: New test.
1329
67f10d28
GA
13302021-03-04 Jakub Jelinek <jakub@redhat.com>
1331
1332 * configure.ac: Add AC_CHECK_SIZEOF([void *]).
1333 * plugin/configfrag.ac: Check $ac_cv_sizeof_void_p value instead of
1334 checking of -m32 or -mx32 options on the command line.
1335 * config.h.in: Regenerated.
1336 * configure: Regenerated.
1337
ec9dc4fa
GA
13382021-02-27 Iain Sandoe <iain@sandoe.co.uk>
1339
1340 * testsuite/libgomp.c-c++-common/pr96390.c: Require alias
1341 support from the target.
1342
daa68844
GA
13432021-02-25 Kwok Cheung Yeung <kcy@codesourcery.com>
1344 Jakub Jelinek <jakub@redhat.com>
1345
1346 PR libgomp/98738
1347 * libgomp.h (enum gomp_task_kind): Add GOMP_TASK_DETACHED.
1348 (struct gomp_task): Replace detach and completion_sem fields with
1349 union containing completion_sem and detach_team. Add deferred_p
1350 field.
1351 (struct gomp_team): Remove task_detach_queue.
1352 * task.c: Include assert.h.
1353 (gomp_init_task): Initialize deferred_p and completion_sem fields.
1354 Rearrange initialization order of fields.
1355 (task_fulfilled_p): Delete.
1356 (GOMP_task): Use address of task as the event handle. Remove
1357 initialization of detach field. Initialize deferred_p field.
1358 Use automatic local for completion_sem. Initialize detach_team field
1359 for deferred tasks.
1360 (gomp_barrier_handle_tasks): Remove handling of task_detach_queue.
1361 Set kind of suspended detach task to GOMP_TASK_DETACHED and
1362 decrement task_running_count. Move finish_cancelled block out of
1363 else branch. Relocate call to gomp_team_barrier_done.
1364 (GOMP_taskwait): Handle tasks with completion events that have not
1365 been fulfilled.
1366 (GOMP_taskgroup_end): Likewise.
1367 (omp_fulfill_event): Use address of task as event handle. Post to
1368 completion_sem for undeferred tasks. Clear detach_team if task
1369 has not finished. For finished tasks, handle post-execution tasks,
1370 call gomp_team_barrier_wake if necessary, and free task.
1371 * team.c (gomp_new_team): Remove initialization of task_detach_queue.
1372 (free_team): Remove free of task_detach_queue.
1373 * testsuite/libgomp.c-c++-common/task-detach-1.c: Fix formatting.
1374 * testsuite/libgomp.c-c++-common/task-detach-2.c: Fix formatting.
1375 * testsuite/libgomp.c-c++-common/task-detach-3.c: Fix formatting.
1376 * testsuite/libgomp.c-c++-common/task-detach-4.c: Fix formatting.
1377 * testsuite/libgomp.c-c++-common/task-detach-5.c: Fix formatting.
1378 Change data-sharing of detach events on enclosing parallel to private.
1379 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise. Remove
1380 taskwait directive.
1381 * testsuite/libgomp.c-c++-common/task-detach-7.c: New.
1382 * testsuite/libgomp.c-c++-common/task-detach-8.c: New.
1383 * testsuite/libgomp.c-c++-common/task-detach-9.c: New.
1384 * testsuite/libgomp.c-c++-common/task-detach-10.c: New.
1385 * testsuite/libgomp.c-c++-common/task-detach-11.c: New.
1386 * testsuite/libgomp.fortran/task-detach-1.f90: Fix formatting.
1387 * testsuite/libgomp.fortran/task-detach-2.f90: Fix formatting.
1388 * testsuite/libgomp.fortran/task-detach-3.f90: Fix formatting.
1389 * testsuite/libgomp.fortran/task-detach-4.f90: Fix formatting.
1390 * testsuite/libgomp.fortran/task-detach-5.f90: Fix formatting.
1391 Change data-sharing of detach events on enclosing parallel to private.
1392 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise. Remove
1393 taskwait directive.
1394 * testsuite/libgomp.fortran/task-detach-7.f90: New.
1395 * testsuite/libgomp.fortran/task-detach-8.f90: New.
1396 * testsuite/libgomp.fortran/task-detach-9.f90: New.
1397 * testsuite/libgomp.fortran/task-detach-10.f90: New.
1398 * testsuite/libgomp.fortran/task-detach-11.f90: New.
1399
2f5765cf
GA
14002021-02-22 Tobias Burnus <tobias@codesourcery.com>
1401
1402 PR fortran/99171
1403 * testsuite/libgomp.fortran/dummy-procs-1.f90: New test.
1404
acc0ee5c
GA
14052021-02-17 Julian Brown <julian@codesourcery.com>
1406
1407 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Remove
1408 expected errors.
1409
14102021-02-17 Julian Brown <julian@codesourcery.com>
1411
1412 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: New test.
1413 * testsuite/libgomp.oacc-fortran/update-dt-array.f90: Likewise.
1414
0c5cdb31
GA
14152021-02-11 Uroš Bizjak <ubizjak@gmail.com>
1416
1417 * config/linux/x86/futex.h (__futex_wait):
1418 Revert output type back to long.
1419 (__futex_wake): Ditto.
1420 (futex_wait): Update for revert.
1421 (futex_wake): Ditto.
1422
14232021-02-11 Uroš Bizjak <ubizjak@gmail.com>
1424
1425 * config/linux/x86/futex.h (__futex_wait): New static inline
1426 wrapper function. Correct output type to int and
1427 timeout type to void *.
1428 (__futex_wake): New static inline wrapper function.
1429 Correct output type to int.
1430 (futex_wait): Use __futex_wait.
1431 (futex_wake): Use __futex_wake.
1432
4b37c3ea
GA
14332021-02-10 Julian Brown <julian@codesourcery.com>
1434
1435 PR fortran/98979
1436 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Add expected
1437 errors.
1438
a19dd5e6
GA
14392021-02-04 Julian Brown <julian@codesourcery.com>
1440
1441 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: New test.
1442
9faaa807
GA
14432021-02-03 Andrew Stubbs <ams@codesourcery.com>
1444
1445 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
1446 EF_AMDGPU_MACH_AMDGCN_GFX908.
1447 (gcn_gfx908_s): New constant string.
1448 (isa_hsa_name): Add gfx908.
1449 (isa_code): Add gfx908.
1450
161e4c08
GA
14512021-01-25 Kwok Cheung Yeung <kcy@codesourcery.com>
1452
1453 * libgomp.texi (omp_fulfill_event): New entry.
1454
b93d0e36
GA
14552021-01-20 Jakub Jelinek <jakub@redhat.com>
1456
1457 * task.c (GOMP_task): Rename priority argument to priority_arg,
1458 add priority automatic variable and modify that variable. Instead of
1459 clearing detach argument when GOMP_TASK_FLAG_DETACH bit is not set,
1460 check flags for that bit.
1461
f35a4f96
GA
14622021-01-19 Tobias Burnus <tobias@codesourcery.com>
1463
1464 PR fortran/98476
1465 * testsuite/libgomp.fortran/is_device_ptr-1.f90: New test.
1466
ef1f8ee6
GA
14672021-01-18 Andreas Schwab <schwab@suse.de>
1468
1469 * configure.tgt (riscv64*-*-linux*): Add linux to config_path.
1470
14712021-01-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
1472
1473 * config/rtems/sem.h (gomp_sem_getcount): New function.
1474
14752021-01-18 Jakub Jelinek <jakub@redhat.com>
1476
1477 * config/linux/sem.h (gomp_sem_getcount): New function.
1478 * config/posix/sem.h (gomp_sem_getcount): New function.
1479 * config/posix/sem.c (gomp_sem_getcount): New function.
1480 * config/accel/sem.h (gomp_sem_getcount): New function.
1481 * task.c (task_fulfilled_p): Use gomp_sem_getcount.
1482 (omp_fulfill_event): Likewise.
1483
59cf67d1
GA
14842021-01-16 Kwok Cheung Yeung <kcy@codesourcery.com>
1485
1486 * fortran.c (omp_fulfill_event_): New.
1487 * libgomp.h (struct gomp_task): Add detach and completion_sem fields.
1488 (struct gomp_team): Add task_detach_queue and task_detach_count
1489 fields.
1490 * libgomp.map (OMP_5.0.1): Add omp_fulfill_event and omp_fulfill_event_.
1491 * libgomp_g.h (GOMP_task): Add extra argument.
1492 * omp.h.in (enum omp_event_handle_t): New.
1493 (omp_fulfill_event): New.
1494 * omp_lib.f90.in (omp_event_handle_kind): New.
1495 (omp_fulfill_event): New.
1496 * omp_lib.h.in (omp_event_handle_kind): New.
1497 (omp_fulfill_event): Declare.
1498 * priority_queue.c (priority_tree_find): New.
1499 (priority_list_find): New.
1500 (priority_queue_find): New.
1501 * priority_queue.h (priority_queue_predicate): New.
1502 (priority_queue_find): New.
1503 * task.c (gomp_init_task): Initialize detach field.
1504 (task_fulfilled_p): New.
1505 (GOMP_task): Add detach argument. Ignore detach argument if
1506 GOMP_TASK_FLAG_DETACH not set in flags. Initialize completion_sem
1507 field. Copy address of completion_sem into detach argument and
1508 into the start of the data record. Wait for detach event if task
1509 not deferred.
1510 (gomp_barrier_handle_tasks): Queue tasks with unfulfilled events.
1511 Remove completed tasks and requeue dependent tasks.
1512 (omp_fulfill_event): New.
1513 * team.c (gomp_new_team): Initialize task_detach_queue and
1514 task_detach_count fields.
1515 (free_team): Free task_detach_queue field.
1516 * testsuite/libgomp.c-c++-common/task-detach-1.c: New testcase.
1517 * testsuite/libgomp.c-c++-common/task-detach-2.c: New testcase.
1518 * testsuite/libgomp.c-c++-common/task-detach-3.c: New testcase.
1519 * testsuite/libgomp.c-c++-common/task-detach-4.c: New testcase.
1520 * testsuite/libgomp.c-c++-common/task-detach-5.c: New testcase.
1521 * testsuite/libgomp.c-c++-common/task-detach-6.c: New testcase.
1522 * testsuite/libgomp.fortran/task-detach-1.f90: New testcase.
1523 * testsuite/libgomp.fortran/task-detach-2.f90: New testcase.
1524 * testsuite/libgomp.fortran/task-detach-3.f90: New testcase.
1525 * testsuite/libgomp.fortran/task-detach-4.f90: New testcase.
1526 * testsuite/libgomp.fortran/task-detach-5.f90: New testcase.
1527 * testsuite/libgomp.fortran/task-detach-6.f90: New testcase.
1528
2f7f0d32
GA
15292021-01-15 Jakub Jelinek <jakub@redhat.com>
1530
1531 PR target/70454
1532 * configure.tgt: For i?86 and x86_64 determine if -march=i486 needs to
1533 be added through preprocessor check on
1534 __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4.
1535
5fff80fd
GA
15362021-01-14 Thomas Schwinge <thomas@codesourcery.com>
1537
1538 PR libgomp/65099
1539 * plugin/configfrag.ac (PLUGIN_NVPTX): Restrict to supported
1540 configurations.
1541 * configure: Regenerate.
1542 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Remove 64-bit
1543 check.
1544
651b8a50
GA
15452021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
1546
1547 * configure: Re-generate.
1548
15492021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
1550
1551 * configure: Re-generate.
1552
15532021-01-05 Julian Brown <julian@codesourcery.com>
1554
1555 * plugin/plugin-nvptx.c (SOFTSTACK_CACHE_LIMIT): New define.
1556 (struct ptx_device): Add omp_stacks struct.
1557 (nvptx_open_device): Initialise cached-stacks housekeeping info.
1558 (nvptx_close_device): Free cached stacks block and mutex.
1559 (nvptx_stacks_free): New function.
1560 (nvptx_alloc): Add SUPPRESS_ERRORS parameter.
1561 (GOMP_OFFLOAD_alloc): Add strategies for freeing soft-stacks block.
1562 (nvptx_stacks_alloc): Rename to...
1563 (nvptx_stacks_acquire): This. Cache stacks block between runs if same
1564 size or smaller is required.
1565 (nvptx_stacks_free): Remove.
1566 (GOMP_OFFLOAD_run): Call nvptx_stacks_acquire and lock stacks block
1567 during kernel execution.
1568
b6dd195a
GA
15692021-01-01 Jakub Jelinek <jakub@redhat.com>
1570
1571 * libgomp.texi: Bump @copying's copyright year.
1572
2d3425a5
GA
15732020-12-28 Gerald Pfeifer <gerald@pfeifer.com>
1574
1575 * libgomp.texi (Top): Avoid bad "up" link.
1576
b1a2242e
GA
15772020-12-18 Jakub Jelinek <jakub@redhat.com>
1578
1579 * testsuite/libgomp.c/task-6.c: New test.
1580
ca2bd949
GA
15812020-12-09 Andrew Stubbs <ams@codesourcery.com>
1582
1583 * plugin/plugin-gcn.c: Include hsa_ext_amd.h.
1584 (HSA_AMD_AGENT_INFO_COMPUTE_UNIT_COUNT): Delete redundant definition.
1585
f6e8e279
GA
15862020-12-08 Tobias Burnus <tobias@codesourcery.com>
1587
1588 * testsuite/libgomp.fortran/scan-1.f90: New test.
1589
6e1edf48
GA
15902020-12-05 Iain Sandoe <iain@sandoe.co.uk>
1591
1592 PR target/97865
1593 * configure: Regenerate.
1594
a9625c50
GA
15952020-11-29 John David Anglin <danglin@gcc.gnu.org>
1596
1597 * configure: Regenerate.
1598
360258da
GA
15992020-11-25 Thomas Schwinge <thomas@codesourcery.com>
1600
1601 * testsuite/libgomp.oacc-c++/cache-1.C: New.
1602 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Update.
1603
16042020-11-25 Andrew Stubbs <ams@codesourcery.com>
1605
1606 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Adjust
1607 expected results.
1608
1e2c9a27
GA
16092020-11-24 Andrew Stubbs <ams@codesourcery.com>
1610
1611 * plugin/plugin-gcn.c: Don't redefine relocations if elf.h has them.
1612 (reserved): Delete unused define.
1613
16142020-11-24 Thomas Schwinge <thomas@codesourcery.com>
1615
1616 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Avoid
1617 Tcl 8.5-specific behavior.
1618 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
1619
25bb75f8
GA
16202020-11-18 Kwok Cheung Yeung <kcy@codesourcery.com>
1621
1622 * env.c (gomp_global_icv): Remove nest_var field. Add
1623 max_active_levels_var field.
1624 (gomp_max_active_levels_var): Remove.
1625 (parse_boolean): Return true on success.
1626 (handle_omp_display_env): Express OMP_NESTED in terms of
1627 max_active_levels_var. Change format specifier for
1628 max_active_levels_var.
1629 (initialize_env): Set max_active_levels_var from
1630 OMP_MAX_ACTIVE_LEVELS, OMP_NESTED, OMP_NUM_THREADS and
1631 OMP_PROC_BIND.
1632 * icv.c (omp_set_nested): Express in terms of
1633 max_active_levels_var.
1634 (omp_get_nested): Likewise.
1635 (omp_set_max_active_levels): Use max_active_levels_var field instead
1636 of gomp_max_active_levels_var.
1637 (omp_get_max_active_levels): Likewise.
1638 * libgomp.h (struct gomp_task_icv): Remove nest_var field. Add
1639 max_active_levels_var field.
1640 (gomp_supported_active_levels): Set to UCHAR_MAX.
1641 (gomp_max_active_levels_var): Delete.
1642 * libgomp.texi (omp_get_nested): Update documentation.
1643 (omp_set_nested): Likewise.
1644 (OMP_MAX_ACTIVE_LEVELS): Likewise.
1645 (OMP_NESTED): Likewise.
1646 (OMP_NUM_THREADS): Likewise.
1647 (OMP_PROC_BIND): Likewise.
1648 * parallel.c (gomp_resolve_num_threads): Replace reference
1649 to nest_var with max_active_levels_var. Use max_active_levels_var
1650 field instead of gomp_max_active_levels_var.
1651
16522020-11-18 Tobias Burnus <tobias@codesourcery.com>
1653
1654 * testsuite/libgomp.c/usleep.h (fallback_usleep): Renamed from
1655 nvptx_usleep; use also for device={arch(gcn)}.
1656
faab61b5
GA
16572020-11-14 Jakub Jelinek <jakub@redhat.com>
1658
1659 * testsuite/libgomp.c-c++-common/allocate-1.c (struct S): New type.
1660 (foo): Add tests for non-VLA private and firstprivate clauses on
1661 omp task.
1662 (bar): Likewise. Remove taking of address from private/firstprivate
1663 variables.
1664 * testsuite/libgomp.c++/allocate-1.C (struct S): New type.
1665 (foo): Add p, q, px and s arguments. Add tests for array reductions
1666 and for non-VLA private and firstprivate clauses on omp task.
1667 (bar): Removed.
1668 (main): Adjust foo caller. Don't call bar.
1669
77f67db2
GA
16702020-11-13 Gergö Barany <gergo@codesourcery.com>
1671 Thomas Schwinge <thomas@codesourcery.com>
1672
1673 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
1674 New.
1675 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
1676 Likewise.
1677 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
1678 Likewise.
1679 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
1680 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
1681
16822020-11-13 Gergö Barany <gergo@codesourcery.com>
1683 Thomas Schwinge <thomas@codesourcery.com>
1684
1685 PR fortran/94358
1686 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: New.
1687
16882020-11-13 Jakub Jelinek <jakub@redhat.com>
1689
1690 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add tests
1691 for array reductions.
1692 (main): Adjust foo callers.
1693
a5a11525
GA
16942020-11-12 Jakub Jelinek <jakub@redhat.com>
1695
1696 * libgomp.map (GOMP_alloc, GOMP_free): Export at GOMP_5.0.1.
1697 * omp.h.in (omp_alloc): Add malloc and alloc_size attributes.
1698 * libgomp_g.h (GOMP_alloc, GOMP_free): Declare.
1699 * allocator.c (omp_aligned_alloc): New for now static function,
1700 add alignment argument and handle it.
1701 (omp_alloc): Reimplement using omp_aligned_alloc.
1702 (GOMP_alloc, GOMP_free): New functions.
1703 (omp_free): Add ialias.
1704 * testsuite/libgomp.c-c++-common/allocate-1.c: New test.
1705 * testsuite/libgomp.c++/allocate-1.C: New test.
1706
17072020-11-12 Thomas Schwinge <thomas@codesourcery.com>
1708
1709 PR fortran/97782
1710 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Adjust.
1711
bb622641
GA
17122020-11-10 Chung-Lin Tang <cltang@codesourcery.com>
1713
1714 * libgomp.h (enum gomp_map_vars_kind): Adjust enum values to be bit-flag
1715 usable.
1716 * oacc-mem.c (acc_map_data): Adjust gomp_map_vars argument flags to
1717 'GOMP_MAP_VARS_OPENACC | GOMP_MAP_VARS_ENTER_DATA'.
1718 (goacc_enter_datum): Likewise for call to gomp_map_vars_async.
1719 (goacc_enter_data_internal): Likewise.
1720 * target.c (gomp_map_vars_internal):
1721 Change checks of GOMP_MAP_VARS_ENTER_DATA to use bit-and (&). Adjust use
1722 of gomp_attach_pointer for OpenMP cases.
1723 (gomp_exit_data): Add handling of GOMP_MAP_DETACH.
1724 (GOMP_target_enter_exit_data): Add handling of GOMP_MAP_ATTACH.
1725 * testsuite/libgomp.c-c++-common/ptr-attach-1.c: New testcase.
1726
0cfd9109
GA
17272020-11-05 Ulrich Drepper <drepper@redhat.com>
1728 Kwok Cheung Yeung <kcy@codesourcery.com>
1729
1730 * Makefile.am (%.mod): Add -cpp and -fopenmp to compile flags.
1731 * Makefile.in: Regenerate.
1732 * fortran.c: Wrap uses of omp_set_nested and omp_get_nested with
1733 pragmas to ignore -Wdeprecated-declarations warnings.
1734 * icv.c: Likewise.
1735 * omp.h.in (__GOMP_DEPRECATED_5_0): Define.
1736 Mark omp_lock_hint_* enum values, omp_lock_hint_t, omp_set_nested,
1737 and omp_get_nested with __GOMP_DEPRECATED_5_0.
1738 * omp_lib.f90.in: Mark omp_get_nested and omp_set_nested as
1739 deprecated.
1740 * testsuite/libgomp.c++/affinity-1.C: Add -Wno-deprecated-declarations
1741 to test options.
1742 * testsuite/libgomp.c/affinity-1.c: Likewise.
1743 * testsuite/libgomp.c/affinity-2.c: Likewise.
1744 * testsuite/libgomp.c/appendix-a/a.15.1.c: Likewise.
1745 * testsuite/libgomp.c/lib-1.c: Likewise.
1746 * testsuite/libgomp.c/nested-1.c: Likewise.
1747 * testsuite/libgomp.c/nested-2.c: Likewise.
1748 * testsuite/libgomp.c/nested-3.c: Likewise.
1749 * testsuite/libgomp.c/pr32362-1.c: Likewise.
1750 * testsuite/libgomp.c/pr32362-2.c: Likewise.
1751 * testsuite/libgomp.c/pr32362-3.c: Likewise.
1752 * testsuite/libgomp.c/pr35549.c: Likewise.
1753 * testsuite/libgomp.c/pr42942.c: Likewise.
1754 * testsuite/libgomp.c/pr61200.c: Likewise.
1755 * testsuite/libgomp.c/sort-1.c: Likewise.
1756 * testsuite/libgomp.c/target-5.c: Likewise.
1757 * testsuite/libgomp.c/target-6.c: Likewise.
1758 * testsuite/libgomp.c/teams-1.c: Likewise.
1759 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
1760 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
1761 * testsuite/libgomp.c/thread-limit-4.c: Likewise.
1762 * testsuite/libgomp.fortran/affinity1.f90: Likewise.
1763 * testsuite/libgomp.fortran/lib1.f90: Likewise.
1764 * testsuite/libgomp.fortran/lib2.f: Likewise.
1765 * testsuite/libgomp.fortran/nested1.f90: Likewise.
1766 * testsuite/libgomp.fortran/teams1.f90: Likewise.
1767
88ce3d5f
GA
17682020-11-02 Thomas Schwinge <thomas@codesourcery.com>
1769
1770 PR target/85486
1771 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: Simplify and enhance.
1772 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
1773 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
1774
17752020-11-02 Thomas Schwinge <thomas@codesourcery.com>
1776
1777 PR testsuite/80219
1778 PR testsuite/85303
1779 * testsuite/lib/libgomp.exp (libgomp_init): Set
1780 'gcc_warning_prefix', 'gcc_error_prefix'.
1781
17822020-10-30 Jakub Jelinek <jakub@redhat.com>
1783
1784 * target.c (gomp_map_vars_internal): Use FIELD_TGT_EMPTY macro
1785 even in field_tgt_clear initializer.
1786
e93aae4a
GA
17872020-10-28 Jakub Jelinek <jakub@redhat.com>
1788
1789 * testsuite/libgomp.c/target-42.c: New test.
1790
17912020-10-28 Jakub Jelinek <jakub@redhat.com>
1792 Tom de Vries <tdevries@suse.de>
1793
1794 PR testsuite/81690
1795 * testsuite/libgomp.c/usleep.h: New file.
1796 * testsuite/libgomp.c/target-32.c: Include usleep.h.
1797 (main): Use tgt_usleep instead of usleep.
1798 * testsuite/libgomp.c/thread-limit-2.c: Include usleep.h.
1799 (main): Use tgt_usleep instead of usleep.
1800
18012020-10-28 Jakub Jelinek <jakub@redhat.com>
1802
1803 PR lto/96680
1804 * testsuite/libgomp.c/declare-variant-1.c: New test.
1805
56ddd5e2
GA
18062020-10-22 Jakub Jelinek <jakub@redhat.com>
1807
1808 * testsuite/libgomp.c/target-41.c: New test.
1809
18102020-10-22 Jakub Jelinek <jakub@redhat.com>
1811
1812 * icv.c (omp_get_initial_device): Remove including corresponding
1813 ialias.
1814 * icv-device.c (omp_get_initial_device): New function. Return
1815 gomp_get_num_devices (). Add ialias.
1816 * target.c (resolve_device): Don't fail with
1817 OMP_TARGET_OFFLOAD=mandatory if device_id is equal to
1818 gomp_get_num_devices ().
1819 (omp_target_alloc, omp_target_free, omp_target_is_present,
1820 omp_target_memcpy, omp_target_memcpy_rect, omp_target_associate_ptr,
1821 omp_target_disassociate_ptr, omp_pause_resource): Use
1822 gomp_get_num_devices () instead of GOMP_DEVICE_HOST_FALLBACK on the
1823 first use in the functions, in uses dominated by the
1824 gomp_get_num_devices call use num_devices_openmp instead.
1825 * libgomp.texi (omp_get_initial_device): Document.
1826 * config/gcn/icv-device.c (omp_get_initial_device): New function.
1827 Add ialias.
1828 * config/nvptx/icv-device.c (omp_get_initial_device): Likewise.
1829 * testsuite/libgomp.c/target-40.c: New test.
1830
18312020-10-21 Jakub Jelinek <jakub@redhat.com>
1832
1833 * env.c (parse_target_offload): Change new_offload var type to int,
1834 preinitialize to -1, remove found var and test new_offload != -1
1835 instead of found.
1836
e2e04288
GA
18372020-10-20 Jakub Jelinek <jakub@redhat.com>
1838
1839 * target.c (gomp_target_init): Inside of the function, use automatic
1840 variables corresponding to num_devices, num_devices_openmp and devices
1841 global variables and update the globals only at the end of the
1842 function.
1843
18442020-10-20 Kwok Cheung Yeung <kcy@codesourcery.com>
1845
1846 * env.c (gomp_target_offload_var): New.
1847 (parse_target_offload): New.
1848 (handle_omp_display_env): Print value of OMP_TARGET_OFFLOAD.
1849 (initialize_env): Parse OMP_TARGET_OFFLOAD.
1850 * libgomp.h (gomp_target_offload_t): New.
1851 (gomp_target_offload_var): New.
1852 * libgomp.texi (OMP_TARGET_OFFLOAD): New section.
1853 * target.c (resolve_device): Generate error if device not found and
1854 offloading is mandatory.
1855 (gomp_target_fallback): Generate error if offloading is mandatory.
1856 (GOMP_target): Add argument in call to gomp_target_fallback.
1857 (GOMP_target_ext): Likewise.
1858 (gomp_target_data_fallback): Generate error if offloading is mandatory.
1859 (GOMP_target_data): Add argument in call to gomp_target_data_fallback.
1860 (GOMP_target_data_ext): Likewise.
1861 (gomp_target_task_fn): Add argument in call to gomp_target_fallback.
1862 (gomp_target_init): Return early if offloading is disabled.
1863
b85d5dc5
GA
18642020-10-15 Kwok Cheung Yeung <kcy@codesourcery.com>
1865
1866 * libgomp.texi (omp_get_max_active_levels): Modify description.
1867 (omp_get_supported_active_levels): Make descriptions consistent.
1868
b2698c21
GA
18692020-10-14 Jakub Jelinek <jakub@redhat.com>
1870
1871 * libgomp.texi (omp_get_supported_active_levels): Fix a typo.
1872
bdd74cc2
GA
18732020-10-13 Kwok Cheung Yeung <kcy@codesourcery.com>
1874
1875 * env.c (gomp_max_active_levels_var): Initialize to
1876 gomp_supported_active_levels.
1877 (initialize_env): Limit gomp_max_active_levels_var to be at most
1878 equal to gomp_supported_active_levels.
1879 * fortran.c (omp_get_supported_active_levels): Add ialias_redirect.
1880 (omp_get_supported_active_levels_): New.
1881 * icv.c (omp_set_max_active_levels): Limit gomp_max_active_levels_var
1882 to at most equal to gomp_supported_active_levels.
1883 (omp_get_supported_active_levels): New.
1884 * libgomp.h (gomp_supported_active_levels): New.
1885 * libgomp.map (OMP_5.0.1): Add omp_get_supported_active_levels and
1886 omp_get_supported_active_levels_.
1887 * libgomp.texi (omp_get_supported_active_levels): New.
1888 (omp_set_max_active_levels): Update. Add reference to
1889 omp_get_supported_active_levels.
1890 * omp.h.in (omp_get_supported_active_levels): New.
1891 * omp_lib.f90.in (omp_get_supported_active_levels): New.
1892 * omp_lib.h.in (omp_get_supported_active_levels): New.
1893 * testsuite/libgomp.c/lib-2.c (main): Check omp_get_max_active_levels
1894 against omp_get_supported_active_levels.
1895 * testsuite/libgomp.fortran/lib4.f90 (lib4): Likewise.
1896
2baa36d4
GA
18972020-10-11 Clement Chigot <clement.chigot@atos.net>
1898
1899 * config/t-aix: Delete and recreate libgomp before creating
1900 FAT library.
1901
da9df699
GA
19022020-10-08 Tom de Vries <tdevries@suse.de>
1903
1904 PR libgomp/81802
1905 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_run): Report launch
1906 dimensions.
1907
8e97b905
GA
19082020-10-06 Tom de Vries <tdevries@suse.de>
1909
1910 * testsuite/libgomp.oacc-fortran/declare-5.f90: Add xfail for PR92790.
1911
19122020-10-06 Tom de Vries <tdevries@suse.de>
1913
1914 PR middle-end/90861
1915 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Remove xfail.
1916
7e9282ae
GA
19172020-10-05 Tom de Vries <tdevries@suse.de>
1918
1919 PR fortran/95654
1920 * testsuite/libgomp.fortran/pr95654.f90: New test.
1921
b0b9b8f0
GA
19222020-10-02 Tobias Burnus <tobias@codesourcery.com>
1923
1924 * Makefile.in: Regenerate with automake 1.15.1.
1925 * aclocal.m4: Likewise.
1926 * configure: Likewise.
1927 * testsuite/Makefile.in: Likewise.
1928
660bfe61
GA
19292020-09-30 Andrew Stubbs <ams@codesourcery.com>
1930
1931 * parallel.c (gomp_resolve_num_threads): Ignore nest_var on nvptx
1932 and amdgcn targets.
1933
19342020-09-30 Tobias Burnus <tobias@codesourcery.com>
1935
1936 * testsuite/libgomp.fortran/declare-target-3.f90: New test.
1937
93bca37c
GA
19382020-09-29 Andrew Stubbs <ams@codesourcery.com>
1939
1940 * config/gcn/bar.c (gomp_barrier_wait_end): Skip the barrier if the
1941 total number of threads is one.
1942 (gomp_team_barrier_wake): Likewise.
1943 (gomp_team_barrier_wait_end): Likewise.
1944 (gomp_team_barrier_wait_cancel_end): Likewise.
1945 * config/nvptx/bar.c (gomp_barrier_wait_end): Likewise.
1946 (gomp_team_barrier_wake): Likewise.
1947 (gomp_team_barrier_wait_end): Likewise.
1948 (gomp_team_barrier_wait_cancel_end): Likewise.
1949 * testsuite/libgomp.c-c++-common/nested-parallel-unbalanced.c: New test.
1950
e84761c6
GA
19512020-09-28 Tobias Burnus <tobias@codesourcery.com>
1952
1953 PR middle-end/96390
1954 * testsuite/libgomp.c++/pr96390.C: New test.
1955 * testsuite/libgomp.c-c++-common/pr96390.c: New test.
1956
4383c595
GA
19572020-09-27 Clement Chigot <clement.chigot@atos.net>
1958
1959 * config/t-aix: Use $(AR) without -X32_64.
1960
cdd8f031
GA
19612020-09-25 Jakub Jelinek <jakub@redhat.com>
1962
1963 * testsuite/libgomp.c/loop-25.c: New test.
1964
521d2711
GA
19652020-09-22 Tobias Burnus <tobias@codesourcery.com>
1966
1967 PR fortran/95654
1968 * testsuite/libgomp.fortran/pr66199-5.f90: Make stop codes unique.
1969
19702020-09-22 Tom de Vries <tdevries@suse.de>
1971
1972 * plugin/plugin-nvptx.c (link_ptx): Print elog if cuLinkComplete call
1973 fails.
1974
ecde1b0a
GA
19752020-09-16 Nathan Sidwell <nathan@acm.org>
1976
1977 * testsuite/libgomp.c++/udr-3.C: Add missing ctor.
1978
9f7ab8c5
GA
19792020-09-15 Tobias Burnus <tobias@codesourcery.com>
1980
1981 PR fortran/96668
1982 * target.c (gomp_map_vars_internal): Initialize has_nullptr.
1983
19842020-09-15 Tobias Burnus <tobias@codesourcery.com>
1985
1986 PR fortran/96668
1987 * libgomp.h (struct target_var_desc): Add has_null_ptr_assoc member.
1988 * target.c (gomp_map_vars_existing): Add always_to_flag flag.
1989 (gomp_map_vars_existing): Update call to it.
1990 (gomp_map_fields_existing): Likewise
1991 (gomp_map_vars_internal): Update PSET handling such that if a nullptr is
1992 now allocated or if GOMP_MAP_POINTER is used PSET is updated and pointer
1993 remapped.
1994 (GOMP_target_enter_exit_data): Hanlde GOMP_MAP_ALWAYS_POINTER like
1995 GOMP_MAP_POINTER.
1996 * testsuite/libgomp.fortran/map-alloc-ptr-1.f90: New test.
1997 * testsuite/libgomp.fortran/map-alloc-ptr-2.f90: New test.
1998
50a71cd0
GA
19992020-09-14 Tom de Vries <tdevries@suse.de>
2000
2001 * config/nvptx/atomic.c: New file. Add
2002 __sync_val_compare_and_swap_16.
2003 * testsuite/libgomp.c-c++-common/reduction-16.c: Add -latomic for
2004 target offload_target_nvptx.
2005
31a05046
GA
20062020-09-08 Julian Brown <julian@codesourcery.com>
2007
2008 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c: Remove
2009 iteration-ordering assumptions.
2010
20112020-09-08 Julian Brown <julian@codesourcery.com>
2012
2013 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Fix race condition.
2014 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
2015
5b9a3d2a
GA
20162020-08-20 Chung-Lin Tang <cltang@codesourcery.com>
2017
2018 * plugin/plugin-nvptx.c (nvptx_free):
2019 Change "GOMP_PLUGIN_acc_thread () == NULL" test into check of
2020 CUDA_ERROR_NOT_PERMITTED status for cuMemGetAddressRange. Adjust
2021 comments.
2022
20232020-08-20 Tobias Burnus <tobias@codesourcery.com>
2024
2025 * testsuite/libgomp.fortran/lastprivate-conditional-10.f90: New test.
2026
b3cb5606
GA
20272020-08-13 Kwok Cheung Yeung <kcy@codesourcery.com>
2028
2029 * testsuite/libgomp.c-c++-common/reduction-16.c: New.
2030
20312020-08-13 Jakub Jelinek <jakub@redhat.com>
2032
2033 * testsuite/libgomp.c/loop-22.c (main): Add some further tests.
2034 * testsuite/libgomp.c/loop-23.c (main): Likewise.
2035 * testsuite/libgomp.c/loop-24.c: New test.
2036
bc0ca715
GA
20372020-08-08 Jakub Jelinek <jakub@redhat.com>
2038 Tobias Burnus <tobias@codesourcery.com>
2039
2040 PR fortran/93553
2041 * testsuite/libgomp.fortran/pr93553.f90: New test.
2042
aa5ea20c
GA
20432020-08-05 Jakub Jelinek <jakub@redhat.com>
2044
2045 * testsuite/libgomp.c/loop-22.c: New test.
2046 * testsuite/libgomp.c/loop-23.c: New test.
2047
20482020-08-05 Jakub Jelinek <jakub@redhat.com>
2049
2050 PR middle-end/96459
2051 * testsuite/libgomp.c/teams-3.c: New test.
2052 * testsuite/libgomp.c-c++-common/for-2.h (OMPTEAMS): Define to nothing
2053 if not defined yet.
2054 (N(test)): Use it before all N(f*) calls.
2055 * testsuite/libgomp.c-c++-common/for-14.c (DO_PRAGMA, OMPTEAMS): Define.
2056 (main): Don't call all test_* functions from within
2057 #pragma omp teams reduction(|:err), call them directly.
2058
abba2591
GA
20592020-08-04 Tom de Vries <tdevries@suse.de>
2060
2061 PR target/96428
2062 * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: New test.
2063 * testsuite/libgomp.oacc-fortran/pr96628-part2.f90: New test.
2064
6a1ad710
GA
20652020-08-03 Julian Brown <julian@codesourcery.com>
2066 Thomas Schwinge <thomas@codesourcery.com>
2067
2068 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Don't run for
2069 shared-memory devices. Extend with further checking.
2070
20712020-08-03 Martin Jambor <mjambor@suse.cz>
2072
2073 * plugin/Makefrag.am: Remove configuration of HSA plugin.
2074 * aclocal.m4: Regenerated.
2075 * Makefile.in: Regenerated.
2076 * config.h.in: Regenerated.
2077 * configure: Regenerated.
2078 * plugin/configfrag.ac: Likewise.
2079 * plugin/hsa_ext_finalize.h: Removed.
2080 * plugin/plugin-hsa.c: Likewise.
2081 * testsuite/Makefile.in: Regenerated.
2082 * testsuite/lib/libgomp.exp
2083 (offload_target_to_openacc_device_type): Remove hsa case.
2084 (check_effective_target_hsa_offloading_selected_nocache): Removed
2085 (check_effective_target_hsa_offloading_selected): Likewise.
2086 (libgomp_init): Do not add -Wno-hsa to additional_flags.
2087 * testsuite/libgomp.hsa.c/alloca-1.c: Removed test.
2088 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
2089 * testsuite/libgomp.hsa.c/bits-insns.c: Likewise.
2090 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
2091 * testsuite/libgomp.hsa.c/c.exp: Likewise.
2092 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
2093 * testsuite/libgomp.hsa.c/complex-align-2.c: Likewise.
2094 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
2095 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
2096 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
2097 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
2098 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
2099 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
2100 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
2101 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
2102 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
2103 * testsuite/libgomp.hsa.c/pr82416.c: Likewise.
2104 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
2105 * testsuite/libgomp.hsa.c/staticvar.c: Likewise.
2106 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
2107 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
2108 * testsuite/libgomp.hsa.c/switch-sbr-2.c: Likewise.
2109 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
2110 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
2111
e71dab87
GA
21122020-07-27 Julian Brown <julian@codesourcery.com>
2113 Thomas Schwinge <thomas@codesourcery.com>
2114
2115 * libgomp.h (struct target_var_desc): Rename do_detach field to
2116 is_attach.
2117 * oacc-mem.c (goacc_exit_datum_1): Add assert. Don't set finalize for
2118 GOMP_MAP_FORCE_DETACH. Update checking to use is_attach field.
2119 (goacc_enter_data_internal): Don't affect reference counts
2120 for attach mappings.
2121 (goacc_exit_data_internal): Don't affect reference counts for detach
2122 mappings.
2123 * target.c (gomp_map_vars_existing): Don't affect reference counts for
2124 attach mappings.
2125 (gomp_map_vars_internal): Set renamed is_attach flag unconditionally to
2126 mark attach mappings.
2127 (gomp_unmap_vars_internal): Use is_attach flag to prevent affecting
2128 reference count for attach mappings.
2129 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-1.c: New test.
2130 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
2131 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
2132 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Mark
2133 test as shouldfail.
2134 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust to fail
2135 gracefully in no-finalize mode.
2136 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-3.c: New file.
2137
53256ee3
GA
21382020-07-24 Thomas Schwinge <thomas@codesourcery.com>
2139
2140 * testsuite/libgomp.oacc-c++/c++.exp: Unset 'offload_target' after
2141 use.
2142 * testsuite/libgomp.oacc-c/c.exp: Likewise.
2143 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
2144
9bb403dc
GA
21452020-07-23 Julian Brown <julian@codesourcery.com>
2146 Thomas Schwinge <thomas@codesourcery.com>
2147
2148 * target.c (gomp_unmap_vars_internal): Remove unnecessary forcing of
2149 finalization for detach operation.
2150 * testsuite/libgomp.oacc-c-c++-common/structured-detach-underflow.c:
2151 New test.
2152
21532020-07-23 Tobias Burnus <tobias@codesourcery.com>
2154
2155 * configure.ac: Add OMP_DEPEND_KIND and OMP_INT128_SIZE.
2156 * libgomp_f.h.in (omp_check_defines): Check whether
2157 sizeof of determined Fortran kind and C typedef match.
2158 * omp_lib.f90.in: Add omp_depened_kind.
2159 * omp_lib.h.in: Likewise; fix omp_alloctrait_key_kind.
2160 * configure: Regenerate.
2161 * Makefile.in: Regenerate.
2162 * testsuite/Makefile.in: Regenerate.
2163
3ea9abca
GA
21642020-07-22 Tobias Burnus <tobias@codesourcery.com>
2165
2166 * testsuite/libgomp.c-c++-common/critical-hint-1.c: New; moved from
2167 gcc/testsuite/c-c++-common/gomp/.
2168 * testsuite/libgomp.c-c++-common/critical-hint-2.c: Likewise.
2169 * testsuite/libgomp.fortran/critical-hint-1.f90: New; moved
2170 from gcc/testsuite/gfortran.dg/gomp/.
2171 * testsuite/libgomp.fortran/critical-hint-2.f90: Likewise.
2172
21732020-07-22 Tobias Burnus <tobias@codesourcery.com>
2174
2175 * omp_lib.f90.in: Add omp_sync_hint_* and omp_sync_hint_kind.
2176 * omp_lib.h.in: Likewise.
2177
aeb34e15
GA
21782020-07-18 H.J. Lu <hjl.tools@gmail.com>
2179
2180 PR target/95620
2181 * testsuite/libgomp.c/pr95620.c: New test.
2182
96686b3f
GA
21832020-07-16 Julian Brown <julian@codesourcery.com>
2184 Thomas Schwinge <thomas@codesourcery.com>
2185
2186 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: New test.
2187 * testsuite/libgomp.oacc-fortran/attach-descriptor-2.f90: New test.
2188
fe8185b5
GA
21892020-07-15 Tobias Burnus <tobias@codesourcery.com>
2190
2191 * testsuite/libgomp.fortran/alloc-1.F90: Use c_size_t to
2192 avoid conversion on 32bit systems from 32bit to 64bit due
2193 to -fdefault-integer-8.
2194
21952020-07-15 Tobias Burnus <tobias@codesourcery.com>
2196
2197 * testsuite/libgomp.fortran/struct-elem-map-1.f90: Remove unused
2198 variables; add character(kind=4) tests; update TODO comment.
2199
22002020-07-15 Tobias Burnus <tobias@codesourcery.com>
2201
2202 * allocator.c: Add ialias for omp_init_allocator and
2203 omp_destroy_allocator.
2204 * configure.ac: Set INTPTR_T_KIND.
2205 * configure: Regenerate.
2206 * Makefile.in: Regenerate.
2207 * testsuite/Makefile.in: Regenerate.
2208 * fortran.c (omp_init_allocator_, omp_destroy_allocator_,
2209 omp_set_default_allocator_, omp_get_default_allocator_): New
2210 functions and ialias_redirect.
2211 * icv.c: Add ialias for omp_set_default_allocator and
2212 omp_get_default_allocator.
2213 * libgomp.map (OMP_5.0.1): Add omp_init_allocator_,
2214 omp_destroy_allocator_, omp_set_default_allocator_ and
2215 omp_get_default_allocator_.
2216 * omp_lib.f90.in: Add allocator traits parameters, declare
2217 allocator routines and add related kind parameters.
2218 * omp_lib.h.in: Likewise.
2219 * testsuite/libgomp.c-c++-common/alloc-2.c: Fix sizeof.
2220 * testsuite/libgomp.fortran/alloc-1.F90: New test.
2221 * testsuite/libgomp.fortran/alloc-2.F90: New test.
2222 * testsuite/libgomp.fortran/alloc-3.F: New test.
2223 * testsuite/libgomp.fortran/alloc-4.f90: New test.
2224 * testsuite/libgomp.fortran/alloc-5.f90: New test.
2225
8ca07a30
GA
22262020-07-14 Tom de Vries <tom@codesourcery.com>
2227 Cesar Philippidis <cesar@codesourcery.com>
2228 Thomas Schwinge <thomas@codesourcery.com>
2229 Kwok Cheung Yeung <kcy@codesourcery.com>
2230
2231 * oacc-init.c (acc_init_state_lock, acc_init_state, acc_init_thread):
2232 New variable.
2233 (acc_init_1): Set acc_init_thread to pthread_self (). Set
2234 acc_init_state to initializing at the start, and to initialized at the
2235 end.
2236 (self_initializing_p): New function.
2237 (acc_get_device_type): Return acc_device_none if called by thread that
2238 is currently executing acc_init_1.
2239 * libgomp.texi (acc_get_device_type): Update documentation.
2240 (Implementation Status and Implementation-Defined Behavior): Likewise.
2241 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-2.c: New.
2242
22432020-07-14 David Edelsohn <dje.gcc@gmail.com>
2244
2245 * config/t-aix: Set BITS from compiler cpp macro.
2246
22472020-07-14 Tobias Burnus <tobias@codesourcery.com>
2248
2249 * testsuite/libgomp.fortran/struct-elem-map-1.f90: New test.
2250
22512020-07-14 Tobias Burnus <tobias@codesourcery.com>
2252
2253 PR fortran/67311
2254 * testsuite/libgomp.fortran/target-map-1.f90: New test.
2255
22562020-07-14 Jakub Jelinek <jakub@redhat.com>
2257
2258 * testsuite/libgomp.c/loop-21.c: New test.
2259
ea69fcf9
GA
22602020-07-13 Julian Brown <julian@codesourcery.com>
2261 Thomas Schwinge <thomas@codesourcery.com>
2262
2263 * testsuite/libgomp.oacc-fortran/dynamic-pointer-1.f90: New test.
2264
86536295
GA
22652020-07-10 Julian Brown <julian@codesourcery.com>
2266 Thomas Schwinge <thomas@codesourcery.com>
2267
2268 * libgomp.h (struct splay_tree_key_s): Change virtual_refcount to
2269 dynamic_refcount.
2270 (struct gomp_device_descr): Remove GOMP_MAP_VARS_OPENACC_ENTER_DATA.
2271 * oacc-mem.c (acc_map_data): Substitute virtual_refcount for
2272 dynamic_refcount.
2273 (acc_unmap_data): Update comment.
2274 (goacc_map_var_existing, goacc_enter_datum): Adjust for
2275 dynamic_refcount semantics.
2276 (goacc_exit_datum_1, goacc_exit_datum): Re-add some error checking.
2277 Adjust for dynamic_refcount semantics.
2278 (goacc_enter_data_internal): Implement "present" case of dynamic
2279 memory-map handling here. Update "non-present" case for
2280 dynamic_refcount semantics.
2281 (goacc_exit_data_internal): Use goacc_exit_datum_1.
2282 * target.c (gomp_map_vars_internal): Remove
2283 GOMP_MAP_VARS_OPENACC_ENTER_DATA handling. Update for dynamic_refcount
2284 handling.
2285 (gomp_unmap_vars_internal): Remove virtual_refcount handling.
2286 (gomp_load_image_to_device): Substitute dynamic_refcount for
2287 virtual_refcount.
2288 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Remove XFAILs.
2289 * testsuite/libgomp.oacc-c-c++-common/refcounting-1.c: New test.
2290 * testsuite/libgomp.oacc-c-c++-common/refcounting-2.c: New test.
2291 * testsuite/libgomp.oacc-c-c++-common/struct-3-1-1.c: New test.
2292 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Remove XFAILs and
2293 trace output.
2294 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Remove
2295 trace output.
2296 * testsuite/libgomp.oacc-fortran/dynamic-incr-structural-1.f90: New
2297 test.
2298 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
2299 Remove stale comment.
2300 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Remove XFAILs.
2301 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
2302 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
2303 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
2304 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
2305 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Adjust XFAIL.
2306
23072020-07-10 Julian Brown <julian@codesourcery.com>
2308 Thomas Schwinge <thomas@codesourcery.com>
2309
2310 * oacc-mem.c (goacc_map_var_existing): New function.
2311 (goacc_enter_datum): Use above function.
2312 (goacc_exit_datum_1): New function.
2313 (goacc_exit_datum): Use above function.
2314
3f8ca9cb
GA
23152020-07-09 Julian Brown <julian@codesourcery.com>
2316 Thomas Schwinge <thomas@codesourcery.com>
2317
2318 PR middle-end/95270
2319 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: New test.
2320 * testsuite/libgomp.oacc-c-c++-common/pr95270-2.c: New test.
2321
23222020-07-09 Julian Brown <julian@codesourcery.com>
2323
2324 * oacc-mem.c (find_group_last): Group data-movement clauses
2325 (GOMP_MAP_TO_PSET, GOMP_MAP_TO, etc.) together with a subsequent
2326 GOMP_MAP_ATTACH. Allow standalone GOMP_MAP_ATTACH also.
2327
23282020-07-09 Jakub Jelinek <jakub@redhat.com>
2329
2330 * testsuite/libgomp.c/loop-19.c: New test.
2331 * testsuite/libgomp.c/loop-20.c: New test.
2332
23332020-07-09 Jakub Jelinek <jakub@redhat.com>
2334
2335 * omp.h.in (omp_alloctrait_value_t): Change omp_atv_default from
2336 2 to -1. Add omp_atv_serialized and define omp_atv_sequential using
2337 it. Remove __omp_alloctrait_value_max__.
2338 * allocator.c (omp_init_allocator): Handle omp_atv_default for
2339 omp_atk_alignment and omp_atk_pool_size.
2340
b991c834
GA
23412020-07-03 Thomas Schwinge <thomas@codesourcery.com>
2342
2343 * oacc-mem.c (goacc_exit_data_internal): Revert always-copyfrom
2344 behavior for 'GOMP_MAP_FORCE_FROM'.
2345 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Adjust XFAIL.
2346
23472020-07-03 Thomas Schwinge <thomas@codesourcery.com>
2348
2349 * oacc-mem.c (goacc_exit_data_internal): Remove
2350 'GOMP_MAP_ALWAYS_FROM' handling.
2351
46fbb6c6
GA
23522020-06-30 Thomas Schwinge <thomas@codesourcery.com>
2353
2354 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Replace fragile
2355 'scan-assembler' with 'scan-offload-rtl'.
2356 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
2357 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
2358 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: Likewise.
2359 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: Likewise.
2360
23612020-06-30 Thomas Schwinge <thomas@codesourcery.com>
2362
2363 * target.c (gomp_map_vars_existing): Assert 'kind !=
2364 GOMP_MAP_ATTACH'.
2365 (gomp_map_vars_internal): Clean up.
2366
9a33c41f
GA
23672020-06-27 Jakub Jelinek <jakub@redhat.com>
2368
2369 * testsuite/libgomp.c/loop-17.c: New test.
2370 * testsuite/libgomp.c/loop-18.c: New test.
2371
c9c05f73
GA
23722020-06-26 Marek Polacek <polacek@redhat.com>
2373
2374 * testsuite/libgomp.c++/atomic-3.C: Use -std=gnu++14.
2375
4543acc8
GA
23762020-06-23 Alexandre Oliva <oliva@adacore.com>
2377
2378 * testsuite/lib/libgomp.exp: Load gcc lib scanoffload.exp.
2379 * testsuite/lib/libgomp-dg.exp: Drop now-obsolete -save-temps.
2380
605a8f3b
GA
23812020-06-22 David Edelsohn <dje.gcc@gmail.com>
2382
2383 * Makefile.am: Use -include.
2384 * Makefile.in: Regenerate.
2385
f86e11a2
GA
23862020-06-21 David Edelsohn <dje.gcc@gmail.com>
2387
2388 * Makefile.am (tmake_file): Build and install AIX-style FAT libraries.
2389 * Makefile.in: Regenerate
2390 * configure.ac (tmake_file): Substitute.
2391 * configure: Regenerate.
2392 * configure.tgt (powerpc-ibm-aix*): Define tmake_file.
2393 * config/t-aix: New file.
2394
aff95ee7
GA
23952020-06-17 Thomas Schwinge <thomas@codesourcery.com>
2396
2397 PR lto/94848
2398 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: Add
2399 'dg-do run'.
2400
24012020-06-17 Andrew Stubbs <ams@codesourcery.com>
2402
2403 * plugin/plugin-gcn.c (init_environment_variables): Use ".so.1"
2404 variant for HSA_RUNTIME_LIB name.
2405 (find_executable_symbol_1): Delete.
2406 (find_executable_symbol): Delete.
2407 (init_kernel_properties): Add ".kd" suffix to symbol names.
2408 (find_load_offset): Delete.
2409 (create_and_finalize_hsa_program): Remove relocation handling.
2410
56638b9b
GA
24112020-06-16 Tobias Burnus <tobias@codesourcery.com>
2412
2413 * testsuite/libgomp.oacc-fortran/routine-10.f90: New test.
2414
2c455ae0
GA
24152020-06-08 Tobias Burnus <tobias@codesourcery.com>
2416
2417 PR lto/94848
2418 PR middle-end/95551
2419 * testsuite/libgomp.fortran/target-var.f90: New test.
2420
1a59f3db
GA
24212020-06-05 Thomas Schwinge <thomas@codesourcery.com>
2422 Julian Brown <julian@codesourcery.com>
2423
2424 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>: Explain
2425 special handling.
2426
24272020-06-05 Thomas Schwinge <thomas@codesourcery.com>
2428 Julian Brown <julian@codesourcery.com>
2429
2430 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
2431 Simplify.
2432
24332020-06-05 Julian Brown <julian@codesourcery.com>
2434
2435 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: New test.
2436 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: New test.
2437
3add3425
GA
24382020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2439
2440 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
2441 Evaluate 'copyfrom' individually for each entry.
2442 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: Update.
2443
24442020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2445
2446 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
2447 Evaluate 'finalize' individually for each entry.
2448 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: New file.
2449 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: Remove
2450 file.
2451
24522020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2453
2454 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: Fix 'sizeof'
2455 usage.
2456 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: Likewise.
2457
24582020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2459 Julian Brown <julian@codesourcery.com>
2460
2461 * oacc-mem.c (goacc_exit_datum): Repair 'is_tgt_unmapped'
2462 checking.
2463 (acc_unmap_data, goacc_exit_data_internal): Restore
2464 'is_tgt_unmapped' checking.
2465 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: New
2466 file.
2467 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust.
2468 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
2469 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
2470 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
2471 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
2472 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
2473
24742020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2475 Julian Brown <julian@codesourcery.com>
2476
2477 * oacc-mem.c (acc_unmap_data): Don't open-code 'gomp_remove_var'.
2478
24792020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2480
2481 PR libgomp/92854
2482 * oacc-mem.c (acc_unmap_data): Remove 'tgt' reference counting.
2483
24842020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2485
2486 PR libgomp/92854
2487 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: Extend some
2488 more.
2489
24902020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2491 Julian Brown <julian@codesourcery.com>
2492
2493 * oacc-mem.c (goacc_enter_datum): Use 'tgt' returned from
2494 'gomp_map_vars'.
2495 (acc_map_data): Clean up accordingly.
2496
24972020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2498
2499 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: XFAIL behavior
2500 of over-eager 'finalize' clause.
2501 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: New
2502 file.
2503 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
2504 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
2505 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
2506 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
2507 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
2508 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-2.f90: Likewise.
2509 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
2510 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-2.f90: Likewise.
2511
25122020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2513
2514 * oacc-mem.c (goacc_exit_data_internal): Unlock on error path.
2515
25162020-06-04 Julian Brown <julian@codesourcery.com>
2517
2518 * oacc-mem.c (acc_attach_async): Add missing gomp_mutex_unlock on
2519 error path.
2520 (goacc_detach_internal): Likewise.
2521
25222020-06-04 Thomas Schwinge <thomas@codesourcery.com>
2523
2524 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Initialize before
2525 the checkpoint.
2526 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
2527 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
2528 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
2529 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
2530 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
2531
a9312a79
GA
25322020-06-02 Jakub Jelinek <jakub@redhat.com>
2533
2534 * allocator.c (omp_free): Fix up build if HAVE_SYNC_BUILTINS is not
2535 defined.
2536
945b53cc
GA
25372020-05-30 Jakub Jelinek <jakub@redhat.com>
2538
2539 * testsuite/libgomp.c-c++-common/alloc-4.c: New test.
2540
25412020-05-30 Jakub Jelinek <jakub@redhat.com>
2542
2543 * allocator.c (omp_alloc): For size == 0, return NULL early.
2544
885ef72f
GA
25452020-05-29 H.J. Lu <hjl.tools@gmail.com>
2546
2547 PR bootstrap/95413
2548 * configure: Regenerated.
2549
8df7ee67
TK
25502020-05-23 Thomas Koenig <tkoenig@gcc.gnu.org>
2551
2552 PR libfortran/95191
2553 * testsuite/libgomp.fortran/async_io_9.f90: New test.
2554
800bcc8c
JJ
25552020-05-19 Jakub Jelinek <jakub@redhat.com>
2556
2557 * omp.h.in (omp_uintptr_t): New typedef.
2558 (__GOMP_UINTPTR_T_ENUM): Define.
2559 (omp_memspace_handle_t, omp_allocator_handle_t, omp_alloctrait_key_t,
2560 omp_alloctrait_value_t, omp_alloctrait_t): New typedefs.
2561 (__GOMP_DEFAULT_NULL_ALLOCATOR): Define.
2562 (omp_init_allocator, omp_destroy_allocator, omp_set_default_allocator,
2563 omp_get_default_allocator, omp_alloc, omp_free): Declare.
2564 * libgomp.h (struct gomp_team_state): Add def_allocator field.
2565 (gomp_def_allocator): Declare.
2566 * libgomp.map (OMP_5.0.1): Export omp_set_default_allocator,
2567 omp_get_default_allocator, omp_init_allocator, omp_destroy_allocator,
2568 omp_alloc and omp_free.
2569 * team.c (gomp_team_start): Copy over ts.def_allocator.
2570 * env.c (gomp_def_allocator): New variable.
2571 (parse_wait_policy): Adjust function comment.
2572 (parse_allocator): New function.
2573 (handle_omp_display_env): Print OMP_ALLOCATOR.
2574 (initialize_env): Call parse_allocator.
2575 * Makefile.am (libgomp_la_SOURCES): Add allocator.c.
2576 * allocator.c: New file.
2577 * icv.c (omp_set_default_allocator, omp_get_default_allocator): New
2578 functions.
2579 * testsuite/libgomp.c-c++-common/alloc-1.c: New test.
2580 * testsuite/libgomp.c-c++-common/alloc-2.c: New test.
2581 * testsuite/libgomp.c-c++-common/alloc-3.c: New test.
2582 * Makefile.in: Regenerated.
2583
4c1a5d8b
L
25842020-05-15 H.J. Lu <hongjiu.lu@intel.com>
2585
2586 PR bootstrap/95147
2587 * configure: Regenerated.
2588
cdc34b50
TK
25892020-05-14 Thomas Koenig <tkoenig@gcc.gnu.org>
2590
2591 PR libfortran/95119
2592 * testsuite/libgomp.fortran/close_errors_1.f90: New test.
2593
25942020-05-14 H.J. Lu <hongjiu.lu@intel.com>
2595
2596 * configure: Regenerated.
2597
25982020-05-14 Jakub Jelinek <jakub@redhat.com>
2599
2600 * testsuite/libgomp.c-c++-common/target-40.c: New test.
2601
f884bef2
TB
26022020-05-13 Tobias Burnus <tobias@codesourcery.com>
2603
2604 PR fortran/94690
2605 * testsuite/libgomp.fortran/pr66199-3.f90: New.
2606 * testsuite/libgomp.fortran/pr66199-4.f90: New.
2607 * testsuite/libgomp.fortran/pr66199-5.f90: New.
2608 * testsuite/libgomp.fortran/pr66199-6.f90: New.
2609 * testsuite/libgomp.fortran/pr66199-7.f90: New.
2610 * testsuite/libgomp.fortran/pr66199-8.f90: New.
2611 * testsuite/libgomp.fortran/pr66199-9.f90: New.
2612
dc703151
JJ
26132020-05-12 Jakub Jelinek <jakub@redhat.com>
2614
2615 * testsuite/libgomp.c/target-39.c: New test.
2616
b9dc11b6
TS
26172020-04-29 Thomas Schwinge <thomas@codesourcery.com>
2618
a5d0bc12
TS
2619 * config/accel/openacc.f90 (acc_device_current): Set to '-1'.
2620 * openacc.f90 (acc_device_current): Likewise.
2621 * openacc.h (acc_device_current): Likewise.
2622 * openacc_lib.h (acc_device_current): Likewise.
2623
7f198924
TS
2624 PR target/94282
2625 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Remove
2626 'dg-allow-blank-lines-in-output'.
2627
4912a04f
TS
2628 * oacc-init.c (get_openacc_name): Handle 'gcn'.
2629 * testsuite/lib/libgomp.exp
2630 (offload_target_to_openacc_device_type) [amdgcn*]: Return
2631 'radeon'. Adjust all users.
2632 (check_effective_target_openacc_amdgcn_accel_present): Rename
2633 to...
2634 (check_effective_target_openacc_radeon_accel_present): ... this.
2635 Adjust all users.
2636 (check_effective_target_openacc_amdgcn_accel_selected): Rename to...
2637 (check_effective_target_openacc_radeon_accel_selected): ... this.
2638 Adjust all users.
2639
b9dc11b6
TS
2640 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Add
2641 'dg-do run'.
2642
966de09b
AS
26432020-04-23 Andrew Stubbs <ams@codesourcery.com>
2644
2645 PR other/94629
2646
2647 * plugin/plugin-gcn.c (init_hsa_context): Check return value from
2648 hsa_iterate_agents.
2649 (GOMP_OFFLOAD_init_device): Check return values from both calls to
2650 hsa_agent_iterate_regions.
2651
3f5d94c1
TS
26522020-04-20 Thomas Schwinge <thomas@codesourcery.com>
2653
2654 PR middle-end/94635
2655 * testsuite/libgomp.fortran/target-enter-data-2.F90: Add 'dg-do
2656 run'.
2657
85d8c05a
TB
26582020-04-20 Tobias Burnus <tobias@codesourcery.com>
2659
2660 PR middle-end/94120
2661 * testsuite/libgomp.oacc-c++/declare-pr94120.C: Fix 'declare copy(out)'
2662 test case.
2663
af557050
TB
26642020-04-17 Tobias Burnus <tobias@codesourcery.com>
2665
2666 PR middle-end/94635
2667 * testsuite/libgomp.fortran/target-enter-data-2.F90: New.
2668
af4c9257
TS
26692020-04-13 Thomas Schwinge <thomas@codesourcery.com>
2670
2671 PR libgomp/92843
2672 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
2673 Rename to...
2674 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1-lib.c:
2675 ... this.
2676 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
2677 Rename to...
2678 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1.c:
2679 ... this.
2680 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
2681 Rename to...
2682 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2-lib.c:
2683 ... this.
2684 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
2685 Rename to...
2686 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2.c:
2687 ... this.
2688 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
2689 Rename to...
2690 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3-lib.c:
2691 ... this.
2692 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
2693 Rename to...
2694 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3.c:
2695 ... this.
2696 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
2697 Rename to...
2698 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4-lib.c:
2699 ... this.
2700 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
2701 Rename to...
2702 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
2703 ... this.
2704 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
2705 Rename to...
2706 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5-lib.c:
2707 ... this.
2708 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
2709 Rename to...
2710 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5.c:
2711 ... this.
2712 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
2713 Rename to...
2714 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6-lib.c:
2715 ... this.
2716 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
2717 Rename to...
2718 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6.c:
2719 ... this.
2720 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
2721 Rename to...
2722 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7-lib.c:
2723 ... this.
2724 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
2725 Rename to...
2726 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7.c:
2727 ... this.
2728 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
2729 Rename to...
2730 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8-lib.c:
2731 ... this.
2732 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c::
2733 Rename to...
2734 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8.c:
2735 ... this.
2736
be9862dd
JB
27372020-04-10 Julian Brown <julian@codesourcery.com>
2738 Thomas Schwinge <thomas@codesourcery.com>
2739
2740 PR libgomp/92843
2741 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
2742 New file.
2743 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
2744 Likewise.
2745 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
2746 Likewise.
2747 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
2748 Likewise.
2749 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
2750 Likewise.
2751 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
2752 Likewise.
2753 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
2754 Likewise.
2755 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
2756 Likewise.
2757 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
2758 Likewise.
2759 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
2760 Likewise.
2761 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
2762 Likewise.
2763 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
2764 Likewise.
2765 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
2766 Likewise.
2767 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
2768 Likewise.
2769 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
2770 Likewise.
2771 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c:
2772 Likewise.
2773
6b816a5f
TS
27742020-04-10 Thomas Schwinge <thomas@codesourcery.com>
2775
2776 * testsuite/libgomp.fortran/target-enter-data-1.f90: Add 'dg-do
2777 run'.
2778
13e41d8b
TB
27792020-04-08 Tobias Burnus <tobias@codesourcery.com>
2780
2781 PR middle-end/94120
2782 * libgomp.oacc-c++/declare-pr94120.C: New.
2783
749bd22d
MR
27842020-04-06 Maciej W. Rozycki <macro@wdc.com>
2785
2786 * configure.ac: Add testsuite/libgomp-site-extra.exp to output
2787 files.
2788 * configure: Regenerate.
2789 * testsuite/libgomp-site-extra.exp.in: New file.
2790 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): Remove
2791 variable.
2792 * testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): New
2793 variable.
2794 * testsuite/Makefile.in: Regenerate.
2795
2b1e849b
TS
27962020-04-03 Thomas Schwinge <thomas@codesourcery.com>
2797
2798 PR tree-optimization/89713
2799 PR c/94392
2800 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Again expect
2801 'bar.sync'.
2802 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
2803
689418b9
TB
28042020-03-31 Tobias Burnus <tobias@codesourcery.com>
2805
2806 * target.c (GOMP_target_enter_exit_data): Handle PSET/MAP_POINTER.
2807 * testsuite/libgomp.fortran/target-enter-data-1.f90: New.
2808
c2211a60
TB
28092020-03-24 Tobias Burnus <tobias@codesourcery.com>
2810
2811 PR libgomp/81689
2812 * testsuite/libgomp.c/target-link-1.c: Remove xfail.
2813
4897bb00
TB
28142020-03-20 Tobias Burnus <tobias@codesourcery.com>
2815
2816 PR libgomp/94251
2817 * target.c (gomp_load_image_to_device): Fix link
2818 variable handling.
2819
02f7334a
JJ
28202020-03-19 Jakub Jelinek <jakub@redhat.com>
2821
2822 PR c++/93931
2823 * testsuite/libgomp.c++/pr93931.C: New test.
2824
bb83e069
TB
28252020-03-19 Tobias Burnus <tobias@codesourcery.com>
2826
2827 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Add
2828 dg-allow-blank-lines-in-output.
2829
26cbcfe5
TB
28302020-03-18 Julian Brown <julian@codesourcery.com>
2831 Tobias Burnus <tobias@codesourcery.com>
2832
2833 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Really make
2834 it work concurrently.
2835
4da92887
TB
28362020-03-18 Tobias Burnus <tobias@codesourcery.com>
2837
2838 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: Add
2839 #define DO_LONG_DOUBLE; set to 1, except for nvidia + gcn.
2840 * libgomp.oacc-c-c++-common/firstprivate-mappings-1.c: Likewise.
2841
9c3cdb43
JJ
28422020-03-14 Jakub Jelinek <jakub@redhat.com>
2843
2844 PR middle-end/93566
2845 * testsuite/libgomp.c/pr93566.c: New test.
2846
83d45e1d
FH
28472020-02-21 Frederik Harwath <frederik@codesourcery.com>
2848
2849 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Adapt to
2850 changes from 2020-02-19, i.e. use integer(c_size_t) instead of
2851 integer(acc_device_property) for the type of the return value of
2852 acc_get_property.
2853
8d1a1cb1
TB
28542020-02-19 Tobias Burnus <tobias@codesourcery.com>
2855
2856 * .gitattributes: New; whitespace handling for Fortran's openacc_lib.h.
2857 * config/accel/openacc.f90 (openacc_kinds): Add acc_device_current.
2858 (openacc_internal, acc_on_device_h): Fix argument name; minor cleanup.
2859 * libgomp.texi (Enabling OpenACC): No longer mark as experimental.
2860 (acc_set_device_num): Fix Fortran argument name, use same name for C.
2861 (acc_get_property): Update Fortran interface to post-OpenACC 3.0
2862 corrections; add note about the previous interface and named constant.
2863 (OpenACC library and environment variables): Fix two typos.
2864 * openacc.f90: Use for all procedures the argument names from the spec
2865 as for …_h they are user visible.
2866 (openacc_kinds): Rename acc_device_property to
2867 acc_device_property_kinds and change value to int32 ; and update users.
2868 Re-add acc_device_property for for backward compatibility.
2869 (acc_get_property_string_h): Clean up as acc_device_property_kind
2870 changed.
2871 (acc_get_property_h): Likewise and return c_size_t instead of
2872 acc_device_property.
2873 (openacc): Also export acc_device_property_kinds.
2874 (acc_async_test_h, acc_async_test_all_h, acc_on_device_h,
2875 acc_is_present_32_h, acc_is_present_64_h): Simplify logical-return-value
2876 handling; check against /= 0 instead of == 1 to match C.
2877 * openacc_lib.h: Use for all procedures the argument names from the spec
2878 as for …_h they are user visible. Place !GCC$ into the first column to
2879 be active also for fixed-form souce form.
2880 (acc_device_current, acc_device_property_kind, acc_device_property,
2881 acc_property_memory, acc_property_free_memory, acc_property_name,
2882 acc_property_vendor, acc_property_driver): New named constants.
2883 (acc_get_property, acc_get_property_string): New generic interface.
2884
2d9eb4e4
FH
28852020-02-13 Frederik Harwath <frederik@codesourcery.com>
2886
2887 PR libgomp/93481
2888 * plugin/plugin-nvptx.c: Remove GOMP_OFFLOAD_async_run stub.
2889 * target.c (gomp_load_plugin_for_device): Make "async_run" loading
2890 optional.
2891 (gomp_target_task_fn): Assert "devicep->async_run_func".
2892 (clear_unsupported_flags): New function to remove unsupported flags
2893 (right now only GOMP_TARGET_FLAG_NOWAIT) that can be be ignored.
2894 (GOMP_target_ext): Apply clear_unsupported_flags to flags.
2895 * testsuite/libgomp.c/target-33.c:
2896 Remove xfail for offload_target_nvptx.
2897 * testsuite/libgomp.c/target-34.c: Likewise.
fd789c81
FH
2898
28992020-02-10 Frederik Harwath <frederik@codesourcery.com>
2900
2901 * testsuite/libgomp.c/target-33.c: Add xfail for execution on
2902 offload_target_nvptx, cf. https://gcc.gnu.org/PR81688.
2903 * testsuite/libgomp.c/target-34.c: Likewise.
2904 * testsuite/libgomp.c/target-link-1.c: Add xfail for
2905 offload_target_nvptx, cf. https://gcc.gnu.org/PR81689.
2906
9bc3b95d
JJ
29072020-02-09 Jakub Jelinek <jakub@redhat.com>
2908
2909 * testsuite/libgomp.c/target-38.c: New test.
2910
cb3f0648
JJ
29112020-02-06 Jakub Jelinek <jakub@redhat.com>
2912
2913 PR libgomp/93515
2914 * testsuite/libgomp.c-c++-common/pr93515.c: New test.
2915
91bc3c98
TB
29162020-02-05 Tobias Burnus <tobias@codesourcery.com>
2917
2918 * testsuite/lib/libgomp.exp
2919 (check_effective_target_offload_target_nvptx): Pass flags as 'options'
2920 and not as 'source' argument to libgomp_target_compile.
2921
591f869a
AS
29222020-02-03 Andrew Stubbs <ams@codesourcery.com>
2923
2924 * plugin/plugin-gcn.c (EF_AMDGPU_MACH_AMDGCN_GFX801): Remove.
2925 (gcn_gfx801_s): Remove.
2926 (isa_hsa_name): Remove gfx801.
2927 (isa_gcc_name): Remove gfx801/carizzo.
2928 (isa_code): Remove gfx801.
2929
e464fc90
TB
29302020-02-03 Julian Brown <julian@codesourcery.com>
2931 Tobias Burnus <tobias@codesourcery.com>
2932
2933 * libgomp.texi (OpenACC Runtime Library Routines): Document *_async
2934 and *_finalize variants; document acc_attach and acc_detach; update
2935 references from OpenACC 2.0 to 2.6.
2936 * openacc.f90 (openacc_version): Update to 201711.
2937 * openacc_lib.h (openacc_version): Update to 201711.
2938 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Update expected
2939 openacc_version to 201711.
2940 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
2941
5a28e272
KCY
29422020-01-31 Kwok Cheung Yeung <kcy@codesourcery.com>
2943
2944 * plugin/plugin-gcn.c (struct hsa_kernel_description): Add sgpr_count
2945 and vgpr_count fields.
2946 (struct kernel_info): Add a field for a hsa_kernel_description.
2947 (run_kernel): Reduce the number of threads/workers if the requested
2948 number would require too many VGPRs.
2949 (init_basic_kernel_info): Initialize description field with
2950 the hsa_kernel_description entry for the kernel.
2951
5ab5d81b
TB
29522020-01-29 Tobias Burnus <tobias@codesourcery.com>
2953
2954 PR bootstrap/93409
2955 * plugin/configfrag.ac (enable_offload_targets): Skip
2956 HSA and GCN plugin besides -m32 also for -mx32.
2957 * configure: Regenerate.
2958
989a5fb3
FH
29592020-01-29 Frederik Harwath <frederik@codesourcery.com>
2960
2961 * oacc-init.c (name_of_acc_device_t): Handle acc_device_radeon.
2e5ea579
FH
2962
29632020-01-29 Frederik Harwath <frederik@codesourcery.com>
2964
2965 * plugin-gcn.c (struct agent_info): Add fields "name" and
2966 "vendor_name" ...
2967 (GOMP_OFFLOAD_init_device): ... and init from here.
2968 (struct hsa_context_info): Add field "driver_version_s" ...
2969 (init_hsa_contest): ... and init from here.
2970 (GOMP_OFFLOAD_openacc_get_property): Replace stub with a proper
2971 implementation.
2972 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
2973 Enable test execution for amdgcn and host offloading targets.
2974 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Likewise.
2975 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
2976 (expect_device_properties): Split function into ...
2977 (expect_device_string_properties): ... this new function ...
2978 (expect_device_memory): ... and this new function.
2979 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c:
2980 Add test.
2981
278c3214
JB
29822020-01-28 Julian Brown <julian@codesourcery.com>
2983
2984 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: Remove test from here.
2985 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: Don't use mixed
2986 component/non-component variable refs in a single directive.
2987 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: Likewise.
2988
e8e66971
MR
29892020-01-24 Maciej W. Rozycki <macro@wdc.com>
2990
2991 * configure.ac: Handle `--with-toolexeclibdir='.
2992 * Makefile.in: Regenerate.
2993 * aclocal.m4: Regenerate.
2994 * configure: Regenerate.
2995 * testsuite/Makefile.in: Regenerate.
2996
9e424d97
FH
29972020-01-24 Frederik Harwath <frederik@codesourcery.com>
2998
2999 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
3000 (expect_device_properties): Remove "expected_free_mem" argument,
3001 change "expected_total_mem" argument type to size_t;
3002 change types of acc_get_property results to size_t,
3003 adapt format strings.
3004 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
3005 Use %zu instead of %zd to print size_t values.
3006 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: Adapt and
3007 rename to ...
3008 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c: ... this.
3009 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: Adapt and
3010 rename to ...
3011 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-host.c: ... this.
3012
14e5e746
AS
30132020-01-23 Andrew Stubbs <ams@codesourcery.com>
3014
3015 * plugin/plugin-gcn.c (parse_target_attributes): Use correct mask for
3016 the device id.
3017
09e0ad62
AS
30182020-01-20 Andrew Stubbs <ams@codesourcery.com>
3019
3020 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Skip test on gcn.
3021 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c (main):
3022 Adjust test dimensions for amdgcn.
3023 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c (main): Adjust
3024 gang/worker/vector expectations dynamically.
3025 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c
3026 (main): Likewise.
3027 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c (main): Likewise.
3028 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c (main): Likewise.
3029 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c (main): Likewise.
3030 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c (main): Likewise.
3031 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c (main): Likewise.
3032 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c (main): Likewise.
3033 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c (main): Likewise.
3034 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c (main): Likewise.
3035 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
3036 (acc_gang): Recognise acc_device_radeon.
3037 (acc_worker): Likewise.
3038 (acc_vector): Likewise.
3039 (main): Set expectations for amdgcn.
3040 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c
3041 (main): Adjust gang/worker/vector expectations dynamically.
3042 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c (main): Likewise.
3043 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c (main): Likewise.
3044 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c (main): Likewise.
3045 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Set expectations
3046 for amdgcn.
3047
6687d13a
AS
30482020-01-17 Andrew Stubbs <ams@codesourcery.com>
3049
3050 * config/accel/openacc.f90 (openacc_kinds): Rename acc_device_gcn to
3051 acc_device_radeon.
3052 (openacc): Likewise.
3053 * openacc.f90 (openacc_kinds): Likewise.
3054 (openacc): Likewise.
3055 * openacc.h (acc_device_t): Likewise.
3056 * openacc_lib.h: Likewise.
3057 * testsuite/lib/libgomp.exp
3058 (check_effective_target_openacc_amdgcn_accel_present): Likewise.
3059 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
3060 (cb_compute_construct_end): Likewise.
3061 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
3062 (cb_enqueue_launch_start): Likewise.
3063 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
3064 (cb_enter_data_end): Likewise.
3065 (cb_exit_data_start): Likewise.
3066 (cb_exit_data_end): Likewise.
3067 (cb_compute_construct_end): Likewise.
3068 (cb_enqueue_launch_start): Likewise.
3069 (cb_enqueue_launch_end): Likewise.
3070 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c
3071 (main): Likewise.
3072
b3b75e66
TS
30732020-01-10 Thomas Schwinge <thomas@codesourcery.com>
3074
6fc0385c
TS
3075 * libgomp-plugin.h (enum goacc_property): New. Adjust all users
3076 to use this instead of 'enum gomp_device_property'.
3077 (GOMP_OFFLOAD_get_property): Rename to...
3078 (GOMP_OFFLOAD_openacc_get_property): ... this. Adjust all users.
3079 * libgomp.h (struct gomp_device_descr): Move
3080 'GOMP_OFFLOAD_openacc_get_property'...
3081 (struct acc_dispatch_t): ... here. Adjust all users.
3082 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): Remove.
3083
b3b75e66
TS
3084 * target.c (gomp_map_vars_internal)
3085 <GOMP_MAP_USE_DEVICE_PTR_IF_PRESENT>: Clean up/elaborate code
3086 paths.
3087
91df4397
JJ
30882020-01-10 Jakub Jelinek <jakub@redhat.com>
3089
3090 PR libgomp/93219
3091 * libgomp.h (gomp_print_string): Change return type from void to int.
3092 * affinity-fmt.c (gomp_print_string): Likewise. Return true if
3093 not all characters have been written.
3094
df2c0d36
TB
30952020-01-08 Tobias Burnus <tobias@codesourcery.com>
3096
3097 * libgomp.texi: Fix typos, use https.
3098
f760c0c7
TB
30992020-01-03 Tobias Burnus <tobias@codesourcery.com>
3100
3101 * testsuite/libgomp.fortran/optional-map.f90: Add test for
3102 unallocated/disassociated actual arguments to nonallocatable/nonpointer
3103 dummy arguments; those are/shall be regarded as absent arguments.
3104 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
3105 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: New.
3106
7e7065b9
JJ
31072020-01-01 Jakub Jelinek <jakub@redhat.com>
3108
8d9254fc
JJ
3109 Update copyright years.
3110
7e7065b9
JJ
3111 * libgomp.texi: Bump @copying's copyright year.
3112
2c829799
AM
31132019-12-31 Ayush Mittal <ayush.m@samsung.com>
3114
3115 PR libgomp/93065
3116 * oacc-init.c (goacc_runtime_deinitialize): New function.
3117
e9dcb75e
JJ
31182019-12-28 Jakub Jelinek <jakub@redhat.com>
3119
3120 PR bootstrap/93074
3121 * plugin/cuda/cuda.h (cuDeviceGetName, cuDriverGetVersion): Declare.
3122 (cuDeviceTotalMem, cuMemGetInfo): Likewise. Define to *_v2.
3123
6c84c8bf
MR
31242019-12-22 Maciej W. Rozycki <macro@codesourcery.com>
3125 Frederik Harwath <frederik@codesourcery.com>
3126 Thomas Schwinge <tschwinge@codesourcery.com>
3127
3128 * libgomp.h (gomp_device_descr): Add `get_property_func' member.
3129 * libgomp-plugin.h (gomp_device_property_value): New union.
3130 (gomp_device_property_value): New prototype.
3131 * openacc.h (acc_device_t): Add `acc_device_current' enumeration
3132 constant.
3133 (acc_device_property_t): New enum.
3134 (acc_get_property, acc_get_property_string): New prototypes.
3135 * oacc-init.c (acc_get_device_type): Also assert that result
3136 is not `acc_device_current'.
3137 (get_property_any, acc_get_property, acc_get_property_string):
3138 New functions.
3139 * openacc.f90 (openacc_kinds): Add `acc_device_current' and
3140 `acc_property_memory', `acc_property_free_memory',
3141 `acc_property_name', `acc_property_vendor' and
3142 `acc_property_driver' constants. Add `acc_device_property' data
3143 type.
3144 (openacc_internal): Add `acc_get_property' and
3145 `acc_get_property_string' interfaces. Add `acc_get_property_h',
3146 `acc_get_property_string_h', `acc_get_property_l' and
3147 `acc_get_property_string_l'.
3148 * oacc-host.c (host_get_property): New function.
3149 (host_dispatch): Wire it.
3150 * target.c (gomp_load_plugin_for_device): Handle `get_property'.
3151 * libgomp.map (OACC_2.6): Add `acc_get_property', `acc_get_property_h_',
3152 `acc_get_property_string' and `acc_get_property_string_h_' symbols.
3153 * libgomp.texi (OpenACC Runtime Library Routines): Add
3154 `acc_get_property'.
3155 (acc_get_property): New node.
3156 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_property): New
3157 function (stub).
3158 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): New function.
3159 * plugin/plugin-nvptx.c (CUDA_CALLS): Add `cuDeviceGetName',
3160 `cuDeviceTotalMem', `cuDriverGetVersion' and `cuMemGetInfo'
3161 calls.
3162 (GOMP_OFFLOAD_get_property): New function.
3163 (struct ptx_device): Add new field "name".
3164 (cuda_driver_version_s): Add new static variable ...
3165 (nvptx_init): ... and init from here.
3166
3167 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c: New test.
3168 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: New test.
3169 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: New test.
3170 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c: New file
3171 with test helper functions.
3172
3173 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: New test.
3174
c8e759b4
MR
31752019-12-22 Maciej W. Rozycki <macro@wdc.com>
3176
3177 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): New
3178 variable.
3179
b092fb3b
TS
31802019-12-21 Thomas Schwinge <thomas@codesourcery.com>
3181
3182 * target.c (gomp_map_vars_internal): Restore 'omp declare target
3183 link' handling.
3184
9be3ac5d
JB
31852019-12-19 Julian Brown <julian@codesourcery.com>
3186
3187 * testsuite/libgomp.oacc-fortran/class-ptr-param.f95: New test.
3188 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: New test.
3189 * testsuite/libgomp.oacc-fortran/classtypes-2.f95: New test.
3190
02817027
JB
31912019-12-19 Julian Brown <julian@codesourcery.com>
3192 Cesar Philippidis <cesar@codesourcery.com>
3193
3194 * testsuite/libgomp.oacc-fortran/deep-copy-1.f90: New test.
3195 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: New test.
3196 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: New test.
3197 * testsuite/libgomp.oacc-fortran/deep-copy-4.f90: New test.
3198 * testsuite/libgomp.oacc-fortran/deep-copy-5.f90: New test.
3199 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: New test.
3200 * testsuite/libgomp.oacc-fortran/deep-copy-7.f90: New test.
3201 * testsuite/libgomp.oacc-fortran/deep-copy-8.f90: New test.
3202 * testsuite/libgomp.oacc-fortran/derived-type-1.f90: New test.
3203 * testsuite/libgomp.oacc-fortran/derivedtype-1.f95: New test.
3204 * testsuite/libgomp.oacc-fortran/derivedtype-2.f95: New test.
3205 * testsuite/libgomp.oacc-fortran/multidim-slice.f95: New test.
3206 * testsuite/libgomp.oacc-fortran/update-2.f90: New test.
3207
c2eb021f
JB
32082019-12-19 Julian Brown <julian@codesourcery.com>
3209
3210 * testsuite/libgomp.oacc-c-c++-common/deep-copy-1.c: New test.
3211 * testsuite/libgomp.oacc-c-c++-common/deep-copy-2.c: New test.
3212 * testsuite/libgomp.oacc-c-c++-common/deep-copy-4.c: New test.
3213 * testsuite/libgomp.oacc-c-c++-common/deep-copy-6.c: New test.
3214 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: New test.
3215 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: New test.
3216 * testsuite/libgomp.oacc-c-c++-common/deep-copy-9.c: New test.
3217 * testsuite/libgomp.oacc-c-c++-common/deep-copy-10.c: New test.
3218 * testsuite/libgomp.oacc-c-c++-common/deep-copy-11.c: New test.
3219 * testsuite/libgomp.oacc-c-c++-common/deep-copy-14.c: New test.
3220 * testsuite/libgomp.oacc-c++/deep-copy-12.C: New test.
3221 * testsuite/libgomp.oacc-c++/deep-copy-13.C: New test.
3222
8e7e71ff
JB
32232019-12-19 Julian Brown <julian@codesourcery.com>
3224
3225 * libgomp.h (struct target_var_desc): Add do_detach flag.
3226 * oacc-init.c (acc_shutdown_1): Free aux block if present.
3227 * oacc-mem.c (find_group_last): Add SIZES parameter. Support
3228 struct components. Tidy up and add some new checks.
3229 (goacc_enter_data_internal): Update call to find_group_last.
3230 (goacc_exit_data_internal): Support detach operations and
3231 GOMP_MAP_STRUCT.
3232 (GOACC_enter_exit_data): Handle initial GOMP_MAP_STRUCT or
3233 GOMP_MAP_FORCE_PRESENT in finalization detection code. Handle
3234 attach/detach in enter/exit data detection code.
3235 * target.c (gomp_map_vars_existing): Initialise do_detach field of
3236 tgt_var_desc.
3237 (gomp_map_vars_internal): Support attach.
3238 (gomp_unmap_vars_internal): Support detach.
3239
5d5be7bf
JB
32402019-12-19 Julian Brown <julian@codesourcery.com>
3241 Thomas Schwinge <thomas@codesourcery.com>
3242
3243 * libgomp.h (struct splay_tree_aux): Add attach_count field.
3244 (gomp_attach_pointer, gomp_detach_pointer): Add prototypes.
3245 * libgomp.map (OACC_2.6): New section. Add acc_attach,
3246 acc_attach_async, acc_detach, acc_detach_async, acc_detach_finalize,
3247 acc_detach_finalize_async.
3248 * oacc-mem.c (acc_attach_async, acc_attach, goacc_detach_internal,
3249 acc_detach, acc_detach_async, acc_detach_finalize,
3250 acc_detach_finalize_async): New functions.
3251 * openacc.h (acc_attach, acc_attach_async, acc_detach,
3252 (acc_detach_async, acc_detach_finalize, acc_detach_finalize_async): Add
3253 prototypes.
3254 * target.c (gomp_attach_pointer, gomp_detach_pointer): New functions.
3255 (gomp_remove_var_internal): Free attachment counts if present.
3256 * testsuite/libgomp.oacc-c-c++-common/deep-copy-3.c: New test.
3257 * testsuite/libgomp.oacc-c-c++-common/deep-copy-5.c: New test.
3258
5bcd470b
JB
32592019-12-19 Julian Brown <julian@codesourcery.com>
3260 Cesar Philippidis <cesar@codesourcery.com>
3261
3262 * libgomp.h (gomp_map_val): Add prototype.
3263 * oacc-parallel.c (GOACC_parallel_keyed): Use gomp_map_val instead of
3264 open-coding device-address calculation.
3265 * target.c (gomp_map_val): Make global. Use OFFSET_POINTER in
3266 non-present case.
3267
378da98f
JB
32682019-12-19 Julian Brown <julian@codesourcery.com>
3269
3270 * libgomp.h (struct splay_tree_key_s): Substitute dynamic_refcount
3271 field for virtual_refcount.
3272 (enum gomp_map_vars_kind): Add GOMP_MAP_VARS_OPENACC_ENTER_DATA.
3273 (gomp_free_memmap): Remove prototype.
3274 * oacc-init.c (acc_shutdown_1): Iteratively call gomp_remove_var
3275 instead of calling gomp_free_memmap.
3276 * oacc-mem.c (acc_map_data): Use virtual_refcount instead of
3277 dynamic_refcount.
3278 (acc_unmap_data): Open code instead of forcing target_mem_desc's
3279 to_free field to NULL then calling gomp_unmap_vars. Handle
3280 REFCOUNT_INFINITY on target blocks.
3281 (goacc_enter_data): Rename to...
3282 (goacc_enter_datum): ...this. Remove MAPNUM parameter and special
3283 handling for mapping groups. Use virtual_refcount instead of
3284 dynamic_refcount. Use GOMP_MAP_VARS_OPENACC_ENTER_DATA for
3285 map_map_vars_async call. Re-do lookup for target pointer return value.
3286 (acc_create, acc_create_async, acc_copyin, acc_copyin_async): Call
3287 renamed goacc_enter_datum function.
3288 (goacc_exit_data): Rename to...
3289 (goacc_exit_datum): ...this. Update for virtual_refcount semantics.
3290 (acc_delete, acc_delete_async, acc_delete_finalize,
3291 acc_delete_finalize_async, acc_copyout, acc_copyout_async,
3292 acc_copyout_finalize, acc_copyout_finalize_async): Call renamed
3293 goacc_exit_datum function.
3294 (gomp_acc_remove_pointer, find_pointer): Remove functions.
3295 (find_group_last, goacc_enter_data_internal, goacc_exit_data_internal):
3296 New functions.
3297 (GOACC_enter_exit_data): Use goacc_enter_data_internal and
3298 goacc_exit_data_internal helper functions.
3299 * target.c (gomp_map_vars_internal): Handle
3300 GOMP_MAP_VARS_OPENACC_ENTER_DATA. Update for virtual_refcount
3301 semantics.
3302 (gomp_unmap_vars_internal): Update for virtual_refcount semantics.
3303 (gomp_load_image_to_device, omp_target_associate_ptr): Zero-initialise
3304 virtual_refcount field instead of dynamic_refcount.
3305 (gomp_free_memmap): Remove function.
3306 * testsuite/libgomp.oacc-c-c++-common/unmap-infinity-1.c: New test.
3307 * testsuite/libgomp.c-c++-common/unmap-infinity-2.c: New test.
3308 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Add XFAIL.
3309
2a656a93
JB
33102019-12-19 Julian Brown <julian@codesourcery.com>
3311 Thomas Schwinge <thomas@codesourcery.com>
3312
3313 * libgomp.h (struct splay_tree_aux): New.
3314 (struct splay_tree_key_s): Replace link_key field with aux pointer.
3315 * target.c (gomp_map_vars_internal): Adjust for link_key being moved
3316 to aux struct.
3317 (gomp_remove_var_internal): Free aux block if present.
3318 (gomp_load_image_to_device): Zero-initialise aux field instead of
3319 link_key field.
3320 (omp_target_associate_pointer): Zero-initialise aux field.
3321
601399c0
JJ
33222019-12-18 Jakub Jelinek <jakub@redhat.com>
3323
3324 PR middle-end/86416
3325 * testsuite/libgomp.c/pr86416-1.c (main): Use L suffixes rather than
3326 q or none.
3327 * testsuite/libgomp.c/pr86416-2.c (main): Use Q suffixes rather than
3328 L or none.
3329
a6163563
JB
33302019-12-19 Julian Brown <julian@codesourcery.com>
3331 Maciej W. Rozycki <macro@codesourcery.com>
3332 Tobias Burnus <tobias@codesourcery.com>
3333 Thomas Schwinge <thomas@codesourcery.com>
3334
3335 * target.c (gomp_map_vars_async): Support GOMP_MAP_NO_ALLOC.
3336 * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: New test.
3337 * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: New test.
3338 * testsuite/libgomp.oacc-c-c++-common/no_create-3.c: New test.
3339 * testsuite/libgomp.oacc-c-c++-common/no_create-4.c: New test.
3340 * testsuite/libgomp.oacc-c-c++-common/no_create-5.c: New test.
3341 * testsuite/libgomp.oacc-fortran/no_create-1.f90: New test.
3342 * testsuite/libgomp.oacc-fortran/no_create-2.f90: New test.
3343 * testsuite/libgomp.oacc-fortran/no_create-3.F90: New test.
3344
6278b549
TS
33452019-12-18 Thomas Schwinge <thomas@codesourcery.com>
3346
77ce5555
TS
3347 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
3348 called...
3349 (goacc_insert_pointer): ... from here, "present" case.
3350 (goacc_insert_pointer): Inline function into...
3351 (GOACC_enter_exit_data): ... here, and simplify.
3352
9444a299
TS
3353 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
3354 called...
3355 (goacc_insert_pointer): ... from here, "not present" case.
3356
5031b619
TS
3357 * oacc-mem.c (goacc_remove_pointer): Refactor interface. Adjust
3358 all users.
3359
1a79b578
TS
3360 * oacc-mem.c (GOACC_enter_exit_data): Refactor code to call
3361 'goacc_enter_data', 'goacc_exit_data'.
3362
34cfe31e
TS
3363 * oacc-mem.c (delete_copyout): Refactor into...
3364 (goacc_exit_data): ... this. Adjust all users.
3365
aaf0e9d7
TS
3366 * oacc-mem.c (present_create_copy): Refactor into...
3367 (goacc_enter_data): ... this. Adjust all users.
3368
83d1d065
TS
3369 * target.c (gomp_unmap_vars_internal): Add a safeguard to
3370 'gomp_remove_var'.
3371
cc3f11f5
TS
3372 * target.c (gomp_to_device_kind_p): Handle 'GOMP_MAP_FORCE_FROM'
3373 like 'GOMP_MAP_FROM'.
3374
ddb25eb9
TS
3375 PR libgomp/92726
3376 PR libgomp/92970
3377 PR libgomp/92984
3378 * oacc-mem.c (delete_copyout): No-op behavior if 'lookup_host'
3379 fails.
3380 (GOACC_enter_exit_data): Simplify accordingly.
3381 * testsuite/libgomp.oacc-c-c++-common/pr92970-1.c: New file,
3382 subsuming...
3383 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: ... this file...
3384 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: ..., and this
3385 file.
3386 * testsuite/libgomp.oacc-c-c++-common/pr92984-1.c: New file,
3387 subsuming...
3388 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: ... this file...
3389 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: ..., and this
3390 file.
3391 * testsuite/libgomp.oacc-c-c++-common/pr92726-1.c: New file,
3392 subsuming...
3393 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: ... this file.
3394
32128577
TS
3395 * oacc-mem.c (GOACC_enter_exit_data): Simplify 'exit data'
3396 'finalize' handling.
3397
ba40277f
TS
3398 PR libgomp/92848
3399 * oacc-mem.c (acc_map_data, present_create_copy)
3400 (goacc_insert_pointer): Use 'GOMP_MAP_VARS_ENTER_DATA'.
3401 (acc_unmap_data, delete_copyout, goacc_remove_pointer): Adjust.
3402 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Remove.
3403 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-a.c: New file
3404 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-p.c: Likewise.
3405 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-a.c: Likewise.
3406 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-p.c: Likewise.
3407 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
3408 Remove "XFAIL"s.
3409
6278b549
TS
3410 * target.c (gomp_unmap_tgt): Make it 'static'.
3411 * libgomp.h (gomp_unmap_tgt): Remove.
3412
c80c9e26
TB
34132019-12-18 Tobias Burnus <tobias@codesourcery.com>
3414
3415 PR middle-end/86416
3416 * testsuite/libgomp.c/pr86416-1.c: New.
3417 * testsuite/libgomp.c/pr86416-2.c: New.
3418
0b8499a4
TB
34192019-12-17 Tobias Burnus <tobias@codesourcery.com>
3420
3421 * config/accel/openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark
3422 all symbols as public except for the 'use …, only' imported symbol,
3423 which is private.
3424 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
3425 all symbols from module openacc_kinds as PUBLIC
3426 * openacc.f90: Add comment with crossref to that file and openmp_lib.h;
3427 fix comment typo.
3428 * openacc_lib.h (acc_device_gcn): Add this PARAMETER.
3429
1cbd94e8
JB
34302019-12-13 Julian Brown <julian@codesourcery.com>
3431
3432 PR libgomp/92881
3433
3434 * libgomp.h (gomp_remove_var_async): Add prototype.
3435 * oacc-mem.c (delete_copyout): Call gomp_remove_var_async instead of
3436 gomp_remove_var.
3437 * target.c (gomp_unref_tgt): Change return type to bool, indicating
3438 whether target_mem_desc was unmapped.
3439 (gomp_unref_tgt_void): New.
3440 (gomp_remove_var): Reimplement in terms of...
3441 (gomp_remove_var_internal): ...this new helper function.
3442 (gomp_remove_var_async): New, implemented using above helper function.
3443 (gomp_unmap_vars_internal): Use gomp_unref_tgt_void instead of
3444 gomp_unref_tgt.
3445
26b74ed0
AS
34462019-12-13 Andrew Stubbs <ams@codesourcery.com>
3447
3448 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Handle gcn.
3449 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
3450 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c: Likewise.
3451 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Likewise.
3452 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c:
3453 Likewise.
3454 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Disable on GCN.
3455 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Likewise.
3456
7858bb96
TB
34572019-12-13 Tobias Burnus <tobias@codesourcery.com>
3458
3459 * openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark all symbols
3460 as public except for the 'use …, only' imported symbol, which is
3461 private.
3462 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
3463 all symbols from module openacc_kinds as PUBLIC; add missing PUBLIC
3464 attributes for acc_copyout_finalize and acc_delete_finalize.
3465
f8ac7d8f
JJ
34662019-12-11 Jakub Jelinek <jakub@redhat.com>
3467
3468 PR fortran/92899
3469 * testsuite/libgomp.fortran/atomic1.f90: New test.
3470
3d1b5e71
TS
34712019-12-11 Thomas Schwinge <thomas@codesourcery.com>
3472
d6e8c01c
TS
3473 PR libgomp/92843
3474 * oacc-mem.c (present_create_copy, delete_copyout): Fix dynamic
3475 reference counting for structured 'REFCOUNT_INFINITY'. Add some
3476 assertions.
3477 (goacc_insert_pointer, goacc_remove_pointer): Adjust accordingly.
3478 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: New file.
3479 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Fix OpenACC.
3480 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
3481 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
3482
57963e39
TS
3483 * oacc-parallel.c (find_pointer, GOACC_enter_exit_data): Move...
3484 * oacc-mem.c: ... here.
3485 (gomp_acc_insert_pointer, gomp_acc_remove_pointer): Rename to
3486 'goacc_insert_pointer', 'goacc_remove_pointer', and make 'static'.
3487 * libgomp.h (gomp_acc_insert_pointer, gomp_acc_remove_pointer):
3488 Remove.
3489 * libgomp_g.h: Update.
3490
c5578b56
TS
3491 * oacc-parallel.c (GOACC_wait, goacc_wait): Move...
3492 * oacc-async.c: ... here.
3493 * oacc-int.h (goacc_wait): Declare.
3494 * libgomp_g.h: Update
3495
3d1b5e71
TS
3496 PR libgomp/92854
3497 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-1.c:
3498 New file.
3499 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-2.c:
3500 Likewise.
3501 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-3.c:
3502 Likewise.
3503 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-1.c:
3504 Likewise.
3505 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-2.c:
3506 Likewise.
3507 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-3.c:
3508 Likewise.
3509
5e939438
TS
35102019-12-11 Thomas Schwinge <thomas@codesourcery.com>
3511 Julian Brown <julian@codesourcery.com>
3512
3513 * target.c (gomp_load_image_to_device, omp_target_associate_ptr):
3514 Initialize 'dynamic_refcount' whenever we initialize 'refcount'.
3515
93d90219
TB
35162019-12-11 Tobias Burnus <tobias@codesourcery.com>
3517
3518 * omp_lib.h.in: Fix spelling of function declaration
3519 omp_get_cancell(l)ation.
3520 * libgomp.texi (acc_is_present, acc_async_test, acc_async_test_all):
3521 Fix typos.
3522 * env.c: Fix comment typos.
3523 * oacc-host.c: Likewise.
3524 * ordered.c: Likewise.
3525 * task.c: Likewise.
3526 * team.c: Likewise.
3527 * config/gcn/task.c: Likewise.
3528 * config/gcn/team.c: Likewise.
3529 * config/nvptx/task.c: Likewise.
3530 * config/nvptx/team.c: Likewise.
3531 * plugin/plugin-gcn.c: Likewise.
3532 * testsuite/libgomp.fortran/jacobi.f: Likewise.
3533 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
3534 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: Likewise.
3535
a0221aee
TB
35362019-12-11 Tobias Burnus <tobias@codesourcery.com>
3537
3538 * testsuite/libgomp.oacc-fortran/optional-cache.f95: Add 'dg-do run'.
3539 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Remove
3540 unnecessary 'dg-additional-options "-w"'.
3541
47afc7b4
TS
35422019-12-09 Thomas Schwinge <thomas@codesourcery.com>
3543 Julian Brown <julian@codesourcery.com>
3544
3545 PR libgomp/92116
3546 PR libgomp/92877
3547
3548 * oacc-mem.c (lookup_dev): Reimplement. Adjust all users.
3549 * libgomp.h (struct acc_dispatch_t): Remove 'data_environ' member.
3550 Adjust all users.
3551 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
3552 Remove XFAIL.
3553 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
3554 Likewise.
3555 * testsuite/libgomp.oacc-c-c++-common/pr92877-1.c: New file.
3556
b5859e40
TS
35572019-12-09 Thomas Schwinge <thomas@codesourcery.com>
3558
cec41816
TS
3559 PR libgomp/92503
3560 * oacc-mem.c (acc_free): Error out instead of 'acc_unmap_data'.
3561 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-1.c: New
3562 file.
3563 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-2.c:
3564 Likewise.
3565 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3-2.c:
3566 Likewise.
3567 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3.c:
3568 Likewise.
3569 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
3570 Likewise.
3571 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
3572 Likewise.
3573 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
3574 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
3575 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
3576 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
3577 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
3578 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
3579 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
3580 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
3581 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
3582 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
3583
e103542b
TS
3584 PR libgomp/92840
3585 * oacc-mem.c (acc_map_data): Clarify reference counting behavior.
3586 (acc_unmap_data): Add error case for 'REFCOUNT_INFINITY'.
3587 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-1.c:
3588 New file.
3589 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-2.c:
3590 Likewise.
3591 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-3.c:
3592 Likewise.
3593 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
3594 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Adjust.
3595
41f36f22
TS
3596 PR libgomp/92511
3597 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: Remove
3598 this file...
3599 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: ..., and
3600 this file...
3601 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: ..., and this
3602 file...
3603 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: ..., and this
3604 file...
3605 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
3606 ... with their content moved into, and extended in this new file.
3607 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-a.c:
3608 New file.
3609 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-p.c:
3610 Likewise.
3611 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-a.c:
3612 Likewise.
3613 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-2.c:
3614 Likewise.
3615
6effebe1
TS
3616 * testsuite/libgomp.oacc-c-c++-common/map-data-1.c: New file.
3617
7d020473
TS
3618 PR libgomp/92854
3619 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: New file.
3620
1e1fb715
TS
3621 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New file.
3622
b5859e40
TS
3623 * target.c (gomp_exit_data): Use 'gomp_remove_var'.
3624
11586ed9
TB
36252019-12-09 Tobias Burnus <tobias@codesourcery.com>
3626
3627 * testsuite/libgomp.fortran/use_device_addr-3.f90: Make 'stop' codes
3628 unique.
3629 * testsuite/libgomp.fortran/use_device_addr-4.f90: Ditto.
3630 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
3631 * testsuite/libgomp.oacc-fortran/declare-5.f90: Ditto.
3632 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90:
3633 Ditto.
3634 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: Ditto.
3635 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: Ditto.
3636
3ad4a03a
KCY
36372019-12-06 Kwok Cheung Yeung <kcy@codesourcery.com>
3638
3639 * config/accel/proc.c (omp_get_num_procs): Apply ialias macro.
3640
6e4d01d6
TB
36412019-12-06 Tobias Burnus <tobias@codesourcery.com>
3642 Kwok Cheung Yeung <kcy@codesourcery.com>
3643
3644 * oacc-mem.c (update_dev_host, gomp_acc_insert_pointer): Just return
3645 if input it a NULL pointer.
3646 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Remove; dependent on
3647 diagnostic of NULL pointer.
3648 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Ditto.
3649 * testsuite/libgomp.fortran/optional-map.f90: New.
3650 * testsuite/libgomp.fortran/use_device_addr-1.f90
3651 (test_dummy_opt_callee_1_absent): New.
3652 (test_dummy_opt_call_1): Call it.
3653 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
3654 * testsuite/libgomp.fortran/use_device_addr-3.f90: Likewise.
3655 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
3656 * testsuite/libgomp.oacc-fortran/optional-cache.f95: New.
3657 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90: New.
3658 * testsuite/libgomp.oacc-fortran/optional-data-copyin.f90: New.
3659 * testsuite/libgomp.oacc-fortran/optional-data-copyout.f90: New.
3660 * testsuite/libgomp.oacc-fortran/optional-data-enter-exit.f90: New.
3661 * testsuite/libgomp.oacc-fortran/optional-declare.f90: New.
3662 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: New.
3663 * testsuite/libgomp.oacc-fortran/optional-host_data.f90: New.
3664 * testsuite/libgomp.oacc-fortran/optional-nested-calls.f90: New.
3665 * testsuite/libgomp.oacc-fortran/optional-private.f90: New.
3666 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: New.
3667 * testsuite/libgomp.oacc-fortran/optional-update-device.f90: New.
3668 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: New.
3669
ad80ec46
TB
36702019-12-05 Tobias Burnus <tobias@codesourcery.com>
3671
3672 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Also don't
3673 expect dg-output of 'Error termination.' for GCN.
3674 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
3675 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
3676
a8a5f4cc
JJ
36772019-12-04 Jakub Jelinek <jakub@redhat.com>
3678
3679 PR fortran/92756
3680 * testsuite/libgomp.fortran/teams1.f90: New test.
3681 * testsuite/libgomp.fortran/teams2.f90: New test.
3682
d8f0024b
FH
36832019-12-03 Frederik Harwath <frederik@codesourcery.com>
3684
3685 * oacc-init.c (acc_known_device_type): Add function.
3686 (unknown_device_type_error): Add function.
3687 (name_of_acc_device_t): Change to call unknown_device_type_error
3688 on unknown type.
3689 (resolve_device): Use acc_known_device_type.
3690 (acc_init): Fail if acc_device_t argument is not valid.
3691 (acc_shutdown): Likewise.
3692 (acc_get_num_devices): Likewise.
3693 (acc_set_device_type): Likewise.
3694 (acc_get_device_num): Likewise.
3695 (acc_set_device_num): Likewise.
3696 (acc_on_device): Add comment that argument validity is not checked.
3697
83caa34e
AS
36982019-12-03 Andrew Stubbs <ams@codesourcery.com>
3699
3700 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
3701 Recognize amdgcn.
3702 (check_effective_target_openacc_amdgcn_accel_present): New proc.
3703 (check_effective_target_openacc_amdgcn_accel_selected): New proc.
3704 * testsuite/libgomp.oacc-c++/c++.exp: Add support for amdgcn.
3705 * testsuite/libgomp.oacc-c/c.exp: Likewise.
3706 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
3707
00484365
SN
37082019-12-03 Szabolcs Nagy <szabolcs.nagy@arm.com>
3709
3710 PR libgomp/91938
3711 * configure.tgt: Avoid IE tls on *-*-musl*.
3712
9909a059
TB
37132019-11-29 Tobias Burnus <tobias@codesourcery.com>
3714
3715 * testsuite/libgomp.oacc-fortran/declare-5.f90: Extend by
3716 adding a common-block test case.
3717
b3f44388
JJ
37182019-11-29 Jakub Jelinek <jakub@redhat.com>
3719
3720 PR c++/60228
3721 * testsuite/libgomp.c++/udr-20.C: New test.
3722 * testsuite/libgomp.c++/udr-21.C: New test.
3723
b1a73b48
TS
37242019-11-27 Thomas Schwinge <thomas@codesourcery.com>
3725
3726 * testsuite/lib/libgomp.exp
3727 (check_effective_target_offload_target_nvptx): New proc.
3728 * testsuite/libgomp.fortran/target-print-1.f90: Use it with
3729 'dg-skip-if'.
3730 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
3731 * testsuite/libgomp.fortran/target-print-1-nvptx.f90: New file.
3732 * testsuite/libgomp.oacc-fortran/print-1-nvptx.f90: Likewise.
3733
b8e72446
RO
37342019-11-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3735
3736 * testsuite/libgomp.c/pr39591-1.c: Rename err to e.
3737 * testsuite/libgomp.c/pr39591-2.c: Likewise.
3738 * testsuite/libgomp.c/pr39591-3.c: Likewise.
3739 * testsuite/libgomp.c/private-1.c: Likewise.
3740 * testsuite/libgomp.c/task-1.c: Likewise.
3741 * testsuite/libgomp.c/task-5.c: Renamed err to serr.
3742
d88b27da
JB
37432019-11-20 Julian Brown <julian@codesourcery.com>
3744
3745 * plugin/plugin-gcn.c (wait_for_queue_nonfull): Don't lock/unlock
3746 aq->mutex here.
3747 (queue_push_launch): Lock aq->mutex before calling
3748 wait_for_queue_nonfull.
3749 (queue_push_callback): Likewise.
3750 (queue_push_asyncwait): Likewise.
3751 (queue_push_placeholder): Likewise.
3752
8d2f4ddf
JB
37532019-11-20 Julian Brown <julian@codesourcery.com>
3754
3755 * plugin/plugin-gcn.c (hsa_memory_copy_wrapper): New.
3756 (copy_data, GOMP_OFFLOAD_host2dev): Use above function.
3757 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_dev2dev): Check hsa_memory_copy
3758 return code.
3759
e307b05f
JB
37602019-11-20 Julian Brown <julian@codesourcery.com>
3761
3762 PR libgomp/92511
3763
3764 * oacc-mem.c (present_create_copy): Fix device pointer return value in
3765 case of "present" subarray. Use tgt->tgt_start instead of tgt->to_free
3766 in non-present/create case.
3767 (delete_copyout): Change error condition to fail only on copies outside
3768 of mapped block. Adjust error message accordingly.
3769 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: New test.
3770 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: New test.
3771 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Adjust expected error
3772 message.
3773 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
3774 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Allow test to pass now.
3775 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
3776
83115e9e
MR
37772019-11-20 Maciej W. Rozycki <macro@wdc.com>
3778
3779 * testsuite/lib/libgomp.exp (libgomp_init): Add flags to find
3780 libatomic in build-tree testing.
3781
a1289887
MR
37822019-11-18 Maciej W. Rozycki <macro@wdc.com>
3783
3784 * testsuite/Makefile.in: Regenerate.
3785
8916ba87
AS
37862019-11-15 Andrew Stubbs <ams@codesourcery.com>
3787
3788 * testsuite/libgomp.c/target-print-1.c: New file.
3789 * testsuite/libgomp.fortran/target-print-1.f90: New file.
3790 * testsuite/libgomp.oacc-c/print-1.c: New file.
3791 * testsuite/libgomp.oacc-fortran/print-1.f90: New file.
3792
237957cc
AS
37932019-11-13 Andrew Stubbs <ams@codesourcery.com>
3794 Kwok Cheung Yeung <kcy@codesourcery.com>
3795 Julian Brown <julian@codesourcery.com>
3796 Tom de Vries <tom@codesourcery.com>
3797
3798 * plugin/Makefrag.am: Add amdgcn plugin support.
3799 * plugin/configfrag.ac: Likewise.
3800 * plugin/plugin-gcn.c: New file.
3801 * configure: Regenerate.
3802 * Makefile.in: Regenerate.
3803 * testsuite/Makefile.in: Regenerate.
3804
cee16451
AS
38052019-11-13 Andrew Stubbs <ams@codesourcery.com>
3806
3807 * config/gcn/team.c (gomp_gcn_enter_kernel): Set up the team arena
3808 and use team_malloc variants.
3809 (gomp_gcn_exit_kernel): Use team_free.
3810 * libgomp.h (TEAM_ARENA_SIZE): Define.
3811 (TEAM_ARENA_START): Define.
3812 (TEAM_ARENA_FREE): Define.
3813 (TEAM_ARENA_END): Define.
3814 (team_malloc): New function.
3815 (team_malloc_cleared): New function.
3816 (team_free): New function.
3817 * team.c (gomp_new_team): Initialize and use team_malloc.
3818 (free_team): Use team_free.
3819 (gomp_free_thread): Use team_free.
3820 (gomp_pause_host): Use team_free.
3821 * work.c (gomp_init_work_share): Use team_malloc.
3822 (gomp_fini_work_share): Use team_free.
3823
fa499995
AS
38242019-11-13 Andrew Stubbs <ams@codesourcery.com>
3825 Kwok Cheung Yeung <kcy@codesourcery.com>
3826 Julian Brown <julian@codesourcery.com>
3827 Tom de Vries <tom@codesourcery.com>
3828
3829 * Makefile.am (libgomp_la_SOURCES): Add oacc-target.c.
3830 * Makefile.in: Regenerate.
3831 * config.h.in (PLUGIN_GCN): Add new undef.
3832 * config/accel/openacc.f90 (acc_device_gcn): New parameter.
3833 * config/gcn/affinity-fmt.c: New file.
3834 * config/gcn/bar.c: New file.
3835 * config/gcn/bar.h: New file.
3836 * config/gcn/doacross.h: New file.
3837 * config/gcn/icv-device.c: New file.
3838 * config/gcn/oacc-target.c: New file.
3839 * config/gcn/simple-bar.h: New file.
3840 * config/gcn/target.c: New file.
3841 * config/gcn/task.c: New file.
3842 * config/gcn/team.c: New file.
3843 * config/gcn/time.c: New file.
3844 * configure.ac: Add amdgcn*-*-*.
3845 * configure: Regenerate.
3846 * configure.tgt: Add amdgcn*-*-*.
3847 * libgomp-plugin.h (offload_target_type): Add OFFLOAD_TARGET_TYPE_GCN.
3848 * libgomp.h (gcn_thrs): Add amdgcn variant.
3849 (set_gcn_thrs): Likewise.
3850 (gomp_thread): Likewise.
3851 * oacc-int.h (goacc_thread): Likewise.
3852 * oacc-target.c: New file.
3853 * openacc.f90 (acc_device_gcn): New parameter.
3854 * openacc.h (acc_device_t): Add acc_device_gcn.
3855 * team.c (gomp_free_pool_helper): Add amdgcn support.
3856
d2903ce0
AS
38572019-11-13 Andrew Stubbs <ams@codesourcery.com>
3858 Julian Brown <julian@codesourcery.com>
3859
3860 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_async_construct): Add int
3861 parameter.
3862 * oacc-async.c (lookup_goacc_asyncqueue): Pass device number to the
3863 queue constructor.
3864 * oacc-host.c (host_openacc_async_construct): Add device parameter.
3865 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_openacc_async_construct): Add
3866 device parameter.
3867
b3d14b3a
AS
38682019-11-13 Andrew Stubbs <ams@codesourcery.com>
3869
3870 * configure.tgt (nvptx*-*-*): Add "accel" directory.
3871 * config/nvptx/libgomp-plugin.c: Move ...
3872 * config/accel/libgomp-plugin.c: ... to here.
3873 * config/nvptx/lock.c: Move ...
3874 * config/accel/lock.c: ... to here.
3875 * config/nvptx/mutex.c: Move ...
3876 * config/accel/mutex.c: ... to here.
3877 * config/nvptx/mutex.h: Move ...
3878 * config/accel/mutex.h: ... to here.
3879 * config/nvptx/oacc-async.c: Move ...
3880 * config/accel/oacc-async.c: ... to here.
3881 * config/nvptx/oacc-cuda.c: Move ...
3882 * config/accel/oacc-cuda.c: ... to here.
3883 * config/nvptx/oacc-host.c: Move ...
3884 * config/accel/oacc-host.c: ... to here.
3885 * config/nvptx/oacc-init.c: Move ...
3886 * config/accel/oacc-init.c: ... to here.
3887 * config/nvptx/oacc-mem.c: Move ...
3888 * config/accel/oacc-mem.c: ... to here.
3889 * config/nvptx/oacc-plugin.c: Move ...
3890 * config/accel/oacc-plugin.c: ... to here.
3891 * config/nvptx/omp-lock.h: Move ...
3892 * config/accel/omp-lock.h: ... to here.
3893 * config/nvptx/openacc.f90: Move ...
3894 * config/accel/openacc.f90: ... to here.
3895 * config/nvptx/pool.h: Move ...
3896 * config/accel/pool.h: ... to here.
3897 * config/nvptx/proc.c: Move ...
3898 * config/accel/proc.c: ... to here.
3899 * config/nvptx/ptrlock.c: Move ...
3900 * config/accel/ptrlock.c: ... to here.
3901 * config/nvptx/ptrlock.h: Move ...
3902 * config/accel/ptrlock.h: ... to here.
3903 * config/nvptx/sem.c: Move ...
3904 * config/accel/sem.c: ... to here.
3905 * config/nvptx/sem.h: Move ...
3906 * config/accel/sem.h: ... to here.
3907 * config/nvptx/thread-stacksize.h: Move ...
3908 * config/accel/thread-stacksize.h: ... to here.
3909
62aee289
MR
39102019-11-12 Maciej W. Rozycki <macro@codesourcery.com>
3911 Tobias Burnus <tobias@codesourcery.com>
3912 Frederik Harwath <frederik@codesourcery.com>
3913 Thomas Schwinge <thomas@codesourcery.com>
3914
3915 libgomp/
3916 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New test.
3917 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: New test.
3918 * testsuite/libgomp.oacc-fortran/parallel-dims.f89: New test.
3919
a2c26c50
TB
39202019-11-11 Tobias Burnus <tobias@codesourcery.com>
3921 Kwok Cheung Yeung <kcy@codesourcery.com>
3922
3923 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90: Extend.
3924 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: New.
3925
6d4868f3
TS
39262019-11-11 Thomas Schwinge <thomas@codesourcery.com>
3927
bfa1837b
TS
3928 * testsuite/libgomp.fortran/target9.f90: Specify 'dg-do run'.
3929
6d4868f3
TS
3930 * testsuite/libgomp.fortran/use_device_addr-3.f90: Specify 'dg-do
3931 run'.
3932 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
3933 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Likewise.
3934
5d183d17
FH
39352019-11-06 Thomas Schwinge <thomas@codesourcery.com>
3936
3937 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c:
3938 Add expected warnings about missing reduction clauses.
3939 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
3940 Likewise.
3941 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c:
3942 Likewise.
3943 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
3944 Likewise.
3945
d8f03b03
TB
39462019-11-04 Tobias Burnus <tobias@codesourcery.com>
3947
3948 * testsuite/libgomp.fortran/pr66199-1.f90: Remove
3949 'dg-do run' (implies torture test) as 'dg-options "O2"' is used.
3950 * testsuite/libgomp.fortran/pr66199-2.f90: Ditto.
3951 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
3952 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
3953 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
3954
12fd2ec5
TB
39552019-11-04 Tobias Burnus <tobias@codesourcery.com>
3956
3957 PR fortran/92305
3958 * testsuite/libgomp.fortran/allocatable2.f90: Use
3959 unique numbers with 'stop'.
3960 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
3961 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
3962 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Ditto.
3963 * testsuite/libgomp.oacc-fortran/lib-15.f90: Ditto.
3964 * testsuite/libgomp.oacc-fortran/pset-1.f90: Ditto.
3965
92e63bd2
TB
39662019-11-01 Tobias Burnus <tobias@codesourcery.com>
3967
3968 * testsuite/libgomp.fortran/use_device_addr-1.f90 (test_nullptr_1,
3969 test_dummy_opt_nullptr_callee_1): Add present but unallocated test.
3970 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
3971 * testsuite/libgomp.fortran/use_device_addr-3.f90: New.
3972 * testsuite/libgomp.fortran/use_device_addr-4.f90: New.
3973 * testsuite/testsuite/libgomp.fortran/use_device_ptr-1.f90: New.
3974
91ae0a46
TB
39752019-10-30 Tobias Burnus <tobias@codesourcery.com>
3976
3977 * testsuite/libgomp.fortran/target9.f90: New.
3978
c425e66b
TB
39792019-10-30 Tobias Burnus <tobias@codesourcery.com>
3980
3981 * testsuite/libgomp.fortran/aligned1.f03: Replace 'STOP' by 'stop'.
3982 * testsuite/libgomp.fortran/alloc-comp-1.f90: Ditto.
3983 * testsuite/libgomp.fortran/alloc-comp-2.f90: Ditto.
3984 * testsuite/libgomp.fortran/alloc-comp-3.f90: Ditto.
3985 * testsuite/libgomp.fortran/allocatable1.f90: Ditto.
3986 * testsuite/libgomp.fortran/allocatable10.f90: Ditto.
3987 * testsuite/libgomp.fortran/allocatable11.f90: Ditto.
3988 * testsuite/libgomp.fortran/allocatable12.f90: Ditto.
3989 * testsuite/libgomp.fortran/allocatable2.f90: Ditto.
3990 * testsuite/libgomp.fortran/allocatable3.f90: Ditto.
3991 * testsuite/libgomp.fortran/allocatable4.f90: Ditto.
3992 * testsuite/libgomp.fortran/allocatable5.f90: Ditto.
3993 * testsuite/libgomp.fortran/allocatable6.f90: Ditto.
3994 * testsuite/libgomp.fortran/allocatable7.f90: Ditto.
3995 * testsuite/libgomp.fortran/allocatable8.f90: Ditto.
3996 * testsuite/libgomp.fortran/allocatable9.f90: Ditto.
3997 * testsuite/libgomp.fortran/associate1.f90: Ditto.
3998 * testsuite/libgomp.fortran/associate2.f90: Ditto.
3999 * testsuite/libgomp.fortran/associate3.f90: Ditto.
4000 * testsuite/libgomp.fortran/async_io_4.f90: Ditto.
4001 * testsuite/libgomp.fortran/async_io_5.f90: Ditto.
4002 * testsuite/libgomp.fortran/async_io_6.f90: Ditto.
4003 * testsuite/libgomp.fortran/async_io_7.f90: Ditto.
4004 * testsuite/libgomp.fortran/cancel-do-1.f90: Ditto.
4005 * testsuite/libgomp.fortran/cancel-do-2.f90: Ditto.
4006 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Ditto.
4007 * testsuite/libgomp.fortran/cancel-sections-1.f90: Ditto.
4008 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Ditto.
4009 * testsuite/libgomp.fortran/character1.f90: Ditto.
4010 * testsuite/libgomp.fortran/character2.f90: Ditto.
4011 * testsuite/libgomp.fortran/collapse1.f90: Ditto.
4012 * testsuite/libgomp.fortran/collapse2.f90: Ditto.
4013 * testsuite/libgomp.fortran/collapse3.f90: Ditto.
4014 * testsuite/libgomp.fortran/collapse4.f90: Ditto.
4015 * testsuite/libgomp.fortran/crayptr1.f90: Ditto.
4016 * testsuite/libgomp.fortran/crayptr2.f90: Ditto.
4017 * testsuite/libgomp.fortran/crayptr3.f90: Ditto.
4018 * testsuite/libgomp.fortran/declare-simd-1.f90: Ditto.
4019 * testsuite/libgomp.fortran/declare-simd-3.f90: Ditto.
4020 * testsuite/libgomp.fortran/declare-target-2.f90: Ditto.
4021 * testsuite/libgomp.fortran/depend-1.f90: Ditto.
4022 * testsuite/libgomp.fortran/depend-2.f90: Ditto.
4023 * testsuite/libgomp.fortran/depend-3.f90: Ditto.
4024 * testsuite/libgomp.fortran/do1.f90: Ditto.
4025 * testsuite/libgomp.fortran/do2.f90: Ditto.
4026 * testsuite/libgomp.fortran/do_concurrent_5.f90: Ditto.
4027 * testsuite/libgomp.fortran/doacross1.f90: Ditto.
4028 * testsuite/libgomp.fortran/doacross2.f90: Ditto.
4029 * testsuite/libgomp.fortran/doacross3.f90: Ditto.
4030 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Ditto.
4031 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Ditto.
4032 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Ditto.
4033 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Ditto.
4034 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Ditto.
4035 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Ditto.
4036 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Ditto.
4037 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Ditto.
4038 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Ditto.
4039 * testsuite/libgomp.fortran/examples-4/device-1.f90: Ditto.
4040 * testsuite/libgomp.fortran/examples-4/device-2.f90: Ditto.
4041 * testsuite/libgomp.fortran/examples-4/device-3.f90: Ditto.
4042 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Ditto.
4043 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Ditto.
4044 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Ditto.
4045 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Ditto.
4046 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Ditto.
4047 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Ditto.
4048 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Ditto.
4049 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Ditto.
4050 * testsuite/libgomp.fortran/examples-4/target-1.f90: Ditto.
4051 * testsuite/libgomp.fortran/examples-4/target-2.f90: Ditto.
4052 * testsuite/libgomp.fortran/examples-4/target-3.f90: Ditto.
4053 * testsuite/libgomp.fortran/examples-4/target-4.f90: Ditto.
4054 * testsuite/libgomp.fortran/examples-4/target-5.f90: Ditto.
4055 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Ditto.
4056 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Ditto.
4057 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Ditto.
4058 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Ditto.
4059 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Ditto.
4060 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Ditto.
4061 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Ditto.
4062 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Ditto.
4063 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Ditto.
4064 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Ditto.
4065 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Ditto.
4066 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Ditto.
4067 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Ditto.
4068 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Ditto.
4069 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Ditto.
4070 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Ditto.
4071 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Ditto.
4072 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Ditto.
4073 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Ditto.
4074 * testsuite/libgomp.fortran/lastprivate1.f90: Ditto.
4075 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
4076 * testsuite/libgomp.fortran/lib1.f90: Ditto.
4077 * testsuite/libgomp.fortran/lib4.f90: Ditto.
4078 * testsuite/libgomp.fortran/lock-1.f90: Ditto.
4079 * testsuite/libgomp.fortran/lock-2.f90: Ditto.
4080 * testsuite/libgomp.fortran/nested1.f90: Ditto.
4081 * testsuite/libgomp.fortran/nestedfn1.f90: Ditto.
4082 * testsuite/libgomp.fortran/nestedfn2.f90: Ditto.
4083 * testsuite/libgomp.fortran/nestedfn3.f90: Ditto.
4084 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
4085 * testsuite/libgomp.fortran/nestedfn5.f90: Ditto.
4086 * testsuite/libgomp.fortran/omp_atomic1.f90: Ditto.
4087 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
4088 * testsuite/libgomp.fortran/omp_atomic3.f90: Ditto.
4089 * testsuite/libgomp.fortran/omp_atomic4.f90: Ditto.
4090 * testsuite/libgomp.fortran/omp_atomic5.f90: Ditto.
4091 * testsuite/libgomp.fortran/omp_cond1.f: Ditto.
4092 * testsuite/libgomp.fortran/omp_cond2.f: Ditto.
4093 * testsuite/libgomp.fortran/omp_cond3.F90: Ditto.
4094 * testsuite/libgomp.fortran/omp_cond4.F90: Ditto.
4095 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
4096 * testsuite/libgomp.fortran/omp_parse2.f90: Ditto.
4097 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
4098 * testsuite/libgomp.fortran/omp_parse4.f90: Ditto.
4099 * testsuite/libgomp.fortran/openmp_version-1.f: Ditto.
4100 * testsuite/libgomp.fortran/openmp_version-2.f90: Ditto.
4101 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Ditto.
4102 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Ditto.
4103 * testsuite/libgomp.fortran/pointer1.f90: Ditto.
4104 * testsuite/libgomp.fortran/pointer2.f90: Ditto.
4105 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
4106 * testsuite/libgomp.fortran/pr27395-1.f90: Ditto.
4107 * testsuite/libgomp.fortran/pr27395-2.f90: Ditto.
4108 * testsuite/libgomp.fortran/pr27416-1.f90: Ditto.
4109 * testsuite/libgomp.fortran/pr27916-1.f90: Ditto.
4110 * testsuite/libgomp.fortran/pr27916-2.f90: Ditto.
4111 * testsuite/libgomp.fortran/pr28390.f: Ditto.
4112 * testsuite/libgomp.fortran/pr29629.f90: Ditto.
4113 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
4114 * testsuite/libgomp.fortran/pr33880.f90: Ditto.
4115 * testsuite/libgomp.fortran/pr34020.f90: Ditto.
4116 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
4117 * testsuite/libgomp.fortran/pr42162.f90: Ditto.
4118 * testsuite/libgomp.fortran/pr46753.f90: Ditto.
4119 * testsuite/libgomp.fortran/pr48894.f90: Ditto.
4120 * testsuite/libgomp.fortran/pr49792-1.f90: Ditto.
4121 * testsuite/libgomp.fortran/pr49792-2.f90: Ditto.
4122 * testsuite/libgomp.fortran/pr63938-1.f90: Ditto.
4123 * testsuite/libgomp.fortran/pr63938-2.f90: Ditto.
4124 * testsuite/libgomp.fortran/pr65597.f90: Ditto.
4125 * testsuite/libgomp.fortran/pr66199-1.f90: Ditto.
4126 * testsuite/libgomp.fortran/pr71014.f90: Ditto.
4127 * testsuite/libgomp.fortran/pr81304.f90: Ditto.
4128 * testsuite/libgomp.fortran/pr81841.f90: Ditto.
4129 * testsuite/libgomp.fortran/pr84418-1.f90: Ditto.
4130 * testsuite/libgomp.fortran/pr84418-2.f90: Ditto.
4131 * testsuite/libgomp.fortran/procptr1.f90: Ditto.
4132 * testsuite/libgomp.fortran/recursion1.f90: Ditto.
4133 * testsuite/libgomp.fortran/reduction1.f90: Ditto.
4134 * testsuite/libgomp.fortran/reduction2.f90: Ditto.
4135 * testsuite/libgomp.fortran/reduction3.f90: Ditto.
4136 * testsuite/libgomp.fortran/reduction4.f90: Ditto.
4137 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
4138 * testsuite/libgomp.fortran/reduction6.f90: Ditto.
4139 * testsuite/libgomp.fortran/reference1.f90: Ditto.
4140 * testsuite/libgomp.fortran/reference2.f90: Ditto.
4141 * testsuite/libgomp.fortran/retval1.f90: Ditto.
4142 * testsuite/libgomp.fortran/retval2.f90: Ditto.
4143 * testsuite/libgomp.fortran/sharing1.f90: Ditto.
4144 * testsuite/libgomp.fortran/sharing2.f90: Ditto.
4145 * testsuite/libgomp.fortran/simd1.f90: Ditto.
4146 * testsuite/libgomp.fortran/simd2.f90: Ditto.
4147 * testsuite/libgomp.fortran/simd3.f90: Ditto.
4148 * testsuite/libgomp.fortran/simd4.f90: Ditto.
4149 * testsuite/libgomp.fortran/simd5.f90: Ditto.
4150 * testsuite/libgomp.fortran/simd6.f90: Ditto.
4151 * testsuite/libgomp.fortran/simd7.f90: Ditto.
4152 * testsuite/libgomp.fortran/stack.f90: Ditto.
4153 * testsuite/libgomp.fortran/strassen.f90: Ditto.
4154 * testsuite/libgomp.fortran/tabs1.f90: Ditto.
4155 * testsuite/libgomp.fortran/tabs2.f: Ditto.
4156 * testsuite/libgomp.fortran/target1.f90: Ditto.
4157 * testsuite/libgomp.fortran/target2.f90: Ditto.
4158 * testsuite/libgomp.fortran/target3.f90: Ditto.
4159 * testsuite/libgomp.fortran/target4.f90: Ditto.
4160 * testsuite/libgomp.fortran/target5.f90: Ditto.
4161 * testsuite/libgomp.fortran/target6.f90: Ditto.
4162 * testsuite/libgomp.fortran/target7.f90: Ditto.
4163 * testsuite/libgomp.fortran/target8.f90: Ditto.
4164 * testsuite/libgomp.fortran/task1.f90: Ditto.
4165 * testsuite/libgomp.fortran/task2.f90: Ditto.
4166 * testsuite/libgomp.fortran/task3.f90: Ditto.
4167 * testsuite/libgomp.fortran/task4.f90: Ditto.
4168 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
4169 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
4170 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
4171 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
4172 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
4173 * testsuite/libgomp.fortran/threadprivate1.f90: Ditto.
4174 * testsuite/libgomp.fortran/threadprivate2.f90: Ditto.
4175 * testsuite/libgomp.fortran/threadprivate3.f90: Ditto.
4176 * testsuite/libgomp.fortran/threadprivate4.f90: Ditto.
4177 * testsuite/libgomp.fortran/udr1.f90: Ditto.
4178 * testsuite/libgomp.fortran/udr10.f90: Ditto.
4179 * testsuite/libgomp.fortran/udr11.f90: Ditto.
4180 * testsuite/libgomp.fortran/udr12.f90: Ditto.
4181 * testsuite/libgomp.fortran/udr13.f90: Ditto.
4182 * testsuite/libgomp.fortran/udr14.f90: Ditto.
4183 * testsuite/libgomp.fortran/udr15.f90: Ditto.
4184 * testsuite/libgomp.fortran/udr2.f90: Ditto.
4185 * testsuite/libgomp.fortran/udr3.f90: Ditto.
4186 * testsuite/libgomp.fortran/udr4.f90: Ditto.
4187 * testsuite/libgomp.fortran/udr5.f90: Ditto.
4188 * testsuite/libgomp.fortran/udr6.f90: Ditto.
4189 * testsuite/libgomp.fortran/udr7.f90: Ditto.
4190 * testsuite/libgomp.fortran/udr8.f90: Ditto.
4191 * testsuite/libgomp.fortran/udr9.f90: Ditto.
4192 * testsuite/libgomp.fortran/vla1.f90: Ditto.
4193 * testsuite/libgomp.fortran/vla2.f90: Ditto.
4194 * testsuite/libgomp.fortran/vla3.f90: Ditto.
4195 * testsuite/libgomp.fortran/vla4.f90: Ditto.
4196 * testsuite/libgomp.fortran/vla5.f90: Ditto.
4197 * testsuite/libgomp.fortran/vla6.f90: Ditto.
4198 * testsuite/libgomp.fortran/vla7.f90: Ditto.
4199 * testsuite/libgomp.fortran/vla8.f90: Ditto.
4200 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
4201 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
4202
01509e2f
TB
42032019-10-30 Tobias Burnus <tobias@codesourcery.com>
4204
4205 * testsuite/libgomp.fortran/target-simd.f90: Use stop not abort.
4206 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90:
4207 Ditto; add 'dg-do run' for torture testing.
4208 * testsuite/libgomp.fortran/lastprivate1.f90: Add 'dg-do run'.
4209 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
4210 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
4211 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
4212 * testsuite/libgomp.fortran/pr28390.f: Ditto.
4213 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
4214 * testsuite/libgomp.fortran/pr90779.f90: Ditto.
4215 * testsuite/libgomp.fortran/task2.f90: Ditto.
4216 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
4217 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
4218 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
4219 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
4220 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
4221 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
4222
ffbdd78a
TB
42232019-10-28 Tobias Burnus <tobias@codesourcery.com>
4224
4225 * testsuite/libgomp.oacc-fortran/abort-1.f90: Add 'dg-do run'.
4226 * testsuite/libgomp.oacc-fortran/abort-2.f90: Ditto.
4227 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Ditto.
4228 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f90: Ditto.
4229 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f90: Ditto.
4230 * testsuite/libgomp.oacc-fortran/lib-1.f90: Ditto.
4231 * testsuite/libgomp.oacc-fortran/common-block-1.f90:
4232 Use 'stop' not abort().
4233 * testsuite/libgomp.oacc-fortran/common-block-2.f90: Ditto.
4234 * testsuite/libgomp.oacc-fortran/common-block-3.f90: Ditto.
4235 * testsuite/libgomp.oacc-fortran/data-1.f90: Ditto.
4236 * testsuite/libgomp.oacc-fortran/data-2.f90: Ditto.
4237 * testsuite/libgomp.oacc-fortran/data-5.f90: Ditto.
4238 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Ditto.
4239 * testsuite/libgomp.oacc-fortran/gemm-2.f90: Ditto.
4240 * testsuite/libgomp.oacc-fortran/gemm.f90: Ditto.
4241 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Ditto.
4242 * testsuite/libgomp.oacc-fortran/host_data-3.f90: Ditto.
4243 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Ditto.
4244 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Ditto.
4245 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Ditto.
4246 * testsuite/libgomp.oacc-fortran/kernels-independent.f90: Ditto.
4247 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Ditto.
4248 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Ditto.
4249 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
4250 Ditto.
4251 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
4252 Ditto.
4253 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
4254 Ditto.
4255 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
4256 Ditto.
4257 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
4258 Ditto.
4259 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-1.f90:
4260 Ditto.
4261 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-2.f90:
4262 Ditto.
4263 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-1.f90:
4264 Ditto.
4265 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-2.f90:
4266 Ditto.
4267 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-3.f90:
4268 Ditto.
4269 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-4.f90:
4270 Ditto.
4271 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-5.f90:
4272 Ditto.
4273 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-6.f90:
4274 Ditto.
4275 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-7.f90:
4276 Ditto.
4277 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Ditto.
4278 * testsuite/libgomp.oacc-fortran/lib-12.f90: Ditto.
4279 * testsuite/libgomp.oacc-fortran/lib-13.f90: Ditto.
4280 * testsuite/libgomp.oacc-fortran/lib-14.f90: Ditto.
4281 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
4282 Likewise and also add 'dg-do run'.
4283 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
4284 Ditto.
4285
ec084613
CP
42862019-10-25 Cesar Philippidis <cesar@codesourcery.com>
4287 Tobias Burnus <tobias@codesourcery.com>
4288
4289 * testsuite/libgomp.oacc-fortran/common-block-1.f90: New test.
4290 * testsuite/libgomp.oacc-fortran/common-block-2.f90: New test.
4291 * testsuite/libgomp.oacc-fortran/common-block-3.f90: New test.
4292
77ef3394
JJ
42932019-10-14 Jakub Jelinek <jakub@redhat.com>
4294
4295 PR libgomp/92081
4296 * testsuite/libgomp.fortran/target-simd.f90: Iterate from 1 rather
4297 than 0.
4298
08c14aaa
TB
42992019-10-11 Tobias Burnus <tobias@codesourcery.com>
4300
4301 * testsuite/libgomp.fortran/use_device_addr-1.f90: New.
4302 * testsuite/libgomp.fortran/use_device_addr-2.f90: New.
4303
6bbead0c
TS
43042019-10-09 Thomas Schwinge <thomas@codesourcery.com>
4305
4306 PR middle-end/92036
4307 * testsuite/libgomp.oacc-c-c++-common/data-firstprivate-1.c: New
4308 file.
4309
eba3dee8
TB
43102019-10-09 Tobias Burnus <tobias@codesourcery.com>
4311
4312 PR testsuite/91884
4313 * testsuite/libgomp.fortran/fortran.exp: Conditionally
4314 add -lquadmath.
4315 * testsuite/libgomp.oacc-fortran/fortran.exp: Ditto.
4316
7d48e14f
JJ
43172019-10-09 Jakub Jelinek <jakub@redhat.com>
4318
4319 PR libgomp/92028
4320 * target.c (gomp_map_vars_internal): Readd the previous
4321 GOMP_MAP_USE_DEVICE_PTR handling code in the first loop,
4322 though do that just in the !not_found_cnt case.
4323
65b67cf3
TB
43242019-10-08 Tobias Burnus <tobias@codesourcery.com>
4325
4326 * gfortran.dg/gomp/target-simd.f90: New.
4327
6c7e076b
JB
43282019-10-02 Julian Brown <julian@codesourcery.com>
4329 Cesar Philippidis <cesar@codesourcery.com>
4330
4331 * libgomp.h (OFFSET_INLINED, OFFSET_POINTER, OFFSET_STRUCT): Define.
4332 * target.c (FIELD_TGT_EMPTY): Define.
4333 (gomp_map_val): Use OFFSET_* macros instead of magic constants. Write
4334 as switch instead of list of ifs.
4335 (gomp_map_vars_internal): Use OFFSET_* and FIELD_TGT_EMPTY macros.
4336
d61bff85
AT
43372019-10-02 Andreas Tobler <andreast@gcc.gnu.org>
4338
4339 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: Remove alloca.h
4340 include. Replace alloca () with __builtin_alloca ().
4341 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Likewise.
4342
810f316d
JJ
43432019-10-01 Jakub Jelinek <jakub@redhat.com>
4344
4345 * configure.ac: Remove GCC_HEADER_STDINT(gstdint.h).
4346 * libgomp.h: Include <stdint.h> instead of "gstdint.h".
4347 * oacc-parallel.c: Don't include "libgomp_g.h".
4348 * plugin/plugin-hsa.c: Include <stdint.h> instead of "gstdint.h".
4349 * plugin/plugin-nvptx.c: Don't include "gstdint.h".
4350 * aclocal.m4: Regenerated.
4351 * config.h.in: Regenerated.
4352 * configure: Regenerated.
4353 * Makefile.in: Regenerated.
4354
d7f9ee98
KCY
43552019-09-30 Kwok Cheung Yeung <kcy@codesourcery.com>
4356
4357 * libgomp_g.h: Include stdint.h instead of gstdint.h.
4358
e9085da5
MR
43592019-09-27 Maciej W. Rozycki <macro@wdc.com>
4360
4361 * configure: Regenerate.
4362
c28712be
TB
43632019-09-13 Tobias Burnus <tobias@codesourcery.com>
4364
4365 * plugin/plugin-hsa.c (hsa_warn, hsa_fatal, hsa_error): Ensure
4366 string is initialized.
4367
3c086f8d
FW
43682019-09-06 Florian Weimer <fweimer@redhat.com>
4369
4370 * configure: Regenerate.
4371
c6c2d1bc
CLT
43722019-09-03 Chung-Lin Tang <cltang@codesourcery.com>
4373
4374 PR other/79543
4375 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Fix GNU ld --version
4376 scanning to conform to the GNU Coding Standards.
4377 * configure: Regenerate.
4378
5cb72d83
JJ
43792019-08-28 Jakub Jelinek <jakub@redhat.com>
4380
4381 PR libgomp/91530
4382 * testsuite/libgomp.c/scan-21.c: New test.
4383 * testsuite/libgomp.c/scan-22.c: New test.
4384
0ad7981c
JJ
43852019-08-27 Jakub Jelinek <jakub@redhat.com>
4386
4387 PR libgomp/91530
4388 * testsuite/libgomp.c/scan-11.c: Add -msse2 option for sse2_runtime
4389 targets.
4390 * testsuite/libgomp.c/scan-12.c: Likewise.
4391 * testsuite/libgomp.c/scan-13.c: Likewise.
4392 * testsuite/libgomp.c/scan-14.c: Likewise.
4393 * testsuite/libgomp.c/scan-15.c: Likewise.
4394 * testsuite/libgomp.c/scan-16.c: Likewise.
4395 * testsuite/libgomp.c/scan-17.c: Likewise.
4396 * testsuite/libgomp.c/scan-18.c: Likewise.
4397 * testsuite/libgomp.c/scan-19.c: Likewise.
4398 * testsuite/libgomp.c/scan-20.c: Likewise.
4399 * testsuite/libgomp.c++/scan-9.C: Likewise.
4400 * testsuite/libgomp.c++/scan-10.C: Likewise.
4401 * testsuite/libgomp.c++/scan-11.C: Likewise.
4402 * testsuite/libgomp.c++/scan-12.C: Likewise.
4403 * testsuite/libgomp.c++/scan-14.C: Likewise.
4404 * testsuite/libgomp.c++/scan-15.C: Likewise.
4405 * testsuite/libgomp.c++/scan-13.C: Likewise. Use sse2_runtime
4406 instead of i?86-*-* x86_64-*-* as target for scan-tree-dump-times.
4407 * testsuite/libgomp.c++/scan-16.C: Likewise.
4408
1e67491a
TK
44092019-08-17 Thomas Koenig <tkoenig@gcc.gnu.org>
4410
4411 PR fortran/91473
4412 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add
4413 -std=legacy so invalid code in the test case is accepted.
4414
393fdeb1
TK
44152019-08-12 Thomas Koenig <tkoenig@gcc.gnu.org>
4416
4417 PR fortran/91422
4418 * testsuite/libgomp.oacc-fortran/routine-7.f90: Correct array
4419 dimension.
4420
8860d270
JJ
44212019-08-08 Jakub Jelinek <jakub@redhat.com>
4422
4423 * target.c (gomp_map_vars_internal): For GOMP_MAP_USE_DEVICE_PTR
4424 perform the lookup in the first loop only if !not_found_cnt, otherwise
4425 perform lookups for it in the second loop guarded with
4426 if (not_found_cnt || has_firstprivate).
4427 * testsuite/libgomp.c/target-37.c: New test.
4428 * testsuite/libgomp.c++/target-22.C: New test.
4429
398e3feb
JJ
44302019-08-07 Jakub Jelinek <jakub@redhat.com>
4431
4432 * testsuite/libgomp.c/target-18.c (struct S): New type.
4433 (foo): Use use_device_addr clause instead of use_device_ptr clause
4434 where required by OpenMP 5.0, add further tests for both use_device_ptr
4435 and use_device_addr clauses.
4436 * testsuite/libgomp.c++/target-9.C (struct S): New type.
4437 (foo): Use use_device_addr clause instead of use_device_ptr clause
4438 where required by OpenMP 5.0, add further tests for both use_device_ptr
4439 and use_device_addr clauses. Add t and u arguments.
4440 (main): Adjust caller.
4441
d81ab49d
JJ
44422019-08-06 Jakub Jelinek <jakub@redhat.com>
4443
4444 * testsuite/libgomp.c++/loop-13.C: New test.
4445 * testsuite/libgomp.c++/loop-14.C: New test.
4446 * testsuite/libgomp.c++/loop-15.C: New test.
4447
c3ac76aa
JJ
44482019-07-31 Jakub Jelinek <jakub@redhat.com>
4449
4450 PR middle-end/91301
4451 * testsuite/libgomp.c++/for-27.C: New test.
4452
8dc63166
SK
44532019-07-23 Steven G. Kargl <kargl@gcc.gnu.org>
4454
393fdeb1 4455 * testsuite/libgomp.fortran/reduction4.f90: Update BOZ usage.
8dc63166 4456 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
393fdeb1 4457
554a530f
JJ
44582019-07-20 Jakub Jelinek <jakub@redhat.com>
4459
4460 * testsuite/libgomp.c-c++-common/loop-1.c: New test.
4461
6cda84b5
JJ
44622019-07-08 Jakub Jelinek <jakub@redhat.com>
4463
4464 * testsuite/libgomp.c++/scan-13.C: Replace xfail with target x86.
4465 * testsuite/libgomp.c++/scan-16.C: Likewise.
4466
1f52d1a8
JJ
44672019-07-06 Jakub Jelinek <jakub@redhat.com>
4468
6f67abcd
JJ
4469 * testsuite/libgomp.c/scan-19.c: New test.
4470 * testsuite/libgomp.c/scan-20.c: New test.
4471
1f52d1a8
JJ
4472 * testsuite/libgomp.c/scan-11.c: New test.
4473 * testsuite/libgomp.c/scan-12.c: New test.
4474 * testsuite/libgomp.c/scan-13.c: New test.
4475 * testsuite/libgomp.c/scan-14.c: New test.
4476 * testsuite/libgomp.c/scan-15.c: New test.
4477 * testsuite/libgomp.c/scan-16.c: New test.
4478 * testsuite/libgomp.c/scan-17.c: New test.
4479 * testsuite/libgomp.c/scan-18.c: New test.
4480 * testsuite/libgomp.c++/scan-9.C: New test.
4481 * testsuite/libgomp.c++/scan-10.C: New test.
4482 * testsuite/libgomp.c++/scan-11.C: New test.
4483 * testsuite/libgomp.c++/scan-12.C: New test.
4484 * testsuite/libgomp.c++/scan-13.C: New test.
4485 * testsuite/libgomp.c++/scan-14.C: New test.
4486 * testsuite/libgomp.c++/scan-15.C: New test.
4487 * testsuite/libgomp.c++/scan-16.C: New test.
4488
2f03073f
JJ
44892019-07-04 Jakub Jelinek <jakub@redhat.com>
4490
4491 * testsuite/libgomp.c/scan-9.c: New test.
4492 * testsuite/libgomp.c/scan-10.c: New test.
4493
2f6bb511
JJ
44942019-07-03 Jakub Jelinek <jakub@redhat.com>
4495
4496 * testsuite/libgomp.c++/scan-1.C: New test.
4497 * testsuite/libgomp.c++/scan-2.C: New test.
4498 * testsuite/libgomp.c++/scan-3.C: New test.
4499 * testsuite/libgomp.c++/scan-4.C: New test.
4500 * testsuite/libgomp.c++/scan-5.C: New test.
4501 * testsuite/libgomp.c++/scan-6.C: New test.
4502 * testsuite/libgomp.c++/scan-7.C: New test.
4503 * testsuite/libgomp.c++/scan-8.C: New test.
4504 * testsuite/libgomp.c/scan-1.c: New test.
4505 * testsuite/libgomp.c/scan-2.c: New test.
4506 * testsuite/libgomp.c/scan-3.c: New test.
4507 * testsuite/libgomp.c/scan-4.c: New test.
4508 * testsuite/libgomp.c/scan-5.c: New test.
4509 * testsuite/libgomp.c/scan-6.c: New test.
4510 * testsuite/libgomp.c/scan-7.c: New test.
4511 * testsuite/libgomp.c/scan-8.c: New test.
4512
bd194a51
TS
45132019-06-18 Thomas Schwinge <thomas@codesourcery.com>
4514
85fca03a
TS
4515 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: New file.
4516 * testsuite/libgomp.oacc-c-c++-common/firstprivate-mappings-1.c:
4517 Likewise.
4518
bd194a51
TS
4519 * testsuite/libgomp.fortran/allocatable3.f90: Add missing results
4520 check.
4521
6652161e
CP
45222019-06-18 Cesar Philippidis <cesar@codesourcery.com>
4523
4524 * testsuite/libgomp.oacc-fortran/allocatable-array-1.f90: New
4525 file.
4526
3a37d6f6
TS
45272019-06-18 Thomas Schwinge <thomas@codesourcery.com>
4528
4017da8d
TS
4529 PR fortran/90743
4530 * oacc-parallel.c (GOACC_parallel_keyed): Handle NULL mapping
4531 case.
4532 * testsuite/libgomp.fortran/target-allocatable-1-1.f90: New file.
4533 * testsuite/libgomp.fortran/target-allocatable-1-2.f90: Likewise.
4534 * testsuite/libgomp.oacc-fortran/allocatable-1-1.f90: Likewise.
4535 * testsuite/libgomp.oacc-fortran/allocatable-1-2.f90: Likewise.
4536
6f7c1f65
TS
4537 PR testsuite/90861
4538 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Update.
4539
3a37d6f6
TS
4540 PR middle-end/90862
4541 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Update.
4542
f45ce17d
TV
45432019-06-16 Tom de Vries <tdevries@suse.de>
4544
4545 PR tree-optimization/89376
4546 * testsuite/libgomp.oacc-c-c++-common/pr89376.c: New test.
4547
00908992
TV
45482019-06-15 Tom de Vries <tdevries@suse.de>
4549
4550 PR tree-optimization/89713
4551 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Expect no bar.sync.
4552 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Same.
4553
211b7533
JJ
45542019-06-15 Jakub Jelinek <jakub@redhat.com>
4555
4556 PR middle-end/90779
4557 * testsuite/libgomp.c/pr90779.c: New test.
4558 * testsuite/libgomp.fortran/pr90779.f90: New test.
4559
120a01d1
TV
45602019-06-15 Tom de Vries <tdevries@suse.de>
4561
4562 PR tree-optimization/90009
4563 * testsuite/libgomp.oacc-c-c++-common/pr90009.c: New test.
4564
c29c92c7
FX
45652019-06-13 Feng Xue <fxue@os.amperecomputing.com>
4566
4567 PR tree-optimization/89713
4568 * testsuite/libgomp.oacc-c-c++-common/pr84955-1.c: New test.
4569
ce9c4ec3
JJ
45702019-06-11 Jakub Jelinek <jakub@redhat.com>
4571
4572 PR target/90811
4573 * testsuite/libgomp.c/pr90811.c: New test.
4574
28b3a77c
JJ
45752019-06-05 Jakub Jelinek <jakub@redhat.com>
4576
4577 * testsuite/libgomp.c++/lastprivate-conditional-1.C: New test.
4578 * testsuite/libgomp.c++/lastprivate-conditional-2.C: New test.
4579
7855700e
JJ
45802019-06-04 Jakub Jelinek <jakub@redhat.com>
4581
4582 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: New test.
4583 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: New test.
4584 * testsuite/libgomp.c-c++-common/lastprivate-conditional-9.c: New test.
4585 * testsuite/libgomp.c-c++-common/lastprivate-conditional-10.c: New test.
4586
a7155c2e
RO
45872019-05-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4588
4589 * configure.ac: Call AX_COUNT_CPUS.
4590 Substitute CPU_COUNT.
4591 * testsuite/Makefile.am (check-am): Use CPU_COUNT as processor
4592 count fallback.
4593 * aclocal.m4: Regenerate.
4594 * configure: Regenerate.
4595 * Makefile.in, testsuite/Makefile.in: Regenerate.
4596
7e47198b
JJ
45972019-05-29 Jakub Jelinek <jakub@redhat.com>
4598
4599 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: Rename
4600 to ...
4601 * testsuite/libgomp.c-c++-common/lastprivate-conditional-4.c: ... this.
4602 * testsuite/libgomp.c-c++-common/lastprivate-conditional-5.c: New test.
4603 * testsuite/libgomp.c-c++-common/lastprivate-conditional-6.c: New test.
4604
fcfb8032
JJ
46052019-05-27 Jakub Jelinek <jakub@redhat.com>
4606
8e7757ba
JJ
4607 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: New test.
4608
36c7a3ff
JJ
4609 * testsuite/libgomp.c-c++-common/lastprivate-conditional-3.c: New test.
4610
fcfb8032
JJ
4611 PR libgomp/90641
4612 * work.c (gomp_init_work_share): Instead of aligning final ordered
4613 value to multiples of long long alignment, align to that the
4614 first part (ordered team ids) and if inline_ordered_team_ids
4615 is not on a long long alignment boundary within the structure,
4616 use __alignof__ (long long) - 1 pad size always.
4617 * loop.c (GOMP_loop_start): Fix *mem computation if
4618 inline_ordered_team_ids is not aligned on long long alignment boundary
4619 within the structure.
4620 * loop-ull.c (GOMP_loop_ull_start): Likewise.
4621 * sections.c (GOMP_sections2_start): Likewise.
4622
b5c26449
JJ
46232019-05-24 Jakub Jelinek <jakub@redhat.com>
4624
6c7ae8c5
JJ
4625 * testsuite/libgomp.c-c++-common/lastprivate-conditional-1.c: New test.
4626 * testsuite/libgomp.c-c++-common/lastprivate-conditional-2.c: New test.
4627
b5c26449
JJ
4628 PR libgomp/90585
4629 * plugin/plugin-hsa.c: Include gstdint.h. Include inttypes.h only if
4630 HAVE_INTTYPES_H is defined.
4631 (print_uint64_t): New typedef.
4632 (PRIu64): Define if HAVE_INTTYPES_H is not defined.
4633 (print_kernel_dispatch, run_kernel): Use PRIu64 macro instead of
4634 "lu", cast uint64_t HSA_DEBUG and fprintf arguments to print_uint64_t.
4635 (release_kernel_dispatch): Likewise. Cast shadow->debug to uintptr_t
4636 before casting to void *.
4637 * plugin/plugin-nvptx.c: Include gstdint.h instead of stdint.h.
4638 * oacc-mem.c: Don't include config.h nor stdint.h.
4639 * target.c: Don't include config.h.
4640 * oacc-cuda.c: Likewise.
4641 * oacc-host.c: Don't include stdint.h.
4642
3e03ed66
JJ
46432019-05-20 Jakub Jelinek <jakub@redhat.com>
4644
4645 PR libgomp/90527
4646 * alloc.c (_GNU_SOURCE): Define.
4647
5fae049d
TS
46482019-05-17 Thomas Schwinge <thomas@codesourcery.com>
4649
4650 * acc_prof.h: New file.
4651 * oacc-profiling.c: Likewise.
4652 * Makefile.am (nodist_libsubinclude_HEADERS, libgomp_la_SOURCES):
4653 Add these, respectively.
4654 * Makefile.in: Regenerate.
4655 * env.c (initialize_env): Call goacc_profiling_initialize.
4656 * oacc-plugin.c (GOMP_PLUGIN_goacc_thread)
4657 (GOMP_PLUGIN_goacc_profiling_dispatch): New functions.
4658 * oacc-plugin.h (GOMP_PLUGIN_goacc_thread)
4659 (GOMP_PLUGIN_goacc_profiling_dispatch): Declare.
4660 * libgomp.map (OACC_2.5.1): Add acc_prof_lookup,
4661 acc_prof_register, acc_prof_unregister, and acc_register_library.
4662 (GOMP_PLUGIN_1.3): Add GOMP_PLUGIN_goacc_profiling_dispatch, and
4663 GOMP_PLUGIN_goacc_thread.
4664 * oacc-int.h (struct goacc_thread): Add prof_info, api_info,
4665 prof_callbacks_enabled members.
4666 (goacc_prof_enabled, goacc_profiling_initialize)
4667 (_goacc_profiling_dispatch_p, _goacc_profiling_setup_p)
4668 (goacc_profiling_dispatch): Declare.
4669 (GOACC_PROF_ENABLED, GOACC_PROFILING_DISPATCH_P)
4670 (GOACC_PROFILING_SETUP_P): Define.
4671 * oacc-async.c (acc_async_test, acc_async_test_all, acc_wait)
4672 (acc_wait_async, acc_wait_all, acc_wait_all_async): Update for
4673 OpenACC Profiling Interface.
4674 * oacc-cuda.c (acc_get_current_cuda_device)
4675 (acc_get_current_cuda_context, acc_get_cuda_stream)
4676 (acc_set_cuda_stream): Likewise.
4677 * oacc-init.c (acc_init_1, goacc_attach_host_thread_to_device)
4678 (acc_init, acc_set_device_type, acc_get_device_type)
4679 (acc_get_device_num, goacc_lazy_initialize): Likewise.
4680 * oacc-mem.c (acc_malloc, acc_free, memcpy_tofrom_device)
4681 (acc_deviceptr, acc_hostptr, acc_is_present, acc_map_data)
4682 (acc_unmap_data, present_create_copy, delete_copyout)
4683 (update_dev_host): Likewise.
4684 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_data_start)
4685 (GOACC_data_end, GOACC_enter_exit_data, GOACC_update, GOACC_wait):
4686 Likewise.
4687 * plugin/plugin-nvptx.c (nvptx_exec, nvptx_alloc, nvptx_free)
4688 (GOMP_OFFLOAD_openacc_exec, GOMP_OFFLOAD_openacc_async_exec):
4689 Likewise.
4690 * libgomp.texi: Update.
4691 * testsuite/libgomp.oacc-c-c++-common/acc_prof-dispatch-1.c: New
4692 file.
4693 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Likewise.
4694 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
4695 Likewise.
4696 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
4697 Likewise.
4698 * testsuite/libgomp.oacc-c-c++-common/acc_prof-valid_bytes-1.c:
4699 Likewise.
4700 * testsuite/libgomp.oacc-c-c++-common/acc_prof-version-1.c:
4701 Likewise.
4702
1f4c5b9b
CLT
47032019-05-13 Chung-Lin Tang <cltang@codesourcery.com>
4704
4705 * libgomp-plugin.h (struct goacc_asyncqueue): Declare.
4706 (struct goacc_asyncqueue_list): Likewise.
4707 (goacc_aq): Likewise.
4708 (goacc_aq_list): Likewise.
4709 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
4710 (GOMP_OFFLOAD_openacc_async_test): Remove.
4711 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
4712 (GOMP_OFFLOAD_openacc_async_wait): Remove.
4713 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
4714 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
4715 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
4716 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
4717 (GOMP_OFFLOAD_openacc_exec): Adjust declaration.
4718 (GOMP_OFFLOAD_openacc_cuda_get_stream): Likewise.
4719 (GOMP_OFFLOAD_openacc_cuda_set_stream): Likewise.
4720 (GOMP_OFFLOAD_openacc_async_exec): Declare.
4721 (GOMP_OFFLOAD_openacc_async_construct): Declare.
4722 (GOMP_OFFLOAD_openacc_async_destruct): Declare.
4723 (GOMP_OFFLOAD_openacc_async_test): Declare.
4724 (GOMP_OFFLOAD_openacc_async_synchronize): Declare.
4725 (GOMP_OFFLOAD_openacc_async_serialize): Declare.
4726 (GOMP_OFFLOAD_openacc_async_queue_callback): Declare.
4727 (GOMP_OFFLOAD_openacc_async_host2dev): Declare.
4728 (GOMP_OFFLOAD_openacc_async_dev2host): Declare.
4729
4730 * libgomp.h (struct acc_dispatch_t): Define 'async' sub-struct.
4731 (gomp_acc_insert_pointer): Adjust declaration.
4732 (gomp_copy_host2dev): New declaration.
4733 (gomp_copy_dev2host): Likewise.
4734 (gomp_map_vars_async): Likewise.
4735 (gomp_unmap_tgt): Likewise.
4736 (gomp_unmap_vars_async): Likewise.
4737 (gomp_fini_device): Likewise.
4738
4739 * oacc-async.c (get_goacc_thread): New function.
4740 (get_goacc_thread_device): New function.
4741 (lookup_goacc_asyncqueue): New function.
4742 (get_goacc_asyncqueue): New function.
4743 (acc_async_test): Adjust code to use new async design.
4744 (acc_async_test_all): Likewise.
4745 (acc_wait): Likewise.
4746 (acc_wait_async): Likewise.
4747 (acc_wait_all): Likewise.
4748 (acc_wait_all_async): Likewise.
4749 (goacc_async_free): New function.
4750 (goacc_init_asyncqueues): Likewise.
4751 (goacc_fini_asyncqueues): Likewise.
4752 * oacc-cuda.c (acc_get_cuda_stream): Adjust code to use new async
4753 design.
4754 (acc_set_cuda_stream): Likewise.
4755 * oacc-host.c (host_openacc_exec): Adjust parameters, remove 'async'.
4756 (host_openacc_register_async_cleanup): Remove.
4757 (host_openacc_async_exec): New function.
4758 (host_openacc_async_test): Adjust parameters.
4759 (host_openacc_async_test_all): Remove.
4760 (host_openacc_async_wait): Remove.
4761 (host_openacc_async_wait_async): Remove.
4762 (host_openacc_async_wait_all): Remove.
4763 (host_openacc_async_wait_all_async): Remove.
4764 (host_openacc_async_set_async): Remove.
4765 (host_openacc_async_synchronize): New function.
4766 (host_openacc_async_serialize): New function.
4767 (host_openacc_async_host2dev): New function.
4768 (host_openacc_async_dev2host): New function.
4769 (host_openacc_async_queue_callback): New function.
4770 (host_openacc_async_construct): New function.
4771 (host_openacc_async_destruct): New function.
4772 (struct gomp_device_descr host_dispatch): Remove initialization of old
93d90219 4773 interface, add initialization of new async sub-struct.
1f4c5b9b
CLT
4774 * oacc-init.c (acc_shutdown_1): Adjust to use gomp_fini_device.
4775 (goacc_attach_host_thread_to_device): Remove old async code usage.
4776 * oacc-int.h (goacc_init_asyncqueues): New declaration.
4777 (goacc_fini_asyncqueues): Likewise.
4778 (goacc_async_copyout_unmap_vars): Likewise.
4779 (goacc_async_free): Likewise.
4780 (get_goacc_asyncqueue): Likewise.
4781 (lookup_goacc_asyncqueue): Likewise.
4782 * oacc-mem.c (memcpy_tofrom_device): Adjust code to use new async
4783 design.
4784 (present_create_copy): Adjust code to use new async design.
4785 (delete_copyout): Likewise.
4786 (update_dev_host): Likewise.
4787 (gomp_acc_insert_pointer): Add async parameter, adjust code to use new
4788 async design.
4789 (gomp_acc_remove_pointer): Adjust code to use new async design.
4790 * oacc-parallel.c (GOACC_parallel_keyed): Adjust code to use new async
4791 design.
4792 (GOACC_enter_exit_data): Likewise.
4793 (goacc_wait): Likewise.
4794 (GOACC_update): Likewise.
4795 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Change to assert fail
4796 when called, warn as obsolete in comment.
4797 * target.c (goacc_device_copy_async): New function.
4798 (gomp_copy_host2dev): Remove 'static', add goacc_asyncqueue parameter,
4799 add goacc_device_copy_async case.
4800 (gomp_copy_dev2host): Likewise.
4801 (gomp_map_vars_existing): Add goacc_asyncqueue parameter, adjust code.
4802 (gomp_map_pointer): Likewise.
4803 (gomp_map_fields_existing): Likewise.
4804 (gomp_map_vars_internal): New always_inline function, renamed from
4805 gomp_map_vars.
4806 (gomp_map_vars): Implement by calling gomp_map_vars_internal.
4807 (gomp_map_vars_async): Implement by calling gomp_map_vars_internal,
4808 passing goacc_asyncqueue argument.
4809 (gomp_unmap_tgt): Remove static, add attribute_hidden.
4810 (gomp_unref_tgt): New function.
4811 (gomp_unmap_vars_internal): New always_inline function, renamed from
4812 gomp_unmap_vars.
4813 (gomp_unmap_vars): Implement by calling gomp_unmap_vars_internal.
4814 (gomp_unmap_vars_async): Implement by calling
4815 gomp_unmap_vars_internal, passing goacc_asyncqueue argument.
4816 (gomp_fini_device): New function.
4817 (gomp_exit_data): Adjust gomp_copy_dev2host call.
4818 (gomp_load_plugin_for_device): Remove old interface, adjust to load
4819 new async interface.
4820 (gomp_target_fini): Adjust code to call gomp_fini_device.
4821
4822 * plugin/plugin-nvptx.c (struct cuda_map): Remove.
4823 (struct ptx_stream): Remove.
4824 (struct nvptx_thread): Remove current_stream field.
4825 (cuda_map_create): Remove.
4826 (cuda_map_destroy): Remove.
4827 (map_init): Remove.
4828 (map_fini): Remove.
4829 (map_pop): Remove.
4830 (map_push): Remove.
4831 (struct goacc_asyncqueue): Define.
4832 (struct nvptx_callback): Define.
4833 (struct ptx_free_block): Define.
4834 (struct ptx_device): Remove null_stream, active_streams, async_streams,
4835 stream_lock, and next fields.
4836 (enum ptx_event_type): Remove.
4837 (struct ptx_event): Remove.
4838 (ptx_event_lock): Remove.
4839 (ptx_events): Remove.
4840 (init_streams_for_device): Remove.
4841 (fini_streams_for_device): Remove.
4842 (select_stream_for_async): Remove.
4843 (nvptx_init): Remove ptx_events and ptx_event_lock references.
4844 (nvptx_attach_host_thread_to_device): Remove CUDA_ERROR_NOT_PERMITTED
4845 case.
4846 (nvptx_open_device): Add free_blocks initialization, remove
4847 init_streams_for_device call.
4848 (nvptx_close_device): Remove fini_streams_for_device call, add
4849 free_blocks destruct code.
4850 (event_gc): Remove.
4851 (event_add): Remove.
4852 (nvptx_exec): Adjust parameters and code.
4853 (nvptx_free): Likewise.
4854 (nvptx_host2dev): Remove.
4855 (nvptx_dev2host): Remove.
4856 (nvptx_set_async): Remove.
4857 (nvptx_async_test): Remove.
4858 (nvptx_async_test_all): Remove.
4859 (nvptx_wait): Remove.
4860 (nvptx_wait_async): Remove.
4861 (nvptx_wait_all): Remove.
4862 (nvptx_wait_all_async): Remove.
4863 (nvptx_get_cuda_stream): Remove.
4864 (nvptx_set_cuda_stream): Remove.
4865 (GOMP_OFFLOAD_alloc): Adjust code.
4866 (GOMP_OFFLOAD_free): Likewise.
4867 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
4868 (GOMP_OFFLOAD_openacc_exec): Adjust parameters and code.
4869 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
4870 (GOMP_OFFLOAD_openacc_async_wait): Remove.
4871 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
4872 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
4873 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
4874 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
4875 (cuda_free_argmem): New function.
4876 (GOMP_OFFLOAD_openacc_async_exec): New plugin hook function.
4877 (GOMP_OFFLOAD_openacc_create_thread_data): Adjust code.
4878 (GOMP_OFFLOAD_openacc_cuda_get_stream): Adjust code.
4879 (GOMP_OFFLOAD_openacc_cuda_set_stream): Adjust code.
4880 (GOMP_OFFLOAD_openacc_async_construct): New plugin hook function.
4881 (GOMP_OFFLOAD_openacc_async_destruct): New plugin hook function.
4882 (GOMP_OFFLOAD_openacc_async_test): Remove and re-implement.
4883 (GOMP_OFFLOAD_openacc_async_synchronize): New plugin hook function.
4884 (GOMP_OFFLOAD_openacc_async_serialize): New plugin hook function.
4885 (GOMP_OFFLOAD_openacc_async_queue_callback): New plugin hook function.
4886 (cuda_callback_wrapper): New function.
4887 (cuda_memcpy_sanity_check): New function.
4888 (GOMP_OFFLOAD_host2dev): Remove and re-implement.
4889 (GOMP_OFFLOAD_dev2host): Remove and re-implement.
4890 (GOMP_OFFLOAD_openacc_async_host2dev): New plugin hook function.
4891 (GOMP_OFFLOAD_openacc_async_dev2host): New plugin hook function.
4892
da2d30c1
TS
48932019-05-07 Thomas Schwinge <thomas@codesourcery.com>
4894
4895 PR target/87835
4896 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Update.
4897
2bbbfa4e
TS
48982019-05-06 Thomas Schwinge <thomas@codesourcery.com>
4899
4900 * oacc-parallel.c: Add comments to legacy entry points (GCC 5).
4901
bbf1efe1
KB
49022019-03-27 Kevin Buettner <kevinb@redhat.com>
4903
4904 * team.c (gomp_team_start): Initialize pool->threads[0].
4905
1241136c
TS
49062019-02-22 Thomas Schwinge <thomas@codesourcery.com>
4907
b03d721a
TS
4908 * testsuite/libgomp.oacc-c++/c++.exp: Specify
4909 "-foffload=$offload_target".
4910 * testsuite/libgomp.oacc-c/c.exp: Likewise.
4911 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
4912 * testsuite/lib/libgomp.exp
4913 (check_effective_target_openacc_nvidia_accel_configured): Remove,
4914 as (conceptually) merged into
4915 check_effective_target_openacc_nvidia_accel_selected. Adjust all
4916 users.
4917
0a0384b4
TS
4918 * plugin/configfrag.ac: Populate and AC_SUBST offload_targets.
4919 * testsuite/libgomp-test-support.exp.in: Adjust.
4920 * testsuite/lib/libgomp.exp: Likewise. Don't populate
4921 openacc_device_types_s.
4922 (offload_target_to_openacc_device_type): New proc.
4923 * testsuite/libgomp.oacc-c++/c++.exp: Adjust.
4924 * testsuite/libgomp.oacc-c/c.exp: Likewise.
4925 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
4926 * Makefile.in: Regenerate.
4927 * configure: Likewise.
4928 * testsuite/Makefile.in: Likewise.
4929
ee332b4a
TS
4930 * plugin/configfrag.ac: Populate and AC_SUBST offload_plugins
4931 instead of offload_targets, and AC_DEFINE_UNQUOTED OFFLOAD_PLUGINS
4932 instead of OFFLOAD_TARGETS.
4933 * target.c (gomp_target_init): Adjust.
4934 * testsuite/libgomp-test-support.exp.in: Likewise.
4935 * testsuite/lib/libgomp.exp: Likewise. Populate
4936 openacc_device_types_s instead of offload_targets_s_openacc.
4937 (check_effective_target_openacc_nvidia_accel_selected)
4938 (check_effective_target_openacc_host_selected): Adjust.
4939 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
4940 * testsuite/libgomp.oacc-c/c.exp: Likewise.
4941 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
4942 * Makefile.in: Regenerate.
4943 * config.h.in: Likewise.
4944 * configure: Likewise.
4945 * testsuite/Makefile.in: Likewise.
4946
1241136c
TS
4947 * testsuite/lib/libgomp.exp: Error out for unknown offload target.
4948 * testsuite/libgomp.oacc-c++/c++.exp: Likewise. Report if
4949 "offloading: supported, but hardware not accessible".
4950 * testsuite/libgomp.oacc-c/c.exp: Likewise.
4951 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
4952
19695f4d
CLT
49532019-02-19 Chung-Lin Tang <cltang@codesourcery.com>
4954
4955 PR c/87924
4956 * oacc-parallel.c (GOACC_parallel_keyed): Remove condition on call to
4957 goacc_wait().
4958 (goacc_wait): Handle ACC_ASYNC_NOVAL case, remove goacc_thread() call
4959 and related adjustment.
4960
8b44f8ec
JJ
49612019-01-30 Jakub Jelinek <jakub@redhat.com>
4962
4963 PR c++/88988
4964 * testsuite/libgomp.c++/pr88988.C: New test.
4965
be3a87e7
JJ
49662019-01-28 Jakub Jelinek <jakub@redhat.com>
4967
4968 PR middle-end/89002
4969 * testsuite/libgomp.c/pr89002.c: New test.
4970
497ef4d7
RB
49712019-01-28 Richard Biener <rguenther@suse.de>
4972
4973 PR testsuite/89064
4974 PR tree-optimization/86865
4975 * testsuite/libgomp.graphite/force-parallel-5.c: XFAIL.
4976
738c56d4
TV
49772019-01-24 Tom de Vries <tdevries@suse.de>
4978
4979 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_fini_device): Free ptx_devices
4980 once instantiated_devices drops to 0.
4981
4a75460b
TV
49822019-01-23 Tom de Vries <tdevries@suse.de>
4983
4984 PR target/PR88946
4985 * plugin/plugin-nvptx.c (cuda_map_destroy): Use CUDA_CALL_NOCHECK for
4986 cuMemFree.
4987 (nvptx_exec): Don't call map_push if mapnum == 0.
4988 * testsuite/libgomp.oacc-c-c++-common/pr88946.c: New test.
4989
4fef8e4d
TV
49902019-01-23 Tom de Vries <tdevries@suse.de>
4991
4992 PR target/88941
4993 PR target/88939
4994 * plugin/plugin-nvptx.c (cuda_map_destroy): Handle map->active case.
4995 (map_fini): Remove "assert (!s->map->active)".
4996 * testsuite/libgomp.oacc-c-c++-common/pr88941.c: New test.
4997
2ee6cb22
TV
49982019-01-23 Tom de Vries <tdevries@suse.de>
4999
5000 PR target/87835
5001 * plugin/plugin-nvptx.c (map_push): Fix adding of allocated element.
5002 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: New test.
5003
d41d952c
TV
50042019-01-15 Tom de Vries <tdevries@suse.de>
5005
5006 PR target/80547
5007 * testsuite/libgomp.oacc-c-c++-common/gang-reduction-var-assignment.c:
5008 New test.
5009
efb56ae8
TV
50102019-01-12 Tom de Vries <tdevries@suse.de>
5011
5012 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: New test.
5013 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c: New test.
5014 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c: New test.
5015 * testsuite/libgomp.oacc-fortran/gemm-2.f90: New test.
5016
2c2ff168
TV
50172019-01-12 Tom de Vries <tdevries@suse.de>
5018
5019 * plugin/plugin-nvptx.c (nvptx_exec): Update error message.
5020
a1057758
TV
50212019-01-12 Tom de Vries <tdevries@suse.de>
5022
5023 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: New test.
5024 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c: New test.
5025 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c: New test.
5026
56314b77
TV
50272019-01-12 Tom de Vries <tdevries@suse.de>
5028
5029 PR target/85486
5030 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: New test.
5031 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: New test.
5032
b39e4366
TV
50332019-01-12 Tom de Vries <tdevries@suse.de>
5034
5035 PR target/85381
5036 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: New test.
5037 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: New test.
5038
2cb7a501
TV
50392019-01-12 Tom de Vries <tdevries@suse.de>
5040
5041 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: New test.
5042 * testsuite/libgomp.oacc-fortran/gemm.f90: New test.
5043 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-10.c: New test.
5044
8e77f71e
TV
50452019-01-12 Tom de Vries <tdevries@suse.de>
5046
5047 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: New test.
5048 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c: New test.
5049 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c: New test.
5050
52d22ece
TV
50512019-01-12 Tom de Vries <tdevries@suse.de>
5052
5053 * plugin/plugin-nvptx.c (nvptx_exec): Update insufficient hardware
5054 resources diagnostic.
5055
2b9d9e39
TV
50562019-01-12 Tom de Vries <tdevries@suse.de>
5057
5058 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: Expect
5059 vector length to be 128.
5060 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Expect vector
5061 length 2097152 to be reduced to 1024 instead of 32.
5062
4102bda6
TS
50632019-01-11 Thomas Schwinge <thomas@codesourcery.com>
5064 James Norris <jnorris@codesourcery.com>
5065
5066 * libgomp.texi: Better distinguish OpenACC and OpenMP "Runtime
5067 Library Routines", and "Environment Variables".
5068
052aaace
TV
50692019-01-11 Tom de Vries <tdevries@suse.de>
5070
5071 * plugin/plugin-nvptx.c (nvptx_exec): Prevent vector_length 64 and
5072 num_workers 16.
5073
9390f916
TV
50742019-01-11 Tom de Vries <tdevries@suse.de>
5075
5076 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Remove
5077 -foffload=-w.
5078 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Same.
5079 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Same.
5080 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Same.
5081 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Same.
5082
2c3e7ad2
TV
50832019-01-11 Tom de Vries <tdevries@suse.de>
5084
5085 * testsuite/libgomp.oacc-c-c++-common/insufficient-resources.c: New
5086 test.
5087
e222497d
NS
50882019-01-10 Nathan Sidwell <nathan@acm.org>
5089 Julian Brown <julian@codesourcery.com>
5090
5091 PR lto/71959
5092 * testsuite/libgomp.oacc-c++/pr71959-aux.cc: New.
5093 * testsuite/libgomp.oacc-c++/pr71959.C: New.
5094
cb87fec3
SH
50952019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
5096
5097 * config/rtems/bar.c: Include "../linux/bar.c" and delete copy
5098 and paste code.
5099
30b4d0d0
SH
51002019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
5101
5102 * config/rtems/affinity-fmt.c: New file. Include affinity-fmt.c,
5103 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
5104 write.
5105
5d0bc70a
TV
51062019-01-09 Tom de Vries <tdevries@suse.de>
5107
5108 PR target/88756
5109 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (ng, nw, vl): Use
5110 #define instead of "const int".
5111 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c (ng, nw, vl): Same.
5112 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c (ng, nw, vl): Same.
5113 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (ng, nw, vl): Same.
5114 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c (ng, nw, vl): Same.
5115
2c372e81
TV
51162019-01-09 Tom de Vries <tdevries@suse.de>
5117
5118 * plugin/plugin-nvptx.c (nvptx_exec): Make sure to launch with at least
5119 one worker.
5120
43493c97
TV
51212019-01-07 Tom de Vries <tdevries@suse.de>
5122
5123 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: Fix
5124 GOMP_OPENACC_DIM argument.
5125
5c571497
TV
51262019-01-03 Tom de Vries <tdevries@suse.de>
5127
5128 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: New test.
5129 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: New test.
5130
a5544970
JJ
51312019-01-01 Jakub Jelinek <jakub@redhat.com>
5132
5133 Update copyright years.
5134
3f27508c
JJ
51352019-01-01 Jakub Jelinek <jakub@redhat.com>
5136
5137 * libgomp.texi: Bump @copying's copyright year.
5138
59d5960c
TS
51392018-12-28 Thomas Schwinge <thomas@codesourcery.com>
5140
5141 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_parallel)
5142 (GOACC_data_start, GOACC_enter_exit_data, GOACC_update)
5143 (GOACC_declare): Redefine the "device" argument to "flags".
5144
a44c1790
TS
51452018-12-28 Thomas Schwinge <thomas@codesourcery.com>
5146 Cesar Philippidis <cesar@codesourcery.com>
5147
5148 * target.c (struct gomp_coalesce_chunk): New structure.
5149 (struct gomp_coalesce_buf): Update the chunks member to use that
5150 type. Adjust all users.
5151
a152954e
TV
51522018-12-19 Tom de Vries <tdevries@suse.de>
5153
5154 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: New test.
5155 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: New test.
5156 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: New test.
5157
49188cd1
TV
51582018-12-19 Tom de Vries <tdevries@suse.de>
5159
5160 * testsuite/lib/libgomp.exp: Add load_lib of scanoffloadrtl.exp.
5161 * testsuite/libgomp.oacc-c-c++-common/nvptx-merged-loop.c: Move from
5162 gcc/testsuite/gcc.dg/goacc.
5163 * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Same.
5164
c759830b
TS
51652018-12-14 Thomas Schwinge <thomas@codesourcery.com>
5166 Chung-Lin Tang <cltang@codesourcery.com>
5167
5168 * oacc-mem.c (acc_present_or_create): Remove definition and change
5169 to alias of acc_create.
5170 (acc_present_or_copyin): Remove definition and change to alias of
5171 acc_copyin.
5172 * oacc-parallel.c (GOACC_enter_exit_data): Call acc_create instead
5173 of acc_present_or_create.
5174 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Remove.
5175 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
5176 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
5177 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
5178 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
5179 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
5180 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
5181 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
5182 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
5183 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
5184 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
5185 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
5186 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
5187 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
5188 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
5189 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
5190
7de562ee
TS
51912018-12-14 Thomas Schwinge <thomas@codesourcery.com>
5192
f847198e
TS
5193 PR libgomp/88495
5194 * plugin/plugin-nvptx.c (nvptx_wait_async): Don't refuse
5195 "identical parameters".
5196 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Update.
5197 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Remove.
5198
c8ab8aab
TS
5199 PR libgomp/88484
5200 * oacc-parallel.c (GOACC_wait): Correct handling for "async >= 0".
5201 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: New file.
5202
1404af62
TS
5203 PR libgomp/88407
5204 * plugin/plugin-nvptx.c (nvptx_async_test, nvptx_wait)
5205 (nvptx_wait_async): Unseen async-argument is a no-op.
5206 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Update.
5207 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Likewise.
5208 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
5209 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
5210 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
5211 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Merge into...
5212 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: ... this. Update.
5213 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Merge into...
5214 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: ... this. Update
5215
7de562ee
TS
5216 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Revise.
5217 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
5218
17469af7
CLT
52192018-12-14 Chung-Lin Tang <cltang@codesourcery.com>
5220
5221 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Adjust.
5222 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
5223 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
5224
18c247cc
TS
52252018-12-14 Thomas Schwinge <thomas@codesourcery.com>
5226
5227 PR libgomp/88370
5228 * libgomp.texi (acc_get_current_cuda_context, acc_get_cuda_stream)
5229 (acc_set_cuda_stream): Clarify.
5230 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
5231 "async_valid_p".
5232 * plugin/plugin-nvptx.c (nvptx_set_cuda_stream): Refuse "async ==
5233 acc_async_sync".
5234 * testsuite/libgomp.oacc-c-c++-common/acc_set_cuda_stream-1.c: New file.
5235 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Likewise.
5236 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Update.
5237 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
5238
b0aba46c
TV
52392018-12-14 Tom de Vries <tdevries@suse.de>
5240
5241 * testsuite/libgomp.c-c++-common/function-not-offloaded-aux.c: New test.
5242 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: New test.
5243 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: New test.
5244 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c: New test.
5245 * testsuite/libgomp.oacc-c-c++-common/variable-not-offloaded.c: New test.
5246
fe0827ee
TV
52472018-12-13 Tom de Vries <tdevries@suse.de>
5248
5249 * affinity-fmt.c (gomp_print_string): New function, factored out of ...
5250 (omp_display_affinity, gomp_display_affinity_thread): ... here, and ...
5251 * fortran.c (omp_display_affinity_): ... here.
5252 * libgomp.h (gomp_print_string): Declare.
5253 * config/nvptx/affinity-fmt.c: New file. Include affinity-fmt.c,
5254 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
5255 write.
5256
a51f8c92
JJ
52572018-12-13 Jakub Jelinek <jakub@redhat.com>
5258
5259 PR libgomp/88460
5260 * testsuite/libgomp.c++/for-24.C (results): Include it in
5261 omp declare target region.
5262 (main): Use map (always, tofrom: results) instead of
5263 map (tofrom: results).
5264
a6ef2ac9
JJ
52652018-12-12 Jakub Jelinek <jakub@redhat.com>
5266
7a289b7d
JJ
5267 PR fortran/88463
5268 * testsuite/libgomp.fortran/pr88463-1.f90: New test.
5269 * testsuite/libgomp.fortran/pr88463-2.f90: New test.
5270
a6ef2ac9
JJ
5271 * testsuite/libgomp.c-c++-common/for-16.c: New test.
5272
9c47a019
AS
52732018-12-12 Andreas Schwab <schwab@suse.de>
5274
5275 * config/linux/ia64/futex.h (sys_futex0): Don't mark r12 as
5276 clobbered.
5277
d0cbb206
TK
52782018-12-09 Thomas Koenig <tkoenig@gcc.gnu.org>
5279
5280 PR fortran/88411
5281 * testsuite/libgomp.fortran/async_io_8.f90: New test.
5282
84ca08d2
TS
52832018-12-09 Thomas Schwinge <thomas@codesourcery.com>
5284 Jakub Jelinek <jakub@redhat.com>
5285
5286 * target.c (gomp_map_vars): Call gomp_copy_host2dev instead of
5287 devicep->host2dev_func.
5288
6997628d
JJ
52892018-12-08 Jakub Jelinek <jakub@redhat.com>
5290
5291 PR libgomp/87995
5292 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: Require
5293 tls_runtime effective target.
5294 (t): New threadprivate variable.
5295 (main): Set t in threads which execute iterations of the worksharing
5296 loop. Propagate that to the task after the loop and don't abort
5297 if the current taskgroup hasn't been cancelled.
5298
daa8c1d7
JJ
52992018-12-02 Jakub Jelinek <jakub@redhat.com>
5300
4a82df9a
JJ
5301 * testsuite/libgomp.c/task-reduction-3.c: New test.
5302
daa8c1d7
JJ
5303 * testsuite/libgomp.c-c++-common/cancel-taskgroup-4.c: New test.
5304
fe570ff8
CP
53052018-11-30 Cesar Philippidis <cesar@codesourcery.com>
5306
5307 PR libgomp/88288
5308 * oacc-parallel.c (GOACC_parallel_keyed): Add offset to devaddrs.
5309 * testsuite/libgomp.oacc-c-c++-common/pr88288.c: New test.
5310
c223608f
TS
53112018-11-30 Thomas Schwinge <thomas@codesourcery.com>
5312
5313 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: New file.
5314
fc60283c
RB
53152018-10-19 Richard Biener <rguenther@suse.de>
5316
5317 PR tree-optimization/88182
5318 * testsuite/libgomp.c++/pr88182.C: Move to g++.dg/gomp.
5319
ffcf3b79
JJ
53202018-11-26 Jakub Jelinek <jakub@redhat.com>
5321
5322 * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Drop dejagnu.
5323 (RUNTEST): Don't define.
5324 (RUNTESTDEFAULTFLAGS): Add.
5325 (check-DEJAGNU, site.exp, distclean-DEJAGNU): New goals.
5326 (distclean-am): Depend on distclean-DEJAGNU.
5327 (check-am): If -j% option is present in MFLAGS and if
5328 `getconf _NPROCESSORS_ONLN` is more than 8, export OMP_NUM_THREADS=8.
5329 (.PHONY): Add check-DEJAGNU and distclean-DEJAGNU.
5330 * testsuite/Makefile.in: Regenerated.
5331
ef6e6914
RB
53322018-11-26 Richard Biener <rguenther@suse.de>
5333
5334 PR tree-optimization/88182
5335 * testsuite/libgomp.c++/pr88182.C: New testcase.
5336
72d3bb76
JJ
53372018-11-20 Jakub Jelinek <jakub@redhat.com>
5338
5339 PR bootstrap/88106
5340 * config/mingw32/affinity-fmt.c: New file.
5341
207286c3
JJ
53422018-11-09 Jakub Jelinek <jakub@redhat.com>
5343
9666c522
JJ
5344 * affinity-fmt.c: Include inttypes.h if HAVE_INTTYPES_H.
5345 (gomp_display_affinity): Use __builtin_choose_expr to handle
5346 properly handle argument having integral, or pointer or some other
5347 type. If inttypes.h is available and PRIx64 is defined, use PRIx64
5348 with uint64_t type instead of %llx and unsigned long long.
5349
207286c3
JJ
5350 * testsuite/libgomp.c-c++-common/task-reduction-13.c: New test.
5351 * testsuite/libgomp.c-c++-common/task-reduction-14.c: New test.
5352
2033f45b
RO
53532018-11-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
5354
5355 * affinity.c: Include <string.h>, <stdio.h>.
5356 (gomp_display_affinity_place): Remove cpusetp.
5357 * teams.c: Include <limits.h>.
5358
28567c40
JJ
53592018-11-08 Jakub Jelinek <jakub@redhat.com>
5360
8991d779
JJ
5361 * testsuite/libgomp.c-c++-common/task-reduction-8.c (bar): Add
5362 in_reduction clause for s[0].
5363
28567c40
JJ
5364 * affinity.c (gomp_display_affinity_place): New function.
5365 * affinity-fmt.c: New file.
5366 * alloc.c (gomp_aligned_alloc, gomp_aligned_free): New functions.
5367 * config/linux/affinity.c (gomp_display_affinity_place): New function.
5368 * config/nvptx/icv-device.c (omp_get_num_teams, omp_get_team_num):
5369 Move these functions to ...
5370 * config/nvptx/teams.c: ... here. New file.
5371 * config/nvptx/target.c (omp_pause_resource, omp_pause_resource_all):
5372 New functions.
5373 * config/nvptx/team.c (gomp_team_start, gomp_pause_host): New
5374 functions.
5375 * configure.ac: Check for aligned_alloc, posix_memalign, memalign
5376 and _aligned_malloc.
5377 (HAVE_UNAME, HAVE_GETHOSTNAME, HAVE_GETPID): Add new tests.
5378 * configure.tgt: Add -DUSING_INITIAL_EXEC_TLS to XCFLAGS for Linux.
5379 * env.c (gomp_display_affinity_var, gomp_affinity_format_var,
5380 gomp_affinity_format_len): New variables.
5381 (parse_schedule): Parse monotonic and nonmonotonic modifiers in
5382 OMP_SCHEDULE variable. Set GFS_MONOTONIC for monotonic schedules.
5383 (handle_omp_display_env): Display monotonic/nonmonotonic schedule
5384 modifiers. Display (non-default) chunk sizes. Print
5385 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT.
5386 (initialize_env): Don't call pthread_attr_setdetachstate. Handle
5387 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT env vars.
5388 * fortran.c: Include stdio.h and string.h.
5389 (omp_pause_resource, omp_pause_resource_all): Add ialias_redirect.
5390 (omp_get_schedule_, omp_get_schedule_8_): Mask off GFS_MONOTONIC bit.
5391 (omp_set_affinity_format_, omp_get_affinity_format_,
5392 omp_display_affinity_, omp_capture_affinity_, omp_pause_resource_,
5393 omp_pause_resource_all_): New functions.
5394 * icv.c (omp_set_schedule): Mask off omp_sched_monotonic bit in
5395 switch.
5396 * icv-device.c (omp_get_num_teams, omp_get_team_num): Move these
5397 functions to ...
5398 * teams.c: ... here. New file.
5399 * libgomp_g.h: Include gstdint.h.
5400 (GOMP_loop_nonmonotonic_runtime_start,
5401 GOMP_loop_maybe_nonmonotonic_runtime_start, GOMP_loop_start,
5402 GOMP_loop_ordered_start, GOMP_loop_nonmonotonic_runtime_next,
5403 GOMP_loop_maybe_nonmonotonic_runtime_next, GOMP_loop_doacross_start,
5404 GOMP_parallel_loop_nonmonotonic_runtime,
5405 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
5406 GOMP_loop_ull_nonmonotonic_runtime_start,
5407 GOMP_loop_ull_maybe_nonmonotonic_runtime_start, GOMP_loop_ull_start,
5408 GOMP_loop_ull_ordered_start, GOMP_loop_ull_nonmonotonic_runtime_next,
5409 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
5410 GOMP_loop_ull_doacross_start, GOMP_parallel_reductions,
5411 GOMP_taskwait_depend, GOMP_taskgroup_reduction_register,
5412 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
5413 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
5414 GOMP_teams_reg): Declare.
5415 * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Define unless
5416 gomp_aligned_alloc uses fallback implementation.
5417 (gomp_aligned_alloc, gomp_aligned_free): Declare.
5418 (enum gomp_schedule_type): Add GFS_MONOTONIC.
5419 (struct gomp_doacross_work_share): Add extra field.
5420 (struct gomp_work_share): Add task_reductions field.
5421 (struct gomp_taskgroup): Add workshare and reductions fields.
5422 (GOMP_NEEDS_THREAD_HANDLE): Define if needed.
5423 (gomp_thread_handle): New typedef.
5424 (gomp_display_affinity_place, gomp_set_affinity_format,
5425 gomp_display_string, gomp_display_affinity,
5426 gomp_display_affinity_thread): Declare.
5427 (gomp_doacross_init, gomp_doacross_ull_init): Add size_t argument.
5428 (gomp_parallel_reduction_register, gomp_workshare_taskgroup_start,
5429 gomp_workshare_task_reduction_register): Declare.
5430 (gomp_team_start): Add taskgroup argument.
5431 (gomp_pause_host): Declare.
5432 (gomp_init_work_share, gomp_work_share_start): Change bool argument
5433 to size_t.
5434 (gomp_thread_self, gomp_thread_to_pthread_t): New inline functions.
5435 * libgomp.map (GOMP_5.0): Export GOMP_loop_start,
5436 GOMP_loop_ordered_start, GOMP_loop_doacross_start,
5437 GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
5438 GOMP_loop_ull_doacross_start,
5439 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
5440 GOMP_loop_maybe_nonmonotonic_runtime_next,
5441 GOMP_loop_maybe_nonmonotonic_runtime_start,
5442 GOMP_loop_nonmonotonic_runtime_next,
5443 GOMP_loop_nonmonotonic_runtime_start,
5444 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
5445 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
5446 GOMP_loop_ull_nonmonotonic_runtime_next,
5447 GOMP_loop_ull_nonmonotonic_runtime_start,
5448 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
5449 GOMP_parallel_loop_nonmonotonic_runtime, GOMP_parallel_reductions,
5450 GOMP_taskgroup_reduction_register,
5451 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
5452 GOMP_teams_reg and GOMP_taskwait_depend.
5453 (OMP_5.0): Export omp_pause_resource{,_all}{,_},
5454 omp_{capture,display}_affinity{,_}, and
5455 omp_[gs]et_affinity_format{,_}.
5456 * loop.c: Include string.h.
5457 (GOMP_loop_runtime_next): Add ialias.
5458 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
5459 (gomp_loop_static_start, gomp_loop_dynamic_start,
5460 gomp_loop_guided_start, gomp_loop_ordered_static_start,
5461 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
5462 gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
5463 gomp_loop_doacross_guided_start): Adjust gomp_work_share_start
5464 or gomp_doacross_init callers.
5465 (gomp_adjust_sched, GOMP_loop_start, GOMP_loop_ordered_start,
5466 GOMP_loop_doacross_start): New functions.
5467 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
5468 GOMP_loop_doacross_runtime_start, GOMP_parallel_loop_runtime_start):
5469 Mask off GFS_MONOTONIC bit.
5470 (GOMP_loop_maybe_nonmonotonic_runtime_next,
5471 GOMP_loop_maybe_nonmonotonic_runtime_start,
5472 GOMP_loop_nonmonotonic_runtime_next,
5473 GOMP_loop_nonmonotonic_runtime_start,
5474 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
5475 GOMP_parallel_loop_nonmonotonic_runtime): New aliases or wrapper
5476 functions.
5477 (gomp_parallel_loop_start): Pass NULL as taskgroup to
5478 gomp_team_start.
5479 * loop_ull.c: Include string.h.
5480 (GOMP_loop_ull_runtime_next): Add ialias.
5481 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
5482 (gomp_loop_ull_static_start, gomp_loop_ull_dynamic_start,
5483 gomp_loop_ull_guided_start, gomp_loop_ull_ordered_static_start,
5484 gomp_loop_ull_ordered_dynamic_start,
5485 gomp_loop_ull_ordered_guided_start,
5486 gomp_loop_ull_doacross_static_start,
5487 gomp_loop_ull_doacross_dynamic_start,
5488 gomp_loop_ull_doacross_guided_start): Adjust gomp_work_share_start
5489 and gomp_doacross_ull_init callers.
5490 (gomp_adjust_sched, GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
5491 GOMP_loop_ull_doacross_start): New functions.
5492 (GOMP_loop_ull_runtime_start,
5493 GOMP_loop_ull_ordered_runtime_start,
5494 GOMP_loop_ull_doacross_runtime_start): Mask off GFS_MONOTONIC bit.
5495 (GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
5496 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
5497 GOMP_loop_ull_nonmonotonic_runtime_next,
5498 GOMP_loop_ull_nonmonotonic_runtime_start): Likewise.
5499 * Makefile.am (libgomp_la_SOURCES): Add teams.c and affinity-fmt.c.
5500 * omp.h.in (enum omp_sched_t): Add omp_sched_monotonic.
5501 (omp_pause_resource_t, omp_depend_t): New typedefs.
5502 (enum omp_lock_hint_t): Renamed to ...
5503 (enum omp_sync_hint_t): ... this. Define omp_sync_hint_*
5504 enumerators using numbers and omp_lock_hint_* as their aliases.
5505 (omp_lock_hint_t): New typedef. Rename to ...
5506 (omp_sync_hint_t): ... this.
5507 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint): Use
5508 omp_sync_hint_t instead of omp_lock_hint_t.
5509 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
5510 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
5511 Declare.
5512 (omp_target_is_present, omp_target_disassociate_ptr):
5513 Change first argument from void * to const void *.
5514 (omp_target_memcpy, omp_target_memcpy_rect): Change second argument
5515 from void * to const void *.
5516 (omp_target_associate_ptr): Change first and second arguments from
5517 void * to const void *.
5518 * omp_lib.f90.in (omp_pause_resource_kind, omp_pause_soft,
5519 omp_pause_hard): New parameters.
5520 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
5521 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
5522 New interfaces.
5523 * omp_lib.h.in (omp_pause_resource_kind, omp_pause_soft,
5524 omp_pause_hard): New parameters.
5525 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
5526 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
5527 New externals.
5528 * ordered.c (gomp_doacross_init, gomp_doacross_ull_init): Add
5529 EXTRA argument. If not needed to prepare array, if extra is 0,
5530 clear ws->doacross, otherwise allocate just doacross structure and
5531 extra payload. If array is needed, allocate also extra payload.
5532 (GOMP_doacross_post, GOMP_doacross_wait, GOMP_doacross_ull_post,
5533 GOMP_doacross_ull_wait): Handle doacross->array == NULL like
5534 doacross == NULL.
5535 * parallel.c (GOMP_parallel_start): Pass NULL as taskgroup to
5536 gomp_team_start.
5537 (GOMP_parallel): Likewise. Formatting fix.
5538 (GOMP_parallel_reductions): New function.
5539 (GOMP_cancellation_point): If taskgroup has workshare
5540 flag set, check cancelled of prev taskgroup if any.
5541 (GOMP_cancel): If taskgroup has workshare flag set, set cancelled
5542 on prev taskgroup if any.
5543 * sections.c: Include string.h.
5544 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
5545 (GOMP_sections_start): Adjust gomp_work_share_start caller.
5546 (GOMP_sections2_start): New function.
5547 (GOMP_parallel_sections_start, GOMP_parallel_sections):
5548 Pass NULL as taskgroup to gomp_team_start.
5549 * single.c (GOMP_single_start, GOMP_single_copy_start): Adjust
5550 gomp_work_share_start callers.
5551 * target.c (GOMP_target_update_ext, GOMP_target_enter_exit_data):
5552 If taskgroup has workshare flag set, check cancelled on prev
5553 taskgroup if any. Guard all cancellation tests with
5554 gomp_cancel_var test.
5555 (omp_target_is_present, omp_target_disassociate_ptr):
5556 Change ptr argument from void * to const void *.
5557 (omp_target_memcpy): Change src argument from void * to const void *.
5558 (omp_target_memcpy_rect): Likewise.
5559 (omp_target_memcpy_rect_worker): Likewise. Use const char * casts
5560 instead of char * where needed.
5561 (omp_target_associate_ptr): Change host_ptr and device_ptr arguments
5562 from void * to const void *.
5563 (omp_pause_resource, omp_pause_resource_all): New functions.
5564 * task.c (gomp_task_handle_depend): Handle new depend array format
5565 in addition to the old. Handle mutexinoutset kinds the same as
5566 inout for now, handle unspecified kinds.
5567 (gomp_create_target_task): If taskgroup has workshare flag set, check
5568 cancelled on prev taskgroup if any. Guard all cancellation tests with
5569 gomp_cancel_var test. Handle new depend array format count in
5570 addition to the old.
5571 (GOMP_task): Likewise. Adjust function comment.
5572 (gomp_task_run_pre): If taskgroup has workshare flag set, check
5573 cancelled on prev taskgroup if any. Guard all cancellation tests with
5574 gomp_cancel_var test.
5575 (GOMP_taskwait_depend): New function.
5576 (gomp_task_maybe_wait_for_dependencies): Handle new depend array
5577 format in addition to the old. Handle mutexinoutset kinds the same as
5578 inout for now, handle unspecified kinds. Fix a function comment typo.
5579 (gomp_taskgroup_init): New function.
5580 (GOMP_taskgroup_start): Use it.
5581 (gomp_reduction_register, gomp_create_artificial_team,
5582 GOMP_taskgroup_reduction_register,
5583 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
5584 gomp_parallel_reduction_register,
5585 gomp_workshare_task_reduction_register,
5586 gomp_workshare_taskgroup_start,
5587 GOMP_workshare_task_reduction_unregister): New functions.
5588 * taskloop.c (GOMP_taskloop): If taskgroup has workshare flag set,
5589 check cancelled on prev taskgroup if any. Guard all cancellation
5590 tests with gomp_cancel_var test. Handle GOMP_TASK_FLAG_REDUCTION flag
5591 by calling GOMP_taskgroup_reduction_register.
5592 * team.c (gomp_thread_attr): Remove comment.
5593 (struct gomp_thread_start_data): Add handle field.
5594 (gomp_thread_start): Call pthread_detach.
5595 (gomp_new_team): Adjust gomp_init_work_share caller.
5596 (gomp_free_pool_helper): Call pthread_detach.
5597 (gomp_team_start): Add taskgroup argument, initialize implicit
5598 tasks' taskgroup field to that. Don't call
5599 pthread_attr_setdetachstate. Handle OMP_DISPLAY_AFFINITY env var.
5600 (gomp_team_end): Determine nesting by thr->ts.level != 0
5601 rather than thr->ts.team != NULL.
5602 (gomp_pause_pool_helper, gomp_pause_host): New functions.
5603 * work.c (alloc_work_share): Use gomp_aligned_alloc instead of
5604 gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined.
5605 (gomp_init_work_share): Change ORDERED argument from bool to size_t,
5606 if more than 1 allocate also extra payload at the end of array. Never
5607 keep ordered_team_ids NULL, set it to inline_ordered_team_ids instead.
5608 (gomp_work_share_start): Change ORDERED argument from bool to size_t,
5609 return true instead of ws.
5610 * Makefile.in: Regenerated.
5611 * configure: Regenerated.
5612 * config.h.in: Regenerated.
5613 * testsuite/libgomp.c/cancel-for-2.c (foo): Use cancel modifier
5614 in some cases.
5615 * testsuite/libgomp.c-c++-common/cancel-parallel-1.c: New test.
5616 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: New test.
5617 * testsuite/libgomp.c-c++-common/depend-iterator-1.c: New test.
5618 * testsuite/libgomp.c-c++-common/depend-iterator-2.c: New test.
5619 * testsuite/libgomp.c-c++-common/depend-mutexinout-1.c: New test.
5620 * testsuite/libgomp.c-c++-common/depend-mutexinout-2.c: New test.
5621 * testsuite/libgomp.c-c++-common/depobj-1.c: New test.
5622 * testsuite/libgomp.c-c++-common/display-affinity-1.c: New test.
5623 * testsuite/libgomp.c-c++-common/for-10.c: New test.
5624 * testsuite/libgomp.c-c++-common/for-11.c: New test.
5625 * testsuite/libgomp.c-c++-common/for-12.c: New test.
5626 * testsuite/libgomp.c-c++-common/for-13.c: New test.
5627 * testsuite/libgomp.c-c++-common/for-14.c: New test.
5628 * testsuite/libgomp.c-c++-common/for-15.c: New test.
5629 * testsuite/libgomp.c-c++-common/for-2.h: If CONDNE macro is defined,
5630 define a different N(test), don't define N(f0) to N(f14), but instead
5631 define N(f20) to N(f34) using != comparisons.
5632 * testsuite/libgomp.c-c++-common/for-7.c: New test.
5633 * testsuite/libgomp.c-c++-common/for-8.c: New test.
5634 * testsuite/libgomp.c-c++-common/for-9.c: New test.
5635 * testsuite/libgomp.c-c++-common/master-combined-1.c: New test.
5636 * testsuite/libgomp.c-c++-common/pause-1.c: New test.
5637 * testsuite/libgomp.c-c++-common/pause-2.c: New test.
5638 * testsuite/libgomp.c-c++-common/pr66199-10.c: New test.
5639 * testsuite/libgomp.c-c++-common/pr66199-11.c: New test.
5640 * testsuite/libgomp.c-c++-common/pr66199-12.c: New test.
5641 * testsuite/libgomp.c-c++-common/pr66199-13.c: New test.
5642 * testsuite/libgomp.c-c++-common/pr66199-14.c: New test.
5643 * testsuite/libgomp.c-c++-common/simd-1.c: New test.
5644 * testsuite/libgomp.c-c++-common/taskloop-reduction-1.c: New test.
5645 * testsuite/libgomp.c-c++-common/taskloop-reduction-2.c: New test.
5646 * testsuite/libgomp.c-c++-common/taskloop-reduction-3.c: New test.
5647 * testsuite/libgomp.c-c++-common/taskloop-reduction-4.c: New test.
5648 * testsuite/libgomp.c-c++-common/task-reduction-11.c: New test.
5649 * testsuite/libgomp.c-c++-common/task-reduction-12.c: New test.
5650 * testsuite/libgomp.c-c++-common/task-reduction-1.c: New test.
5651 * testsuite/libgomp.c-c++-common/task-reduction-2.c: New test.
5652 * testsuite/libgomp.c-c++-common/task-reduction-3.c: New test.
5653 * testsuite/libgomp.c-c++-common/task-reduction-4.c: New test.
5654 * testsuite/libgomp.c-c++-common/task-reduction-5.c: New test.
5655 * testsuite/libgomp.c-c++-common/task-reduction-6.c: New test.
5656 * testsuite/libgomp.c-c++-common/task-reduction-7.c: New test.
5657 * testsuite/libgomp.c-c++-common/task-reduction-8.c: New test.
5658 * testsuite/libgomp.c-c++-common/task-reduction-9.c: New test.
5659 * testsuite/libgomp.c-c++-common/taskwait-depend-1.c: New test.
5660 * testsuite/libgomp.c++/depend-1.C: New test.
5661 * testsuite/libgomp.c++/depend-iterator-1.C: New test.
5662 * testsuite/libgomp.c++/depobj-1.C: New test.
5663 * testsuite/libgomp.c++/for-16.C: New test.
5664 * testsuite/libgomp.c++/for-21.C: New test.
5665 * testsuite/libgomp.c++/for-22.C: New test.
5666 * testsuite/libgomp.c++/for-23.C: New test.
5667 * testsuite/libgomp.c++/for-24.C: New test.
5668 * testsuite/libgomp.c++/for-25.C: New test.
5669 * testsuite/libgomp.c++/for-26.C: New test.
5670 * testsuite/libgomp.c++/taskloop-reduction-1.C: New test.
5671 * testsuite/libgomp.c++/taskloop-reduction-2.C: New test.
5672 * testsuite/libgomp.c++/taskloop-reduction-3.C: New test.
5673 * testsuite/libgomp.c++/taskloop-reduction-4.C: New test.
5674 * testsuite/libgomp.c++/task-reduction-10.C: New test.
5675 * testsuite/libgomp.c++/task-reduction-11.C: New test.
5676 * testsuite/libgomp.c++/task-reduction-12.C: New test.
5677 * testsuite/libgomp.c++/task-reduction-13.C: New test.
5678 * testsuite/libgomp.c++/task-reduction-14.C: New test.
5679 * testsuite/libgomp.c++/task-reduction-15.C: New test.
5680 * testsuite/libgomp.c++/task-reduction-16.C: New test.
5681 * testsuite/libgomp.c++/task-reduction-17.C: New test.
5682 * testsuite/libgomp.c++/task-reduction-18.C: New test.
5683 * testsuite/libgomp.c++/task-reduction-19.C: New test.
5684 * testsuite/libgomp.c/task-reduction-1.c: New test.
5685 * testsuite/libgomp.c++/task-reduction-1.C: New test.
5686 * testsuite/libgomp.c/task-reduction-2.c: New test.
5687 * testsuite/libgomp.c++/task-reduction-2.C: New test.
5688 * testsuite/libgomp.c++/task-reduction-3.C: New test.
5689 * testsuite/libgomp.c++/task-reduction-4.C: New test.
5690 * testsuite/libgomp.c++/task-reduction-5.C: New test.
5691 * testsuite/libgomp.c++/task-reduction-6.C: New test.
5692 * testsuite/libgomp.c++/task-reduction-7.C: New test.
5693 * testsuite/libgomp.c++/task-reduction-8.C: New test.
5694 * testsuite/libgomp.c++/task-reduction-9.C: New test.
5695 * testsuite/libgomp.c/teams-1.c: New test.
5696 * testsuite/libgomp.c/teams-2.c: New test.
5697 * testsuite/libgomp.c/thread-limit-4.c: New test.
5698 * testsuite/libgomp.c/thread-limit-5.c: New test.
5699 * testsuite/libgomp.fortran/display-affinity-1.f90: New test.
5700
58168bbf
CLT
57012018-11-06 Chung-Lin Tang <cltang@codesourcery.com>
5702
5703 * oacc-mem.c (memcpy_tofrom_device): New function, combined from
5704 acc_memcpy_to/from_device functions, now with async parameter.
5705 (acc_memcpy_to_device): Modify to use memcpy_tofrom_device.
5706 (acc_memcpy_from_device): Likewise.
5707 (acc_memcpy_to_device_async): New API function.
5708 (acc_memcpy_from_device_async): Likewise.
5709 (present_create_copy): Add async parameter and async setting/unsetting.
5710 (acc_create): Adjust present_create_copy call.
5711 (acc_copyin): Likewise.
5712 (acc_present_or_create): Likewise.
5713 (acc_present_or_copyin): Likewise.
5714 (acc_create_async): New API function.
5715 (acc_copyin_async): New API function.
5716 (delete_copyout): Add async parameter and async setting/unsetting.
5717 (acc_delete): Adjust delete_copyout call.
5718 (acc_copyout): Likewise.
5719 (acc_delete_async): New API function.
5720 (acc_copyout_async): Likewise.
5721 (update_dev_host): Add async parameter and async setting/unsetting.
5722 (acc_update_device): Adjust update_dev_host call.
5723 (acc_update_self): Likewise.
5724 (acc_update_device_async): New API function.
5725 (acc_update_self_async): Likewise.
5726 * openacc.h (acc_copyin_async): Declare new API function.
5727 (acc_create_async): Likewise.
5728 (acc_copyout_async): Likewise.
5729 (acc_delete_async): Likewise.
5730 (acc_update_device_async): Likewise.
5731 (acc_update_self_async): Likewise.
5732 (acc_memcpy_to_device_async): Likewise.
5733 (acc_memcpy_from_device_async): Likewise.
5734 * openacc_lib.h (acc_copyin_async_32_h): New subroutine.
5735 (acc_copyin_async_64_h): New subroutine.
5736 (acc_copyin_async_array_h): New subroutine.
5737 (acc_create_async_32_h): New subroutine.
5738 (acc_create_async_64_h): New subroutine.
5739 (acc_create_async_array_h): New subroutine.
5740 (acc_copyout_async_32_h): New subroutine.
5741 (acc_copyout_async_64_h): New subroutine.
5742 (acc_copyout_async_array_h): New subroutine.
5743 (acc_delete_async_32_h): New subroutine.
5744 (acc_delete_async_64_h): New subroutine.
5745 (acc_delete_async_array_h): New subroutine.
5746 (acc_update_device_async_32_h): New subroutine.
5747 (acc_update_device_async_64_h): New subroutine.
5748 (acc_update_device_async_array_h): New subroutine.
5749 (acc_update_self_async_32_h): New subroutine.
5750 (acc_update_self_async_64_h): New subroutine.
5751 (acc_update_self_async_array_h): New subroutine.
5752 * openacc.f90 (acc_copyin_async_32_h): New subroutine.
5753 (acc_copyin_async_64_h): New subroutine.
5754 (acc_copyin_async_array_h): New subroutine.
5755 (acc_create_async_32_h): New subroutine.
5756 (acc_create_async_64_h): New subroutine.
5757 (acc_create_async_array_h): New subroutine.
5758 (acc_copyout_async_32_h): New subroutine.
5759 (acc_copyout_async_64_h): New subroutine.
5760 (acc_copyout_async_array_h): New subroutine.
5761 (acc_delete_async_32_h): New subroutine.
5762 (acc_delete_async_64_h): New subroutine.
5763 (acc_delete_async_array_h): New subroutine.
5764 (acc_update_device_async_32_h): New subroutine.
5765 (acc_update_device_async_64_h): New subroutine.
5766 (acc_update_device_async_array_h): New subroutine.
5767 (acc_update_self_async_32_h): New subroutine.
5768 (acc_update_self_async_64_h): New subroutine.
5769 (acc_update_self_async_array_h): New subroutine.
5770 * libgomp.map (OACC_2.5): Add acc_copyin_async*, acc_copyout_async*,
5771 acc_copyout_finalize_async*, acc_create_async*, acc_delete_async*,
5772 acc_delete_finalize_async*, acc_memcpy_from_device_async*,
5773 acc_memcpy_to_device_async*, acc_update_device_async*, and
5774 acc_update_self_async* entries.
5775 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: New test.
5776 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: New test.
5777 * testsuite/libgomp.oacc-fortran/lib-16.f90: New test.
5778
22e05272
JM
57792018-10-31 Joseph Myers <joseph@codesourcery.com>
5780
5781 PR bootstrap/82856
5782 * Makefile.am: Include multilib.am
5783 (AUTOMAKE_OPTIONS): Add info-in-builddir.
5784 (CLEANFILES): Remove libgomp.info.
5785 * configure.ac: Remove AC_PREREQ.
5786 * testsuite/Makefile.am (RUNTEST): Remove quotes.
5787 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
5788 Regenerate.
5789
87a5ccfb
JM
57902018-10-29 Joseph Myers <joseph@codesourcery.com>
5791 Julian Brown <julian@codesourcery.com>
5792
5793 * testsuite/libgomp.oacc-c++/this.C: New.
5794
2049befd
CP
57952018-09-18 Cesar Philippidis <cesar@codesourcery.com>
5796
5797 * plugin/plugin-nvptx.c (struct cuda_map): New.
5798 (struct ptx_stream): Replace d, h, h_begin, h_end, h_next, h_prev,
5799 h_tail with (cuda_map *) map.
5800 (cuda_map_create): New function.
5801 (cuda_map_destroy): New function.
5802 (map_init): Update to use a linked list of cuda_map objects.
5803 (map_fini): Likewise.
5804 (map_pop): Likewise.
5805 (map_push): Likewise. Return CUdeviceptr instead of void.
5806 (init_streams_for_device): Remove stales references to ptx_stream
5807 members.
5808 (select_stream_for_async): Likewise.
5809 (nvptx_exec): Update call to map_init.
5810
8e36332c
CP
58112018-09-09 Cesar Philippidis <cesar@codesourcery.com>
5812 Julian Brown <julian@codesourcery.com>
5813
5814 PR middle-end/86336
5815 * testsuite/libgomp.oacc-c++/non-scalar-data.C: Remove XFAIL.
5816
2b4c9065
NK
58172018-08-21 Nicolas Koenig <koenigni@gcc.gnu.org>
5818 Thomas Koenig <tkoenig@gcc.gnu.org>
5819
5820 PR fortran/25829
5821 * testsuite/libgomp.fortran/async_io_1.f90: New test.
5822 * testsuite/libgomp.fortran/async_io_2.f90: New test.
5823 * testsuite/libgomp.fortran/async_io_3.f90: New test.
5824 * testsuite/libgomp.fortran/async_io_4.f90: New test.
5825 * testsuite/libgomp.fortran/async_io_5.f90: New test.
5826 * testsuite/libgomp.fortran/async_io_6.f90: New test.
5827 * testsuite/libgomp.fortran/async_io_7.f90: New test.
5828
bd9b3d3d
CP
58292018-08-13 Cesar Philippidis <cesar@codesourcery.com>
5830 Tom de Vries <tdevries@suse.de>
5831
5832 PR target/85590
5833 * plugin/cuda/cuda.h (CUoccupancyB2DSize): New typedef.
5834 (cuOccupancyMaxPotentialBlockSize): Declare.
5835 * plugin/cuda-lib.def (cuOccupancyMaxPotentialBlockSize): New
5836 CUDA_ONE_CALL_MAYBE_NULL.
5837 * plugin/plugin-nvptx.c (CUDA_VERSION < 6050): Define
5838 CUoccupancyB2DSize and declare
5839 cuOccupancyMaxPotentialBlockSize.
5840 (nvptx_exec): Use cuOccupancyMaxPotentialBlockSize to set the
5841 default num_gangs and num_workers when the driver supports it.
5842
8e09a12f
TV
58432018-08-08 Tom de Vries <tdevries@suse.de>
5844
5845 * plugin/cuda-lib.def (cuLinkAddData_v2, cuLinkCreate_v2): Declare using
5846 CUDA_ONE_CALL_MAYBE_NULL.
5847 * plugin/plugin-nvptx.c (cuLinkAddData, cuLinkCreate): Undef and declare.
5848 (cuLinkAddData_v2, cuLinkCreate_v2): Declare.
5849 (link_ptx): Fall back to cuLinkAddData/cuLinkCreate if the _v2 versions
5850 are not found.
5851
cedd9bd0
TV
58522018-08-08 Tom de Vries <tdevries@suse.de>
5853
5854 * plugin/cuda-lib.def (cuGetErrorString): Use CUDA_ONE_CALL_MAYBE_NULL.
5855 * plugin/plugin-nvptx.c (cuda_error): Handle if cuGetErrorString is not
5856 present.
5857
b113af95
TV
58582018-08-08 Tom de Vries <tdevries@suse.de>
5859
5860 * plugin/plugin-nvptx.c
5861 (CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR): Define.
5862 (nvptx_open_device): Use
5863 CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR.
5864
94767dac
TV
58652018-08-08 Tom de Vries <tdevries@suse.de>
5866
5867 * plugin/plugin-nvptx.c (cuda_error): Move declaration of cuGetErrorString ...
5868 (cuGetErrorString): ... here. Guard with CUDA_VERSION < 6000.
5869
02150de8
TV
58702018-08-07 Tom de Vries <tdevries@suse.de>
5871
5872 * plugin/plugin-nvptx.c (DO_PRAGMA): Define.
5873 (struct cuda_lib_s): Add def/undef of CUDA_ONE_CALL_MAYBE_NULL.
5874 (init_cuda_lib): Add new param to CUDA_ONE_CALL_1. Add arg to
5875 corresponding call in CUDA_ONE_CALL. Add def/undef of
5876 CUDA_ONE_CALL_MAYBE_NULL.
5877 (CUDA_CALL_EXISTS): Define.
5878
9e28b107
TV
58792018-08-07 Tom de Vries <tdevries@suse.de>
5880
5881 * plugin/plugin-nvptx.c (struct cuda_lib_s, init_cuda_lib): Put
5882 CUDA_ONE_CALL defines right before the cuda-lib.def include, and the
5883 corresponding undefs right after.
5884
09940090
TV
58852018-08-04 Tom de Vries <tdevries@suse.de>
5886
5887 * plugin/configfrag.ac: For --without-cuda-driver, set
5888 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB to no. Handle
5889 CUDA_DRIVER_INCLUDE == no and CUDA_DRIVER_LIB == no.
5890 * configure: Regenerate.
5891
77e0a97a
TV
58922018-08-02 Tom de Vries <tdevries@suse.de>
5893
5894 PR target/86660
5895 * testsuite/libgomp.oacc-c++/routine-1-auto.C: Remove -fno-exceptions.
5896 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Same.
5897 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
5898 Same.
5899 * testsuite/libgomp.oacc-c++/routine-1-template.C: Same.
5900 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C: Same.
5901 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Same.
5902
701d080a
CP
59032018-08-01 Cesar Philippidis <cesar@codesourcery.com>
5904 Thomas Schwinge <thomas@codesourcery.com>
5905
5906 * config/nvptx/oacc-parallel.c: Truncate.
5907
094db6be
CP
59082018-08-01 Cesar Philippidis <cesar@codesourcery.com>
5909 James Norris <jnorris@codesourcery.com>
5910
5911 * plugin/plugin-nvptx.c (struct map): Removed.
701d080a
CP
5912 (map_init, map_pop): Remove use of struct map.
5913 (map_push): Likewise and change argument list.
094db6be
CP
5914 * testsuite/libgomp.oacc-c-c++-common/mapping-1.c: New
5915
8c6310a2
TV
59162018-08-01 Tom de Vries <tdevries@suse.de>
5917
5918 * plugin/cuda-lib.def: New file. Factor out of ...
5919 * plugin/plugin-nvptx.c (CUDA_CALLS): ... here.
5920 (struct cuda_lib_s, init_cuda_lib): Include cuda-lib.def instead of
5921 using CUDA_CALLS.
5922
1d4a51cf
AV
59232018-07-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
5924
5925 Revert 'AsyncI/O patch committed'.
5926 2018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
5927 Thomas Koenig <tkoenig@gcc.gnu.org>
5928
5929 PR fortran/25829
5930 * testsuite/libgomp.fortran/async_io_1.f90: New test.
5931 * testsuite/libgomp.fortran/async_io_2.f90: New test.
5932 * testsuite/libgomp.fortran/async_io_3.f90: New test.
5933 * testsuite/libgomp.fortran/async_io_4.f90: New test.
5934 * testsuite/libgomp.fortran/async_io_5.f90: New test.
5935 * testsuite/libgomp.fortran/async_io_6.f90: New test.
5936 * testsuite/libgomp.fortran/async_io_7.f90: New test.
5937
4cdfee3f
TV
59382018-07-30 Tom de Vries <tdevries@suse.de>
5939
5940 * plugin/plugin-nvptx.c (MIN, MAX): Redefine.
5941 (nvptx_exec): Ensure worker and vector default dims don't exceed
5942 targ_fn->max_threads_per_block.
5943
0b210c43
TV
59442018-07-30 Tom de Vries <tdevries@suse.de>
5945
5946 * plugin/plugin-nvptx.c (struct ptx_device): Add default_dims field.
5947 (nvptx_open_device): Init default_dims for device.
5948 (nvptx_exec): Use default_dims from device.
5949
5883c5cc
JJ
59502018-07-26 Jakub Jelinek <jakub@redhat.com>
5951
5d36384c
JJ
5952 PR testsuite/86660
5953 * testsuite/libgomp.c++/for-15.C (results): Include it in
5954 omp declare target region.
5955 (main): Use map (always, tofrom: results) instead of
5956 map (tofrom: results).
5957
5883c5cc
JJ
5958 PR middle-end/86660
5959 * testsuite/libgomp.c/pr86660.c: New test.
5960
88a4654d
CP
59612018-07-26 Cesar Philippidis <cesar@codesourcery.com>
5962 Tom de Vries <tdevries@suse.de>
5963
5964 * plugin/plugin-nvptx.c (nvptx_exec): Error if the hardware doesn't have
5965 sufficient resources to launch a kernel, and give a hint on how to fix
5966 it.
5967
0c6c2f5f
CP
59682018-07-26 Cesar Philippidis <cesar@codesourcery.com>
5969 Tom de Vries <tdevries@suse.de>
5970
5971 * plugin/plugin-nvptx.c (struct ptx_device): Add warp_size,
5972 max_threads_per_block and max_threads_per_multiprocessor fields.
5973 (nvptx_open_device): Initialize new fields.
5974 (nvptx_exec): Use num_sms, and new fields.
5975
6dd58010
TV
59762018-07-26 Tom de Vries <tdevries@suse.de>
5977
5978 * testsuite/libgomp.oacc-fortran/lib-12.f90: Move acc_async_test calls
5979 to correct locations. Remove xfail.
5980
b2eb1779
TV
59812018-07-26 Tom de Vries <tdevries@suse.de>
5982
5983 * testsuite/libgomp.oacc-fortran/lib-13.f90: Replace acc_wait_all with
5984 acc_wait. Move acc_async_test calls to correct locations. Remove
5985 xfail.
5986
b1f45884
NK
59872018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
5988 Thomas Koenig <tkoenig@gcc.gnu.org>
5989
5990 PR fortran/25829
5991 * testsuite/libgomp.fortran/async_io_1.f90: New test.
5992 * testsuite/libgomp.fortran/async_io_2.f90: New test.
5993 * testsuite/libgomp.fortran/async_io_3.f90: New test.
5994 * testsuite/libgomp.fortran/async_io_4.f90: New test.
5995 * testsuite/libgomp.fortran/async_io_5.f90: New test.
5996 * testsuite/libgomp.fortran/async_io_6.f90: New test.
5997 * testsuite/libgomp.fortran/async_io_7.f90: New test.
5998
3a106211
JJ
59992018-07-17 Jakub Jelinek <jakub@redhat.com>
6000
a3bccfa1
JJ
6001 PR middle-end/86542
6002 * testsuite/libgomp.c++/pr86542.C: New test.
6003
3a106211
JJ
6004 PR middle-end/86539
6005 * testsuite/libgomp.c++/pr86539.C: New test.
6006
2bae8b2f
JJ
60072018-07-11 Jakub Jelinek <jakub@redhat.com>
6008
6009 PR c++/86443
6010 * testsuite/libgomp.c++/for-15.C (a): Remove unused variable.
6011 (results): Make sure the variable is not inside declare target region.
6012 (qux): Remove unused function.
6013
0b27c3ed
JJ
60142018-07-10 Jakub Jelinek <jakub@redhat.com>
6015
6016 PR c++/86443
6017 * testsuite/libgomp.c++/for-15.C: New test.
6018
f0391511
JJ
60192018-06-26 Jakub Jelinek <jakub@redhat.com>
6020
6021 PR c++/86291
6022 * testsuite/libgomp.c++/pr86291.C: New test.
6023
1a6d1d24
GP
60242018-06-24 Gerald Pfeifer <gerald@pfeifer.com>
6025
6026 * libgomp.texi (Top): Move www.openmp.org to https.
6027 (Enabling OpenMP): Ditto.
6028 (omp_get_active_level): Ditto.
6029 (omp_get_ancestor_thread_num): Ditto.
6030 (omp_get_cancellation): Ditto.
6031 (omp_get_default_device): Ditto.
6032 (omp_get_dynamic): Ditto.
6033 (omp_get_level): Ditto.
6034 (omp_get_max_active_levels): Ditto.
6035 (omp_get_max_task_priority): Ditto.
6036 (omp_get_max_threads): Ditto.
6037 (omp_get_nested): Ditto.
6038 (omp_get_num_devices): Ditto.
6039 (omp_get_num_procs): Ditto.
6040 (omp_get_num_teams): Ditto.
6041 (omp_get_num_threads): Ditto.
6042 (omp_get_proc_bind): Ditto.
6043 (omp_get_schedule): Ditto.
6044 (omp_get_team_num): Ditto.
6045 (omp_get_team_size): Ditto.
6046 (omp_get_thread_limit): Ditto.
6047 (omp_get_thread_num): Ditto.
6048 (omp_in_parallel): Ditto.
6049 (omp_in_final): Ditto.
6050 (omp_is_initial_device): Ditto.
6051 (omp_set_default_device): Ditto.
6052 (omp_set_dynamic): Ditto.
6053 (omp_set_max_active_levels): Ditto.
6054 (omp_set_nested): Ditto.
6055 (omp_set_num_threads): Ditto.
6056 (omp_set_schedule): Ditto.
6057 (omp_init_lock): Ditto.
6058 (omp_set_lock): Ditto.
6059 (omp_test_lock): Ditto.
6060 (omp_unset_lock): Ditto.
6061 (omp_destroy_lock): Ditto.
6062 (omp_init_nest_lock): Ditto.
6063 (omp_set_nest_lock): Ditto.
6064 (omp_test_nest_lock): Ditto.
6065 (omp_unset_nest_lock): Ditto.
6066 (omp_destroy_nest_lock): Ditto.
6067 (omp_get_wtick): Ditto.
6068 (omp_get_wtime): Ditto.
6069 (OMP_CANCELLATION): Ditto.
6070 (OMP_DISPLAY_ENV): Ditto.
6071 (OMP_DEFAULT_DEVICE): Ditto.
6072 (OMP_DYNAMIC): Ditto.
6073 (OMP_MAX_ACTIVE_LEVELS): Ditto.
6074 (OMP_MAX_TASK_PRIORITY): Ditto.
6075 (OMP_NESTED): Ditto.
6076 (OMP_NUM_THREADS): Ditto.
6077 (OMP_PROC_BIND): Ditto.
6078 (OMP_PLACES): Ditto.
6079 (OMP_STACKSIZE): Ditto.
6080 (OMP_SCHEDULE): Ditto.
6081 (OMP_THREAD_LIMIT): Ditto.
6082 (OMP_WAIT_POLICY): Ditto.
6083
31dd69b7
CP
60842018-06-22 Cesar Philippidis <cesar@codesourcery.com>
6085 James Norris <jnorris@codesourcery.com>
6086 Julian Brown <julian@codesourcery.com>
6087 Thomas Schwinge <thomas@codesourcery.com>
6088 Tom de Vries <tom@codesourcery.com>
6089
6090 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Don't force "-O2".
6091 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Update.
6092 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Likewise.
6093 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Likewise.
6094 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
6095 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
6096 * testsuite/libgomp.oacc-c++/non-scalar-data.C: New file.
6097 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
6098 * testsuite/libgomp.oacc-c-c++-common/enter-data.c: Likewise.
6099 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c:
6100 Likewise.
6101 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
6102 Likewise.
6103 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
6104 Likewise.
6105 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c:
6106 Likewise.
6107 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c:
6108 Likewise.
6109 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
6110 Likewise.
6111 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
6112 Likewise.
6113 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
6114 Likewise.
6115 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
6116 Likewise.
6117 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
6118 Likewise.
6119 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
6120 Likewise.
6121 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
6122 Likewise.
6123 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
6124 Likewise.
6125 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
6126 Likewise.
6127 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
6128 Likewise.
6129 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
6130 Likewise.
6131 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
6132 Likewise.
6133 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
6134 Likewise.
6135 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
6136 Likewise.
6137 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
6138 Likewise.
6139 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
6140 Likewise.
6141 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
6142 Likewise.
6143 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
6144 Likewise.
6145 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
6146 Likewise.
6147 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
6148 Likewise.
6149 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
6150 Likewise.
6151 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
6152 Likewise.
6153 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.c: Likewise.
6154 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.h: Likewise.
6155 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-2.h: Likewise.
6156 * testsuite/libgomp.oacc-fortran/cublas-fixed.h: Likewise.
6157 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Likewise.
6158 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
6159 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
6160 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Likewise.
6161 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
6162 Likewise.
6163 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
6164 Likewise.
6165 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Likewise.
6166 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Likewise.
6167 * testsuite/libgomp.oacc-fortran/kernels-independent.f90:
6168 Likewise.
6169 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Likewise.
6170 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Likewise.
6171 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
6172 Likewise.
6173 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
6174 Likewise.
6175 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
6176 Likewise.
6177 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
6178 Likewise.
6179 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
6180 Likewise.
6181 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
6182 Likewise.
6183 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
6184 Likewise.
6185 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
6186 Likewise.
6187 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
6188 Likewise.
6189 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
6190 Likewise.
6191 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
6192 Likewise.
6193 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
6194 Likewise.
6195 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
6196 Likewise.
6197 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
6198 Likewise.
6199 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
6200 Likewise.
6201 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
6202 * testsuite/libgomp.oacc-fortran/lib-13.f90: Likewise.
6203 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
6204 * testsuite/libgomp.oacc-fortran/lib-15.f90: Likewise.
6205 * testsuite/libgomp.oacc-fortran/parallel-loop-1.f90: Likewise.
6206 * testsuite/libgomp.oacc-fortran/reference-reductions.f90: Likewise.
6207 * testsuite/libgomp.oacc-fortran/vector-routine.f90: Likewise.
6208
829c6349
CLT
62092018-06-20 Chung-Lin Tang <cltang@codesourcery.com>
6210 Thomas Schwinge <thomas@codesourcery.com>
6211 Cesar Philippidis <cesar@codesourcery.com>
6212
6213 * libgomp.h (struct splay_tree_key_s): Add dynamic_refcount member.
6214 (gomp_acc_remove_pointer): Update declaration.
6215 (gomp_acc_declare_allocate): Declare.
6216 (gomp_remove_var): Declare.
6217 * libgomp.map (OACC_2.5): Define.
6218 * oacc-mem.c (acc_map_data): Update refcount.
6219 (acc_unmap_data): Likewise.
6220 (present_create_copy): Likewise.
6221 (acc_create): Add FLAG_PRESENT when calling present_create_copy.
6222 (acc_copyin): Likewise.
6223 (FLAG_FINALIZE): Define.
6224 (delete_copyout): Update dynamic refcounts, add support for FINALIZE.
6225 (acc_delete_finalize): New function.
6226 (acc_delete_finalize_async): New function.
6227 (acc_copyout_finalize): New function.
6228 (acc_copyout_finalize_async): New function.
6229 (gomp_acc_insert_pointer): Update refcounts.
6230 (gomp_acc_remove_pointer): Return if data is not present on the
6231 accelerator.
6232 * oacc-parallel.c (find_pset): Rename to find_pointer.
6233 (find_pointer): Add support for GOMP_MAP_POINTER.
6234 (handle_ftn_pointers): New function.
6235 (GOACC_parallel_keyed): Update refcounts of variables.
6236 (GOACC_enter_exit_data): Add support for finalized data mappings.
6237 Add support for GOMP_MAP_{TO,ALLOC,RELESE,FROM}. Update handling
6238 of fortran arrays.
6239 (GOACC_update): Add support for GOMP_MAP_{ALWAYS_POINTER,TO,FROM}.
6240 (GOACC_declare): Add support for GOMP_MAP_RELEASE, remove support
6241 for GOMP_MAP_FORCE_FROM.
6242 * openacc.f90 (module openacc_internal): Add
6243 acc_copyout_finalize_{32_h,64_h,array_h,_l}, and
6244 acc_delete_finalize_{32_h,64_h,array_h,_l}. Add interfaces for
6245 acc_copyout_finalize and acc_delete_finalize.
6246 (acc_copyout_finalize_32_h): New subroutine.
6247 (acc_copyout_finalize_64_h): New subroutine.
6248 (acc_copyout_finalize_array_h): New subroutine.
6249 (acc_delete_finalize_32_h): New subroutine.
6250 (acc_delete_finalize_64_h): New subroutine.
6251 (acc_delete_finalize_array_h): New subroutine.
6252 * openacc.h (acc_copyout_finalize): Declare.
6253 (acc_copyout_finalize_async): Declare.
6254 (acc_delete_finalize): Declare.
6255 (acc_delete_finalize_async): Declare.
6256 * openacc_lib.h (acc_copyout_finalize): New interface.
6257 (acc_delete_finalize): New interface.
6258 * target.c (gomp_map_vars): Update dynamic_refcount.
6259 (gomp_remove_var): New function.
6260 (gomp_unmap_vars): Use it.
6261 (gomp_unload_image_from_device): Likewise.
6262 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Update test
6263 case to utilize OpenACC 2.5 data clause semantics.
6264 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
6265 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
6266 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
6267 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
6268 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
6269 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
6270 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
6271 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
6272 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
6273 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
6274 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
6275 * testsuite/libgomp.oacc-fortran/data-5.f90: New test.
6276 * testsuite/libgomp.oacc-fortran/data-already-1.f: Update test case to
6277 utilize OpenACC 2.5 data clause semantics.
6278 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
6279 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
6280 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
6281 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
6282 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
6283 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
6284 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
6285 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
6286 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
6287
4358400b
JW
62882018-05-21 Janus Weil <janus@gcc.gnu.org>
6289
6290 PR fortran/85841
6291 PR testsuite/85865
6292 * testsuite/libgomp.fortran/collapse2.f90: Add option "-std=legacy".
6293 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
6294 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
6295 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
6296 * testsuite/libgomp.fortran/task2.f90: Ditto.
6297 * testsuite/libgomp.fortran/vla1.f90: Ditto.
6298 * testsuite/libgomp.fortran/vla2.f90: Ditto.
6299 * testsuite/libgomp.fortran/vla3.f90: Ditto.
6300 * testsuite/libgomp.fortran/vla4.f90: Ditto.
6301 * testsuite/libgomp.fortran/vla5.f90: Ditto.
6302 * testsuite/libgomp.fortran/vla6.f90: Ditto.
6303 * testsuite/libgomp.fortran/vla8.f90: Ditto.
6304 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Ditto.
6305 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Ditto.
6306
950ad0ba
CP
63072018-05-18 Cesar Philippidis <cesar@codesourcery.com>
6308
6309 PR c++/85782
6310 * testsuite/libgomp.oacc-c-c++-common/pr85782.c: New test.
6311
f5ad16f1
TV
63122018-05-09 Tom de Vries <tom@codesourcery.com>
6313
6314 PR libgomp/82901
6315 * oacc-parallel.c (GOACC_declare): Use GOMP_ASYNC_SYNC as async argument
6316 to GOACC_enter_exit_data.
6317
edbd038a
TV
63182018-05-09 Tom de Vries <tom@codesourcery.com>
6319
6320 PR libgomp/83792
6321 * oacc-int.h (async_valid_stream_id_p, async_valid_p)
6322 (async_synchronous_p): New function.
6323 * oacc-async.c (acc_async_test, acc_wait, acc_wait_all_async): Use
6324 async_valid_p.
6325 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
6326 async_valid_stream_id_p.
6327 * oacc-mem.c (gomp_acc_remove_pointer): Use async_synchronous_p.
6328 * oacc-parallel.c (GOACC_parallel_keyed): Same.
6329
37d6c719
TV
63302018-05-07 Tom de Vries <tom@codesourcery.com>
6331
6332 PR testsuite/85677
6333 * testsuite/lib/libgomp.exp (libgomp_init): Move inclusion of top-level
6334 include directory in ALWAYS_CFLAGS out of $blddir != "" condition.
6335
63f12215
TV
63362018-05-03 Tom de Vries <tom@codesourcery.com>
6337
6338 PR testsuite/85106
6339 * testsuite/lib/libgomp-dg.exp (libgomp-dg-test): Add save-temps to
6340 extra_tool_flags if it contains an -foffload=-fdump-* flag.
6341 * testsuite/lib/libgomp.exp: Include scanoffloadtree.exp.
6342 * testsuite/libgomp.oacc-c/vec.c: Use scan-offload-tree-dump.
6343
ec00d3fa
TV
63442018-05-02 Tom de Vries <tom@codesourcery.com>
6345
6346 PR libgomp/85411
6347 * plugin/plugin-nvptx.c (nvptx_exec): Move parsing of
6348 GOMP_OPENACC_DIM ...
6349 * env.c (parse_gomp_openacc_dim): ... here. New function.
6350 (initialize_env): Call parse_gomp_openacc_dim.
6351 (goacc_default_dims): Define.
6352 * libgomp.h (goacc_default_dims): Declare.
6353 * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): New function.
6354 * oacc-plugin.h (GOMP_PLUGIN_acc_default_dim): Declare.
6355 * libgomp.map: New version "GOMP_PLUGIN_1.2". Add
6356 GOMP_PLUGIN_acc_default_dim.
6357 * testsuite/libgomp.oacc-c-c++-common/loop-default-runtime.c: New test.
6358 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: New test.
6359
92243e7c
TV
63602018-05-02 Tom de Vries <tom@codesourcery.com>
6361
6362 PR testsuite/83791
6363 * testsuite/libgomp.c++/udr-9.C: Update.
6364 * testsuite/libgomp.c++/atomic-16.C: Remove.
6365 * testsuite/libgomp.c++/cancel-taskgroup-2.C: Remove.
6366 * testsuite/libgomp.c++/loop-13.C: Remove.
6367 * testsuite/libgomp.c++/loop-14.C: Remove.
6368 * testsuite/libgomp.c++/loop-15.C: Remove.
6369 * testsuite/libgomp.c++/monotonic-1.C: Remove.
6370 * testsuite/libgomp.c++/monotonic-2.C: Remove.
6371 * testsuite/libgomp.c++/nonmonotonic-1.C: Remove.
6372 * testsuite/libgomp.c++/nonmonotonic-2.C: Remove.
6373 * testsuite/libgomp.c++/ordered-1.C: Remove.
6374 * testsuite/libgomp.c++/pr45784.C: Remove.
6375 * testsuite/libgomp.c++/pr64824.C: Remove.
6376 * testsuite/libgomp.c++/pr64868.C: Remove.
6377 * testsuite/libgomp.c++/pr66199-1.C: Remove.
6378 * testsuite/libgomp.c++/pr66199-2.C: Remove.
6379 * testsuite/libgomp.c++/pr66199-3.C: Remove.
6380 * testsuite/libgomp.c++/pr66199-4.C: Remove.
6381 * testsuite/libgomp.c++/pr66199-5.C: Remove.
6382 * testsuite/libgomp.c++/pr66199-6.C: Remove.
6383 * testsuite/libgomp.c++/pr66199-7.C: Remove.
6384 * testsuite/libgomp.c++/pr66199-8.C: Remove.
6385 * testsuite/libgomp.c++/pr66199-9.C: Remove.
6386 * testsuite/libgomp.c++/pr69389.C: Remove.
6387 * testsuite/libgomp.c++/simd10.C: Remove.
6388 * testsuite/libgomp.c++/simd11.C: Remove.
6389 * testsuite/libgomp.c++/simd12.C: Remove.
6390 * testsuite/libgomp.c++/simd13.C: Remove.
6391 * testsuite/libgomp.c++/target-1.C: Remove.
6392 * testsuite/libgomp.c++/target-3.C: Remove.
6393 * testsuite/libgomp.c++/target-4.C: Remove.
6394 * testsuite/libgomp.c++/target-5.C: Remove.
6395 * testsuite/libgomp.c++/taskgroup-1.C: Remove.
6396 * testsuite/libgomp.c++/taskloop-1.C: Remove.
6397 * testsuite/libgomp.c++/taskloop-2.C: Remove.
6398 * testsuite/libgomp.c++/taskloop-3.C: Remove.
6399 * testsuite/libgomp.c++/taskloop-4.C: Remove.
6400 * testsuite/libgomp.c++/udr-9.C: Remove.
6401 * testsuite/libgomp.c++/for-10.C: Remove.
6402 * testsuite/libgomp.c++/for-11.C: Remove.
6403 * testsuite/libgomp.c++/for-12.C: Remove.
6404 * testsuite/libgomp.c++/for-13.C: Remove.
6405 * testsuite/libgomp.c++/for-14.C: Remove.
6406 * testsuite/libgomp.c++/for-9.C: Remove.
6407 * testsuite/libgomp.c/atomic-18.c: Move ...
6408 * testsuite/libgomp.c-c++-common/atomic-18.c: ... here.
6409 * testsuite/libgomp.c/cancel-taskgroup-2.c: Move ...
6410 * testsuite/libgomp.c-c++-common/cancel-taskgroup-2.c: here.
6411 * testsuite/libgomp.c/loop-13.c: Move ...
6412 * testsuite/libgomp.c-c++-common/loop-13.c: ... here.
6413 * testsuite/libgomp.c/loop-14.c: Move ...
6414 * testsuite/libgomp.c-c++-common/loop-14.c: ... here.
6415 * testsuite/libgomp.c/loop-15.c: Remove.
6416 * testsuite/libgomp.c-c++-common/loop-15.c: New test.
6417 * testsuite/libgomp.c/monotonic-1.c: Move ...
6418 * testsuite/libgomp.c-c++-common/monotonic-1.c: ... here.
6419 * testsuite/libgomp.c/monotonic-2.c: Move ...
6420 * testsuite/libgomp.c-c++-common/monotonic-2.c: ... here.
6421 * testsuite/libgomp.c/nonmonotonic-1.c: Move ...
6422 * testsuite/libgomp.c-c++-common/nonmonotonic-1.c: ... here.
6423 * testsuite/libgomp.c/nonmonotonic-2.c: Move ...
6424 * testsuite/libgomp.c-c++-common/nonmonotonic-2.c: ... here.
6425 * testsuite/libgomp.c/ordered-4.c: Move ...
6426 * testsuite/libgomp.c-c++-common/ordered-4.c: ... here.
6427 * testsuite/libgomp.c/pr45784.c: Move ...
6428 * testsuite/libgomp.c-c++-common/pr45784.c: ... here.
6429 * testsuite/libgomp.c/pr64824.c: Move ...
6430 * testsuite/libgomp.c-c++-common/pr64824.c: ... here.
6431 * testsuite/libgomp.c/pr64868.c: Move ...
6432 * testsuite/libgomp.c-c++-common/pr64868.c: ... here.
6433 * testsuite/libgomp.c/pr66199-1.c: Move ...
6434 * testsuite/libgomp.c-c++-common/pr66199-1.c: ... here.
6435 * testsuite/libgomp.c/pr66199-2.c: Move ...
6436 * testsuite/libgomp.c-c++-common/pr66199-2.c: ... here.
6437 * testsuite/libgomp.c/pr66199-3.c: Move ...
6438 * testsuite/libgomp.c-c++-common/pr66199-3.c: ... here.
6439 * testsuite/libgomp.c/pr66199-4.c: Move ...
6440 * testsuite/libgomp.c-c++-common/pr66199-4.c: ... here.
6441 * testsuite/libgomp.c/pr66199-5.c: Move ...
6442 * testsuite/libgomp.c-c++-common/pr66199-5.c: ... here.
6443 * testsuite/libgomp.c/pr66199-6.c: Move ...
6444 * testsuite/libgomp.c-c++-common/pr66199-6.c: ... here.
6445 * testsuite/libgomp.c/pr66199-7.c: Move ...
6446 * testsuite/libgomp.c-c++-common/pr66199-7.c: ... here.
6447 * testsuite/libgomp.c/pr66199-8.c: Move ...
6448 * testsuite/libgomp.c-c++-common/pr66199-8.c: ... here.
6449 * testsuite/libgomp.c/pr66199-9.c: Move ...
6450 * testsuite/libgomp.c-c++-common/pr66199-9.c: ... here.
6451 * testsuite/libgomp.c/pr69389.c: Move ...
6452 * testsuite/libgomp.c-c++-common/pr69389.c: ... here.
6453 * testsuite/libgomp.c/simd-14.c: Move ...
6454 * testsuite/libgomp.c-c++-common/simd-14.c: ... here.
6455 * testsuite/libgomp.c/simd-15.c: Move ...
6456 * testsuite/libgomp.c-c++-common/simd-15.c: ... here.
6457 * testsuite/libgomp.c/simd-16.c: Move ...
6458 * testsuite/libgomp.c-c++-common/simd-16.c: ... here.
6459 * testsuite/libgomp.c/simd-17.c: Move ...
6460 * testsuite/libgomp.c-c++-common/simd-17.c: ... here.
6461 * testsuite/libgomp.c/target-1.c: Move ...
6462 * testsuite/libgomp.c-c++-common/target-1.c: ... here.
6463 * testsuite/libgomp.c/target-10.c: Move ...
6464 * testsuite/libgomp.c-c++-common/target-10.c: ... here.
6465 * testsuite/libgomp.c/target-13.c: Move ...
6466 * testsuite/libgomp.c-c++-common/target-13.c: ... here.
6467 * testsuite/libgomp.c/target-2.c: Move ...
6468 * testsuite/libgomp.c-c++-common/target-2.c: ... here.
6469 * testsuite/libgomp.c/taskgroup-1.c: Move ...
6470 * testsuite/libgomp.c-c++-common/taskgroup-1.c: ... here.
6471 * testsuite/libgomp.c/taskloop-1.c: Move ...
6472 * testsuite/libgomp.c-c++-common/taskloop-1.c: ... here.
6473 * testsuite/libgomp.c/taskloop-2.c: Move ...
6474 * testsuite/libgomp.c-c++-common/taskloop-2.c: ... here.
6475 * testsuite/libgomp.c/taskloop-3.c: Move ...
6476 * testsuite/libgomp.c-c++-common/taskloop-3.c: ... here.
6477 * testsuite/libgomp.c/taskloop-4.c: Move ...
6478 * testsuite/libgomp.c-c++-common/taskloop-4.c: ... here.
6479 * testsuite/libgomp.c/udr-1.c: Move ...
6480 * testsuite/libgomp.c-c++-common/udr-1.c: ... here.
6481 * testsuite/libgomp.c/for-1.c: Move ...
6482 * testsuite/libgomp.c-c++-common/for-1.c: ... here.
6483 * testsuite/libgomp.c/for-1.h: Move ...
6484 * testsuite/libgomp.c-c++-common/for-1.h: ... here.
6485 * testsuite/libgomp.c/for-2.c: Move ...
6486 * testsuite/libgomp.c-c++-common/for-2.c: ... here.
6487 * testsuite/libgomp.c/for-2.h: Move ...
6488 * testsuite/libgomp.c-c++-common/for-2.h: ... here.
6489 * testsuite/libgomp.c/for-3.c: Move ...
6490 * testsuite/libgomp.c-c++-common/for-3.c: ... here.
6491 * testsuite/libgomp.c/for-4.c: Move ...
6492 * testsuite/libgomp.c-c++-common/for-4.c: ... here.
6493 * testsuite/libgomp.c/for-5.c: Move ...
6494 * testsuite/libgomp.c-c++-common/for-5.c: ... here.
6495 * testsuite/libgomp.c/for-6.c: Move ...
6496 * testsuite/libgomp.c-c++-common/for-6.c: ... here.
6497
1f62d637
TV
64982018-05-02 Tom de Vries <tom@codesourcery.com>
6499
6500 PR libgomp/82428
6501 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Use
6502 __builtin_goacc_parlevel_{id,size}.
6503 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Same.
6504 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Same.
6505 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Same.
6506 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Same.
6507 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Same.
6508 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Same.
6509 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Same.
6510 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Same.
6511 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Same.
6512 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Same.
6513 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Same.
6514 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Same.
6515 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Same.
6516 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Same.
6517 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Same.
6518 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Same.
6519 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Same.
6520 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Same.
6521 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Same.
6522 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Same.
6523 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Same.
6524 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Same.
6525 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Same.
6526
9220b511
TV
65272018-05-02 Tom de Vries <tom@codesourcery.com>
6528
6529 PR testsuite/85106
6530 * testsuite/lib/libgomp.exp: Include scanltranstree.exp.
6531
6c3c13c1
TV
65322018-05-02 Tom de Vries <tom@codesourcery.com>
6533
6534 PR testsuite/85106
6535 * testsuite/lib/libgomp.exp: Include scanwpaipa.exp.
6536
8d70b61e
JB
65372018-04-29 Julian Brown <julian@codesourcery.com>
6538 Tom de Vries <tom@codesourcery.com>
6539
6540 PR testsuite/85527
6541 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: Allow
6542 arbitrary order for iterations of atomic subtract check.
6543
4a57a4b6
TV
65442018-04-28 Tom de Vries <tom@codesourcery.com>
6545
6546 PR testsuite/85527
6547 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Store
6548 atomic capture results obtained in parallel loop to an array, instead of
6549 to a scalar.
6550
df36a3d3
TV
65512018-04-26 Tom de Vries <tom@codesourcery.com>
6552
6553 PR libgomp/84020
6554 * plugin/cuda/cuda.h (CUjit_option): Add CU_JIT_OPTIMIZATION_LEVEL.
6555 * plugin/plugin-nvptx.c (_GNU_SOURCE): Define.
6556 (process_GOMP_NVPTX_JIT): New function.
6557 (link_ptx): Use process_GOMP_NVPTX_JIT.
6558
d160ae78
RB
65592018-04-26 Richard Biener <rguenther@suse.de>
6560 Tom de Vries <tom@codesourcery.com>
6561
6562 PR lto/85422
6563 * testsuite/libgomp.oacc-c-c++-common/pr85422.c: New test.
6564
ca9dc642
TV
65652018-04-26 Tom de Vries <tom@codesourcery.com>
6566
6567 PR target/85519
6568 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
6569 recursion depth from 25 to 23.
6570 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
6571
7b47ecf2
L
65722018-04-24 H.J. Lu <hongjiu.lu@intel.com>
6573
6574 * configure: Regenerated.
6575
e91eba31
NS
65762018-04-20 Nathan Sidwell <nathan@codesourcery.com>
6577 Tom de Vries <tom@codesourcery.com>
6578
6579 PR target/85445
6580 * testsuite/libgomp.oacc-c++/ref-1.C: New.
6581
6e0d40b6
TS
65822018-04-19 Thomas Schwinge <thomas@codesourcery.com>
6583
6584 PR libgomp/85463
6585 * testsuite/libgomp.oacc-fortran/error_stop-1.f: New file.
6586 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
6587 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
6588 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
6589 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
6590 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
6591
6592 PR libfortran/85166
6593 * testsuite/libgomp.oacc-fortran/abort-1.f90: Switch back to "call
6594 abort".
6595 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
6596
a0e1df88
JJ
65972018-04-19 Jakub Jelinek <jakub@redhat.com>
6598
6599 * configure: Regenerated.
6600
001ddaa8
DM
66012018-04-18 David Malcolm <dmalcolm@redhat.com>
6602
6603 PR jit/85384
6604 * configure: Regenerate.
6605
05e0af43
CP
66062018-04-16 Cesar Philippidis <cesar@codesourcery.com>
6607 Tom de Vries <tom@codesourcery.com>
6608
6609 PR middle-end/84955
6610 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
6611 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
6612
bc436e10
TK
66132018-04-12 Thomas Koenig <tkoenig@gcc.gnu.org>
6614
6615 PR fortran/83064
6616 PR testsuite/85346
6617 * testsuite/libgomp.fortran/do_concurrent_5.f90: Move modified
6618 test from gfortran.dg to here.
6619
ffb164c7
JJ
66202018-04-12 Cesar Philippidis <cesar@codesourcery.com>
6621
6622 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: Revert 259346.
6623 * testsuite/libgomp.oacc-fortran/pr84955.f90: Likewise.
6624
66252018-04-12 Cesar Philippidis <cesar@codesourcery.com>
6626
6627 PR middle-end/84955
6628 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
6629 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
6630
2ba16fd2
TV
66312018-04-05 Tom de Vries <tom@codesourcery.com>
6632
6633 PR target/85204
6634 * testsuite/libgomp.oacc-c-c++-common/broadcast-1.c: New test.
6635
46dbeb40
TV
66362018-03-26 Tom de Vries <tom@codesourcery.com>
6637
6638 PR tree-optimization/85063
6639 * testsuite/libgomp.c/switch-conversion-2.c: New test.
6640 * testsuite/libgomp.c/switch-conversion.c: New test.
6641 * testsuite/libgomp.oacc-c-c++-common/switch-conversion-2.c: New test.
6642 * testsuite/libgomp.oacc-c-c++-common/switch-conversion.c: New test.
6643
bfc24e32
TK
66442018-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
6645
6646 PR fortran/84381
6647 * testsuite/libgomp.fortran/aligned1.f03: Replace non-standard
6648 call abort by STOP n.
6649 * testsuite/libgomp.fortran/alloc-comp-1.f90: Likewise.
6650 * testsuite/libgomp.fortran/alloc-comp-2.f90: Likewise.
6651 * testsuite/libgomp.fortran/alloc-comp-3.f90: Likewise.
6652 * testsuite/libgomp.fortran/allocatable1.f90: Likewise.
6653 * testsuite/libgomp.fortran/allocatable10.f90: Likewise.
6654 * testsuite/libgomp.fortran/allocatable11.f90: Likewise.
6655 * testsuite/libgomp.fortran/allocatable12.f90: Likewise.
6656 * testsuite/libgomp.fortran/allocatable2.f90: Likewise.
6657 * testsuite/libgomp.fortran/allocatable3.f90: Likewise.
6658 * testsuite/libgomp.fortran/allocatable4.f90: Likewise.
6659 * testsuite/libgomp.fortran/allocatable5.f90: Likewise.
6660 * testsuite/libgomp.fortran/allocatable6.f90: Likewise.
6661 * testsuite/libgomp.fortran/allocatable7.f90: Likewise.
6662 * testsuite/libgomp.fortran/allocatable8.f90: Likewise.
6663 * testsuite/libgomp.fortran/allocatable9.f90: Likewise.
6664 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise.
6665 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Likewise.
6666 * testsuite/libgomp.fortran/associate1.f90: Likewise.
6667 * testsuite/libgomp.fortran/associate2.f90: Likewise.
6668 * testsuite/libgomp.fortran/associate3.f90: Likewise.
6669 * testsuite/libgomp.fortran/cancel-do-1.f90: Likewise.
6670 * testsuite/libgomp.fortran/cancel-do-2.f90: Likewise.
6671 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Likewise.
6672 * testsuite/libgomp.fortran/cancel-sections-1.f90: Likewise.
6673 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Likewise.
6674 * testsuite/libgomp.fortran/character1.f90: Likewise.
6675 * testsuite/libgomp.fortran/character2.f90: Likewise.
6676 * testsuite/libgomp.fortran/collapse1.f90: Likewise.
6677 * testsuite/libgomp.fortran/collapse2.f90: Likewise.
6678 * testsuite/libgomp.fortran/collapse3.f90: Likewise.
6679 * testsuite/libgomp.fortran/collapse4.f90: Likewise.
6680 * testsuite/libgomp.fortran/crayptr1.f90: Likewise.
6681 * testsuite/libgomp.fortran/crayptr2.f90: Likewise.
6682 * testsuite/libgomp.fortran/crayptr3.f90: Likewise.
6683 * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
6684 * testsuite/libgomp.fortran/declare-simd-3.f90: Likewise.
6685 * testsuite/libgomp.fortran/declare-target-2.f90: Likewise.
6686 * testsuite/libgomp.fortran/depend-1.f90: Likewise.
6687 * testsuite/libgomp.fortran/depend-2.f90: Likewise.
6688 * testsuite/libgomp.fortran/depend-3.f90: Likewise.
6689 * testsuite/libgomp.fortran/do1.f90: Likewise.
6690 * testsuite/libgomp.fortran/do2.f90: Likewise.
6691 * testsuite/libgomp.fortran/doacross1.f90: Likewise.
6692 * testsuite/libgomp.fortran/doacross2.f90: Likewise.
6693 * testsuite/libgomp.fortran/doacross3.f90: Likewise.
6694 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Likewise.
6695 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Likewise.
6696 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Likewise.
6697 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
6698 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Likewise.
6699 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Likewise.
6700 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Likewise.
6701 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Likewise.
6702 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Likewise.
6703 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
6704 * testsuite/libgomp.fortran/examples-4/device-2.f90: Likewise.
6705 * testsuite/libgomp.fortran/examples-4/device-3.f90: Likewise.
6706 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Likewise.
6707 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Likewise.
6708 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Likewise.
6709 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Likewise.
6710 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Likewise.
6711 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Likewise.
6712 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Likewise.
6713 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Likewise.
6714 * testsuite/libgomp.fortran/examples-4/target-1.f90: Likewise.
6715 * testsuite/libgomp.fortran/examples-4/target-2.f90: Likewise.
6716 * testsuite/libgomp.fortran/examples-4/target-3.f90: Likewise.
6717 * testsuite/libgomp.fortran/examples-4/target-4.f90: Likewise.
6718 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
6719 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Likewise.
6720 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Likewise.
6721 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Likewise.
6722 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Likewise.
6723 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Likewise.
6724 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
6725 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
6726 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Likewise.
6727 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Likewise.
6728 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Likewise.
6729 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Likewise.
6730 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Likewise.
6731 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Likewise.
6732 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Likewise.
6733 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Likewise.
6734 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Likewise.
6735 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
6736 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Likewise.
6737 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Likewise.
6738 * testsuite/libgomp.fortran/lastprivate1.f90: Likewise.
6739 * testsuite/libgomp.fortran/lastprivate2.f90: Likewise.
6740 * testsuite/libgomp.fortran/lib1.f90: Likewise.
6741 * testsuite/libgomp.fortran/lib2.f: Likewise.
6742 * testsuite/libgomp.fortran/lib3.f: Likewise.
6743 * testsuite/libgomp.fortran/lib4.f90: Likewise.
6744 * testsuite/libgomp.fortran/lock-1.f90: Likewise.
6745 * testsuite/libgomp.fortran/lock-2.f90: Likewise.
6746 * testsuite/libgomp.fortran/nested1.f90: Likewise.
6747 * testsuite/libgomp.fortran/nestedfn1.f90: Likewise.
6748 * testsuite/libgomp.fortran/nestedfn2.f90: Likewise.
6749 * testsuite/libgomp.fortran/nestedfn3.f90: Likewise.
6750 * testsuite/libgomp.fortran/nestedfn4.f90: Likewise.
6751 * testsuite/libgomp.fortran/nestedfn5.f90: Likewise.
6752 * testsuite/libgomp.fortran/omp_atomic1.f90: Likewise.
6753 * testsuite/libgomp.fortran/omp_atomic2.f90: Likewise.
6754 * testsuite/libgomp.fortran/omp_atomic3.f90: Likewise.
6755 * testsuite/libgomp.fortran/omp_atomic4.f90: Likewise.
6756 * testsuite/libgomp.fortran/omp_atomic5.f90: Likewise.
6757 * testsuite/libgomp.fortran/omp_cond1.f: Likewise.
6758 * testsuite/libgomp.fortran/omp_cond2.f: Likewise.
6759 * testsuite/libgomp.fortran/omp_cond3.F90: Likewise.
6760 * testsuite/libgomp.fortran/omp_cond4.F90: Likewise.
6761 * testsuite/libgomp.fortran/omp_parse1.f90: Likewise.
6762 * testsuite/libgomp.fortran/omp_parse2.f90: Likewise.
6763 * testsuite/libgomp.fortran/omp_parse3.f90: Likewise.
6764 * testsuite/libgomp.fortran/omp_parse4.f90: Likewise.
6765 * testsuite/libgomp.fortran/openmp_version-1.f: Likewise.
6766 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
6767 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Likewise.
6768 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Likewise.
6769 * testsuite/libgomp.fortran/pointer1.f90: Likewise.
6770 * testsuite/libgomp.fortran/pointer2.f90: Likewise.
6771 * testsuite/libgomp.fortran/pr25162.f: Likewise.
6772 * testsuite/libgomp.fortran/pr25219.f90: Likewise.
6773 * testsuite/libgomp.fortran/pr27395-1.f90: Likewise.
6774 * testsuite/libgomp.fortran/pr27395-2.f90: Likewise.
6775 * testsuite/libgomp.fortran/pr27416-1.f90: Likewise.
6776 * testsuite/libgomp.fortran/pr27916-1.f90: Likewise.
6777 * testsuite/libgomp.fortran/pr27916-2.f90: Likewise.
6778 * testsuite/libgomp.fortran/pr28390.f: Likewise.
6779 * testsuite/libgomp.fortran/pr29629.f90: Likewise.
6780 * testsuite/libgomp.fortran/pr32550.f90: Likewise.
6781 * testsuite/libgomp.fortran/pr33880.f90: Likewise.
6782 * testsuite/libgomp.fortran/pr34020.f90: Likewise.
6783 * testsuite/libgomp.fortran/pr35130.f90: Likewise.
6784 * testsuite/libgomp.fortran/pr42162.f90: Likewise.
6785 * testsuite/libgomp.fortran/pr46753.f90: Likewise.
6786 * testsuite/libgomp.fortran/pr48894.f90: Likewise.
6787 * testsuite/libgomp.fortran/pr49792-1.f90: Likewise.
6788 * testsuite/libgomp.fortran/pr49792-2.f90: Likewise.
6789 * testsuite/libgomp.fortran/pr63938-1.f90: Likewise.
6790 * testsuite/libgomp.fortran/pr63938-2.f90: Likewise.
6791 * testsuite/libgomp.fortran/pr65597.f90: Likewise.
6792 * testsuite/libgomp.fortran/pr66199-1.f90: Likewise.
6793 * testsuite/libgomp.fortran/pr71014.f90: Likewise.
6794 * testsuite/libgomp.fortran/pr81304.f90: Likewise.
6795 * testsuite/libgomp.fortran/pr81841.f90: Likewise.
6796 * testsuite/libgomp.fortran/pr84418-1.f90: Likewise.
6797 * testsuite/libgomp.fortran/pr84418-2.f90: Likewise.
6798 * testsuite/libgomp.fortran/procptr1.f90: Likewise.
6799 * testsuite/libgomp.fortran/recursion1.f90: Likewise.
6800 * testsuite/libgomp.fortran/reduction1.f90: Likewise.
6801 * testsuite/libgomp.fortran/reduction2.f90: Likewise.
6802 * testsuite/libgomp.fortran/reduction3.f90: Likewise.
6803 * testsuite/libgomp.fortran/reduction4.f90: Likewise.
6804 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
6805 * testsuite/libgomp.fortran/reduction6.f90: Likewise.
6806 * testsuite/libgomp.fortran/reference1.f90: Likewise.
6807 * testsuite/libgomp.fortran/reference2.f90: Likewise.
6808 * testsuite/libgomp.fortran/retval1.f90: Likewise.
6809 * testsuite/libgomp.fortran/retval2.f90: Likewise.
6810 * testsuite/libgomp.fortran/sharing1.f90: Likewise.
6811 * testsuite/libgomp.fortran/sharing2.f90: Likewise.
6812 * testsuite/libgomp.fortran/simd1.f90: Likewise.
6813 * testsuite/libgomp.fortran/simd2.f90: Likewise.
6814 * testsuite/libgomp.fortran/simd3.f90: Likewise.
6815 * testsuite/libgomp.fortran/simd4.f90: Likewise.
6816 * testsuite/libgomp.fortran/simd5.f90: Likewise.
6817 * testsuite/libgomp.fortran/simd6.f90: Likewise.
6818 * testsuite/libgomp.fortran/simd7.f90: Likewise.
6819 * testsuite/libgomp.fortran/stack.f90: Likewise.
6820 * testsuite/libgomp.fortran/strassen.f90: Likewise.
6821 * testsuite/libgomp.fortran/tabs1.f90: Likewise.
6822 * testsuite/libgomp.fortran/tabs2.f: Likewise.
6823 * testsuite/libgomp.fortran/target1.f90: Likewise.
6824 * testsuite/libgomp.fortran/target2.f90: Likewise.
6825 * testsuite/libgomp.fortran/target3.f90: Likewise.
6826 * testsuite/libgomp.fortran/target4.f90: Likewise.
6827 * testsuite/libgomp.fortran/target5.f90: Likewise.
6828 * testsuite/libgomp.fortran/target6.f90: Likewise.
6829 * testsuite/libgomp.fortran/target7.f90: Likewise.
6830 * testsuite/libgomp.fortran/target8.f90: Likewise.
6831 * testsuite/libgomp.fortran/task1.f90: Likewise.
6832 * testsuite/libgomp.fortran/task2.f90: Likewise.
6833 * testsuite/libgomp.fortran/task3.f90: Likewise.
6834 * testsuite/libgomp.fortran/task4.f90: Likewise.
6835 * testsuite/libgomp.fortran/taskgroup1.f90: Likewise.
6836 * testsuite/libgomp.fortran/taskloop1.f90: Likewise.
6837 * testsuite/libgomp.fortran/taskloop2.f90: Likewise.
6838 * testsuite/libgomp.fortran/taskloop3.f90: Likewise.
6839 * testsuite/libgomp.fortran/taskloop4.f90: Likewise.
6840 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
6841 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
6842 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
6843 * testsuite/libgomp.fortran/threadprivate4.f90: Likewise.
6844 * testsuite/libgomp.fortran/udr1.f90: Likewise.
6845 * testsuite/libgomp.fortran/udr10.f90: Likewise.
6846 * testsuite/libgomp.fortran/udr11.f90: Likewise.
6847 * testsuite/libgomp.fortran/udr12.f90: Likewise.
6848 * testsuite/libgomp.fortran/udr13.f90: Likewise.
6849 * testsuite/libgomp.fortran/udr14.f90: Likewise.
6850 * testsuite/libgomp.fortran/udr15.f90: Likewise.
6851 * testsuite/libgomp.fortran/udr2.f90: Likewise.
6852 * testsuite/libgomp.fortran/udr3.f90: Likewise.
6853 * testsuite/libgomp.fortran/udr4.f90: Likewise.
6854 * testsuite/libgomp.fortran/udr5.f90: Likewise.
6855 * testsuite/libgomp.fortran/udr6.f90: Likewise.
6856 * testsuite/libgomp.fortran/udr7.f90: Likewise.
6857 * testsuite/libgomp.fortran/udr8.f90: Likewise.
6858 * testsuite/libgomp.fortran/udr9.f90: Likewise.
6859 * testsuite/libgomp.fortran/vla1.f90: Likewise.
6860 * testsuite/libgomp.fortran/vla2.f90: Likewise.
6861 * testsuite/libgomp.fortran/vla3.f90: Likewise.
6862 * testsuite/libgomp.fortran/vla4.f90: Likewise.
6863 * testsuite/libgomp.fortran/vla5.f90: Likewise.
6864 * testsuite/libgomp.fortran/vla6.f90: Likewise.
6865 * testsuite/libgomp.fortran/vla7.f90: Likewise.
6866 * testsuite/libgomp.fortran/vla8.f90: Likewise.
6867 * testsuite/libgomp.fortran/workshare1.f90: Likewise.
6868 * testsuite/libgomp.fortran/workshare2.f90: Likewise.
6869 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
6870 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
6871 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
6872 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
6873 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
6874 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
6875 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
6876 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
6877 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
6878 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: Likewise.
6879 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
6880 * testsuite/libgomp.oacc-fortran/c2.pl: Likewise.
6881 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
6882 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
6883 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
6884 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
6885 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
6886 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
6887 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
6888 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
6889 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
6890 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90: Likewise.
6891 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: Likewise.
6892 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
6893 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
6894 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
6895 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
6896 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
6897 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
6898 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
6899 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
6900 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
6901 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
6902 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
6903 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
6904 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
6905 * testsuite/libgomp.oacc-fortran/host_data-1.f90: Likewise.
6906 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
6907 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90: Likewise.
6908 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
6909 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Likewise.
6910 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95: Likewise.
6911 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Likewise.
6912 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Likewise.
6913 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
6914 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
6915 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
6916 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
6917 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
6918 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
6919 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
6920 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
6921 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
6922 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
6923 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
6924 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
6925 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
6926 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
6927 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Likewise.
6928 * testsuite/libgomp.oacc-fortran/nested-function-2.f90: Likewise.
6929 * testsuite/libgomp.oacc-fortran/nested-function-3.f90: Likewise.
6930 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
6931 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
6932 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
6933 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
6934 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
6935 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
6936 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
6937 * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
6938 * testsuite/libgomp.oacc-fortran/pr81352.f90: Likewise.
6939 * testsuite/libgomp.oacc-fortran/pr83920.f90: Likewise.
6940 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
6941 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
6942 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
6943 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
6944 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
6945 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
6946 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
6947 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
6948 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
6949 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
6950 * testsuite/libgomp.oacc-fortran/reduction-8.f90: Likewise.
6951 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
6952 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
6953 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
6954 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
6955 * testsuite/libgomp.oacc-fortran/routine-5.f90: Likewise.
6956 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
6957 * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
6958 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
6959 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
6960 * testsuite/libgomp.oacc-fortran/update-1.f90: Likewise.
6961
79cf14ae
RB
69622018-03-20 Richard Biener <rguenther@suse.de>
6963
6964 * testsuite/libgomp.graphite/force-parallel-4.c: XFAIL one
6965 parallelizable loop.
6966
14e335ed
IT
69672018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
6968
6969 PR target/84148
6970 * configure: Regenerate.
6971
83d9be55
JJ
69722018-02-16 Jakub Jelinek <jakub@redhat.com>
6973
6974 PR fortran/84418
6975 * libgomp.fortran/pr84418-1.f90: New test.
6976 * libgomp.fortran/pr84418-2.f90: New test.
6977
d1fe6124
JJ
69782018-02-14 Jakub Jelinek <jakub@redhat.com>
6979
6980 PR fortran/84313
6981 * testsuite/libgomp.fortran/threadprivate4.f90: Add
6982 -std=f2003 -fall-intrinsics into dg-additional-options.
6983
3d224921
MJ
69842018-02-08 Martin Jambor <mjambor@suse.cz>
6985
6986 * testsuite/libgomp.hsa.c/pr82416.c: Make the function with target
6987 clonable.
6988
c7c30edd
MJ
69892018-02-08 Martin Jambor <mjambor@suse.cz>
6990
6991 * testsuite/libgomp.hsa.c/staticvar.c: New test.
6992
f320fdfd
RO
69932018-02-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
6994
6995 * testsuite/libgomp.oacc-c-c++-common/pr84217.c (abort)
6996 [__cplusplus]: Declare extern "C".
6997
c31bc4ac
TV
69982018-02-07 Tom de Vries <tom@codesourcery.com>
6999
7000 PR libgomp/84217
7001 * testsuite/libgomp.oacc-c-c++-common/pr84217.c: New test.
7002
99ae7ce5
CS
70032018-01-29 Christoph Spiel <cspiel@freenet.de>
7004 Jakub Jelinek <jakub@redhat.com>
7005
7006 PR libgomp/84096
7007 * omp.h.in (omp_init_nest_lock_with_hint): Use omp_nest_lock_t
7008 instead of omp_lock_t.
7009
e77a1236
TV
70102018-01-25 Tom de Vries <tom@codesourcery.com>
7011
7012 PR target/84028
7013 * testsuite/libgomp.oacc-fortran/pr84028.f90: New test.
7014
3dede32b
TV
70152018-01-24 Tom de Vries <tom@codesourcery.com>
7016
7017 PR target/83589
7018 * testsuite/libgomp.oacc-c-c++-common/pr83589.c: New test.
7019
be606483
TV
70202018-01-24 Tom de Vries <tom@codesourcery.com>
7021
7022 PR target/81352
7023 * testsuite/libgomp.oacc-fortran/pr81352.f90: New test.
7024
8c8e9a6b
TV
70252018-01-19 Tom de Vries <tom@codesourcery.com>
7026 Cesar Philippidis <cesar@codesourcery.com>
7027
7028 PR target/83920
7029 * testsuite/libgomp.oacc-c-c++-common/pr83920.c: New test.
7030 * testsuite/libgomp.oacc-fortran/pr83920.f90: New test.
7031
65e6aea3
JJ
70322018-01-03 Jakub Jelinek <jakub@redhat.com>
7033
85ec4feb
JJ
7034 Update copyright years.
7035
65e6aea3
JJ
7036 * libgomp.texi: Bump @copying's copyright year.
7037
60bf575c
TV
70382017-12-30 Tom de Vries <tom@codesourcery.com>
7039
7040 PR libgomp/83046
7041 * testsuite/libgomp.oacc-c-c++-common/pr83046.c: New test.
7042 * testsuite/libgomp.c-c++-common/pr83046.c: New test.
7043
7ec16b79
TV
70442017-12-27 Tom de Vries <tom@codesourcery.com>
7045
7046 PR c++/83046
7047 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c (test_static)
7048 (test_nonstatic): Fix return type to workaround PR83046.
7049
ac550b9a
JJ
70502017-12-05 Jakub Jelinek <jakub@redhat.com>
7051
7052 PR testsuite/83281
7053 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c (main): Use
7054 j suffix instead of i.
7055 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c (main):
7056 Likewise.
7057
ebdc83f0
CP
70582017-12-01 Cesar Philippidis <cesar@codesourcery.com>
7059
7060 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Add missing
7061 call to acc_wait (1).
7062
3b3e6283
JJ
70632017-11-24 Jakub Jelinek <jakub@redhat.com>
7064
7065 PR fortran/81304
7066 * testsuite/libgomp.fortran/pr81304.f90: New test.
7067
3b575376
JJ
70682017-11-23 Jakub Jelinek <jakub@redhat.com>
7069
7070 PR fortran/81841
7071 * libgomp.fortran/pr81841.f90: New test.
7072
b13547d8
JJ
70732017-11-22 Jakub Jelinek <jakub@redhat.com>
7074
7075 PR libgomp/83106
7076 * target.c (gomp_target_init): Compute lengths just once and
7077 use them in both malloc size and subsequent copying.
7078
efe33ced
IT
70792017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
7080
7081 * configure.ac: Set CET_FLAGS, update XCFLAGS and FCFLAGS.
7082 * acinclude.m4: Add cet.m4.
7083 * configure: Regenerate.
7084 * Makefile.in: Likewise.
7085 * testsuite/Makefile.in: Likewise.
7086
a7cf2612
TV
70872017-11-15 Tom de Vries <tom@codesourcery.com>
7088
7089 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: New test, copied
7090 from asyncwait-1.f90. Rewrite into C. Rewrite from float to int.
7091 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: New test, copied
7092 from asyncwait-2.f90. Rewrite into C. Rewrite from float to int.
7093 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: New test, copied
7094 from asyncwait-3.f90. Rewrite into C. Rewrite from float to int.
7095
dde76623
TV
70962017-11-14 Tom de Vries <tom@codesourcery.com>
7097
7098 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Allow to run for
7099 non-nvidia devices.
7100
4dbeb716
JJ
71012017-11-07 Jakub Jelinek <jakub@redhat.com>
7102
7103 PR c++/82835
7104 * testsuite/libgomp.c++/pr82835.C: New test.
7105
454f8b2b
ML
71062017-11-06 Martin Liska <mliska@suse.cz>
7107
7108 * testsuite/libgomp.c++/loop-2.C: Return a value
7109 for functions with non-void return type, or change type to void,
7110 or add -Wno-return-type for test.
7111 * testsuite/libgomp.c++/loop-4.C: Likewise.
7112 * testsuite/libgomp.c++/parallel-1.C: Likewise.
7113 * testsuite/libgomp.c++/shared-1.C: Likewise.
7114 * testsuite/libgomp.c++/single-1.C: Likewise.
7115 * testsuite/libgomp.c++/single-2.C: Likewise.
7116
12e9c8ce
TV
71172017-10-31 Tom de Vries <tom@codesourcery.com>
7118
7119 * plugin/plugin-hsa.c (HSA_LOG): Remove semicolon after
7120 "do {} while (false)".
7121 (init_single_kernel, GOMP_OFFLOAD_async_run): Add missing semicolon
7122 after HSA_DEBUG call.
7123
7324369a
JJ
71242017-10-28 Jakub Jelinek <jakub@redhat.com>
7125
7126 * target.c (struct gomp_coalesce_buf): New type.
7127 (MAX_COALESCE_BUF_SIZE, MAX_COALESCE_BUF_GAP): Define.
7128 (gomp_coalesce_buf_add, gomp_to_device_kind_p): New functions.
7129 (gomp_copy_host2dev): Add CBUF argument, if copying into
7130 the cached ranges, memcpy into buffer instead of copying
7131 into device.
7132 (gomp_map_vars_existing, gomp_map_pointer, gomp_map_fields_existing):
7133 Add CBUF argument, pass it through to other calls.
7134 (gomp_map_vars): Aggregate copies from host to device if small enough
7135 and with small enough gaps in between into memcpy into a buffer and
7136 fewer host to device copies from the buffer.
7137 (gomp_update): Adjust gomp_copy_host2dev caller.
7138
933ab0e6
TS
71392017-10-17 Thomas Schwinge <thomas@codesourcery.com>
7140
7141 * testsuite/libgomp.oacc-fortran/declare-1.f90: Restore "dg-do
7142 run" directive.
7143 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
7144 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
7145 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
7146 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
7147
92d5d01a
TV
71482017-10-16 Tom de Vries <tom@codesourcery.com>
7149
7150 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Don't require
7151 openacc_nvidia_accel_selected.
7152 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Same.
7153 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Same.
7154 * testsuite/libgomp.oacc-fortran/declare-2.f90: Same.
7155 * testsuite/libgomp.oacc-fortran/declare-4.f90: Same
7156 * testsuite/libgomp.oacc-fortran/declare-5.f90: Same.
7157 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Don't require
7158 openacc_nvidia_accel_selected. Skip for shared memory device.
7159 * testsuite/libgomp.oacc-fortran/declare-1.f90: Same.
7160 * testsuite/libgomp.oacc-fortran/declare-3.f90: Same.
7161
191411e4
MJ
71622017-10-09 Martin Jambor <mjambor@suse.cz>
7163
7164 PR hsa/82416
7165 * testsuite/libgomp.hsa.c/pr82416.c: New test.
7166
e923330e
TV
71672017-10-07 Tom de Vries <tom@codesourcery.com>
7168
7169 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90 (firstprivate):
7170 Remove acc_device_nvidia references.
7171 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90 (reduction):
7172 Same.
7173
8fe3ed4c
TV
71742017-10-05 Tom de Vries <tom@codesourcery.com>
7175
7176 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c (main): Remove
7177 vector_length(32) clause from acc parallel directive.
7178 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c (main): Same.
7179
26596ee5
TV
71802017-10-04 Tom de Vries <tom@codesourcery.com>
7181
7182 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c
7183 (main): Reduce sum of arr elements. Assert that hres is exactly
7184 representable in 32-bit floating point.
7185 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c
7186 (main): Reduce sum of arr elements. Assert that hres and hmres are
7187 exactly representable in 32-bit floating point.
7188 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c (gwv_np_4): Same.
7189
5c561fa9
TV
71902017-09-28 Tom de Vries <tom@codesourcery.com>
7191
7192 * testsuite/libgomp.c++/for-12.C: Remove superfluous -fopenmp option
7193 setting.
7194 * testsuite/libgomp.c++/pr69393.C: Same.
7195 * testsuite/libgomp.c++/taskloop-1.C: Same.
7196 * testsuite/libgomp.c++/taskloop-3.C: Same.
7197 * testsuite/libgomp.c++/taskloop-4.C: Same.
7198 * testsuite/libgomp.c/for-4.c: Same.
7199 * testsuite/libgomp.c/pr66199-3.c: Same.
7200 * testsuite/libgomp.c/pr66199-4.c: Same.
7201 * testsuite/libgomp.c/pr66199-6.c: Same.
7202 * testsuite/libgomp.c/taskloop-1.c: Same.
7203 * testsuite/libgomp.c/taskloop-3.c: Same.
7204 * testsuite/libgomp.c/taskloop-4.c: Same.
7205 * testsuite/libgomp.fortran/aligned1.f03: Same.
7206 * testsuite/libgomp.fortran/condinc1.f: Same.
7207 * testsuite/libgomp.fortran/condinc3.f90: Same.
7208 * testsuite/libgomp.fortran/crayptr1.f90: Same.
7209 * testsuite/libgomp.fortran/crayptr2.f90: Same.
7210 * testsuite/libgomp.fortran/crayptr3.f90: Same.
7211 * testsuite/libgomp.fortran/omp_cond1.f: Same.
7212 * testsuite/libgomp.fortran/omp_cond3.F90: Same.
7213 * testsuite/libgomp.fortran/pr66199-1.f90: Same.
7214 * testsuite/libgomp.fortran/pr66199-2.f90: Same.
7215 * testsuite/libgomp.fortran/recursion1.f90: Same.
7216 * testsuite/libgomp.fortran/target2.f90: Same.
7217 * testsuite/libgomp.fortran/target5.f90: Same.
7218 * testsuite/libgomp.fortran/task3.f90: Same.
7219
7d6206fe
TV
72202017-09-28 Tom de Vries <tom@codesourcery.com>
7221
7222 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c (main): Remove
7223 vector_length(32) clause from acc parallel directive.
7224 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c (main): Same.
7225
84c8627c
TV
72262017-09-27 Tom de Vries <tom@codesourcery.com>
7227
7228 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c (main):
7229 Remove acc_device_nvidia references.
7230
ebc6a85e
TV
72312017-09-16 Tom de Vries <tom@codesourcery.com>
7232
7233 PR c/81875
7234 * testsuite/libgomp.c-c++-common/pr81875.c: New test.
7235
82419efb
TV
72362017-09-14 Tom de Vries <tom@codesourcery.com>
7237
7238 * testsuite/libgomp.c++/cancel-taskgroup-1.C: Remove.
7239 * testsuite/libgomp.c/cancel-taskgroup-1.c: Move to ...
7240 * testsuite/libgomp.c-c++-common/cancel-taskgroup-1.c: ... here.
7241 * testsuite/libgomp.c/c.exp: Include test-cases from
7242 libgomp.c-c++-common.
7243 * testsuite/libgomp.c++/c++.exp: Same. Force c++-mode compilation of .c
7244 files.
7245
8b586510
JJ
72462017-09-14 Jakub Jelinek <jakub@redhat.com>
7247
7248 PR c++/81314
7249 * testsuite/libgomp.c++/pr81314.C: New test.
7250
9651fbaf
GP
72512017-09-03 Gerald Pfeifer <gerald@pfeifer.com>
7252
7253 * libgomp.texi (Top): www.openacc.org now uses https.
7254 (Enabling OpenACC): Ditto.
7255 (acc_get_num_devices): Ditto.
7256 (acc_set_device_type): Ditto.
7257 (acc_get_device_type): Ditto.
7258 (acc_set_device_num): Ditto.
7259 (acc_get_device_num): Ditto.
7260 (acc_async_test): Ditto.
7261 (acc_async_test_all): Ditto.
7262 (acc_wait): Ditto.
7263 (acc_wait_all): Ditto.
7264 (acc_wait_all_async): Ditto.
7265 (acc_wait_async): Ditto.
7266 (acc_init): Ditto.
7267 (acc_shutdown): Ditto.
7268 (acc_on_device): Ditto.
7269 (acc_malloc): Ditto.
7270 (acc_free): Ditto.
7271 (acc_copyin): Ditto.
7272 (acc_present_or_copyin): Ditto.
7273 (acc_create): Ditto.
7274 (acc_present_or_create): Ditto.
7275 (acc_copyout): Ditto.
7276 (acc_delete): Ditto.
7277 (acc_update_device): Ditto.
7278 (acc_update_self): Ditto.
7279 (acc_map_data): Ditto.
7280 (acc_unmap_data): Ditto.
7281 (acc_deviceptr): Ditto.
7282 (acc_hostptr): Ditto.
7283 (acc_is_present): Ditto.
7284 (acc_memcpy_to_device): Ditto.
7285 (acc_memcpy_from_device): Ditto.
7286 (acc_get_current_cuda_device): Ditto.
7287 (acc_get_current_cuda_context): Ditto.
7288 (acc_get_cuda_stream): Ditto.
7289 (acc_set_cuda_stream): Ditto.
7290 (ACC_DEVICE_TYPE): Ditto.
7291 (ACC_DEVICE_NUM): Ditto.
7292 (OpenACC Library Interoperability): Ditto.
7293
50aa16c3
JJ
72942017-08-09 Jakub Jelinek <jakub@redhat.com>
7295
7296 PR c/81687
7297 * testsuite/libgomp.c/pr81687-1.c: New test.
7298 * testsuite/libgomp.c/pr81687-2.c: New test.
7299
56b5041c
JJ
73002017-08-07 Jakub Jelinek <jakub@redhat.com>
7301
7302 PR c/69389
7303 * testsuite/libgomp.c/pr69389.c: New test.
7304 * testsuite/libgomp.c++/pr69389.C: New test.
7305
f4c222c0
TV
73062017-08-07 Tom de Vries <tom@codesourcery.com>
7307
7308 PR middle-end/78266
7309 * testsuite/libgomp.oacc-c-c++-common/vprop-2.c: New test.
7310 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove xfail.
7311
a40ff0ae
JJ
73122017-07-27 Jakub Jelinek <jakub@redhat.com>
7313
7314 PR c/45784
7315 * testsuite/libgomp.c/pr45784.c: New test.
7316 * testsuite/libgomp.c++/pr45784.C: New test.
7317
3717fbe3
TV
73182017-07-19 Tom de Vries <tom@codesourcery.com>
7319
7320 * testsuite/libgomp.oacc-c/vec.c: New test.
7321
9607b014
TV
73222017-07-03 Tom de Vries <tom@codesourcery.com>
7323
7324 * plugin/plugin-hsa.c: Fix secure_getenv.h include.
7325
dfb15f6b
TV
73262017-06-27 Tom de Vries <tom@codesourcery.com>
7327
7328 * plugin/plugin-nvptx.c (notify_var): New function.
7329 (nvptx_exec): Use notify_var for GOMP_OPENACC_DIM.
7330
22f1a037
TV
73312017-06-27 Tom de Vries <tom@codesourcery.com>
7332
7333 * env.c (parse_unsigned_long_1): Factor out of ...
7334 (parse_unsigned_long): ... here.
7335 (parse_int_1): Factor out of ...
7336 (parse_int): ... here.
7337 (parse_int_secure): New function.
7338 (initialize_env): Use parse_int_secure for GOMP_DEBUG.
7339 * secure_getenv.h: Factor out of ...
7340 * plugin/plugin-hsa.c: ... here.
7341 * testsuite/libgomp.oacc-c-c++-common/gomp-debug-env.c: New test.
7342
d54d1fc3
JJ
73432017-06-21 Jakub Jelinek <jakub@redhat.com>
7344
7345 PR c++/81130
7346 * testsuite/libgomp.c++/pr81130.C: New test.
7347
4f4b0ab8
RO
73482017-06-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
7349
7350 * testsuite/libgomp.fortran/strassen.f90: Remove dg-skip-if
7351 default args.
7352 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove
7353 dg-xfail-run-if default args.
7354
40ffd95f
BE
73552017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
7356
7357 * testsuite/libgomp.c/pr39591-2.c: Fix test case.
7358 * testsuite/libgomp.c/pr39591-3.c: Likewise.
7359
01275e1e
JJ
73602017-05-30 Jakub Jelinek <jakub@redhat.com>
7361
7362 PR libgomp/80822
7363 * config/linux/affinity.c (gomp_affinity_init_level_1): New function.
7364 (gomp_affinity_init_level): Use it. Always analyze the core and thread
7365 sibling lists, depending on level just pick up what CPUs to put
7366 together into a place vs. whether add multiple ordered places.
7367
78672bd8
TS
73682017-05-24 Thomas Schwinge <thomas@codesourcery.com>
7369
7ce64403
TS
7370 * openacc.h (acc_async_wait, acc_async_wait_all): New prototypes.
7371 * libgomp.map (OACC_2.0.1): Add these.
7372 * oacc-async.c (acc_async_wait, acc_async_wait_all): New aliases
7373 for "acc_wait", and "acc_wait_all", respectively.
7374 * openacc.f90 (acc_async_wait, acc_async_wait_all): New interfaces
7375 for "acc_wait", and "acc_wait_all", respectively.
7376 * openacc_lib.h (acc_async_wait, acc_async_wait_all): Likewise.
7377 * libgomp.texi (acc_wait, acc_wait_all): Update.
7378 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Update.
7379 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: New file.
7380 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
7381
318686c2
TS
7382 * openacc_lib.h (acc_pcopyin, acc_pcreate): Route to
7383 acc_present_or_copyin and acc_present_or_create procedures,
7384 respectively.
7385 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Exercise these, and
7386 generally different variants of OpenACC Runtime Library functions.
7387 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
7388
a6745534
TS
7389 * testsuite/libgomp.oacc-fortran/lib-32-1.f: New file.
7390 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
7391
9b94fbc7
TS
7392 * openacc.h (acc_pcopyin, acc_pcreate): Provide prototypes instead
7393 of preprocessor definitions.
7394 * libgomp.h (strong_alias): Guard by "#ifdef
7395 HAVE_ATTRIBUTE_ALIAS".
7396 * oacc-mem.c: Provide "acc_pcreate" as alias for
7397 "acc_present_or_create", and "acc_pcopyin" as alias for
7398 "acc_present_or_copyin".
7399 * libgomp.map: New version "OACC_2.0.1".
7400 (OACC_2.0.1): Add "acc_pcopyin", and "acc_pcreate".
7401 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Remove, merging
7402 its content into...
7403 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: ... this file.
7404 Extend testing.
7405
78672bd8
TS
7406 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Debugging output
7407 when disabling nvptx offloading.
7408
0c36d0d5
TS
74092017-05-23 Thomas Schwinge <thomas@codesourcery.com>
7410
fd71a9a2
TS
7411 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Update.
7412 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
7413 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
7414
0c36d0d5
TS
7415 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Rewrite.
7416 * testsuite/lib/libgomp.exp
7417 (check_effective_target_openacc_nvidia_accel_configured): New
7418 proc.
7419 * testsuite/libgomp.oacc-c++/c++.exp (check_effective_target_c)
7420 (check_effective_target_c++): New procs.
7421 * testsuite/libgomp.oacc-c/c.exp (check_effective_target_c)
7422 (check_effective_target_c++): Likewise.
7423
c24783c4
JJ
74242017-05-22 Jakub Jelinek <jakub@redhat.com>
7425
655e5265
JJ
7426 PR middle-end/80809
7427 * testsuite/libgomp.c/pr80809-2.c: New test.
7428 * testsuite/libgomp.c/pr80809-3.c: New test.
7429
e9e2ef9f
JJ
7430 PR middle-end/80809
7431 * testsuite/libgomp.c/pr80809-1.c: New test.
7432
c24783c4
JJ
7433 PR middle-end/80853
7434 * testsuite/libgomp.c/pr80853.c: New test.
7435
0da2f96a
TS
74362017-05-19 Thomas Schwinge <thomas@codesourcery.com>
7437
7fd549d2
TS
7438 * testsuite/libgomp.oacc-c++/template-reduction.C: Update.
7439 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Update.
7440 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
7441 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
7442 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
7443
0da2f96a
TS
7444 * plugin/plugin-hsa.c (DLSYM_FN, init_hsa_runtime_functions):
7445 Debug output for failure.
7446
62ffe920
RO
74472017-05-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
7448
7449 * testsuite/lib/libgomp.exp: Load scanlang.exp.
7450
f49215b1
JJ
74512017-04-27 Jakub Jelinek <jakub@redhat.com>
7452
7453 PR bootstrap/80531
7454 * configure.tgt (*-*-aix*): Add -frandom-seed=$@ to XCFLAGS to avoid
7455 bootstrap compare failures.
7456
2260d19d
AM
74572017-04-20 Alexander Monakov <amonakov@ispras.ru>
7458
7459 * testsuite/libgomp.c/target-36.c: New testcase.
7460
19929ba9
JJ
74612017-04-13 Jakub Jelinek <jakub@redhat.com>
7462
7463 * plugin/plugin-nvptx.c (cuda_lib_inited): Use signed char type
7464 instead of char.
7465
fbc698e0
JJ
74662017-04-11 Jakub Jelinek <jakub@redhat.com>
7467
7468 PR libgomp/80394
7469 * testsuite/libgomp.c/pr80394.c: New test.
7470
c4060df4
JJ
74712017-04-04 Jakub Jelinek <jakub@redhat.com>
7472
7473 PR libgomp/79876
7474 * config/posix/thread-stacksize.h: New file.
7475 * config/darwin/thread-stacksize.h: New file.
7476 * config/nvptx/thread-stacksize.h: New file.
7477 * env.c: Include thread-stacksize.h.
7478 (initialize_env): Initialize stacksize to GOMP_DEFAULT_STACKSIZE
7479 instead of 0. Call pthread_attr_setstacksize even if
7480 GOMP_DEFAULT_STACKSIZE is non-zero.
7481
e02d868a
JJ
74822017-03-30 Jakub Jelinek <jakub@redhat.com>
7483
7484 * env.c (initialize_env): Initialize stacksize to 0.
7485
7ba8651e
CP
74862017-03-22 Cesar Philippidis <cesar@codesourcery.com>
7487
7488 PR c++/80029
7489 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: New test.
7490
eebc5e2d
JJ
74912017-03-08 Jakub Jelinek <jakub@redhat.com>
7492
7493 PR c/79940
7494 * testsuite/libgomp.c/pr79940.c: New test.
7495
1eb08f52
RO
74962017-02-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
7497
7498 * testsuite/libgomp.c/pr48591.c: Enable on all __float128
7499 targets.
7500 Add __float128 options.
7501
b0f78ff3
JDA
75022017-02-11 John David Anglin <danglin@gcc.gnu.org>
7503
7504 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Remove
7505 hppa*-*-* dg-skip-if directive.
7506
1bbe0d8f
JJ
75072017-02-09 Jakub Jelinek <jakub@redhat.com>
7508
7509 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Move
7510 dg-skip-if directive into a comment.
7511
02889d23
CLT
75122017-02-09 Nathan Sidwell <nathan@codesourcery.com>
7513 Chung-Lin Tang <cltang@codesourcery.com>
7514
7515 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: New.
7516 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust and
7517 add additional case.
7518 * testsuite/libgomp.oacc-c-c++-common/vprop.c: XFAIL under
7519 "openacc_nvidia_accel_selected".
7520 * libgomp.oacc-fortran/nested-function-1.f90 (test2):
7521 Add num_workers(8) clause.
7522
5896a41d
JDA
75232017-02-08 John David Anglin <danglin@gcc.gnu.org>
7524
7525 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Skip on
7526 hppa*-*-*.
7527 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Don't
7528 include complex.h on hppa*-*-hpux*.
7529 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
7530
345a8c17
TS
75312017-02-02 Thomas Schwinge <thomas@codesourcery.com>
7532
e70ab10d
TS
7533 * plugin/plugin-nvptx.c (nvptx_exec): Make it static.
7534
345a8c17
TS
7535 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_parallel): Rename to
7536 GOMP_OFFLOAD_openacc_exec. Adjust all users.
7537 (GOMP_OFFLOAD_openacc_get_current_cuda_device): Rename to
7538 GOMP_OFFLOAD_openacc_cuda_get_current_device. Adjust all users.
7539 (GOMP_OFFLOAD_openacc_get_current_cuda_context): Rename to
7540 GOMP_OFFLOAD_openacc_cuda_get_current_context. Adjust all users.
7541 (GOMP_OFFLOAD_openacc_get_cuda_stream): Rename to
7542 GOMP_OFFLOAD_openacc_cuda_get_stream. Adjust all users.
7543 (GOMP_OFFLOAD_openacc_set_cuda_stream): Rename to
7544 GOMP_OFFLOAD_openacc_cuda_set_stream. Adjust all users.
7545
dced339c
TS
75462017-01-31 Thomas Schwinge <thomas@codesourcery.com>
7547
7548 * libgomp-plugin.h: #include <stdbool.h>.
7549 (GOMP_OFFLOAD_get_name, GOMP_OFFLOAD_get_caps)
7550 (GOMP_OFFLOAD_get_type, GOMP_OFFLOAD_get_num_devices)
7551 (GOMP_OFFLOAD_init_device, GOMP_OFFLOAD_fini_device)
7552 (GOMP_OFFLOAD_version, GOMP_OFFLOAD_load_image)
7553 (GOMP_OFFLOAD_unload_image, GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free)
7554 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_host2dev)
7555 (GOMP_OFFLOAD_dev2dev, GOMP_OFFLOAD_can_run, GOMP_OFFLOAD_run)
7556 (GOMP_OFFLOAD_async_run, GOMP_OFFLOAD_openacc_parallel)
7557 (GOMP_OFFLOAD_openacc_register_async_cleanup)
7558 (GOMP_OFFLOAD_openacc_async_test)
7559 (GOMP_OFFLOAD_openacc_async_test_all)
7560 (GOMP_OFFLOAD_openacc_async_wait)
7561 (GOMP_OFFLOAD_openacc_async_wait_async)
7562 (GOMP_OFFLOAD_openacc_async_wait_all)
7563 (GOMP_OFFLOAD_openacc_async_wait_all_async)
7564 (GOMP_OFFLOAD_openacc_async_set_async)
7565 (GOMP_OFFLOAD_openacc_create_thread_data)
7566 (GOMP_OFFLOAD_openacc_destroy_thread_data)
7567 (GOMP_OFFLOAD_openacc_get_current_cuda_device)
7568 (GOMP_OFFLOAD_openacc_get_current_cuda_context)
7569 (GOMP_OFFLOAD_openacc_get_cuda_stream)
7570 (GOMP_OFFLOAD_openacc_set_cuda_stream): New prototypes.
7571 * libgomp.h (struct acc_dispatch_t, struct gomp_device_descr): Use
7572 these.
7573 * plugin/plugin-hsa.c (GOMP_OFFLOAD_load_image)
7574 (GOMP_OFFLOAD_unload_image): Fix argument types.
7575
23749904
JJ
75762017-01-26 Jakub Jelinek <jakub@redhat.com>
7577
c1cadde1
JJ
7578 * testsuite/lib/libgomp.exp
7579 (check_effective_target_hsa_offloading_selected_nocache): Fix up
7580 check_compile invocation. Fix up removal of executable. Drop
7581 bogus "2>&1" argument.
7582
23749904
JJ
7583 * testsuite/libgomp.fortran/declare-simd-4.f90: Add cleanup-modules
7584 directive.
7585
75862017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
5fd1486c
PJ
7587 Martin Jambor <mjambor@suse.cz>
7588
7589 * plugin/hsa.h: Moved to top level include.
7590 * plugin/plugin-hsa.c: Chanfgd include of hsa.h accordingly.
7591
73aa401e
JJ
75922017-01-21 Jakub Jelinek <jakub@redhat.com>
7593
7594 PR other/79046
7595 * testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
7596 of cat to get version from BASE-VER file.
7597 * testsuite/Makefile.in: Regenerated.
7598
b32e85fa
JJ
75992017-01-19 Jakub Jelinek <jakub@redhat.com>
7600
7601 * plugin/cuda/cuda.h (CUdeviceptr): Typedef to unsigned long long even
7602 for _WIN64.
7603
3c36aa6b
JJ
76042017-01-17 Jakub Jelinek <jakub@redhat.com>
7605
d190d5c0
JJ
7606 * plugin/hsa.h: Add GCC runtime library exception.
7607 * plugin/hsa_ext_finalize.h: Likewise.
7608
2393d337
JJ
7609 * plugin/configfrag.ac: For --without-cuda-driver don't initialize
7610 CUDA_DRIVER_INCLUDE nor CUDA_DRIVER_LIB. If both
7611 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB are empty and linking small
7612 cuda program fails, define PLUGIN_NVPTX_DYNAMIC to 1 and use
7613 plugin/include/cuda as include dir and -ldl instead of -lcuda as
7614 library to link ptx plugin against.
7615 * plugin/plugin-nvptx.c: Include dlfcn.h if PLUGIN_NVPTX_DYNAMIC.
7616 (CUDA_CALLS): Define.
7617 (cuda_lib, cuda_lib_inited): New variables.
7618 (init_cuda_lib): New function.
7619 (CUDA_CALL_PREFIX): Define.
7620 (CUDA_CALL_ERET, CUDA_CALL_ASSERT): Use CUDA_CALL_PREFIX.
7621 (CUDA_CALL): Use FN instead of (FN).
7622 (CUDA_CALL_NOCHECK): Define.
7623 (cuda_error, fini_streams_for_device, select_stream_for_async,
7624 nvptx_attach_host_thread_to_device, nvptx_open_device, link_ptx,
7625 event_gc, nvptx_exec, nvptx_async_test, nvptx_async_test_all,
7626 nvptx_wait_all, nvptx_set_clocktick, GOMP_OFFLOAD_unload_image,
7627 nvptx_stacks_alloc, nvptx_stacks_free, GOMP_OFFLOAD_run): Use
7628 CUDA_CALL_NOCHECK.
7629 (nvptx_init): Call init_cuda_lib, if it fails, return false. Use
7630 CUDA_CALL_NOCHECK.
7631 (nvptx_get_num_devices): Call init_cuda_lib, if it fails, return 0.
7632 Use CUDA_CALL_NOCHECK.
7633 * plugin/cuda/cuda.h: New file.
7634 * config.h.in: Regenerated.
7635 * configure: Regenerated.
7636
3c36aa6b
JJ
7637 PR other/79046
7638 * configure.ac: Add GCC_BASE_VER.
7639 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
7640 get version from BASE-VER file.
7641 * testsuite/Makefile.in: Regenerated.
7642 * configure: Regenerated.
7643 * Makefile.in: Regenerated.
7644
c508bc2d
FXC
76452017-01-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
7646
7647 PR libgomp/60670
7648 * Makefile.am: Make fincludedir multilib-aware.
7649 * Makefile.in: Regenerate.
7650
c1a9c369
JJ
76512017-01-01 Jakub Jelinek <jakub@redhat.com>
7652
cbe34bb5
JJ
7653 Update copyright years.
7654
c1a9c369
JJ
7655 * libgomp.texi: Bump @copying's copyright year.
7656
e7a7f4be
SH
76572016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
7658
7659 * libgomp/config/rtems/pool.h (gomp_thread_pool_reservoir): Use
7660 pthread_spinlock_t instead of gomp_mutex_t lock.
7661 (gomp_get_thread_pool): Likewise.
7662 (gomp_release_thread_pool): Likewise.
7663 * libgomp/config/rtems/proc.c (allocate_thread_pool_reservoir):
7664 Likewise.
7665
d313d52c
SH
76662016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
7667
7668 * config/rtems/pool.h (gomp_get_thread_pool): Return proper
7669 thread pool in case nthreads == 1.
7670
630e3c3a
AM
76712016-11-30 Alexander Monakov <amonakov@ispras.ru>
7672
7673 * config/nvptx/env.c: Delete.
7674 * icv.c: Move definitions of ICV variables back ...
7675 * env.c: ...here. Do not compile environment-related functionality if
7676 LIBGOMP_OFFLOADED_ONLY is set.
7677
9e38af5c
AM
76782016-11-30 Alexander Monakov <amonakov@ispras.ru>
7679
7680 * configure.ac [nvptx*-*-*] (libgomp_offloaded_only): Set and use it...
7681 (LIBGOMP_OFFLOADED_ONLY): ...here; new define.
7682 * configure: Regenerate.
7683 * config.h.in: Likewise.
7684
f96b7f1f
AM
76852016-11-30 Alexander Monakov <amonakov@ispras.ru>
7686
7687 * Makefile.in: Regenerate with automake-1.11.6.
7688 * aclocal.m4: Likewise.
7689 * configure: Likewise.
7690 * testsuite/Makefile.in: Likewise.
7691
6a6951b1
AM
76922016-11-28 Alexander Monakov <amonakov@ispras.ru>
7693
7694 * config/nvptx/critical.c: Delete to use generic implementation.
7695
c7ac071f
JH
76962016-11-28 Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de>
7697
7698 * config/linux/affinity.c [!HAVE_PTHREAD_AFFINITY_NP]: Include
7699 ../../affinity.c as fallback.
7700 * config/nvptx/affinity.c: Delete to use fallback implementation.
7701
6103184e 77022016-11-23 Alexander Monakov <amonakov@ispras.ru>
92a285c1 7703 Jakub Jelinek <jakub@redhat.com>
6103184e
AM
7704 Dmitry Melnik <dm@ispras.ru>
7705
7706 * Makefile.am (libgomp_la_SOURCES): Add atomic.c, icv.c, icv-device.c.
7707 * Makefile.in. Regenerate.
7708 * configure.ac [nvptx*-*-*] (libgomp_use_pthreads): Set and use it...
7709 (LIBGOMP_USE_PTHREADS): ...here; new define.
7710 * configure: Regenerate.
7711 * config.h.in: Likewise.
7712 * config/posix/affinity.c: Move to...
7713 * affinity.c: ...here (new file). Guard use of Pthreads-specific
7714 interface by LIBGOMP_USE_PTHREADS.
7715 * critical.c: Split out GOMP_atomic_{start,end} into...
7716 * atomic.c: ...here (new file).
7717 * env.c: Split out ICV definitions into...
7718 * icv.c: ...here (new file) and...
7719 * icv-device.c: ...here. New file.
7720 * config/linux/lock.c (gomp_init_lock_30): Move to generic lock.c.
7721 (gomp_destroy_lock_30): Ditto.
7722 (gomp_set_lock_30): Ditto.
7723 (gomp_unset_lock_30): Ditto.
7724 (gomp_test_lock_30): Ditto.
7725 (gomp_init_nest_lock_30): Ditto.
7726 (gomp_destroy_nest_lock_30): Ditto.
7727 (gomp_set_nest_lock_30): Ditto.
7728 (gomp_unset_nest_lock_30): Ditto.
7729 (gomp_test_nest_lock_30): Ditto.
7730 * lock.c: New.
7731 * config/nvptx/lock.c: New.
7732 * config/nvptx/bar.c: New.
7733 * config/nvptx/bar.h: New.
7734 * config/nvptx/doacross.h: New.
7735 * config/nvptx/error.c: New.
7736 * config/nvptx/icv-device.c: New.
7737 * config/nvptx/mutex.h: New.
7738 * config/nvptx/pool.h: New.
7739 * config/nvptx/proc.c: New.
7740 * config/nvptx/ptrlock.h: New.
7741 * config/nvptx/sem.h: New.
7742 * config/nvptx/simple-bar.h: New.
7743 * config/nvptx/target.c: New.
7744 * config/nvptx/task.c: New.
7745 * config/nvptx/team.c: New.
7746 * config/nvptx/time.c: New.
7747 * config/posix/simple-bar.h: New.
7748 * libgomp.h: Guard pthread.h inclusion. Include simple-bar.h.
7749 (gomp_num_teams_var): Declare.
7750 (struct gomp_thread_pool): Change threads_dock member to
7751 gomp_simple_barrier_t.
7752 [__nvptx__] (gomp_thread): New implementation.
7753 (gomp_thread_attr): Guard by LIBGOMP_USE_PTHREADS.
7754 (gomp_thread_destructor): Ditto.
7755 (gomp_init_thread_affinity): Ditto.
7756 * team.c: Guard uses of Pthreads-specific interfaces by
7757 LIBGOMP_USE_PTHREADS. Adjust all uses of threads_dock.
7758 (gomp_free_thread) [__nvptx__]: Do not call 'free'.
7759 * config/nvptx/alloc.c: Delete.
7760 * config/nvptx/barrier.c: Ditto.
7761 * config/nvptx/fortran.c: Ditto.
7762 * config/nvptx/iter.c: Ditto.
7763 * config/nvptx/iter_ull.c: Ditto.
7764 * config/nvptx/loop.c: Ditto.
7765 * config/nvptx/loop_ull.c: Ditto.
7766 * config/nvptx/ordered.c: Ditto.
7767 * config/nvptx/parallel.c: Ditto.
7768 * config/nvptx/priority_queue.c: Ditto.
7769 * config/nvptx/sections.c: Ditto.
7770 * config/nvptx/single.c: Ditto.
7771 * config/nvptx/splay-tree.c: Ditto.
7772 * config/nvptx/work.c: Ditto.
7773 * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Pass
7774 -foffload=-lgfortran in addition to -lgfortran.
7775 * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags): Ditto.
7776 * plugin/plugin-nvptx.c: Include <limits.h>.
7777 (struct targ_fn_descriptor): Add new fields.
7778 (struct ptx_device): Ditto. Set them...
7779 (nvptx_open_device): ...here.
7780 (nvptx_adjust_launch_bounds): New.
7781 (nvptx_host2dev): Allow NULL 'nvthd'.
7782 (nvptx_dev2host): Ditto.
7783 (GOMP_OFFLOAD_get_caps): Add GOMP_OFFLOAD_CAP_OPENMP_400.
7784 (link_ptx): Adjust log sizes.
7785 (nvptx_host2dev): Allow NULL 'nvthd'.
7786 (nvptx_dev2host): Ditto.
7787 (nvptx_set_clocktick): New. Use it...
7788 (GOMP_OFFLOAD_load_image): ...here. Set new targ_fn_descriptor
7789 fields.
7790 (GOMP_OFFLOAD_dev2dev): New.
7791 (nvptx_adjust_launch_bounds): New.
7792 (nvptx_stacks_size): New.
7793 (nvptx_stacks_alloc): New.
7794 (nvptx_stacks_free): New.
7795 (GOMP_OFFLOAD_run): New.
7796 (GOMP_OFFLOAD_async_run): New (stub).
7797
56b1c60e
MJ
77982016-11-23 Martin Jambor <mjambor@suse.cz>
7799
7800 * testsuite/libgomp.hsa.c/bits-insns.c: New test.
7801 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
7802 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
7803
b8d89b03 78042016-11-23 Martin Liska <mliska@suse.cz>
92a285c1 7805 Martin Jambor <mjambor@suse.cz>
b8d89b03
ML
7806
7807 * plugin/hsa.h: New file.
7808 * plugin/hsa_ext_finalize.h: New file.
7809 * plugin/configfrag.ac: Remove hsa-kmt-lib test. Added checks for
7810 header file unistd.h, and functions secure_getenv, __secure_getenv,
7811 getuid, geteuid, getgid and getegid.
7812 * plugin/Makefrag.am (libgomp_plugin_hsa_la_CPPFLAGS): Added
7813 -D_GNU_SOURCE.
7814 * plugin/plugin-hsa.c: Include config.h, inttypes.h and stdbool.h.
7815 Handle various cases of secure_getenv presence, add an implementation
7816 when we can test effective UID and GID.
7817 (struct hsa_runtime_fn_info): New structure.
7818 (hsa_runtime_fn_info hsa_fns): New variable.
7819 (hsa_runtime_lib): Likewise.
7820 (support_cpu_devices): Likewise.
7821 (init_enviroment_variables): Load newly introduced ENV
7822 variables.
7823 (hsa_warn): Call hsa run-time functions via hsa_fns structure.
7824 (hsa_fatal): Likewise.
7825 (DLSYM_FN): New macro.
7826 (init_hsa_runtime_functions): New function.
7827 (suitable_hsa_agent_p): Call hsa run-time functions via hsa_fns
7828 structure. Depending on environment, also allow CPU devices.
7829 (init_hsa_context): Call hsa run-time functions via hsa_fns structure.
7830 (get_kernarg_memory_region): Likewise.
7831 (GOMP_OFFLOAD_init_device): Likewise.
7832 (destroy_hsa_program): Likewise.
7833 (init_basic_kernel_info): New function.
7834 (GOMP_OFFLOAD_load_image): Use it.
7835 (create_and_finalize_hsa_program): Call hsa run-time functions via
7836 hsa_fns structure.
7837 (create_single_kernel_dispatch): Likewise.
7838 (release_kernel_dispatch): Likewise.
7839 (init_single_kernel): Likewise.
7840 (parse_target_attributes): Allow up multiple HSA grid dimensions.
7841 (get_group_size): New function.
7842 (run_kernel): Likewise.
7843 (GOMP_OFFLOAD_run): Outline most functionality to run_kernel.
7844 (GOMP_OFFLOAD_fini_device): Call hsa run-time functions via hsa_fns
7845 structure.
7846 * testsuite/lib/libgomp.exp: Remove hsa_kmt_lib support.
7847 * testsuite/libgomp-test-support.exp.in: Likewise.
7848 * Makefile.in: Regenerated.
7849 * aclocal.m4: Likewise.
7850 * config.h.in: Likewise.
7851 * configure: Likewise.
7852 * testsuite/Makefile.in: Likewise.
7853
18d2ada8 78542016-11-15 Martin Jambor <mjambor@suse.cz>
92a285c1 7855 Alexander Monakov <amonakov@ispras.ru>
18d2ada8
MJ
7856
7857 * testsuite/libgomp.fortran/examples-4/device-1.f90 (e_57_1): Add
7858 mapping clauses to target constructs.
7859 * testsuite/libgomp.fortran/examples-4/device-3.f90 (e_57_3): Ditto.
7860
84c1b9d3
MK
78612016-11-15 Matthias Klose <doko@ubuntu.com>
7862
7863 * configure: Regenerate.
7864
b4c3a85b
JJ
78652016-11-10 Jakub Jelinek <jakub@redhat.com>
7866
8ebd1b31
JJ
7867 * omp_lib.f90.in (openmp_version): Change to 201511 from 201307.
7868 * omp_lib.h.in (openmp_version): Likewise.
7869 * testsuite/libgomp.fortran/openmp_version-1.f: Expect 201511 instead
7870 of 201307.
7871 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
7872
b4c3a85b
JJ
7873 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90
7874 (fib_wrapper): Add map(from: x) clause.
7875 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90
7876 (e_53_2): Likewise.
7877 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90
7878 (accum): Add map(tmp) clause.
7879 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90
7880 (accum): Add map(tofrom: tmp) clause.
7881 * testsuite/libgomp.fortran/examples-4/target_data-3.f90
7882 (gramSchmidt): Likewise.
7883 * testsuite/libgomp.fortran/examples-4/teams-2.f90 (dotprod): Add
7884 map(tofrom: sum) clause.
7885 * testsuite/libgomp.fortran/nestedfn5.f90 (foo): Add twice
7886 map (alloc: a, l) clause. Add defaultmap(tofrom: scalar) clause.
7887 * testsuite/libgomp.fortran/pr66199-2.f90: Adjust for linear clause
7888 only allowed on the loop iterator.
7889 * testsuite/libgomp.fortran/target4.f90 (foo): Add map(t) clause.
7890 * testsuite/libgomp.fortran/taskloop2.f90: New test.
7891 * testsuite/libgomp.fortran/taskloop4.f90: New test.
7892 * testsuite/libgomp.fortran/doacross1.f90: New test.
7893 * testsuite/libgomp.fortran/doacross3.f90: New test.
7894 * testsuite/libgomp.fortran/taskloop1.f90: New test.
7895 * testsuite/libgomp.fortran/taskloop3.f90: New test.
7896 * testsuite/libgomp.fortran/doacross2.f90: New test.
7897 * testsuite/libgomp.c/doacross-1.c (main): Add missing
7898 #pragma omp atomic read.
7899 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
7900 * testsuite/libgomp.c/doacross-3.c (main): Likewise.
7901
6668eb45
CP
79022016-11-02 Cesar Philippidis <cesar@codesourcery.com>
7903 Nathan Sidwell <nathan@acm.org>
7904
7905 * plugin/plugin-nvptx.c (nvptx_exec): Interrogate board attributes
7906 to determine default geometry.
7907 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Set gang
7908 dimension.
7909
f10e37a1
JJ
79102016-11-01 Jakub Jelinek <jakub@redhat.com>
7911
7912 * hashtab.h: Use standard GPLv3 with runtime exception
7913 boilerplate.
7914
015c7760
AH
79152016-10-27 Aldy Hernandez <aldyh@redhat.com>
7916
7917 * oacc-init.c (goacc_new_thread): Use sizeof of the appropriate
7918 size when allocating new thread.
7919
20a1e5b8
MP
79202016-09-14 Marek Polacek <polacek@redhat.com>
7921
7922 * testsuite/libgomp.c++/atomic-3.C: Use -Wno-deprecated.
7923
1cad9284
JJ
79242016-08-19 Jakub Jelinek <jakub@redhat.com>
7925
7926 PR fortran/71014
7927 * testsuite/libgomp.fortran/pr71014.f90: New test.
7928
2c71d454
CLT
79292016-08-18 Chung-Lin Tang <cltang@codesourcery.com>
7930
7931 PR middle-end/70895
7932 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Add explicit
7933 firstprivate clauses.
7934 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Remove explicit
7935 copy clauses.
7936 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
7937 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
7938 * testsuite/libgomp.oacc-c-c++-common/reduction-flt.c: Likewise.
7939 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
7940 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
7941 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
7942 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
7943 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
7944 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
7945 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
7946 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
7947 * testsuite/libgomp.oacc-c-c++-common/reduction-dbl.c: Likewise.
7948
7c713714
CLT
79492016-08-14 Chung-Lin Tang <cltang@codesourcery.com>
7950
7951 PR fortran/70598
7952 * testsuite/libgomp.oacc-fortran/host_data-1.f90: New test.
7953
5c934396
JJ
79542016-08-08 Jakub Jelinek <jakub@redhat.com>
7955
7956 PR c++/58706
7957 * testsuite/libgomp.c++/pr58706.C: New test.
7958
9ef64248
TS
79592016-08-04 Thomas Schwinge <thomas@codesourcery.com>
7960
bbc79c0e
TS
7961 * testsuite/libgomp.oacc-c++/routine-1-auto.C: New file.
7962 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Likewise.
7963 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
7964 Likewise.
7965 * testsuite/libgomp.oacc-c++/routine-1-template.C: Likewise.
7966 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C:
7967 Likewise.
7968 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Adjust.
7969
9ef64248
TS
7970 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: Make it a "link"
7971 test, and don't hardcode -O0.
7972
c1311c86
NS
79732016-08-03 Nathan Sidwell <nathan@codesourcery.com>
7974
7975 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: New.
7976
b1c9c068
CP
79772016-07-15 Cesar Philippidis <cesar@codesourcery.com>
7978
7979 * testsuite/libgomp.oacc-c-c++-common/zero_length_subarrays.c: New
7980 test.
7981
b4410f63
L
79822016-07-03 H.J. Lu <hongjiu.lu@intel.com>
7983
7984 PR middle-end/71734
7985 * testsuite/libgomp.fortran/pr71734-1.f90: New test.
7986 * testsuite/libgomp.fortran/pr71734-2.f90: Likewise.
7987
a8dbab92
JJ
79882016-07-01 Jakub Jelinek <jakub@redhat.com>
7989
7990 PR fortran/71717
7991 * testsuite/libgomp.fortran/associate3.f90: New test.
7992
9b6a8d0f
JJ
79932016-06-17 Jakub Jelinek <jakub@redhat.com>
7994
7995 * testsuite/libgomp.c++/target-21.C: New test.
7996
283635f9
JJ
79972016-06-16 Jakub Jelinek <jakub@redhat.com>
7998
7999 * testsuite/libgomp.c++/target-20.C: New test.
8000
27d6ba88
TS
80012016-06-10 Thomas Schwinge <thomas@codesourcery.com>
8002 Cesar Philippidis <cesar@codesourcery.com>
8003
8004 PR middle-end/71373
8005 * libgomp.oacc-c/nested-function-1.c: New file.
8006 * libgomp.oacc-c/nested-function-2.c: Likewise.
8007 * libgomp.oacc-fortran/nested-function-1.f90: Likewise.
8008 * libgomp.oacc-fortran/nested-function-2.f90: Likewise.
8009 * libgomp.oacc-fortran/nested-function-3.f90: Likewise.
8010
4b1ffdb1
TS
80112016-06-10 Thomas Schwinge <thomas@codesourcery.com>
8012
8013 PR c/71381
8014 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: #include
8015 "../../../gcc/testsuite/c-c++-common/goacc/cache-1.c".
8016 * testsuite/libgomp.oacc-fortran/cache-1.f95: New file.
8017
d821b794
CLT
80182016-06-03 Chung-Lin Tang <cltang@codesourcery.com>
8019
8020 * testsuite/libgomp.oacc-fortran/reduction-8.f90: New testcase.
8021 * testsuite/libgomp.oacc-c-c++-common/reduction-8.c: New testcase.
8022
3616a8c5
CP
80232016-06-01 Cesar Philippidis <cesar@codesourcery.com>
8024
8025 PR c/70688
5eed9a88 8026 * testsuite/libgomp.oacc-c-c++-common/pr70688.c: New file.
3616a8c5 8027
7211a097
JJ
80282016-05-26 Jakub Jelinek <jakub@redhat.com>
8029
8030 * testsuite/libgomp.c/doacross-1.c (main): Use schedule(static)
8031 instead of invalid schedule(static, 0).
8032 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
8033
b4557008
CLT
80342016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
8035
8036 * oacc-plugin.h (GOMP_PLUGIN_async_unmap_vars): Add int parameter.
8037 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Add 'int async'
8038 parameter, use to set async stream around call to gomp_unmap_vars,
8039 call gomp_unmap_vars() with 'do_copyfrom' set to true.
8040 * plugin/plugin-nvptx.c (struct ptx_event): Add 'int val' field.
8041 (event_gc): Adjust event handling loop, collect PTX_EVT_ASYNC_CLEANUP
8042 events and call GOMP_PLUGIN_async_unmap_vars() for each of them.
8043 (event_add): Add int parameter, initialize 'val' field when
8044 adding new ptx_event struct.
8045 (nvptx_evec): Adjust event_add() call arguments.
8046 (nvptx_host2dev): Likewise.
8047 (nvptx_dev2host): Likewise.
8048 (nvptx_wait_async): Likewise.
8049 (nvptx_wait_all_async): Likewise.
8050 (GOMP_OFFLOAD_openacc_register_async_cleanup): Add async parameter,
8051 pass to event_add() call.
8052 * oacc-host.c (host_openacc_register_async_cleanup): Add 'int async'
8053 parameter.
8054 * oacc-mem.c (gomp_acc_remove_pointer): Adjust async case to
8055 call openacc.register_async_cleanup_func() hook.
8056 * oacc-parallel.c (GOACC_parallel_keyed): Likewise.
8057 * target.c (gomp_copy_from_async): Delete function.
8058 (gomp_map_vars): Remove async_refcount.
8059 (gomp_unmap_vars): Likewise.
8060 (gomp_load_image_to_device): Likewise.
8061 (omp_target_associate_ptr): Likewise.
8062 * libgomp.h (struct splay_tree_key_s): Remove async_refcount.
8063 (acc_dispatch_t.register_async_cleanup_func): Add int parameter.
8064 (gomp_copy_from_async): Remove.
8065
6ce13072
CLT
80662016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
8067
8068 * target.c (gomp_device_copy): New function.
8069 (gomp_copy_host2dev): Likewise.
8070 (gomp_copy_dev2host): Likewise.
8071 (gomp_free_device_memory): Likewise.
8072 (gomp_map_vars_existing): Adjust to call gomp_copy_host2dev.
8073 (gomp_map_pointer): Likewise.
8074 (gomp_map_vars): Adjust to call gomp_copy_host2dev, handle
8075 NULL value from alloc_func plugin hook.
8076 (gomp_unmap_tgt): Adjust to call gomp_free_device_memory.
8077 (gomp_copy_from_async): Adjust to call gomp_copy_dev2host.
8078 (gomp_unmap_vars): Likewise.
8079 (gomp_update): Adjust to call gomp_copy_dev2host and
8080 gomp_copy_host2dev functions.
8081 (gomp_unload_image_from_device): Handle false value from
8082 unload_image_func plugin hook.
8083 (gomp_init_device): Handle false value from init_device_func
8084 plugin hook.
8085 (gomp_exit_data): Adjust to call gomp_copy_dev2host.
8086 (omp_target_free): Adjust to call gomp_free_device_memory.
8087 (omp_target_memcpy): Handle return values from host2dev_func,
8088 dev2host_func, and dev2dev_func plugin hooks.
8089 (omp_target_memcpy_rect_worker): Likewise.
8090 (gomp_target_fini): Handle false value from fini_device_func
8091 plugin hook.
8092 * libgomp.h (struct gomp_device_descr): Adjust return type of
8093 init_device_func, fini_device_func, unload_image_func, free_func,
8094 dev2host_func,host2dev_func, and dev2dev_func plugin hooks to 'bool'.
8095 * oacc-init.c (acc_shutdown_1): Handle false value from
8096 fini_device_func plugin hook.
8097 * oacc-host.c (host_init_device): Change return type to bool.
8098 (host_fini_device): Likewise.
8099 (host_unload_image): Likewise.
8100 (host_free): Likewise.
8101 (host_dev2host): Likewise.
8102 (host_host2dev): Likewise.
8103 * oacc-mem.c (acc_free): Handle plugin hook fatal error case.
8104 (acc_memcpy_to_device): Likewise.
8105 (acc_memcpy_from_device): Likewise.
8106 (delete_copyout): Add libfnname parameter, handle free_func
8107 hook fatal error case.
8108 (acc_delete): Adjust delete_copyout call.
8109 (acc_copyout): Likewise.
8110 (update_dev_host): Move gomp_mutex_unlock to after
8111 host2dev/dev2host hook calls.
8112
8113 * plugin/plugin-hsa.c (hsa_warn): Adjust 'hsa_error' local variable
8114 to 'hsa_error_msg', for clarity.
8115 (hsa_fatal): Likewise.
8116 (hsa_error): New function.
8117 (init_hsa_context): Change return type to bool, adjust to return
8118 false on error.
8119 (GOMP_OFFLOAD_get_num_devices): Adjust to handle init_hsa_context
8120 return value.
8121 (GOMP_OFFLOAD_init_device): Change return type to bool, adjust to
8122 return false on error.
8123 (get_agent_info): Adjust to return NULL on error.
8124 (destroy_hsa_program): Change return type to bool, adjust to
8125 return false on error.
8126 (GOMP_OFFLOAD_load_image): Adjust to return -1 on error.
8127 (destroy_module): Change return type to bool, adjust to
8128 return false on error.
8129 (GOMP_OFFLOAD_unload_image): Likewise.
8130 (GOMP_OFFLOAD_fini_device): Likewise.
8131 (GOMP_OFFLOAD_alloc): Change to return NULL when called.
8132 (GOMP_OFFLOAD_free): Change to return false when called.
8133 (GOMP_OFFLOAD_dev2host): Likewise.
8134 (GOMP_OFFLOAD_host2dev): Likewise.
8135 (GOMP_OFFLOAD_dev2dev): Likewise.
8136
8137 * plugin/plugin-nvptx.c (CUDA_CALL_ERET): New convenience macro.
8138 (CUDA_CALL): Likewise.
8139 (CUDA_CALL_ASSERT): Likewise.
8140 (map_init): Change return type to bool, use CUDA_CALL* macros.
8141 (map_fini): Likewise.
8142 (init_streams_for_device): Change return type to bool, adjust
8143 call to map_init.
8144 (fini_streams_for_device): Change return type to bool, adjust
8145 call to map_fini.
8146 (select_stream_for_async): Release stream_lock before calls to
8147 GOMP_PLUGIN_fatal, adjust call to map_init.
8148 (nvptx_init): Use CUDA_CALL* macros.
8149 (nvptx_attach_host_thread_to_device): Change return type to bool,
8150 use CUDA_CALL* macros.
8151 (nvptx_open_device): Use CUDA_CALL* macros.
8152 (nvptx_close_device): Change return type to bool, use CUDA_CALL*
8153 macros.
8154 (nvptx_get_num_devices): Use CUDA_CALL* macros.
8155 (link_ptx): Change return type to bool, use CUDA_CALL* macros.
8156 (nvptx_exec): Use CUDA_CALL* macros.
8157 (nvptx_alloc): Use CUDA_CALL* macros.
8158 (nvptx_free): Change return type to bool, use CUDA_CALL* macros.
8159 (nvptx_host2dev): Likewise.
8160 (nvptx_dev2host): Likewise.
8161 (nvptx_wait): Use CUDA_CALL* macros.
8162 (nvptx_wait_async): Likewise.
8163 (nvptx_wait_all): Likewise.
8164 (nvptx_wait_all_async): Likewise.
8165 (nvptx_set_cuda_stream): Adjust order of stream_lock acquire,
8166 use CUDA_CALL* macros, adjust call to map_fini.
8167 (GOMP_OFFLOAD_init_device): Change return type to bool,
8168 adjust code accordingly.
8169 (GOMP_OFFLOAD_fini_device): Likewise.
8170 (GOMP_OFFLOAD_load_image): Adjust calls to
8171 nvptx_attach_host_thread_to_device/link_ptx to handle errors,
8172 use CUDA_CALL* macros.
8173 (GOMP_OFFLOAD_unload_image): Change return type to bool, adjust
8174 return code.
8175 (GOMP_OFFLOAD_alloc): Adjust calls to code to handle error return.
8176 (GOMP_OFFLOAD_free): Change return type to bool, adjust calls to
8177 handle error return.
8178 (GOMP_OFFLOAD_dev2host): Likewise.
8179 (GOMP_OFFLOAD_host2dev): Likewise.
8180 (GOMP_OFFLOAD_openacc_register_async_cleanup): Use CUDA_CALL* macros.
8181 (GOMP_OFFLOAD_openacc_create_thread_data): Likewise.
8182
e46c7770
CP
81832016-05-24 Cesar Philippidis <cesar@codesourcery.com>
8184
8185 * oacc-mem.c (acc_malloc): Update handling of shared-memory targets.
8186 (acc_free): Likewise.
8187 (acc_memcpy_to_device): Likewise.
8188 (acc_memcpy_from_device): Likewise.
8189 (acc_deviceptr): Likewise.
8190 (acc_hostptr): Likewise.
8191 (acc_is_present): Likewise.
8192 (acc_map_data): Likewise.
8193 (acc_unmap_data): Likewise.
8194 (present_create_copy): Likewise.
8195 (delete_copyout): Likewise.
8196 (update_dev_host): Likewise.
8197 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Remove xfail.
8198 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: New test.
8199 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Adjust test.
8200 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
8201 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: New test.
8202 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Adjust test so that
8203 it only runs on nvptx targets.
8204 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
8205 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
8206 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
8207 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
8208 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
8209 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
8210 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
8211 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
8212 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
8213 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
8214 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
8215 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
8216 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
8217 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
8218 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
8219 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
8220 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
8221 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
8222 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
8223 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
8224 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
8225 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
8226 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
8227
a5057543
MJ
82282016-05-23 Martin Jambor <mjambor@suse.cz>
8229
8230 * testsuite/libgomp.hsa.c/switch-sbr-2.c: New test.
8231
e37288a6
CLT
82322016-05-17 Chung-Lin Tang <cltang@codesourcery.com>
8233
8234 * oacc-init.c (acc_init): Remove !cached_base_dev condition on call
8235 to gomp_init_targets_once.
8236 (acc_set_device_type): Remove !cached_base_dev condition on call to
8237 gomp_init_targets_once, move call to before acc_device_lock acquire,
8238 to avoid deadlock.
8239 (acc_get_device_num): Remove !cached_base_dev condition on call to
8240 gomp_init_targets_once.
8241 (acc_set_device_num): Likewise.
8242
51d9ed48
MJ
82432016-05-16 Martin Jambor <mjambor@suse.cz>
8244
92a285c1 8245 * testsuite/libgomp.hsa.c/complex-align-2.c: New test.
51d9ed48 8246
5b37e866
NS
82472016-05-02 Nathan Sidwell <nathan@codesourcery.com>
8248
8249 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust
8250 expected partitioning.
8251
e7ff0319
CP
82522016-04-29 Cesar Philippidis <cesar@codesourcery.com>
8253
8254 PR middle-end/70626
8255 * testsuite/libgomp.oacc-c++/template-reduction.C: Adjust test.
8256 * testsuite/libgomp.oacc-c-c++-common/combined-reduction.c: New test.
8257 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: New test.
8258
c2bd3b69
AM
82592016-04-21 Alexander Monakov <amonakov@ispras.ru>
8260
8261 * plugin/plugin-nvptx.c (map_fini): Make cuMemFreeHost error
8262 non-fatal.
8263
84311083
JJ
82642016-04-19 Jakub Jelinek <jakub@redhat.com>
8265
8266 PR middle-end/70680
8267 * testsuite/libgomp.c/pr70680-1.c: New test.
8268 * testsuite/libgomp.c/pr70680-2.c: New test.
8269
aadc043f
CP
82702016-04-14 Cesar Philippidis <cesar@codesourcery.com>
8271
8272 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Don't
8273 pass parameter variables to subroutines.
8274
e387fc64
CP
82752016-04-14 Cesar Philippidis <cesar@codesourcery.com>
8276
8277 PR middle-end/70643
8278 * testsuite/libgomp.oacc-fortran/pr70643.f90: New test.
8279
10c3c424
CP
82802016-04-13 Cesar Philippidis <cesar@codesourcery.com>
8281
8282 PR testsuite/68242
8283 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Adjust test.
8284 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
8285
27f9add3
TS
82862016-04-12 Thomas Schwinge <thomas@codesourcery.com>
8287
58d32aeb
TS
8288 * libgomp_g.h: Rename GOACC_parallel_keyd prototype to
8289 GOACC_parallel_keyed, restore GOACC_parallel prototype, new
8290 GOACC_declare prototype.
8291
d97633ef
TS
8292 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c:
8293 Merge this file, and...
8294 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gv-np-1.c:
8295 ... this file, and...
8296 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c:
8297 ... this file, and...
8298 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c:
8299 ... this file, and...
8300 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c:
8301 ... this file, and...
8302 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c:
8303 ... this file, and...
8304 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c:
8305 ... this file, and...
8306 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c:
8307 ... this file, and...
8308 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c:
8309 ... this file, and...
8310 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c:
8311 ... this file, and...
8312 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c:
8313 ... this file, and...
8314 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c:
8315 ... this file, and...
8316 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c:
8317 ... this file into...
8318 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: ... this
8319 file.
8320
27f9add3
TS
8321 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
8322 Make failure observable.
8323
21f3a236
JJ
83242016-04-12 Jakub Jelinek <jakub@redhat.com>
8325
8326 * libgomp.h (struct gomp_target_task): Remove firstprivate_copies
8327 field.
8328 * target.c (gomp_target_fallback_firstprivate,
8329 gomp_target_unshare_firstprivate): Removed.
8330 (GOMP_target_ext): Copy firstprivate vars into gomp_allocaed memory
8331 before waiting for dependencies.
8332 (gomp_target_task_fn): Don't copy firstprivate vars here.
8333 * task.c (GOMP_PLUGIN_target_task_completion): Don't free
8334 firstprivate_copies here.
8335 (gomp_create_target_task): Don't initialize firstprivate_copies field.
8336 * testsuite/libgomp.c/target-25.c (main): Use map (to:) instead of
8337 explicit/implicit firstprivate.
8338
c42cfb5c
CP
83392016-04-08 Cesar Philippidis <cesar@codesourcery.com>
8340
8341 PR lto/70289
8342 PR ipa/70348
8343 PR tree-optimization/70373
8344 PR middle-end/70533
8345 PR middle-end/70534
8346 PR middle-end/70535
8347 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c: New
8348 test.
8349 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c: New
8350 test.
8351 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c: New
8352 test.
8353 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c: New
8354 test.
8355 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c: New
8356 test.
8357 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c: New
8358 test.
8359 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c: New
8360 test.
8361 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c: New
8362 test.
8363 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c: New
8364 test.
8365 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c: New test.
8366 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c: New test.
8367 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c: New test.
8368 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c: New
8369 test.
8370 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c: New
8371 test.
8372 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c: New
8373 test.
8374 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c: New
8375 test.
8376 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Add test
8377 coverage.
8378 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
8379 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
8380 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c: New test.
8381 * testsuite/libgomp.oacc-c-c++-common/pr70289.c: New test.
8382 * testsuite/libgomp.oacc-c-c++-common/pr70373.c: New test.
8383 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Add test
8384 coverage.
8385 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
8386 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
8387 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
8388 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
8389 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: New test.
8390 * testsuite/libgomp.oacc-c-c++-common/reduction.h: New test.
8391 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: New test.
8392 * testsuite/libgomp.oacc-fortran/pr70289.f90: New test.
8393 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Add test coverage.
8394 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
8395 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
8396 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
8397 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
8398 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
8399 * testsuite/libgomp.oacc-fortran/reduction-7.f90: New test.
8400
2620c80d
TS
84012016-03-30 Thomas Schwinge <thomas@codesourcery.com>
8402 James Norris <jnorris@codesourcery.com>
8403 Nathan Sidwell <nathan@codesourcery.com>
8404 Julian Brown <julian@codesourcery.com>
8405 Cesar Philippidis <cesar@codesourcery.com>
8406 Chung-Lin Tang <cltang@codesourcery.com>
8407 Tom de Vries <tom@codesourcery.com>
8408
8409 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Update.
8410 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
8411 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
8412 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Likewise.
8413 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
8414 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
8415 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
8416 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
8417 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
8418 XFAIL.
8419 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
8420 Incorporate...
8421 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: ... this
8422 file.
8423 * testsuite/libgomp.oacc-c++/template-reduction.C: New file.
8424 * testsuite/libgomp.oacc-c-c++-common/gang-static-1.c: Likewise.
8425 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Likewise.
8426 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-clauses.c:
8427 Likewise.
8428 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
8429 Likewise.
8430 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
8431 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Likewise.
8432 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
8433 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
8434 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
8435 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
8436 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
8437 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
8438 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
8439 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90:
8440 Likewise.
8441 * testsuite/libgomp.oacc-fortran/pr68813.f90: Likewise.
8442 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
8443 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Merge this
8444 file...
8445 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: ..., and this
8446 file into...
8447 * testsuite/libgomp.oacc-c-c++-common/data-clauses.h: ... this new
8448 file. Update.
8449 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels.c: New
8450 file.
8451 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel.c:
8452 Likewise.
8453 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: Rename to...
8454 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c:
8455 ... this new file. Update.
8456 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: Rename to...
8457 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c:
8458 ... this new file. Update.
8459 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: New
8460 file. Incorporate...
8461 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c: ... this
8462 file, and...
8463 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: ... this
8464 file, and...
8465 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: ... this
8466 file.
8467 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Remove file.
8468
ce83104b
TS
84692016-03-29 Thomas Schwinge <thomas@codesourcery.com>
8470
8471 * testsuite/libgomp.oacc-c++/c++.exp [!lang_test_file_found]: Call
8472 set-torture-options.
8473
6e0df3b7
TS
84742016-03-24 Thomas Schwinge <thomas@codesourcery.com>
8475
8476 * testsuite/libgomp.oacc-c++/c++.exp: Set up torture testing, use
8477 gcc-dg-runtest.
8478 * testsuite/libgomp.oacc-c/c.exp: Likewise.
8479 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: Specify
8480 -fno-builtin-acc_on_device instead of -O0.
8481 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: Skip for
8482 -O0.
8483 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
8484 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c:
8485 Likewise.
8486 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
8487 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
8488 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
8489 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
8490 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
8491 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
8492 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
8493 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
8494 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
8495 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
8496 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
8497 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
8498 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
8499 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
8500 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
8501 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
8502 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
8503 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-2.c:
8504 Don't specify -O2.
8505 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-3.c:
8506 Likewise.
8507 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta.c:
8508 Likewise.
8509
f9c8babb
ML
85102016-03-24 Martin Liska <mliska@suse.cz>
8511
8512 * plugin/plugin-hsa.c (packet_store_release): New function
8513 that is taken from the HSA runtime manual.
8514 (GOMP_OFFLOAD_run): Use the function.
8515
04833609
JJ
85162016-03-23 Jakub Jelinek <jakub@redhat.com>
8517
8518 PR c++/70376
8519 * testsuite/libgomp.c++/pr70376.C: New test.
8520
d79ee524
TV
85212016-03-23 Tom de Vries <tom@codesourcery.com>
8522
8523 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Add missing
8524 initialization of lresult and lvresult.
8525 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Same.
8526
b6d1f2b5
JN
85272016-03-23 James Norris <jnorris@codesourcery.com>
8528 Daichi Fukuoka <dc-fukuoka@sgi.com>
8529
8530 PR libgomp/69414
8531 * oacc-mem.c (delete_copyout, update_dev_host): Fix device address.
8532 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Additional tests.
8533 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
8534 * testsuite/libgomp.oacc-fortran/update-1.f90: New file.
8535
7397fce2
ML
85362016-03-23 Martin Liska <mliska@suse.cz>
8537
8538 PR hsa/70337
8539 * plugin/plugin-hsa.c (GOMP_OFFLOAD_run): Copy shadow
8540 argument just in case a dispatched kernel uses that argument.
8541
ee2e7d51
TS
85422016-03-16 Thomas Schwinge <thomas@codesourcery.com>
8543
8544 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Adjust to
8545 -ftree-parallelize-loops/-fopenacc changes.
8546 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
8547 Likewise.
8548 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
8549 Likewise.
8550 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
8551 Likewise.
8552 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
8553 Likewise.
8554 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
8555 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
8556
be9f7143
TS
85572016-03-13 Thomas Schwinge <thomas@codesourcery.com>
8558
8559 * testsuite/lib/libgomp.exp (libgomp_init): Potentially append to
8560 always_ld_library_path the path to libgcc_s.
8561
f6c1032d
CP
85622016-03-10 Cesar Philippidis <cesar@codesourcery.com>
8563
8564 PR testsuite/70009
8565 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Make test data signed.
8566
5a6452e6
TV
85672016-03-09 Tom de Vries <tom@codesourcery.com>
8568
8569 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: New test.
8570 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Same.
8571 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
8572 Same.
8573 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Same.
8574 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Same.
8575 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Same.
8576 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Same.
8577
96a71bd5
MJ
85782016-03-07 Martin Jambor <mjambor@suse.cz>
8579
8580 * testsuite/lib/libgomp.exp
8581 (check_effective_target_hsa_offloading_selected_nocache): New.
8582 (check_effective_target_hsa_offloading_selected): Likewise.
8583 * testsuite/libgomp.hsa.c/c.exp: Likewise.
8584 * testsuite/libgomp.hsa.c/alloca-1.c: Likewise.
8585 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
8586 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
8587 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
8588 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
8589 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
8590 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
8591 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
8592 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
8593 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
8594 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
8595 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
8596 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
8597 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
8598 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
8599 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
8600
02e0b5b2
MJ
86012016-03-07 Martin Jambor <mjambor@suse.cz>
8602
8603 * testsuite/libgomp.c/examples-4/async_target-2.c: Only run on
8604 non-shared memory accelerators.
8605 * testsuite/libgomp.c/examples-4/device-1.c: Likewise.
8606 * testsuite/libgomp.c/examples-4/target-5.c: Likewise.
8607 * testsuite/libgomp.c/examples-4/target_data-6.c: Likewise.
8608 * testsuite/libgomp.c/examples-4/target_data-7.c: Likewise.
8609 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
8610 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
8611 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
8612 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
8613 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
8614
45548f30
MJ
86152016-03-07 Martin Jambor <mjambor@suse.cz>
8616
8617 * testsuite/lib/libgomp.exp (libgomp_init): Append -Wno-hsa to
8618 ALWAYS_CFLAGS.
8619
da3d46cb
JJ
86202016-03-02 Jakub Jelinek <jakub@redhat.com>
8621
8622 PR libgomp/69555
8623 * testsuite/libgomp.c++/pr69555-1.C: New test.
8624 * testsuite/libgomp.c++/pr69555-2.C: New test.
8625
622174b2
KM
86262016-02-26 Keith McDaniel <k.allen.mcdaniel@gmail.com>
8627 Martin Jambor <mjambor@suse.cz>
8628
8629 * testsuite/lib/libgomp.exp
8630 (check_effective_target_offload_device_shared_as): New proc.
8631 * testsuite/libgomp.c++/declare_target-1.C: New test.
8632
e6861a99
IV
86332016-02-25 Ilya Verbin <ilya.verbin@intel.com>
8634
8635 PR driver/68463
8636 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: Remove.
8637
f99c3557
TS
86382016-02-23 Thomas Schwinge <thomas@codesourcery.com>
8639
8640 * oacc-parallel.c (GOACC_parallel_keyed): Initialize dims.
8641 * plugin/plugin-nvptx.c (nvptx_exec): Provide default values for
8642 dims.
8643 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Adjust to
8644 -ftree-parallelize-loops/-fopenacc changes.
8645 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Likewise.
8646 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c:
8647 Likewise.
8648 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c:
8649 Likewise.
8650 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c:
8651 Likewise.
8652 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c:
8653 Likewise.
8654 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c:
8655 Likewise.
8656 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c:
8657 Likewise.
8658 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c:
8659 Likewise.
8660 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
8661 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c:
8662 Likewise.
8663 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Likewise.
8664 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c:
8665 Likewise.
8666 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Likewise.
8667 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c:
8668 Likewise.
8669
d5ace3b5
CP
86702016-02-22 Cesar Philippidis <cesar@codesourcery.com>
8671
8672 * testsuite/libgomp.oacc-c-c++-common/vprop.c: New test.
8673
f3609a89
JJ
86742016-02-19 Jakub Jelinek <jakub@redhat.com>
8675
8676 PR driver/69805
8677 * testsuite/libgomp.c/pr69805.c: New test.
8678
2175df99
TV
86792016-02-16 Tom de Vries <tom@codesourcery.com>
8680
8681 PR lto/67709
8682 * testsuite/libgomp.fortran/declare-simd-4.f90: New test.
8683
17b6426c
TV
86842016-02-09 Tom de Vries <tom@codesourcery.com>
8685
8686 PR tree-optimization/69599
8687 * testsuite/libgomp.c/omp-nested-3.c: New test.
8688 * testsuite/libgomp.c/pr46032-2.c: New test.
8689 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: New test.
8690 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: New test.
8691
34df756c
TV
86922016-02-09 Tom de Vries <tom@codesourcery.com>
8693
8694 PR lto/69707
8695 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: New test.
8696
5854ee30
AM
86972016-02-02 Alexander Monakov <amonakov@ispras.ru>
8698
8699 * testsuite/libgomp.c/target-31.c: Fix testcase.
8700
e70b6ad7
AM
87012016-02-02 Alexander Monakov <amonakov@ispras.ru>
8702
8703 * testsuite/libgomp.c/examples-4/teams-3.c: Add missing reduction
8704 clause.
8705 * testsuite/libgomp.c/examples-4/teams-4.c: Likewise.
8706 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Add missing
8707 reduction and map clauses.
8708 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
8709
bd78a45f
JN
87102016-02-02 James Norris <jnorris@codesourcery.com>
8711
8712 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Fix clause.
8713
41d809d3
TS
87142016-02-02 Thomas Schwinge <thomas@codesourcery.com>
8715
18f60146
TS
8716 * libgomp.map (GOACC_2.0): Remove GOACC_host_data.
8717 * oacc-parallel.c (GOACC_host_data): Remove function definition.
8718
1a06f5e6
TS
8719 * testsuite/lib/libgomp.exp: Skip hsa offloading for OpenACC test
8720 cases.
8721
033ff3d1
TS
8722 * plugin/configfrag.ac (HSA_KMT_LIB, HSA_KMT_LDFLAGS): New
8723 variables.
8724 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib)
8725 (hsa_kmt_lib): Set variables.
8726 * testsuite/lib/libgomp.exp (libgomp_init): Use them to amend
8727 always_ld_library_path.
8728 * Makefile.in: Regenerate.
8729 * configure: Likewise.
8730 * testsuite/Makefile.in: Likewise.
8731
4a88d9b7
TS
8732 * plugin/configfrag.ac (offload_additional_options)
8733 (offload_additional_lib_paths): Don't amend for hsa offloading.
8734 * configure: Regenerate.
8735
41d809d3
TS
8736 * plugin/configfrag.ac: Don't configure for offloading target if
8737 we don't build the corresponding plugin.
8738 * configure: Regenerate.
8739
b6adbb9f
NS
87402016-02-01 Nathan Sidwell <nathan@codesourcery.com>
8741
8742 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: New.
8743 * testsuite/libgomp.oacc-fortran/routine-7.f90: Serialize loop.
8744
8dfdb419
TV
87452016-01-26 Tom de Vries <tom@codesourcery.com>
8746
8747 PR tree-optimization/69110
8748 * testsuite/libgomp.c/pr69110.c: New test.
8749
02ef53f2
RB
87502016-01-25 Richard Biener <rguenther@suse.de>
8751
8752 PR lto/69393
8753 * testsuite/libgomp.c++/pr69393.C: New testcase.
8754
eb4048f2
IV
87552016-01-22 Ilya Verbin <ilya.verbin@intel.com>
8756
8757 * target.c (gomp_get_target_fn_addr): Allow host fallback if target
8758 function wasn't mapped to the device with non-shared memory.
8759
b235cdd5
IV
87602016-01-20 Ilya Verbin <ilya.verbin@intel.com>
8761
8762 * task.c (gomp_create_target_task): Set firstprivate_copies to NULL.
8763
b2b40051
MJ
87642016-01-19 Martin Jambor <mjambor@suse.cz>
8765 Martin Liska <mliska@suse.cz>
8766
8767 * plugin/Makefrag.am: Add HSA plugin requirements.
8768 * plugin/configfrag.ac (HSA_RUNTIME_INCLUDE): New variable.
8769 (HSA_RUNTIME_LIB): Likewise.
8770 (HSA_RUNTIME_CPPFLAGS): Likewise.
8771 (HSA_RUNTIME_INCLUDE): New substitution.
8772 (HSA_RUNTIME_LIB): Likewise.
8773 (HSA_RUNTIME_LDFLAGS): Likewise.
8774 (hsa-runtime): New configure option.
8775 (hsa-runtime-include): Likewise.
8776 (hsa-runtime-lib): Likewise.
8777 (PLUGIN_HSA): New substitution variable.
8778 Fill HSA_RUNTIME_INCLUDE and HSA_RUNTIME_LIB according to the new
8779 configure options.
8780 (PLUGIN_HSA_CPPFLAGS): Likewise.
8781 (PLUGIN_HSA_LDFLAGS): Likewise.
8782 (PLUGIN_HSA_LIBS): Likewise.
8783 Check that we have access to HSA run-time.
8784 * libgomp-plugin.h (offload_target_type): New element
8785 OFFLOAD_TARGET_TYPE_HSA.
8786 * libgomp.h (gomp_target_task): New fields firstprivate_copies and
8787 args.
8788 (bool gomp_create_target_task): Updated.
8789 (gomp_device_descr): Extra parameter of run_func and async_run_func,
8790 new field can_run_func.
8791 * libgomp_g.h (GOMP_target_ext): Update prototype.
8792 * oacc-host.c (host_run): Added a new parameter args.
8793 * target.c (calculate_firstprivate_requirements): New function.
8794 (copy_firstprivate_data): Likewise.
8795 (gomp_target_fallback_firstprivate): Use them.
8796 (gomp_target_unshare_firstprivate): New function.
8797 (gomp_get_target_fn_addr): Allow returning NULL for shared memory
8798 devices.
8799 (GOMP_target): Do host fallback for all shared memory devices. Do not
8800 pass any args to plugins.
8801 (GOMP_target_ext): Introduce device-specific argument parameter args.
8802 Allow host fallback if device shares memory. Do not remap data if
8803 device has shared memory.
8804 (gomp_target_task_fn): Likewise. Also treat shared memory devices
8805 like host fallback for mappings.
8806 (GOMP_target_data): Treat shared memory devices like host fallback.
8807 (GOMP_target_data_ext): Likewise.
8808 (GOMP_target_update): Likewise.
8809 (GOMP_target_update_ext): Likewise. Also pass NULL as args to
8810 gomp_create_target_task.
8811 (GOMP_target_enter_exit_data): Likewise.
8812 (omp_target_alloc): Treat shared memory devices like host fallback.
8813 (omp_target_free): Likewise.
8814 (omp_target_is_present): Likewise.
8815 (omp_target_memcpy): Likewise.
8816 (omp_target_memcpy_rect): Likewise.
8817 (omp_target_associate_ptr): Likewise.
8818 (gomp_load_plugin_for_device): Also load can_run.
8819 * task.c (GOMP_PLUGIN_target_task_completion): Free
8820 firstprivate_copies.
8821 (gomp_create_target_task): Accept new argument args and store it to
8822 ttask.
8823 * plugin/plugin-hsa.c: New file.
8824
5d7804a9
TV
88252016-01-18 Tom de Vries <tom@codesourcery.com>
8826
8827 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: New test.
8828 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Same.
8829 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c: Same.
8830 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c: Same.
8831 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c: Same.
8832 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c: Same.
8833 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c: Same.
8834 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c: Same.
8835 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c: Same.
8836 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c: Same.
8837 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
8838 Same.
8839 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
8840 Same.
8841 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c: Same.
8842 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c: Same.
8843 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Same.
8844 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c: Same.
8845 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Same.
8846 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c: Same.
8847 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Same.
8848 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
8849 Same.
8850 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c: Same.
8851
cb11f3cf
JJ
88522016-01-15 Jakub Jelinek <jakub@redhat.com>
8853
8854 * task.c (GOMP_PLUGIN_target_task_completion): Add missing return.
8855
33a126a6
CP
88562016-01-15 Cesar Philippidis <cesar@codesourcery.com>
8857
8858 * testsuite/libgomp.oacc-fortran/kernels-data.f90: New test.
8859
cdf6119d
JN
88602016-01-12 James Norris <jnorris@codesourcery.com>
8861
8862 * libgomp.texi: Updates for OpenACC.
8863
0d58938e
AM
88642016-01-11 Alexander Monakov <amonakov@ispras.ru>
8865
8866 * plugin/plugin-nvptx.c (link_ptx): Do not set CU_JIT_TARGET.
8867
95918b49
L
88682016-01-07 H.J. Lu <hongjiu.lu@intel.com>
8869
8870 PR fortran/66680
8871 * testsuite/libgomp.fortran/pr66680.f90: New test.
8872
8fc708b7
JJ
88732016-01-07 Jakub Jelinek <jakub@redhat.com>
8874
8875 PR middle-end/68960
8876 * testsuite/libgomp.c/pr68960.c: New test.
8877
e9b596c1
NS
88782016-01-06 Nathan Sidwell <nathan@acm.org>
8879
1a14faf2 8880 * openacc.h (acc_on_device): Add routine pragma for C++ wrapper.
e9b596c1
NS
8881 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: New.
8882
21fa2a29
JJ
88832016-01-04 Jakub Jelinek <jakub@redhat.com>
8884
818ab71a
JJ
8885 Update copyright years.
8886
21fa2a29
JJ
8887 * libgomp.texi: Bump @copying's copyright year.
8888
9310efbc
NS
88892015-12-31 Nathan Sidwell <nathan@acm.org>
8890
8891 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Correct
8892 dg-additional-options syntax.
8893 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
8894 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
8895 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
8896 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
8897 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
8898 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
8899 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
8900 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
8901 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
8902 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
8903 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
8904 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
8905 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
8906 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
8907 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
8908 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
8909 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
8910 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
8911
4a38b02b
IV
89122015-12-15 Ilya Verbin <ilya.verbin@intel.com>
8913
8914 * libgomp.h (REFCOUNT_LINK): Define.
8915 (struct splay_tree_key_s): Add link_key.
8916 * target.c (gomp_map_vars): Treat REFCOUNT_LINK objects as not mapped.
8917 Replace target address of the pointer with target address of newly
8918 mapped object in the splay tree. Set link pointer on target to the
8919 device address of the mapped object.
8920 (gomp_unmap_vars): Restore target address of the pointer in the splay
8921 tree for REFCOUNT_LINK objects after unmapping.
8922 (gomp_load_image_to_device): Set refcount to REFCOUNT_LINK for "omp
8923 declare target link" objects.
8924 (gomp_unload_image_from_device): Replace j with i. Force unmap of all
8925 "omp declare target link" objects, which were mapped for the image.
8926 (gomp_exit_data): Restore target address of the pointer in the splay
8927 tree for REFCOUNT_LINK objects after unmapping.
8928 * testsuite/libgomp.c/target-link-1.c: New file.
8929
d84ffc0a
IV
89302015-12-14 Ilya Verbin <ilya.verbin@intel.com>
8931
8932 * libgomp.h (gomp_device_state): New enum.
8933 (struct gomp_device_descr): Replace is_initialized with state.
8934 (gomp_fini_device): Remove declaration.
8935 * oacc-host.c (host_dispatch): Use state instead of is_initialized.
8936 * oacc-init.c (acc_init_1): Use state instead of is_initialized.
8937 (acc_shutdown_1): Likewise. Inline gomp_fini_device.
8938 (acc_set_device_type): Use state instead of is_initialized.
8939 (acc_set_device_num): Likewise.
8940 * target.c (resolve_device): Use state instead of is_initialized.
8941 Do not initialize finalized device.
8942 (gomp_map_vars): Do nothing if device is finalized.
8943 (gomp_unmap_vars): Likewise.
8944 (gomp_update): Likewise.
8945 (GOMP_offload_register_ver): Use state instead of is_initialized.
8946 (GOMP_offload_unregister_ver): Likewise.
8947 (gomp_init_device): Likewise.
8948 (gomp_unload_device): Likewise.
8949 (gomp_fini_device): Remove.
8950 (gomp_get_target_fn_addr): Do nothing if device is finalized.
8951 (GOMP_target): Go to host fallback if device is finalized.
8952 (GOMP_target_ext): Likewise.
8953 (gomp_exit_data): Do nothing if device is finalized.
8954 (gomp_target_task_fn): Go to host fallback if device is finalized.
8955 (gomp_target_fini): New static function.
8956 (gomp_target_init): Use state instead of is_initialized.
8957 Call gomp_target_fini at exit.
8958
76680678
TV
89592015-12-09 Tom de Vries <tom@codesourcery.com>
8960
8961 PR tree-optimization/68716
8962 * testsuite/libgomp.c/omp-nested-2.c: New test.
8963
ff7a55bf
TS
89642015-12-02 Thomas Schwinge <thomas@codesourcery.com>
8965
8966 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: Restrict to
8967 target openacc_nvidia_accel_selected.
8968 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: Likewise.
8969 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: Likewise.
8970 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: Remove file.
8971 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: Remove file.
8972
37d5ad46
JB
89732015-12-01 Julian Brown <julian@codesourcery.com>
8974 James Norris <James_Norris@mentor.com>
8975
8976 * oacc-parallel.c (GOACC_host_data): New function.
8977 * libgomp.map (GOACC_host_data): Add to GOACC_2.0.1.
8978 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: New test.
8979 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: New test.
8980 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: New test.
8981 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: New test.
8982 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: New test.
8983 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New test.
8984
db941d7e
CP
89852015-11-30 James Norris <jnorris@codesourcery.com>
8986 Cesar Philippidis <cesar@codesourcery.com>
8987
8988 libgomp/
8989 * libgomp.oacc-fortran/routine-5.f90: New test.
8990 * libgomp.oacc-fortran/routine-7.f90: New test.
8991 * libgomp.oacc-fortran/routine-9.f90: New test.
8992
e0ca27c5
TV
89932015-11-30 Tom de Vries <tom@codesourcery.com>
8994
8995 PR tree-optimization/46032
8996 * testsuite/libgomp.c/pr46032.c: New test.
8997
aec17bfe
JJ
89982015-11-27 Jakub Jelinek <jakub@redhat.com>
8999
8e4e4719
JJ
9000 PR libgomp/68579
9001 * task.c (gomp_task_run_post_handle_depend_hash): New forward decl.
9002 (gomp_create_target_task): Call it before freeing
9003 GOMP_TARGET_TASK_DATA tasks.
9004
aec17bfe
JJ
9005 PR c/63326
9006 * testsuite/libgomp.c/cancel-parallel-2.c (foo): Add semicolon
9007 in between case label and OpenMP standalone directives.
9008 * testsuite/libgomp.c++/cancel-parallel-2.C (foo): Likewise.
9009
6cfe90e6
DE
90102015-11-26 David Edelsohn <dje.gcc@gmail.com>
9011
9012 * configure: Regenerate.
9013
0e65fd7d
JJ
90142015-11-26 Jakub Jelinek <jakub@redhat.com>
9015
9016 * testsuite/libgomp.c/target-35.c: New test.
9017
dc7a8b4b
JN
90182015-11-22 James Norris <jnorris@codesourcery.com>
9019 Cesar Philippidis <cesar@codesourcery.com>
9020
9021 * testsuite/libgomp.oacc-fortran/declare-1.f90: New test.
9022 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
9023 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
9024 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
9025 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
9026
48a78aee
JJ
90272015-11-20 Jakub Jelinek <jakub@redhat.com>
9028
9029 PR middle-end/68221
9030 * testsuite/libgomp.c/reduction-11.c: Remove xfail.
9031 * testsuite/libgomp.c/reduction-12.c: Likewise.
9032 * testsuite/libgomp.c++/reduction-11.C: Likewise.
9033 * testsuite/libgomp.c++/reduction-12.C: Likewise.
9034
2d256816
NS
90352015-11-19 Nathan Sidwell <nathan@codesourcery.com>
9036
9037 * libgomp.oacc-c-c++-common/reduction-dbl.c: New.
9038 * libgomp.oacc-c-c++-common/reduction-flt.c: New.
9039 * libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Use typedef.
9040 * libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Use typedef.
9041 * libgomp.oacc-c-c++-common/reduction-2.c: Uncomment broken tests
9042 and fix.
9043 * libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
9044 * libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
9045
33f47f42
NS
90462015-11-18 Nathan Sidwell <nathan@codesourcery.com>
9047
9048 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Add
9049 worker & gang cases.
9050 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
9051
3d7bfee0
CP
90522015-11-17 Cesar Philippidis <cesar@codesourcery.com>
9053
9054 * config/nvptx/priority_queue.c: New file.
9055
00b9bd52
JJ
90562015-11-14 Jakub Jelinek <jakub@redhat.com>
9057
9058 * libgomp.texi: Update references from OpenMP 4.0 to OpenMP 4.5
9059 sections.
9060
e4606348
JJ
90612015-11-14 Jakub Jelinek <jakub@redhat.com>
9062 Aldy Hernandez <aldyh@redhat.com>
9063 Ilya Verbin <ilya.verbin@intel.com>
9064
9065 * ordered.c (gomp_doacross_init, GOMP_doacross_post,
9066 GOMP_doacross_wait, gomp_doacross_ull_init, GOMP_doacross_ull_post,
9067 GOMP_doacross_ull_wait): For GFS_GUIDED don't divide number of
9068 iterators or IV by chunk size.
9069 * parallel.c (gomp_resolve_num_threads): Don't assume that
9070 if thr->ts.team is non-NULL, then pool must be non-NULL.
9071 * libgomp-plugin.h (GOMP_PLUGIN_target_task_completion): Declare.
9072 * libgomp.map (GOMP_PLUGIN_1.1): New symbol version, export
9073 GOMP_PLUGIN_target_task_completion.
9074 * Makefile.am (libgomp_la_SOURCES): Add priority_queue.c.
9075 * Makefile.in: Regenerate.
9076 * libgomp.h: Shuffle prototypes and forward definitions around so
9077 priority queues can be defined.
9078 (enum gomp_task_kind): Add GOMP_TASK_ASYNC_RUNNING.
9079 (enum gomp_target_task_state): New enum.
9080 (struct gomp_target_task): Add state, tgt, task and team fields.
9081 (gomp_create_target_task): Change return type to bool, add
9082 state argument.
9083 (gomp_target_task_fn): Change return type to bool.
9084 (struct gomp_device_descr): Add async_run_func.
9085 (struct gomp_task): Remove children, next_child, prev_child,
9086 next_queue, prev_queue, next_taskgroup, prev_taskgroup.
9087 Add pnode field.
9088 (struct gomp_taskgroup): Remove children.
9089 Add taskgroup_queue.
9090 (struct gomp_team): Change task_queue type to a priority queue.
9091 (splay_compare): Define inline.
9092 (priority_queue_offset): New.
9093 (priority_node_to_task): New.
9094 (task_to_priority_node): New.
9095 * oacc-mem.c: Do not include splay-tree.h.
9096 * priority_queue.c: New file.
9097 * priority_queue.h: New file.
9098 * splay-tree.c: Do not include splay-tree.h.
9099 (splay_tree_foreach_internal): New.
9100 (splay_tree_foreach): New.
9101 * splay-tree.h: Become re-entrant if splay_tree_prefix is defined.
9102 (splay_tree_callback): Define typedef.
9103 * target.c (splay_compare): Move to libgomp.h.
9104 (GOMP_target): Don't adjust *thr in any way around running offloaded
9105 task.
9106 (GOMP_target_ext): Likewise. Handle target nowait.
9107 (GOMP_target_update_ext, GOMP_target_enter_exit_data): Check
9108 return value from gomp_create_target_task, if false, fallthrough
9109 as if no dependencies exist.
9110 (gomp_target_task_fn): Change return type to bool, return true
9111 if the task should have another part scheduled later. Handle
9112 target nowait.
9113 (gomp_load_plugin_for_device): Initialize async_run.
9114 * task.c (gomp_init_task): Initialize children_queue.
9115 (gomp_clear_parent_in_list): New.
9116 (gomp_clear_parent_in_tree): New.
9117 (gomp_clear_parent): Handle priorities.
9118 (GOMP_task): Likewise.
9119 (priority_queue_move_task_first,
9120 gomp_target_task_completion, GOMP_PLUGIN_target_task_completion):
9121 New functions.
9122 (gomp_create_target_task): Use priority queues. Change return type
9123 to bool, add state argument, return false if for async
9124 {{enter,exit} data,update} constructs no dependencies need to be
9125 waited for, handle target nowait. Set task->fn to NULL instead of
9126 gomp_target_task_fn.
9127 (verify_children_queue): Remove.
9128 (priority_list_upgrade_task): New.
9129 (priority_queue_upgrade_task): New.
9130 (verify_task_queue): Remove.
9131 (priority_list_downgrade_task): New.
9132 (priority_queue_downgrade_task): New.
9133 (gomp_task_run_pre): Use priority queues.
9134 Abstract code out to priority_queue_downgrade_task.
9135 (gomp_task_run_post_handle_dependers): Use priority queues.
9136 (gomp_task_run_post_remove_parent): Likewise.
9137 (gomp_task_run_post_remove_taskgroup): Likewise.
9138 (gomp_barrier_handle_tasks): Likewise. Handle target nowait target
9139 tasks specially.
9140 (GOMP_taskwait): Likewise.
9141 (gomp_task_maybe_wait_for_dependencies): Likewise. Abstract code to
9142 priority-queue_upgrade_task.
9143 (GOMP_taskgroup_start): Use priority queues.
9144 (GOMP_taskgroup_end): Likewise. Handle target nowait target tasks
9145 specially. If taskgroup is NULL, and thr->ts.level is 0, act as a
9146 barrier.
9147 * taskloop.c (GOMP_taskloop): Handle priorities.
9148 * team.c (gomp_new_team): Call priority_queue_init.
9149 (free_team): Call priority_queue_free.
9150 (gomp_free_thread): Call gomp_team_end if thr->ts.team is artificial
9151 team created for target nowait in implicit parallel region.
9152 (gomp_team_start): For nested check, test thr->ts.level instead of
9153 thr->ts.team != NULL.
9154 * testsuite/libgomp.c/doacross-3.c: New test.
9155 * testsuite/libgomp.c/ordered-5.c: New test.
9156 * testsuite/libgomp.c/priority.c: New test.
9157 * testsuite/libgomp.c/target-31.c: New test.
9158 * testsuite/libgomp.c/target-32.c: New test.
9159 * testsuite/libgomp.c/target-33.c: New test.
9160 * testsuite/libgomp.c/target-34.c: New test.
9161
1d1ab74f
NS
91622015-11-13 Nathan Sidwell <nathan@codesourcery.com>
9163
c5a64cfe
NS
9164 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: New.
9165
1d1ab74f
NS
9166 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Sequential
9167 loop is sequential.
9168
dd3c1b14
NS
91692015-11-13 Nathan Sidwell <nathan@codesourcery.com>
9170
9171 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: New.
9172 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: New.
9173
6e232ba4
JN
91742015-11-12 James Norris <jnorris@codesourcery.com>
9175 Joseph Myers <joseph@codesourcery.com>
9176
9177 * libgomp.map (GOACC_2.0.1): Export GOACC_declare.
9178 * oacc-parallel.c (GOACC_declare): New function.
9179 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: New test.
9180 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Likewise.
9181 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Likewise.
9182 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Likewise.
9183 * testsuite/libgomp.oacc-c++/declare-1.C: Likewise.
9184
fffeedeb
NS
91852015-11-12 Nathan Sidwell <nathan@codesourcery.com>
9186
9187 * testsuite/libgomp.oacc-c-c++-common/default-1.c: New.
9188
182190f2
NS
91892015-11-1 Nathan Sidwell <nathan@codesourcery.com>
9190
9191 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: New.
9192 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: New.
9193
36fa0f5f
NS
91942015-11-09 Nathan Sidwell <nathan@codesourcery.com>
9195
d350c40c
NS
9196 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Remove
9197 inadvertent commit.
9198
91992015-11-09 Nathan Sidwell <nathan@codesourcery.com>
9200
36fa0f5f
NS
9201 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: New.
9202 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: New.
9203 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: New.
9204 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: New.
9205 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: New.
9206
66a5f0b4
TS
92072015-11-06 Thomas Schwinge <thomas@codesourcery.com>
9208
9209 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: XFAIL.
9210 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
9211
e01d41e5
JJ
92122015-11-05 Jakub Jelinek <jakub@redhat.com>
9213 Ilya Verbin <ilya.verbin@intel.com>
9214
9215 * libgomp_g.h (GOMP_loop_nonmonotonic_dynamic_next,
9216 GOMP_loop_nonmonotonic_dynamic_start,
9217 GOMP_loop_nonmonotonic_guided_next,
9218 GOMP_loop_nonmonotonic_guided_start,
9219 GOMP_loop_ull_nonmonotonic_dynamic_next,
9220 GOMP_loop_ull_nonmonotonic_dynamic_start,
9221 GOMP_loop_ull_nonmonotonic_guided_next,
9222 GOMP_loop_ull_nonmonotonic_guided_start,
9223 GOMP_parallel_loop_nonmonotonic_dynamic,
9224 GOMP_parallel_loop_nonmonotonic_guided): New prototypes.
9225 (GOMP_target_41): Renamed to ...
9226 (GOMP_target_ext): ... this. Add num_teams and thread_limit
9227 arguments.
9228 (GOMP_target_data_41): Renamed to ...
9229 (GOMP_target_data_ext): ... this.
9230 (GOMP_target_update_41): Renamed to ...
9231 (GOMP_target_update_ext): ... this.
9232 * libgomp.map (GOMP_4.5): Export GOMP_target_ext,
9233 GOMP_target_data_ext and GOMP_target_update_ext instead of
9234 GOMP_target_41, GOMP_target_data_41 and GOMP_target_update_41.
9235 Export GOMP_loop_nonmonotonic_dynamic_next,
9236 GOMP_loop_nonmonotonic_dynamic_start,
9237 GOMP_loop_nonmonotonic_guided_next,
9238 GOMP_loop_nonmonotonic_guided_start,
9239 GOMP_loop_ull_nonmonotonic_dynamic_next,
9240 GOMP_loop_ull_nonmonotonic_dynamic_start,
9241 GOMP_loop_ull_nonmonotonic_guided_next,
9242 GOMP_loop_ull_nonmonotonic_guided_start,
9243 GOMP_parallel_loop_nonmonotonic_dynamic and
9244 GOMP_parallel_loop_nonmonotonic_guided.
9245 * loop.c (GOMP_parallel_loop_nonmonotonic_dynamic,
9246 GOMP_parallel_loop_nonmonotonic_guided,
9247 GOMP_loop_nonmonotonic_dynamic_start,
9248 GOMP_loop_nonmonotonic_guided_start,
9249 GOMP_loop_nonmonotonic_dynamic_next,
9250 GOMP_loop_nonmonotonic_guided_next): New aliases or functions.
9251 * loop_ull.c (GOMP_loop_ull_nonmonotonic_dynamic_start,
9252 GOMP_loop_ull_nonmonotonic_guided_start,
9253 GOMP_loop_ull_nonmonotonic_dynamic_next,
9254 GOMP_loop_ull_nonmonotonic_guided_next): Likewise.
9255 * target.c (gomp_map_0len_lookup, gomp_map_val): New inline
9256 functions.
9257 (gomp_map_vars): Handle GOMP_MAP_ALWAYS_POINTER. For
9258 GOMP_MAP_ZERO_LEN_ARRAY_SECTION use gomp_map_0len_lookup.
9259 Use gomp_map_val function.
9260 (gomp_target_fallback_firstprivate): New static function.
9261 (GOMP_target_41): Renamed to ...
9262 (GOMP_target_ext): ... this. Add num_teams and thread_limit
9263 arguments. Move firstprivate fallback handling into a new
9264 function.
9265 (GOMP_target_data_41): Renamed to ...
9266 (GOMP_target_data_ext): ... this.
9267 (GOMP_target_update_41): Renamed to ...
9268 (GOMP_target_update_ext): ... this.
9269 (gomp_exit_data): For GOMP_MAP_*ZERO_LEN* use
9270 gomp_map_0len_lookup instead of gomp_map_lookup.
9271 (omp_target_is_present): Use gomp_map_0len_lookup instead of
9272 gomp_map_lookup.
9273 * testsuite/libgomp.c/target-28.c: Likewise.
9274 * testsuite/libgomp.c/monotonic-1.c: New test.
9275 * testsuite/libgomp.c/monotonic-2.c: New test.
9276 * testsuite/libgomp.c/nonmonotonic-1.c: New test.
9277 * testsuite/libgomp.c/nonmonotonic-2.c: New test.
9278 * testsuite/libgomp.c/pr66199-5.c: New test.
9279 * testsuite/libgomp.c/pr66199-6.c: New test.
9280 * testsuite/libgomp.c/pr66199-7.c: New test.
9281 * testsuite/libgomp.c/pr66199-8.c: New test.
9282 * testsuite/libgomp.c/pr66199-9.c: New test.
9283 * testsuite/libgomp.c/reduction-11.c: New test.
9284 * testsuite/libgomp.c/reduction-12.c: New test.
9285 * testsuite/libgomp.c/reduction-13.c: New test.
9286 * testsuite/libgomp.c/reduction-14.c: New test.
9287 * testsuite/libgomp.c/reduction-15.c: New test.
9288 * testsuite/libgomp.c/target-12.c (main): Adjust for
9289 omp_target_is_present change for one-past-last element.
9290 * testsuite/libgomp.c/target-17.c (foo): Drop tests where
9291 the same var is both mapped and privatized.
9292 * testsuite/libgomp.c/target-19.c (foo): Adjust for different
9293 handling of zero-length array sections.
9294 * testsuite/libgomp.c/target-28.c: New test.
9295 * testsuite/libgomp.c/target-29.c: New test.
9296 * testsuite/libgomp.c/target-30.c: New test.
9297 * testsuite/libgomp.c/target-teams-1.c: New test.
9298 * testsuite/libgomp.c++/member-6.C: New test.
9299 * testsuite/libgomp.c++/member-7.C: New test.
9300 * testsuite/libgomp.c++/monotonic-1.C: New test.
9301 * testsuite/libgomp.c++/monotonic-2.C: New test.
9302 * testsuite/libgomp.c++/nonmonotonic-1.C: New test.
9303 * testsuite/libgomp.c++/nonmonotonic-2.C: New test.
9304 * testsuite/libgomp.c++/pr66199-3.C: New test.
9305 * testsuite/libgomp.c++/pr66199-4.C: New test.
9306 * testsuite/libgomp.c++/pr66199-5.C: New test.
9307 * testsuite/libgomp.c++/pr66199-6.C: New test.
9308 * testsuite/libgomp.c++/pr66199-7.C: New test.
9309 * testsuite/libgomp.c++/pr66199-8.C: New test.
9310 * testsuite/libgomp.c++/pr66199-9.C: New test.
9311 * testsuite/libgomp.c++/reduction-11.C: New test.
9312 * testsuite/libgomp.c++/reduction-12.C: New test.
9313 * testsuite/libgomp.c++/target-13.C: New test.
9314 * testsuite/libgomp.c++/target-14.C: New test.
9315 * testsuite/libgomp.c++/target-15.C: New test.
9316 * testsuite/libgomp.c++/target-16.C: New test.
9317 * testsuite/libgomp.c++/target-17.C: New test.
9318 * testsuite/libgomp.c++/target-18.C: New test.
9319 * testsuite/libgomp.c++/target-19.C: New test.
9320
ccc8282b
NS
93212015-11-04 Nathan Sidwell <nathan@codesourcery.com>
9322
9323 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Fix dimensions
9324 and reduction copy.
9325 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
9326 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
9327 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
9328 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
9329 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
9330 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
9331 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
9332 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
9333 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
9334 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c: Likewise.
9335 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
9336 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
9337 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
9338 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New.
9339
5d6823a2
NS
93402015-11-04 Nathan Sidwell <nathan@codesourcery.com>
9341
9342 * libgomp.oacc-c-c++-common/loop-red-g-1.c: New.
9343 * libgomp.oacc-c-c++-common/loop-red-gwv-1.c: New.
9344 * libgomp.oacc-c-c++-common/loop-red-v-1.c: New.
9345 * libgomp.oacc-c-c++-common/loop-red-v-2.c: New.
9346 * libgomp.oacc-c-c++-common/loop-red-w-1.c: New.
9347 * libgomp.oacc-c-c++-common/loop-red-w-2.c: New.
9348 * libgomp.oacc-c-c++-common/loop-red-wv-1.c: New.
9349 * libgomp.oacc-fortran/reduction-5.f90: Avoid reference var.
9350
5c06742f
NS
93512015-11-03 Nathan Sidwell <nathan@codesourcery.com>
9352
9353 * libgomp.h (struct acc_dispatch_t): Remove args from exec_func.
9354 * plugin/plugin-nvptx.c (nvptx_exec): Remove sizes & kinds arg.
9355 (GOMP_OFFLOAD_openacc_parallel): Likewise.
9356 * oacc-host.c (host_openacc_exec): Likewise.
9357 * oacc-parallel.c (GOACC_parallel_keyed): Adjust exec_func call.
9358
4bf9e5a8
TS
93592015-11-03 Julian Brown <julian@codesourcery.com>
9360 Thomas Schwinge <thomas@codesourcery.com>
9361
9362 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: New file.
9363 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
9364 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c:
9365 Likewise.
9366 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: Likewise.
9367 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: Likewise.
9368
93692015-11-03 James Norris <jnorris@codesourcery.com>
9370
9371 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: New
9372 file.
9373 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c:
9374 Likewise.
9375 * testsuite/libgomp.oacc-c-c++-common/atomic_rw-1.c: Likewise.
9376 * testsuite/libgomp.oacc-c-c++-common/atomic_update-1.c: Likewise.
9377 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
9378 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: New file.
9379 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
9380
a0e701d8
NS
93812015-10-29 Nathan Sidwell <nathan@codesourcery.com>
9382
9383 * openacc.h (enum acc_device_t): Reformat. Ensure layout
9384 compatibility.
9385 (enum acc_async_t): Reformat.
9386 (acc_on_device): Declare compatible with builtin and provide C++
9387 wrapper.
9388 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: New.
9389
41e977ac
TS
93902015-10-29 Thomas Schwinge <thomas@codesourcery.com>
9391 Cesar Philippidis <cesar@codesourcery.com>
9392
9393 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: Rename to...
9394 * testsuite/libgomp.oacc-c-c++-common/combined-directives-1.c:
9395 ... this. Add a description of the test at the top of the file.
9396 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Rename file to...
9397 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90:
9398 ... this. Add a description of the test at the top of the file.
9399
e3091406
NS
94002015-10-28 Nathan Sidwell <nathan@codesourcery.com>
9401
9402 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: New.
9403 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: New.
9404 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: New.
9405 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: New.
9406 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: New.
9407 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: New.
9408
a1c1908b
NS
94092015-10-27 Nathan Sidwell <nathan@codesourcery.com>
9410
9411 * plugin/plugin-nvptx.c (nvptx_exec): Remove check on compute
9412 dimensions.
9413
b3962a4a
TS
94142015-10-27 Thomas Schwinge <thomas@codesourcery.com>
9415
9416 PR testsuite/68063
9417 * testsuite/libgomp.c++/member-1.C (A::m1): Add missing private clause.
9418
88bae6f4
TS
94192015-10-27 James Norris <jnorris@codesourcery.com>
9420
9421 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: New file.
9422 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Likewise.
9423
8baa7864
TS
94242015-10-26 Thomas Schwinge <thomas@codesourcery.com>
9425
bdeb752c
TS
9426 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Print to stderr.
9427 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
9428
ecd4fd43
TS
9429 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Remove explicit
9430 acc_device_nvidia usage.
9431 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
9432 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
9433 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
9434
aa8b7d30
TS
9435 * oacc-init.c (acc_shutdown): Call gomp_init_targets_once.
9436 * testsuite/libgomp.oacc-c-c++-common/lib-8.c: New file.
9437
7c8f138d
TS
9438 PR libgomp/66518
9439 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Resolve XFAIL.
9440
8baa7864
TS
9441 PR libgomp/65437
9442 PR libgomp/66518
9443 * oacc-mem.c (update_dev_host): Call goacc_lazy_initialize.
9444 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Remove XFAIL.
9445
88ebcde5
TV
94462015-10-23 Tom de Vries <tom@codesourcery.com>
9447
9448 PR testsuite/68063
9449 * testsuite/libgomp.c++/member-2.C (A::m1): Add missing private clause.
9450
9ef83c04
NS
94512015-10-20 Nathan Sidwell <nathan@codesourcery.com>
9452
9453 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Set sane
9454 vector_length.
9455 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
9456
3837c6d6
IV
94572015-10-14 Ilya Verbin <ilya.verbin@intel.com>
9458 Aleksander Ivanushenko <aleksander.ivanushenko@intel.com>
9459
9460 * target.c (gomp_map_vars): Initialize tgt->tgt_start and tgt->tgt_end
9461 to 0 when mapnum is 0.
9462
ac8a1965
SH
94632015-10-14 Sebastian Huber <sebastian.huber@embedded-brains.de>
9464
9465 * fortran.c (omp_get_place_proc_ids_, omp_get_partition_place_nums_):
9466 Cast to int from int32_t.
9467
d9a6bd32
JJ
94682015-10-13 Jakub Jelinek <jakub@redhat.com>
9469 Aldy Hernandez <aldyh@redhat.com>
9470 Ilya Verbin <ilya.verbin@intel.com>
9471
9472 * config/linux/affinity.c (omp_get_place_num_procs,
9473 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
9474 * config/linux/doacross.h: New file.
9475 * config/posix/affinity.c (omp_get_place_num_procs,
9476 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
9477 * config/posix/doacross.h: New file.
9478 * env.c: Include gomp-constants.h.
9479 (struct gomp_task_icv): Rename run_sched_modifier to
9480 run_sched_chunk_size.
9481 (gomp_max_task_priority_var): New variable.
9482 (parse_schedule): Rename run_sched_modifier to run_sched_chunk_size.
9483 (handle_omp_display_env): Change _OPENMP value from 201307 to
9484 201511. Print OMP_MAX_TASK_PRIORITY.
9485 (initialize_env): Parse OMP_MAX_TASK_PRIORITY.
9486 (omp_set_schedule, omp_get_schedule): Rename modifier argument to
9487 chunk_size and run_sched_modifier to run_sched_chunk_size.
9488 (omp_get_max_task_priority, omp_get_initial_device,
9489 omp_get_num_places, omp_get_place_num, omp_get_partition_num_places,
9490 omp_get_partition_place_nums): New functions.
9491 * fortran.c (omp_set_schedule_, omp_set_schedule_8_,
9492 omp_get_schedule_, omp_get_schedule_8_): Rename modifier argument
9493 to chunk_size.
9494 (omp_get_num_places_, omp_get_place_num_procs_,
9495 omp_get_place_num_procs_8_, omp_get_place_proc_ids_,
9496 omp_get_place_proc_ids_8_, omp_get_place_num_,
9497 omp_get_partition_num_places_, omp_get_partition_place_nums_,
9498 omp_get_partition_place_nums_8_, omp_get_initial_device_,
9499 omp_get_max_task_priority_): New functions.
9500 * libgomp_g.h (GOMP_loop_doacross_static_start,
9501 GOMP_loop_doacross_dynamic_start, GOMP_loop_doacross_guided_start,
9502 GOMP_loop_doacross_runtime_start, GOMP_loop_ull_doacross_static_start,
9503 GOMP_loop_ull_doacross_dynamic_start,
9504 GOMP_loop_ull_doacross_guided_start,
9505 GOMP_loop_ull_doacross_runtime_start, GOMP_doacross_post,
9506 GOMP_doacross_wait, GOMP_doacross_ull_post, GOMP_doacross_wait,
9507 GOMP_taskloop, GOMP_taskloop_ull, GOMP_target_41,
9508 GOMP_target_data_41, GOMP_target_update_41,
9509 GOMP_target_enter_exit_data): New prototypes.
9510 (GOMP_task): Add prototype argument.
9511 * libgomp.h (_LIBGOMP_CHECKING_): Define to 0 if not yet defined.
9512 (struct gomp_doacross_work_share): New type.
9513 (struct gomp_work_share): Add doacross field.
9514 (struct gomp_task_icv): Rename run_sched_modifier to
9515 run_sched_chunk_size.
9516 (enum gomp_task_kind): Rename GOMP_TASK_IFFALSE to
9517 GOMP_TASK_UNDEFERRED. Add comments.
9518 (struct gomp_task_depend_entry): Add comments.
9519 (struct gomp_task): Likewise.
9520 (struct gomp_taskgroup): Likewise.
9521 (struct gomp_target_task): New type.
9522 (struct gomp_team): Add comment.
9523 (gomp_get_place_proc_ids_8, gomp_doacross_init,
9524 gomp_doacross_ull_init, gomp_task_maybe_wait_for_dependencies,
9525 gomp_create_target_task, gomp_target_task_fn): New prototypes.
9526 (struct target_var_desc): New type.
9527 (struct target_mem_desc): Adjust comment. Use struct
9528 target_var_desc instead of splay_tree_key for list.
9529 (REFCOUNT_INFINITY): Define.
9530 (struct splay_tree_key_s): Remove copy_from field.
9531 (struct gomp_device_descr): Add dev2dev_func field.
9532 (enum gomp_map_vars_kind): New enum.
9533 (gomp_map_vars): Add one argument.
9534 * libgomp.map (OMP_4.5): Export omp_get_max_task_priority,
9535 omp_get_max_task_priority_, omp_get_num_places, omp_get_num_places_,
9536 omp_get_place_num_procs, omp_get_place_num_procs_,
9537 omp_get_place_num_procs_8_, omp_get_place_proc_ids,
9538 omp_get_place_proc_ids_, omp_get_place_proc_ids_8_, omp_get_place_num,
9539 omp_get_place_num_, omp_get_partition_num_places,
9540 omp_get_partition_num_places_, omp_get_partition_place_nums,
9541 omp_get_partition_place_nums_, omp_get_partition_place_nums_8_,
9542 omp_get_initial_device, omp_get_initial_device_, omp_target_alloc,
9543 omp_target_free, omp_target_is_present, omp_target_memcpy,
9544 omp_target_memcpy_rect, omp_target_associate_ptr and
9545 omp_target_disassociate_ptr.
9546 (GOMP_4.0.2): Renamed to ...
9547 (GOMP_4.5): ... this. Export GOMP_target_41, GOMP_target_data_41,
9548 GOMP_target_update_41, GOMP_target_enter_exit_data, GOMP_taskloop,
9549 GOMP_taskloop_ull, GOMP_loop_doacross_dynamic_start,
9550 GOMP_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
9551 GOMP_loop_doacross_static_start, GOMP_doacross_post,
9552 GOMP_doacross_wait, GOMP_loop_ull_doacross_dynamic_start,
9553 GOMP_loop_ull_doacross_guided_start,
9554 GOMP_loop_ull_doacross_runtime_start,
9555 GOMP_loop_ull_doacross_static_start, GOMP_doacross_ull_post and
9556 GOMP_doacross_ull_wait.
9557 * libgomp.texi: Document omp_get_max_task_priority.
9558 Rename modifier argument to chunk_size for omp_set_schedule and
9559 omp_get_schedule. Document OMP_MAX_TASK_PRIORITY env var.
9560 * loop.c (GOMP_loop_runtime_start): Adjust for run_sched_modifier
9561 to run_sched_chunk_size renaming.
9562 (GOMP_loop_ordered_runtime_start): Likewise.
9563 (gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
9564 gomp_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
9565 GOMP_parallel_loop_runtime_start): New functions.
9566 (GOMP_parallel_loop_runtime): Adjust for run_sched_modifier
9567 to run_sched_chunk_size renaming.
9568 (GOMP_loop_doacross_static_start, GOMP_loop_doacross_dynamic_start,
9569 GOMP_loop_doacross_guided_start): New functions or aliases.
9570 * loop_ull.c (GOMP_loop_ull_runtime_start): Adjust for
9571 run_sched_modifier to run_sched_chunk_size renaming.
9572 (GOMP_loop_ull_ordered_runtime_start): Likewise.
9573 (gomp_loop_ull_doacross_static_start,
9574 gomp_loop_ull_doacross_dynamic_start,
9575 gomp_loop_ull_doacross_guided_start,
9576 GOMP_loop_ull_doacross_runtime_start): New functions.
9577 (GOMP_loop_ull_doacross_static_start,
9578 GOMP_loop_ull_doacross_dynamic_start,
9579 GOMP_loop_ull_doacross_guided_start): New functions or aliases.
9580 * oacc-mem.c (acc_map_data, present_create_copy,
9581 gomp_acc_insert_pointer): Pass GOMP_MAP_VARS_OPENACC instead of false
9582 to gomp_map_vars.
9583 (gomp_acc_remove_pointer): Use copy_from from target_var_desc.
9584 * oacc-parallel.c (GOACC_data_start): Pass GOMP_MAP_VARS_OPENACC
9585 instead of false to gomp_map_vars.
9586 (GOACC_parallel_keyed): Likewise. Use copy_from from target_var_desc.
9587 * omp.h.in (omp_lock_hint_t): New type.
9588 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
9589 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
9590 omp_get_place_num, omp_get_partition_num_places,
9591 omp_get_partition_place_nums, omp_get_initial_device,
9592 omp_get_max_task_priority, omp_target_alloc, omp_target_free,
9593 omp_target_is_present, omp_target_memcpy, omp_target_memcpy_rect,
9594 omp_target_associate_ptr, omp_target_disassociate_ptr): New
9595 prototypes.
9596 * omp_lib.f90.in (omp_lock_hint_kind): New parameter.
9597 (omp_lock_hint_none, omp_lock_hint_uncontended,
9598 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
9599 omp_lock_hint_speculative): New parameters.
9600 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
9601 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
9602 omp_get_place_num, omp_get_partition_num_places,
9603 omp_get_partition_place_nums, omp_get_initial_device,
9604 omp_get_max_task_priority): New interfaces.
9605 (omp_set_schedule, omp_get_schedule): Rename modifier argument
9606 to chunk_size.
9607 * omp_lib.h.in (omp_lock_hint_kind): New parameter.
9608 (omp_lock_hint_none, omp_lock_hint_uncontended,
9609 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
9610 omp_lock_hint_speculative): New parameters.
9611 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
9612 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
9613 omp_get_place_num, omp_get_partition_num_places,
9614 omp_get_partition_place_nums, omp_get_initial_device,
9615 omp_get_max_task_priority): New functions and subroutines.
9616 * ordered.c: Include stdarg.h and string.h.
9617 (MAX_COLLAPSED_BITS): Define.
9618 (gomp_doacross_init, GOMP_doacross_post, GOMP_doacross_wait,
9619 gomp_doacross_ull_init, GOMP_doacross_ull_post,
9620 GOMP_doacross_ull_wait): New functions.
9621 * target.c: Include errno.h.
9622 (resolve_device): If device is not initialized, call
9623 gomp_init_device on it.
9624 (gomp_map_lookup): New function.
9625 (gomp_map_vars_existing): Add tgt_var argument, fill it in.
9626 Don't bump refcount if REFCOUNT_INFINITY. Handle
9627 GOMP_MAP_ALWAYS_TO_P.
9628 (get_kind): Rename is_openacc argument to short_mapkind.
9629 (gomp_map_pointer): Use gomp_map_lookup.
9630 (gomp_map_fields_existing): New function.
9631 (gomp_map_vars): Rename is_openacc argument to short_mapkind
9632 and is_target to pragma_kind. Handle GOMP_MAP_VARS_ENTER_DATA,
9633 handle GOMP_MAP_FIRSTPRIVATE_INT, GOMP_MAP_STRUCT,
9634 GOMP_MAP_USE_DEVICE_PTR, GOMP_MAP_ZERO_LEN_ARRAY_SECTION.
9635 Adjust for tgt->list changed type and copy_from living in there.
9636 (gomp_copy_from_async): Adjust for tgt->list changed type and
9637 copy_from living in there.
9638 (gomp_unmap_vars): Likewise.
9639 (gomp_update): Likewise. Rename is_openacc argument to
9640 short_mapkind. Don't fail if object is not mapped.
9641 (gomp_load_image_to_device): Initialize refcount to
9642 REFCOUNT_INFINITY.
9643 (gomp_target_fallback): New function.
9644 (gomp_get_target_fn_addr): Likewise.
9645 (GOMP_target): Adjust gomp_map_vars caller, use
9646 gomp_get_target_fn_addr and gomp_target_fallback.
9647 (GOMP_target_41): New function.
9648 (gomp_target_data_fallback): New function.
9649 (GOMP_target_data): Use it, adjust gomp_map_vars caller.
9650 (GOMP_target_data_41): New function.
9651 (GOMP_target_update): Adjust gomp_update caller.
9652 (GOMP_target_update_41): New function.
9653 (gomp_exit_data, GOMP_target_enter_exit_data,
9654 gomp_target_task_fn, omp_target_alloc, omp_target_free,
9655 omp_target_is_present, omp_target_memcpy,
9656 omp_target_memcpy_rect_worker, omp_target_memcpy_rect,
9657 omp_target_associate_ptr, omp_target_disassociate_ptr,
9658 gomp_load_plugin_for_device): New functions.
9659 * task.c: Include gomp-constants.h. Include taskloop.c
9660 twice to get GOMP_taskloop and GOMP_taskloop_ull definitions.
9661 (gomp_task_handle_depend): New function.
9662 (GOMP_task): Use it. Add priority argument. Use
9663 gomp-constant.h constants instead of hardcoded numbers.
9664 Rename GOMP_TASK_IFFALSE to GOMP_TASK_UNDEFERRED.
9665 (gomp_create_target_task): New function.
9666 (verify_children_queue, verify_taskgroup_queue,
9667 verify_task_queue): New functions.
9668 (gomp_task_run_pre): Call verify_*_queue functions.
9669 If an upcoming tied task is about to leave the sibling or
9670 taskgroup queues in an invalid state, adjust appropriately.
9671 Remove taskgroup argument. Add comments.
9672 (gomp_task_run_post_handle_dependers): Add comments.
9673 (gomp_task_run_post_remove_parent): Likewise.
9674 (gomp_barrier_handle_tasks): Adjust gomp_task_run_pre caller.
9675 (GOMP_taskwait): Likewise. Add comments.
9676 (gomp_task_maybe_wait_for_dependencies): Fix scheduling
9677 problem such that the first non parent_depends_on task does not
9678 end up at the end of the children queue.
9679 (GOMP_taskgroup_start): Rename GOMP_TASK_IFFALSE to
9680 GOMP_TASK_UNDEFERRED.
9681 (GOMP_taskgroup_end): Adjust gomp_task_run_pre caller.
9682 * taskloop.c: New file.
9683 * testsuite/lib/libgomp.exp
9684 (check_effective_target_offload_device_nonshared_as): New proc.
9685 * testsuite/libgomp.c/affinity-2.c: New test.
9686 * testsuite/libgomp.c/doacross-1.c: New test.
9687 * testsuite/libgomp.c/doacross-2.c: New test.
9688 * testsuite/libgomp.c/examples-4/declare_target-1.c (fib_wrapper):
9689 Add map clause to target.
9690 * testsuite/libgomp.c/examples-4/declare_target-4.c (accum): Likewise.
9691 * testsuite/libgomp.c/examples-4/declare_target-5.c (accum): Likewise.
9692 * testsuite/libgomp.c/examples-4/device-1.c (main): Likewise.
9693 * testsuite/libgomp.c/examples-4/device-3.c (main): Likewise.
9694 * testsuite/libgomp.c/examples-4/target_data-3.c (gramSchmidt):
9695 Likewise.
9696 * testsuite/libgomp.c/examples-4/teams-2.c (dotprod): Likewise.
9697 * testsuite/libgomp.c/examples-4/teams-3.c (dotprod): Likewise.
9698 * testsuite/libgomp.c/examples-4/teams-4.c (dotprod): Likewise.
9699 * testsuite/libgomp.c/for-2.h (OMPTGT, OMPTO, OMPFROM): Define if
9700 not defined. Use those where needed.
9701 * testsuite/libgomp.c/for-4.c: New test.
9702 * testsuite/libgomp.c/for-5.c: New test.
9703 * testsuite/libgomp.c/for-6.c: New test.
9704 * testsuite/libgomp.c/linear-1.c: New test.
9705 * testsuite/libgomp.c/ordered-4.c: New test.
9706 * testsuite/libgomp.c/pr66199-2.c (f2): Adjust for linear clause
9707 only allowed on the loop iterator.
9708 * testsuite/libgomp.c/pr66199-3.c: New test.
9709 * testsuite/libgomp.c/pr66199-4.c: New test.
9710 * testsuite/libgomp.c/reduction-7.c: New test.
9711 * testsuite/libgomp.c/reduction-8.c: New test.
9712 * testsuite/libgomp.c/reduction-9.c: New test.
9713 * testsuite/libgomp.c/reduction-10.c: New test.
9714 * testsuite/libgomp.c/target-1.c (fn2, fn3, fn4): Add
9715 map(tofrom:s).
9716 * testsuite/libgomp.c/target-2.c (fn2, fn3, fn4): Likewise.
9717 * testsuite/libgomp.c/target-7.c (foo): Add map(h) where needed.
9718 * testsuite/libgomp.c/target-11.c: New test.
9719 * testsuite/libgomp.c/target-12.c: New test.
9720 * testsuite/libgomp.c/target-13.c: New test.
9721 * testsuite/libgomp.c/target-14.c: New test.
9722 * testsuite/libgomp.c/target-15.c: New test.
9723 * testsuite/libgomp.c/target-16.c: New test.
9724 * testsuite/libgomp.c/target-17.c: New test.
9725 * testsuite/libgomp.c/target-18.c: New test.
9726 * testsuite/libgomp.c/target-19.c: New test.
9727 * testsuite/libgomp.c/target-20.c: New test.
9728 * testsuite/libgomp.c/target-21.c: New test.
9729 * testsuite/libgomp.c/target-22.c: New test.
9730 * testsuite/libgomp.c/target-23.c: New test.
9731 * testsuite/libgomp.c/target-24.c: New test.
9732 * testsuite/libgomp.c/target-25.c: New test.
9733 * testsuite/libgomp.c/target-26.c: New test.
9734 * testsuite/libgomp.c/target-27.c: New test.
9735 * testsuite/libgomp.c/taskloop-1.c: New test.
9736 * testsuite/libgomp.c/taskloop-2.c: New test.
9737 * testsuite/libgomp.c/taskloop-3.c: New test.
9738 * testsuite/libgomp.c/taskloop-4.c: New test.
9739 * testsuite/libgomp.c++/ctor-13.C: New test.
9740 * testsuite/libgomp.c++/doacross-1.C: New test.
9741 * testsuite/libgomp.c++/examples-4/declare_target-2.C:
9742 Replace offload_device with offload_device_nonshared_as.
9743 * testsuite/libgomp.c++/for-12.C: New test.
9744 * testsuite/libgomp.c++/for-13.C: New test.
9745 * testsuite/libgomp.c++/for-14.C: New test.
9746 * testsuite/libgomp.c++/linear-1.C: New test.
9747 * testsuite/libgomp.c++/member-1.C: New test.
9748 * testsuite/libgomp.c++/member-2.C: New test.
9749 * testsuite/libgomp.c++/member-3.C: New test.
9750 * testsuite/libgomp.c++/member-4.C: New test.
9751 * testsuite/libgomp.c++/member-5.C: New test.
9752 * testsuite/libgomp.c++/ordered-1.C: New test.
9753 * testsuite/libgomp.c++/reduction-5.C: New test.
9754 * testsuite/libgomp.c++/reduction-6.C: New test.
9755 * testsuite/libgomp.c++/reduction-7.C: New test.
9756 * testsuite/libgomp.c++/reduction-8.C: New test.
9757 * testsuite/libgomp.c++/reduction-9.C: New test.
9758 * testsuite/libgomp.c++/reduction-10.C: New test.
9759 * testsuite/libgomp.c++/reference-1.C: New test.
9760 * testsuite/libgomp.c++/simd14.C: New test.
9761 * testsuite/libgomp.c++/target-2.C (fn2): Add map(tofrom: s) clause.
9762 * testsuite/libgomp.c++/target-5.C: New test.
9763 * testsuite/libgomp.c++/target-6.C: New test.
9764 * testsuite/libgomp.c++/target-7.C: New test.
9765 * testsuite/libgomp.c++/target-8.C: New test.
9766 * testsuite/libgomp.c++/target-9.C: New test.
9767 * testsuite/libgomp.c++/target-10.C: New test.
9768 * testsuite/libgomp.c++/target-11.C: New test.
9769 * testsuite/libgomp.c++/target-12.C: New test.
9770 * testsuite/libgomp.c++/taskloop-1.C: New test.
9771 * testsuite/libgomp.c++/taskloop-2.C: New test.
9772 * testsuite/libgomp.c++/taskloop-3.C: New test.
9773 * testsuite/libgomp.c++/taskloop-4.C: New test.
9774 * testsuite/libgomp.c++/taskloop-5.C: New test.
9775 * testsuite/libgomp.c++/taskloop-6.C: New test.
9776 * testsuite/libgomp.c++/taskloop-7.C: New test.
9777 * testsuite/libgomp.c++/taskloop-8.C: New test.
9778 * testsuite/libgomp.c++/taskloop-9.C: New test.
9779 * testsuite/libgomp.fortran/affinity1.f90: New test.
9780 * testsuite/libgomp.fortran/affinity2.f90: New test.
9781
1f600fea
TV
97822015-10-13 Tom de Vries <tom@codesourcery.com>
9783
9784 PR tree-optimization/67476
9785 * testsuite/libgomp.c/autopar-3.c: New test.
9786 * testsuite/libgomp.c/autopar-4.c: New test.
9787 * testsuite/libgomp.c/autopar-5.c: New test.
9788 * testsuite/libgomp.c/autopar-6.c: New test.
9789 * testsuite/libgomp.c/autopar-7.c: New test.
9790 * testsuite/libgomp.c/autopar-8.c: New test.
9791
058a654b
JN
97922015-10-12 James Norris <jnorris@codesourcery.com>
9793
9794 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Fix loop
9795 initializer.
9796
9e531d37
DM
97972015-10-09 David Malcolm <dmalcolm@redhat.com>
9798
9799 * testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp,
9800 using load_gcc_lib.
9801
113020dc
TS
98022015-10-02 Thomas Schwinge <thomas@codesourcery.com>
9803
9804 * oacc-ptx.h: Remove file, moving its content into...
9805 * config/nvptx/fortran.c: ... here...
9806 * config/nvptx/oacc-init.c: ..., here...
9807 * config/nvptx/oacc-parallel.c: ..., and here.
9808 * config/nvptx/openacc.f90: New file.
9809 * plugin/plugin-nvptx.c: Don't include "oacc-ptx.h".
9810 (link_ptx): Don't link in predefined bits of PTX code.
9811
cc3cd79b
NS
98122015-09-30 Nathan Sidwell <nathan@codesourcery.com>
9813 Bernd Schmidt <bernds@codesourcery.com>
9814
9815 * plugin/plugin-nvptx.c (targ_fn_launch): Use GOMP_DIM_MAX.
9816 (struct targ_ptx_obj): New.
9817 (nvptx_tdata): Move earlier, change data format.
9818 (link_ptx): Take targ_ptx_obj ptr and count. Allow multiple
9819 objects.
9820 (GOMP_OFFLOAD_load_image): Adjust.
9821
4e2a5450
TS
98222015-09-30 Thomas Schwinge <thomas@codesourcery.com>
9823
9824 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Add checkpoint.
9825 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
9826 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
9827 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
9828 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
9829 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
9830 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
9831 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
9832 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
9833 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
9834 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
9835 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
9836 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
9837 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
9838 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
9839 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
9840 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
9841 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
9842 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
9843 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
9844 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
9845 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
9846 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
9847 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
9848 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
9849 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
9850 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
9851 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
9852 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
9853 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
9854 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
9855 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
9856 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
9857 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
9858 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
9859 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
9860 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
9861 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
9862 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
9863 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
9864 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
9865 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
9866 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
9867 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
9868 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
9869 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
9870 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
9871 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
9872 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
9873 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
9874 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
9875 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
9876 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
9877 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
9878 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
9879 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
9880 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
9881 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
9882 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
9883 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
9884 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
9885 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
9886 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
9887
164453bb
NS
98882015-09-29 Nathan Sidwell <nathan@codesourcery.com>
9889
9890 * oacc-init.c (acc_on_device): Force optimization level.
9891
a12a0437
NS
98922015-09-29 Nathan Sidwell <nathan@codesourcery.com>
9893
9894 * plugin/plugin-nvptx.c (ARRAYSIZE): Delete.
9895 (cuda_errlist): Delete.
9896 (cuda_error): Reimplement.
9897
3e32ee19
NS
98982015-09-28 Nathan Sidwell <nathan@codesourcery.com>
9899
9900 * libgomp.h (acc_dispatch_t): Replace separate geometry args with
9901 array.
9902 * libgomp.map (GOACC_parallel_keyed): New.
9903 * oacc-parallel.c (goacc_wait): Take pointer to va_list. Adjust
9904 all callers.
9905 (GOACC_parallel_keyed): New interface. Lose geometry arguments
9906 and take keyed varargs list. Adjust call to exec_func.
9907 (GOACC_parallel): Force host fallback.
9908 * libgomp_g.h (GOACC_parallel): Remove.
9909 (GOACC_parallel_keyed): Declare.
9910 * plugin/plugin-nvptx.c (struct targ_fn_launch): New struct.
93d90219 9911 (struct targ_gn_descriptor): Replace name field with launch field.
3e32ee19
NS
9912 (nvptx_exec): Lose separate geometry args, take array. Process
9913 dynamic dimensions and adjust.
9914 (struct nvptx_tdata): Replace fn_names field with fn_descs.
9915 (GOMP_OFFLOAD_load_image): Adjust for change in function table
9916 data.
9917 (GOMP_OFFLOAD_openacc_parallel): Adjust for change in dimension
9918 passing.
9919 * oacc-host.c (host_openacc_exec): Adjust for change in dimension
9920 passing.
9921
6bb4c3e2
CLT
99222015-09-22 Chung-Lin Tang <cltang@codesourcery.com>
9923
9924 PR libgomp/67141
9925 * oacc-int.h (goacc_host_init): Add declaration.
9926 * oacc-host.c (goacc_host_init): Remove static and constructor attribute.
9927 * oacc-init.c (goacc_runtime_initialize): Call goacc_host_init() at end.
9928
74032f47 99292015-09-08 Aditya Kumar <hiraditya@msn.com>
34b18169 9930 Sebastian Pop <s.pop@samsung.com>
74032f47 9931
93d90219 9932 * testsuite/libgomp.graphite/bounds.c (int foo): Modified test case to
74032f47
AK
9933 match o/p.
9934 * testsuite/libgomp.graphite/force-parallel-1.c (void parloop): Same.
9935 * testsuite/libgomp.graphite/force-parallel-4.c: Same.
9936 * testsuite/libgomp.graphite/force-parallel-5.c: Same.
9937 * testsuite/libgomp.graphite/force-parallel-7.c: Same.
9938 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
9939
97875f4a
JJ
99402015-09-03 Jakub Jelinek <jakub@redhat.com>
9941
9942 * configure.tgt: Add missing ;; in between nvptx and rtems
9943 snippets.
9944
06441dd5
SH
99452015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
9946
9947 * config/posix/pool.h (gomp_adjust_thread_attr): New.
9948 * config/rtems/pool.h (gomp_adjust_thread_attr): Likewise.
9949 (gomp_thread_pool_reservoir): Add priority member.
9950 * confi/rtems/proc.c (allocate_thread_pool_reservoir): Add
9951 priority.
9952 (parse_thread_pools): Likewise.
9953 * team.c (gomp_team_start): Call configuration provided
9954 gomp_adjust_thread_attr(). Destroy thread attributes if
9955 necessary.
9956 * libgomp.texi: Document GOMP_RTEMS_THREAD_POOLS.
9957
66c59f92
SH
99582015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
9959
9960 * config/posix/pool.h: New.
9961 * config/rtems/pool.h: Likewise.
9962 * config/rtems/proc.c: Likewise.
9963 * libgomp.h (gomp_thread_destructor): Declare.
9964 * team.c: Include configuration provided "pool.h".
9965 (gomp_get_thread_pool): Define in configuration.
9966 (gomp_team_end): Call configuration defined
9967 gomp_release_thread_pool().
9968
13c41b2e
SH
99692015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
9970
9971 * config/rtems/bar.c: New.
9972 * config/rtems/bar.h: Likewise.
9973 * config/rtems/mutex.c: Likewise.
9974 * config/rtems/mutex.h: Likewise.
9975 * config/rtems/sem.c: Likewise.
9976 * config/rtems/sem.h: Likewise.
9977 * configure.ac (*-*-rtems*): Check that Newlib provides a proper
9978 <sys/lock.h> header file.
9979 * configure.tgt (*-*-rtems*): Enable RTEMS configuration if
9980 supported by Newlib.
9981 * configure: Regenerate.
9982
7892ec67
SH
99832015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
9984
9985 * team.c (gomp_new_thread_pool): Delete and move content to ...
9986 (gomp_get_thread_pool): ... new function. Allocate and
9987 initialize thread pool on demand.
9988 (get_last_team): Use gomp_get_thread_pool().
9989 (gomp_team_start): Delete thread pool initialization.
9990
1b96e9a4
TV
99912015-09-03 Tom de Vries <tom@codesourcery.com>
9992
9993 PR tree-optimization/65637
9994 * testsuite/libgomp.c/autopar-2.c: New test.
9995
3ff2d74e
TV
99962015-08-29 Tom de Vries <tom@codesourcery.com>
9997
9998 PR tree-optimization/46193
9999 * testsuite/libgomp.c/pr46193.c: New test.
10000
2a21ff19
NS
100012015-08-24 Nathan Sidwell <nathan@codesourcery.com>
10002
10003 libgomp/
10004 * libgomp.map: Add 4.0.2 version.
10005 * target.c (offload_image_descr): Add version field.
10006 (gomp_load_image_to_device): Add version argument. Adjust plugin
10007 call. Improve load mismatch diagnostic.
10008 (gomp_unload_image_from_device): Add version argument. Adjust plugin
10009 call.
10010 (GOMP_offload_regster): Make stub function, move bulk to ...
10011 (GOMP_offload_register_ver): ... here. Process version argument.
10012 (GOMP_offload_unregister): Make stub function, move bulk to ...
10013 (GOMP_offload_unregister_ver): ... here. Process version argument.
10014 (gomp_init_device): Process version field.
10015 (gomp_unload_device): Process version field.
10016 (gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT
10017 macros. Check plugin version.
10018 * libgomp.h (gomp_device_descr): Add version function field. Adjust
10019 loader and unloader types.
10020 * oacc-host.c: Include gomp-constants.h.
10021 (host_version): New.
10022 (host_load_image, host_unload_image): Adjust.
10023 (host_dispatch): Add host_version.
10024 * plugin/plugin-nvptx.c: Include gomp-constants.h.
10025 (GOMP_OFFLOAD_version): New.
10026 (GOMP_OFFLOAD_load_image): Add version arg and check it.
10027 (GOMP_OFFLOAD_unload_image): Likewise.
10028 * plugin/plugin-host.c: Include gomp-constants.h.
10029 (GOMP_OFFLOAD_version): New.
10030 (GOMP_OFFLOAD_load_image): Add version arg.
10031 (GOMP_OFFLOAD_unload_image): Likewise.
10032
1358a747
TV
100332015-08-24 Tom de Vries <tom@codesourcery.com>
10034
10035 PR tree-optimization/65468
10036 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test.
10037
6be5c241
TV
100382015-08-24 Tom de Vries <tom@codesourcery.com>
10039
10040 PR tree-optimization/65468
10041 * testsuite/libgomp.c/static-chunk-size-one.c: New test.
10042
bfe7ac89
JV
100432015-08-24 Joost VandeVondele <vondele@gnu.gcc.org>
10044
10045 PR libgomp/66761
10046 PR libgomp/67303
10047 * iter.c (gomp_iter_dynamic_next): Employ an atomic load.
10048 (gomp_iter_guided_next): Idem.
10049 * iter_ull.c (gomp_iter_ull_dynamic_next): Idem.
10050 (gomp_iter_ull_guided_next): Idem.
10051 * config/linux/wait.h (do_spin): Idem.
10052
b97e78b7
TS
100532015-08-10 Thomas Schwinge <thomas@codesourcery.com>
10054
10055 * libgomp-plugin.h (enum offload_target_type): Remove
10056 OFFLOAD_TARGET_TYPE_HOST_NONSHM.
10057 * openacc.f90 (openacc_kinds): Remove acc_device_host_nonshm.
10058 * openacc.h (enum acc_device_t): Likewise.
10059 * openacc_lib.h: Likewise.
10060 * oacc-init.c (name_of_acc_device_t): Don't handle it.
10061 (acc_on_device): Just use __builtin_acc_on_device.
10062 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Don't forbid usage
10063 of acc_on_device builtin.
10064 * plugin/plugin-host.h: Remove file.
10065 * plugin/plugin-host.c: Likewise, but salvage some content into...
10066 * oacc-host.c: ... this file.
10067 * plugin/Makefrag.am: Don't build libgomp-plugin-host_nonshm.la.
10068 * plugin/configfrag.ac (offload_targets): Don't add host_nonshm.
10069 * Makefile.in: Regenerate.
10070 * configure: Likewise.
10071 * testsuite/lib/libgomp.exp
10072 (check_effective_target_openacc_host_nonshm_selected): Remove.
10073 * testsuite/libgomp.oacc-c++/c++.exp: Don't handle
10074 ACC_DEVICE_TYPE=host_nonshm.
10075 * testsuite/libgomp.oacc-c/c.exp: Likewise.
10076 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
10077 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
10078 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
10079 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
10080 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
10081
44a7d18d
TS
100822015-08-10 Thomas Schwinge <thomas@codesourcery.com>
10083 Jakub Jelinek <jakub@redhat.com>
10084
10085 * config/nvptx/affinity.c: New file.
10086 * config/nvptx/alloc.c: Likewise.
10087 * config/nvptx/bar.c: Likewise.
10088 * config/nvptx/barrier.c: Likewise.
10089 * config/nvptx/critical.c: Likewise.
10090 * config/nvptx/env.c: Likewise.
10091 * config/nvptx/error.c: Likewise.
10092 * config/nvptx/fortran.c: Likewise.
10093 * config/nvptx/iter.c: Likewise.
10094 * config/nvptx/iter_ull.c: Likewise.
10095 * config/nvptx/libgomp-plugin.c: Likewise.
10096 * config/nvptx/lock.c: Likewise.
10097 * config/nvptx/loop.c: Likewise.
10098 * config/nvptx/loop_ull.c: Likewise.
10099 * config/nvptx/mutex.c: Likewise.
10100 * config/nvptx/oacc-async.c: Likewise.
10101 * config/nvptx/oacc-cuda.c: Likewise.
10102 * config/nvptx/oacc-host.c: Likewise.
10103 * config/nvptx/oacc-init.c: Likewise.
10104 * config/nvptx/oacc-mem.c: Likewise.
10105 * config/nvptx/oacc-parallel.c: Likewise.
10106 * config/nvptx/oacc-plugin.c: Likewise.
10107 * config/nvptx/omp-lock.h: Likewise.
10108 * config/nvptx/ordered.c: Likewise.
10109 * config/nvptx/parallel.c: Likewise.
10110 * config/nvptx/proc.c: Likewise.
10111 * config/nvptx/ptrlock.c: Likewise.
10112 * config/nvptx/sections.c: Likewise.
10113 * config/nvptx/sem.c: Likewise.
10114 * config/nvptx/single.c: Likewise.
10115 * config/nvptx/splay-tree.c: Likewise.
10116 * config/nvptx/target.c: Likewise.
10117 * config/nvptx/task.c: Likewise.
10118 * config/nvptx/team.c: Likewise.
10119 * config/nvptx/time.c: Likewise.
10120 * config/nvptx/work.c: Likewise.
10121 * configure.ac: Don't probe pthreads support for host nvptx*-*-*.
10122 * configure: Regenerate.
10123 * configure.tgt (config_path): Set to "nvptx" for target
10124 nvptx*-*-*.
10125
96a2d174
TS
101262015-08-10 Thomas Schwinge <thomas@codesourcery.com>
10127
10128 * testsuite/libgomp.oacc-c-c++-common/vector-type-1.c: New file.
10129
9ebddeb0
NS
101302015-08-03 Nathan Sidwell <nathan@codesourcery.com>
10131
10132 * plugin/plugin-nvptx.c: Don't include dlfcn.h.
10133 (cuda_errlist): Constify.
10134 (errmsg): Move into ...
10135 (cuda_error): ... here. Make smaller.
10136 (_XSTR, _STR): Delete.
10137 (cuda_synames): Delete.
10138 (verify_device_library): Delete.
10139 (nvptx_init): Don't call it.
10140
12efb1d7
TV
101412015-07-28 Tom de Vries <tom@codesourcery.com>
10142
10143 * testsuite/libgomp.c/uns-outer-4.c: New test.
10144
710ee218
CP
101452015-07-24 Cesar Philippidis <cesar@codesourcery.com>
10146
10147 * testsuite/libgomp.c/pr66714.c: New test.
10148
27c4ac7d
MB
101492015-07-22 Maxim Blumenthal <maxim.blumenthal@intel.com>
10150
10151 PR libgomp/66950
10152 * testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45.
10153 (fib_ref): New function.
10154 (fib): Correct corner cases in the recursion.
10155 (main): Replace the non-simd loop with fib_ref call.
10156 * testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New
10157 subroutine.
10158 (fibonacci): Lower the parameter N to 30. Correct accordingly check
10159 for the last array element value. Replace the non-simd loop with
10160 fib_ref call. Remove redundant b_ref array. Remove the comparison
10161 of the last array element with according Fibonacci sequence element.
10162 (fib): Correct corner cases in the recursion.
10163
22be2349
NS
101642015-07-21 Nathan Sidwell <nathan@codesourcery.com>
10165
10166 * target.c (gomp_offload_image_to_device): Rename to ...
10167 (gomp_load_image_to_device): ... here.
10168 (GOMP_offload_register): Adjust call.
10169 (gomp_init_device): Likewise.
10170 (gomp_unload_image_from_device): New. Broken out of ...
10171 (GOMP_offload_unregister): ... here. Call it.
10172 (gomp_unload_device): New.
10173 * libgomp.h (gomp_unload_device): Declare.
10174 * oacc-init.c (acc_shutdown_1): Unload from device before deleting
10175 mem maps.
10176
f3e9a059
NS
101772015-07-20 Nathan Sidwell <nathan@codesourcery.com>
10178
a091118d
NS
10179 * oacc-parallel.c (GOACC_parallel): Move variadic handling into
10180 wait=-specific if.
10181 (GOACC_enter_exit_data, GOACC_update): Use consistent num_waits
10182 !=0 condition.
10183 (goacc_waits): Move !num_waits handling to ...
10184 (GOACC_wait): ... here, the only caller that might have zero waits.
10185
f3e9a059
NS
10186 * plugin/plugin-nvptx.c (struct targ_fn_descriptor): Move later.
10187 (struct ptx_image_data): Move earlier, add fns field.
10188 (struct ptx_device): Add images and image_lock fields.
10189 (ptx_images, ptx_image_lock): Delete.
10190 (nvptx_open_device): Initialize images and image_lock fields.
10191 (nvptx_close_device): Destroy image_lock.
10192 (GOMP_OFFLOAD_load_image): Register image to device-specific fields.
10193 (GOMP_OFFLOAD_unload_image): Unregister image from device-specific
10194 fields.
10195
afb2d80b
NS
101962015-07-17 Nathan Sidwell <nathan@codesourcery.com>
10197
896c28a7
NS
10198 * target.c (GOMP_offload_register): Use int for device type arg.
10199 (GOMP_offload_unregister): Likewise.
10200
ebe4a560
NS
10201 * target.c (struct_offload_image_descr): Constify host_table.
10202 (gomp_offload_image_to_device): Likewise.
10203 (GOMP_offload_register, GOMP_offload_unregister): Likewise.
10204
afb2d80b
NS
10205 * libgomp.h (gomp_device_descr): Constify target data arguments.
10206 * target.c (struct offload_image_descr): Constify target_data.
10207 (gomp_offload_image_to_device): Likewise.
10208 (GOMP_offload_register): Likewise.
93d90219 10209 (GOMP_offload_unregister): Likewise.
afb2d80b
NS
10210 * plugin/plugin-host.c (GOMP_OFFLOAD_load_image,
10211 GOMP_OFFLOAD_unload_image): Constify target data.
10212 * plugin/plugin-nvptx.c (struct ptx_image_data): Constify target data.
10213 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): Likewise.
10214
a4cb876d
NS
102152015-07-16 Nathan Sidwell <nathan@codesourcery.com>
10216
10217 * plugin/plugin-nvptx.c (link_ptx): Constify string argument.
10218 Workaround driver library const error.
10219 (struct nvptx_tdata, nvptx_tdata_t): New.
10220 (GOMP_OFFLOAD_load_image): Use struct for target_data's real
10221 type.
10222
28ef6a27
MB
102232015-07-15 Maxim Blumenthal <maxim.blumenthal@intel.com>
10224
10225 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Change type
10226 of EPS parameter from integer to real.
10227 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: (check): Change
10228 type of EPS parameter from integer to real.
10229
6dba0113
SH
102302015-07-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
10231
10232 * team.c (get_last_team): New.
10233 (gomp_new_team): Recycle last non-nested team if possible.
10234 (gomp_team_end): Move team work share list free lock destruction
10235 to ...
10236 (free_team): ... here.
10237
4c1cb4da
MB
102382015-07-14 Maxim Blumenthal <maxim.blumenthal@intel.com>
10239
10240 * testsuite/libgomp.c/examples-4/simd-3.c: (main): Change type of res
10241 and ref from int to double. Replaced their comparison with
10242 an inequality of their difference and EPS.
10243 * testsuite/libgomp.c/examples-4/simd-8.c: (main): Replace the
10244 comparison of pri and a reference number with an inequality of their
10245 difference and EPS.
10246 * testsuite/libgomp.fortran/examples-4/simd-3.f90: (main): Replaced
10247 the comparison of sum and sum_ref with an inequality of their
10248 difference and EPS.
10249 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Replace
10250 the comparison of pri and a reference number with an inequality of
10251 their difference and EPS.
10252
343587dc
MB
102532015-07-13 Maxim Blumenthal <maxim.blumenthal@intel.com>
10254
10255 * testsuite/libgomp.c++/examples-4/e.53.2.C: Renamed to...
10256 * testsuite/libgomp.c++/examples-4/declare_target-2.C: ...this.
10257 * testsuite/libgomp.c++/examples-4/e.51.5.C: Renamed to...
10258 * testsuite/libgomp.c++/examples-4/target_data-5.C: ...this.
10259 * testsuite/libgomp.c/examples-4/e.56.3.c: Renamed to...
10260 * testsuite/libgomp.c/examples-4/array_sections-3.c: ...this.
10261 * testsuite/libgomp.c/examples-4/e.56.4.c: Renamed to...
10262 * testsuite/libgomp.c/examples-4/array_sections-4.c: ...this.
10263 * testsuite/libgomp.c/examples-4/e.55.1.c: Renamed to...
10264 * testsuite/libgomp.c/examples-4/async_target-1.c: ...this.
10265 * testsuite/libgomp.c/examples-4/e.55.2.c: Renamed to...
10266 * testsuite/libgomp.c/examples-4/async_target-2.c: ...this.
10267 (vec_mult_ref): Remove v1 and v2 arguments, turn them into local
10268 variables.
10269 (vec_mult): Likewise. Add #pragma omp taskwait.
10270 (main): Adjust caller.
10271 * testsuite/libgomp.c/examples-4/e.53.1.c: Renamed to...
10272 * testsuite/libgomp.c/examples-4/declare_target-1.c: ...this.
10273 * testsuite/libgomp.c/examples-4/e.53.3.c: Renamed to...
10274 * testsuite/libgomp.c/examples-4/declare_target-3.c: ...this.
10275 * testsuite/libgomp.c/examples-4/e.53.4.c: Renamed to...
10276 * testsuite/libgomp.c/examples-4/declare_target-4.c: ...this.
10277 * testsuite/libgomp.c/examples-4/e.53.5.c: Renamed to...
10278 * testsuite/libgomp.c/examples-4/declare_target-5.c: ...this.
10279 * testsuite/libgomp.c/examples-4/e.57.1.c: Renamed to...
10280 * testsuite/libgomp.c/examples-4/device-1.c: ...this.
10281 * testsuite/libgomp.c/examples-4/e.57.2.c: Renamed to...
10282 * testsuite/libgomp.c/examples-4/device-2.c: ...this.
10283 * testsuite/libgomp.c/examples-4/e.57.3.c: Renamed to...
10284 * testsuite/libgomp.c/examples-4/device-3.c: ...this.
10285 * testsuite/libgomp.c/examples-4/simd-1.c: New file.
10286 * testsuite/libgomp.c/examples-4/simd-2.c: New file.
10287 * testsuite/libgomp.c/examples-4/simd-3.c: New file.
10288 * testsuite/libgomp.c/examples-4/simd-4.c: New file.
10289 * testsuite/libgomp.c/examples-4/simd-5.c: New file.
10290 * testsuite/libgomp.c/examples-4/simd-6.c: New file.
10291 * testsuite/libgomp.c/examples-4/simd-7.c: New file.
10292 * testsuite/libgomp.c/examples-4/simd-8.c: New file.
10293 * testsuite/libgomp.c/examples-4/e.50.1.c: Renamed to...
10294 * testsuite/libgomp.c/examples-4/target-1.c: ...this.
10295 * testsuite/libgomp.c/examples-4/e.50.2.c: Renamed to...
10296 * testsuite/libgomp.c/examples-4/target-2.c: ...this.
10297 * testsuite/libgomp.c/examples-4/e.50.3.c: Renamed to...
10298 * testsuite/libgomp.c/examples-4/target-3.c: ...this.
10299 * testsuite/libgomp.c/examples-4/e.50.4.c: Renamed to...
10300 * testsuite/libgomp.c/examples-4/target-4.c: ...this.
10301 * testsuite/libgomp.c/examples-4/e.50.5.c: Renamed to...
10302 * testsuite/libgomp.c/examples-4/target-5.c: ...this.
10303 * testsuite/libgomp.c/examples-4/e.51.1.c: Renamed to...
10304 * testsuite/libgomp.c/examples-4/target_data-1.c: ...this.
10305 * testsuite/libgomp.c/examples-4/e.51.2.c: Renamed to...
10306 * testsuite/libgomp.c/examples-4/target_data-2.c: ...this.
10307 * testsuite/libgomp.c/examples-4/e.51.3.c: Renamed to...
10308 * testsuite/libgomp.c/examples-4/target_data-3.c: ...this.
10309 * testsuite/libgomp.c/examples-4/e.51.4.c: Renamed to...
10310 * testsuite/libgomp.c/examples-4/target_data-4.c: ...this.
10311 * testsuite/libgomp.c/examples-4/e.51.6.c: Renamed to...
10312 * testsuite/libgomp.c/examples-4/target_data-6.c: ...this.
10313 * testsuite/libgomp.c/examples-4/e.51.7.c: Renamed to...
10314 * testsuite/libgomp.c/examples-4/target_data-7.c: ...this.
10315 * testsuite/libgomp.c/examples-4/e.52.1.c: Renamed to...
10316 * testsuite/libgomp.c/examples-4/target_update-1.c: ...this.
10317 * testsuite/libgomp.c/examples-4/e.52.2.c: Renamed to...
10318 * testsuite/libgomp.c/examples-4/target_update-2.c: ...this.
10319 * testsuite/libgomp.c/examples-4/task_dep-1.c: New file.
10320 * testsuite/libgomp.c/examples-4/task_dep-2.c: New file.
10321 * testsuite/libgomp.c/examples-4/task_dep-3.c: New file.
10322 * testsuite/libgomp.c/examples-4/task_dep-4.c: New file.
10323 * testsuite/libgomp.c/examples-4/task_dep-5.c: New file.
10324 * testsuite/libgomp.c/examples-4/e.54.2.c: Renamed to...
10325 * testsuite/libgomp.c/examples-4/teams-2.c: ...this.
10326 * testsuite/libgomp.c/examples-4/e.54.3.c: Renamed to...
10327 * testsuite/libgomp.c/examples-4/teams-3.c: ...this.
10328 * testsuite/libgomp.c/examples-4/e.54.4.c: Renamed to...
10329 * testsuite/libgomp.c/examples-4/teams-4.c: ...this.
10330 * testsuite/libgomp.c/examples-4/e.54.5.c: Renamed to...
10331 * testsuite/libgomp.c/examples-4/teams-5.c: ...this.
10332 * testsuite/libgomp.c/examples-4/e.54.6.c: Renamed to...
10333 * testsuite/libgomp.c/examples-4/teams-6.c: ...this.
10334 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Renamed to...
10335 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: ...this.
10336 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Renamed to...
10337 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: ...this.
10338 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Renamed to...
10339 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: ...this.
10340 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Renamed to...
10341 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: ...this.
10342 (vec_mult): Add !$omp taskwait.
10343 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Renamed to...
10344 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: ...this.
10345 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Renamed to...
10346 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: ...this.
10347 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Renamed to...
10348 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: ...this.
10349 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Renamed to...
10350 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: ...this.
10351 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Renamed to...
10352 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: ...this.
10353 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Renamed to...
10354 * testsuite/libgomp.fortran/examples-4/device-1.f90: ...this.
10355 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Renamed to...
10356 * testsuite/libgomp.fortran/examples-4/device-2.f90: ...this.
10357 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Renamed to...
10358 * testsuite/libgomp.fortran/examples-4/device-3.f90: ...this.
10359 * testsuite/libgomp.fortran/examples-4/simd-1.f90: New file.
10360 * testsuite/libgomp.fortran/examples-4/simd-2.f90: New file.
10361 * testsuite/libgomp.fortran/examples-4/simd-3.f90: New file.
10362 * testsuite/libgomp.fortran/examples-4/simd-4.f90: New file.
10363 * testsuite/libgomp.fortran/examples-4/simd-5.f90: New file.
10364 * testsuite/libgomp.fortran/examples-4/simd-6.f90: New file.
10365 * testsuite/libgomp.fortran/examples-4/simd-7.f90: New file.
10366 * testsuite/libgomp.fortran/examples-4/simd-8.f90: New file.
10367 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: Renamed to...
10368 * testsuite/libgomp.fortran/examples-4/target-1.f90: ...this.
10369 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Renamed to...
10370 * testsuite/libgomp.fortran/examples-4/target-2.f90: ...this.
10371 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Renamed to...
10372 * testsuite/libgomp.fortran/examples-4/target-3.f90: ...this.
10373 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Renamed to...
10374 * testsuite/libgomp.fortran/examples-4/target-4.f90: ...this.
10375 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Renamed to...
10376 * testsuite/libgomp.fortran/examples-4/target-5.f90: ...this.
10377 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Renamed to...
10378 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: ...this.
10379 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Renamed to...
10380 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: ...this.
10381 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Renamed to...
10382 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: ...this.
10383 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Renamed to...
10384 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: ...this.
10385 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Renamed to...
10386 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: ...this.
10387 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Renamed to...
10388 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: ...this.
10389 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Renamed to...
10390 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: ...this.
10391 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Renamed to...
10392 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: ...this.
10393 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Renamed to...
10394 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: ...this.
10395 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: New file.
10396 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: New file.
10397 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: New file.
10398 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: New file.
10399 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: New file.
10400 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Renamed to...
10401 * testsuite/libgomp.fortran/examples-4/teams-2.f90: ...this.
10402 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Renamed to...
10403 * testsuite/libgomp.fortran/examples-4/teams-3.f90: ...this.
10404 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Renamed to...
10405 * testsuite/libgomp.fortran/examples-4/teams-4.f90: ...this.
10406 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Renamed to...
10407 * testsuite/libgomp.fortran/examples-4/teams-5.f90: ...this.
10408 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Renamed to...
10409 * testsuite/libgomp.fortran/examples-4/teams-6.f90: ...this.
10410
9f620bf1
TV
104112015-07-10 Tom de Vries <tom@codesourcery.com>
10412
10413 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: New test.
10414 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: New test.
10415
a92defda
TS
104162015-07-08 Thomas Schwinge <thomas@codesourcery.com>
10417
10418 PR libgomp/65099
10419 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return 0 if not
10420 in a 64-bit configuration.
10421 * testsuite/libgomp.oacc-c++/c++.exp: Don't attempt nvidia
10422 offloading testing if no such device is available.
10423 * testsuite/libgomp.oacc-c/c.exp: Likewise.
10424 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
10425
cadb53a5
TV
104262015-07-08 Tom de Vries <tom@codesourcery.com>
10427
10428 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Fix
10429 second call to f.
10430 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
10431
712cb0bb
TV
104322015-07-07 Tom de Vries <tom@codesourcery.com>
10433
10434 PR tree-optimization/66642
10435 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Test low
10436 iteration count case.
10437 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c (init): New
10438 function, factor out of ...
10439 (main): ... here. Test low iteration count case.
10440
e5210c77
SH
104412015-07-06 Sebastian Huber <sebastian.huber@embedded-brains.de>
10442
10443 * libgomp.h (gomp_thread_pool): Comment last_team field.
10444
f70360e7
UB
104452015-07-02 Uros Bizjak <ubizjak@gmail.com>
10446
10447 * testsuite/libgomp.c++/pr66702-1.C: Require
10448 vect_simd_clones effective target.
10449 * testsuite/libgomp.c++/pr66702-2.C: Ditto.
10450
b451c271
TV
104512015-06-30 Tom de Vries <tom@codesourcery.com>
10452
10453 * testsuite/libgomp.oacc-c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
10454 already set. Use DEFAULT_CFLAGS in dg-runtest.
10455 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Remove dg-options
10456 "-O2".
10457
f8e89d9f
TV
104582015-06-30 Tom de Vries <tom@codesourcery.com>
10459
10460 * testsuite/libgomp.c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
10461 already set. Use DEFAULT_CFLAGS in dg-runtest.
10462 * testsuite/libgomp.c++/atomic-16.C: Remove dg-options "-O2 -fopenmp".
10463 * testsuite/libgomp.c++/pr64824.C: Same.
10464 * testsuite/libgomp.c++/pr64868.C: Same.
10465 * testsuite/libgomp.c++/pr66199-1.C: Same.
10466 * testsuite/libgomp.c++/pr66199-2.C: Same.
10467 * testsuite/libgomp.c++/target-2.C: Same.
10468 * testsuite/libgomp.c++/for-7.C: Use dg-additional-options for
10469 -std=<standard> option.
10470 * testsuite/libgomp.c++/udr-11.C: Same.
10471 * testsuite/libgomp.c++/udr-12.C: Same.
10472 * testsuite/libgomp.c++/udr-13.C: Same.
10473 * testsuite/libgomp.c++/udr-14.C: Same.
10474 * testsuite/libgomp.c++/udr-15.C: Same.
10475 * testsuite/libgomp.c++/udr-16.C: Same.
10476 * testsuite/libgomp.c++/udr-17.C: Same.
10477 * testsuite/libgomp.c++/udr-18.C: Same.
10478 * testsuite/libgomp.c++/udr-19.C: Same.
10479 * testsuite/libgomp.c++/atomic-1.C: Remove dg-options "-O2".
10480 * testsuite/libgomp.c++/simd-1.C: Same.
10481 * testsuite/libgomp.c++/simd-2.C: Same.
10482 * testsuite/libgomp.c++/simd-3.C: Same.
10483 * testsuite/libgomp.c++/simd-4.C: Same.
10484 * testsuite/libgomp.c++/simd-5.C: Same.
10485 * testsuite/libgomp.c++/simd-6.C: Same.
10486 * testsuite/libgomp.c++/simd-7.C: Same.
10487 * testsuite/libgomp.c++/simd-8.C: Same.
10488 * testsuite/libgomp.c++/simd-9.C: Same.
10489 * testsuite/libgomp.c++/simd10.C: Same.
10490 * testsuite/libgomp.c++/simd11.C: Same.
10491 * testsuite/libgomp.c++/simd12.C: Same.
10492 * testsuite/libgomp.c++/simd13.C: Same.
10493
3446fe48
JJ
104942015-06-30 Jakub Jelinek <jakub@redhat.com>
10495
10496 PR middle-end/66702
10497 * testsuite/libgomp.c++/pr66702-1.C: New test.
10498 * testsuite/libgomp.c++/pr66702-2.C: New test.
10499
8a36714a
TV
105002015-06-30 Tom de Vries <tom@codesourcery.com>
10501
10502 * testsuite/libgomp.c/parloops-exit-first-loop-alt-5.c: New test.
10503 * testsuite/libgomp.c/parloops-exit-first-loop-alt-6.c: New test.
10504 * testsuite/libgomp.c/parloops-exit-first-loop-alt-7.c: New test.
10505 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Update comment.
10506
4f75d608
TV
105072015-06-30 Tom de Vries <tom@codesourcery.com>
10508
10509 PR tree-optimization/66652
10510 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (f): Rewrite
10511 using restrict pointers.
10512 (main): Add arguments to calls to f.
10513 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
10514
6d9d1eeb
AT
105152015-06-23 Andreas Tobler <andreast@gcc.gnu.org>
10516
10517 * configure.ac: Fix check for header <sys/sysctl.h>.
10518 * configure: Regenerate.
10519 * config.h.in: Likewise.
10520
1222f22b
TV
105212015-06-23 Tom de Vries <tom@codesourcery.com>
10522
10523 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Use
10524 abort.
10525 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c (main): Same.
10526
d7efbbf6
TS
105272015-06-19 Thomas Schwinge <thomas@codesourcery.com>
10528
bfcd036f
TS
10529 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Only consider for
10530 acc_device_nvidia.
10531
d7efbbf6
TS
10532 PR libgomp/66518
10533 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: XFAIL.
10534 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
10535
d7bfc710
TV
105362015-06-15 Tom de Vries <tom@codesourcery.com>
10537
10538 * testsuite/libgomp.c/atomic-1.c: Remove dg-options "-O2". Use
10539 dg-additional-options for any remaining options.
10540 * testsuite/libgomp.c/atomic-2.c: Same.
10541 * testsuite/libgomp.c/atomic-4.c: Same.
10542 * testsuite/libgomp.c/atomic-5.c: Same.
10543 * testsuite/libgomp.c/atomic-6.c: Same.
10544 * testsuite/libgomp.c/autopar-1.c: Same.
10545 * testsuite/libgomp.c/copyin-1.c: Same.
10546 * testsuite/libgomp.c/copyin-2.c: Same.
10547 * testsuite/libgomp.c/copyin-3.c: Same.
10548 * testsuite/libgomp.c/examples-4/e.53.5.c: Same.
10549 * testsuite/libgomp.c/nestedfn-5.c: Same.
10550 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Same.
10551 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Same.
10552 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: Same.
10553 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
10554 * testsuite/libgomp.c/pr32362-1.c: Same.
10555 * testsuite/libgomp.c/pr32362-2.c: Same.
10556 * testsuite/libgomp.c/pr32362-3.c: Same.
10557 * testsuite/libgomp.c/pr39591-1.c: Same.
10558 * testsuite/libgomp.c/pr39591-2.c: Same.
10559 * testsuite/libgomp.c/pr39591-3.c: Same.
10560 * testsuite/libgomp.c/pr58392.c: Same.
10561 * testsuite/libgomp.c/pr58756.c: Same.
10562 * testsuite/libgomp.c/simd-1.c: Same.
10563 * testsuite/libgomp.c/simd-10.c: Same.
10564 * testsuite/libgomp.c/simd-11.c: Same.
10565 * testsuite/libgomp.c/simd-12.c: Same.
10566 * testsuite/libgomp.c/simd-13.c: Same.
10567 * testsuite/libgomp.c/simd-14.c: Same.
10568 * testsuite/libgomp.c/simd-15.c: Same.
10569 * testsuite/libgomp.c/simd-2.c: Same.
10570 * testsuite/libgomp.c/simd-3.c: Same.
10571 * testsuite/libgomp.c/simd-4.c: Same.
10572 * testsuite/libgomp.c/simd-5.c: Same.
10573 * testsuite/libgomp.c/simd-6.c: Same.
10574 * testsuite/libgomp.c/simd-7.c: Same.
10575 * testsuite/libgomp.c/simd-8.c: Same.
10576 * testsuite/libgomp.c/simd-9.c: Same.
10577
fb5b5352
TV
105782015-06-15 Tom de Vries <tom@codesourcery.com>
10579
10580 * testsuite/libgomp.c/pr35625.c: Fix typo.
10581
ca431bef
TV
105822015-06-15 Tom de Vries <tom@codesourcery.com>
10583
10584 * testsuite/libgomp.c/atomic-18.c: Remove superfluous -fopenmp setting
10585 in dg-options.
10586 * testsuite/libgomp.c/atomic-3.c: Same.
10587 * testsuite/libgomp.c/debug-1.c: Same.
10588 * testsuite/libgomp.c/nqueens-1.c: Same.
10589 * testsuite/libgomp.c/pr26171.c: Same.
10590 * testsuite/libgomp.c/pr48591.c: Same.
10591 * testsuite/libgomp.c/pr64824.c: Same.
10592 * testsuite/libgomp.c/pr64868.c: Same.
10593 * testsuite/libgomp.c/pr66133.c: Same.
10594 * testsuite/libgomp.c/pr66199-1.c: Same.
10595 * testsuite/libgomp.c/pr66199-2.c: Same.
10596 * testsuite/libgomp.c/target-8.c: Same.
10597
0d8a9e20
TV
105982015-06-15 Tom de Vries <tom@codesourcery.com>
10599
10600 * testsuite/libgomp.c/collapse-3.c: Use dg-additional-options for
10601 -std={gnu99,c99}.
10602 * testsuite/libgomp.c/for-1.c: Same.
10603 * testsuite/libgomp.c/for-2.c: Same.
10604 * testsuite/libgomp.c/for-3.c: Same.
10605 * testsuite/libgomp.c/pr35625.c: Same.
10606 * testsuite/libgomp.c/pr39154.c: Same.
10607 * testsuite/libgomp.c/simd-16.c: Same.
10608 * testsuite/libgomp.c/simd-17.c: Same.
10609
a6860be9
TV
106102015-06-13 Tom de Vries <tom@codesourcery.com>
10611
10612 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: New test.
10613
ab3306d2
TV
106142015-06-13 Tom de Vries <tom@codesourcery.com>
10615
10616 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Add comment.
10617 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
10618 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Add comment.
10619 (N): Define.
10620 (main): Use N instead of hardcoded constants.
10621
7c82d827
TV
106222015-06-05 Tom de Vries <tom@codesourcery.com>
10623
10624 merge from gomp4 branch:
10625 2015-05-28 Tom de Vries <tom@codesourcery.com>
10626
10627 PR tree-optimization/65443
10628 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: New test.
10629 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: New test.
10630 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: New test.
10631
c469078d
BRF
106322015-05-29 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
10633
10634 * testsuite/libgomp.graphite/bounds.c: Adjust for
10635 cleanup-tree-dump removal.
10636 * testsuite/libgomp.graphite/force-parallel-1.c: Likewise.
10637 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
10638 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
10639 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
10640 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
10641 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
10642 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
10643 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
10644 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
10645 * testsuite/libgomp.graphite/pr41118.c: Likewise.
10646
bb3caa35
UB
106472015-05-28 Uros Bizjak <ubizjak@gmail.com>
10648
10649 * config/linux/x86/futex.h (sys_futex0) [!__x86_64__]: Remove function.
10650 (futex_wait) [!__x86_64__]: Use __asm operand instead of sys_futex0.
10651 (futex_wake) [!__x86_64__]: Ditto.
10652
9fb5fd44
JB
106532015-05-28 Julian Brown <julian@codesourcery.com>
10654
10655 * oacc-init.c (resolve_device): Add FAIL_IS_ERROR argument. Update
10656 function comment. Only call gomp_fatal if new argument is true.
10657 (acc_dev_num_out_of_range): New function.
10658 (acc_init_1, acc_shutdown_1): Update call to resolve_device. Call
10659 acc_dev_num_out_of_range as appropriate.
10660 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
bb3caa35
UB
10661 (acc_get_device_num, acc_set_device_num): Update calls to
10662 resolve_device.
9fb5fd44
JB
10663 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Update expected test
10664 output.
10665
32eaed93
JB
106662015-05-28 Julian Brown <julian@codesourcery.com>
10667
10668 PR libgomp/65742
32eaed93
JB
10669 * oacc-init.c (plugin/plugin-host.h): Include.
10670 (acc_on_device): Check whether we're in an offloaded region for
10671 host_nonshm
10672 plugin. Don't use __builtin_acc_on_device.
10673 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_parallel): Set
10674 nonshm_exec flag in thread-local data.
10675 (GOMP_OFFLOAD_openacc_create_thread_data): Allocate thread-local
10676 data for host_nonshm plugin.
10677 (GOMP_OFFLOAD_openacc_destroy_thread_data): Free thread-local data
10678 for host_nonshm plugin.
10679 * plugin/plugin-host.h: New.
10680
ea023bcf
UB
106812015-05-27 Uros Bizjak <ubizjak@gmail.com>
10682
8ed501f1
UB
10683 * config/linux/ia64/futex.h (sys_futex0) Change operand "op" to int.
10684
106852015-05-27 Uros Bizjak <ubizjak@gmail.com>
10686
10687 * config/linux/wait.h (gomp_futex_wait, gomp_futex_wake):
10688 Declare as int.
10689 (FUTEX_PRIVATE_FLAG): Remove L suffix.
10690 * config/linux/mutex.c (gomp_futex_wait, gomp_futex_wake):
10691 Declare as int.
10692
106932015-05-27 Uros Bizjak <ubizjak@gmail.com>
10694
bb3caa35 10695 * config/linux/x86/futex.h (sys_futex0) [__PIC__]: Remove function.
ea023bcf 10696
1716efeb
CLT
106972015-05-27 Chung-Lin Tang <cltang@codesourcery.com>
10698
10699 * target.c (gomp_map_pointer): New function abstracting out
10700 GOMP_MAP_POINTER handling.
10701 (gomp_map_vars): Remove GOMP_MAP_POINTER handling code and use
10702 gomp_map_pointer().
10703
41b37d5e
JJ
107042015-05-19 Jakub Jelinek <jakub@redhat.com>
10705
10706 PR middle-end/66199
10707 * testsuite/libgomp.c/pr66199-1.c: New test.
10708 * testsuite/libgomp.c/pr66199-2.c: New test.
10709 * testsuite/libgomp.c++/pr66199-1.C: New test.
10710 * testsuite/libgomp.c++/pr66199-2.C: New test.
10711 * testsuite/libgomp.fortran/pr66199-1.f90: New test.
10712 * testsuite/libgomp.fortran/pr66199-2.f90: New test.
10713
c8319826
JB
107142015-05-19 Julian Brown <julian@codesourcery.com>
10715
10716 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return zero
10717 on cuInit failure.
10718
b37dddbc
JJ
107192015-05-13 Jakub Jelinek <jakub@redhat.com>
10720
10721 PR middle-end/66133
10722 * testsuite/libgomp.c/pr66133.c: New test.
10723
55fba601
MH
107242015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
10725
10726 * Makefile.in: Regenerated with automake-1.11.6.
10727 * aclocal.m4: Likewise.
10728 * config.h.in: Likewise.
10729 * configure: Likewise.
10730 * testsuite/Makefile.in: Likewise.
10731
1be0899d
JM
107322015-05-08 Jason Merrill <jason@redhat.com>
10733
10734 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (main): Use
10735 _Complex.
10736
10737 * openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
10738
d2463960
JB
107392015-05-06 Julian Brown <julian@codesourcery.com>
10740
10741 * oacc-init.c (acc_device_lock): Add explanatory comment.
10742 (resolve_device): Add comment about locking requirement.
10743 (acc_init_1, acc_shutdown_1): Likewise. Add locking around
10744 gomp_init_device and gomp_fini_device calls.
10745 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
10746 (acc_get_device_num, acc_set_device_num): Add locking around
10747 resolve_device and gomp_init_device calls.
10748
e38fdba4
JB
107492015-05-06 Julian Brown <julian@codesourcery.com>
10750
10751 * oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for
10752 goacc_thread_lock on error paths.
10753 * oacc-mem.c (lookup_host): Remove locking from function. Note
10754 locking requirement for caller in function comment.
10755 (lookup_dev): Likewise.
10756 (acc_free, acc_deviceptr, acc_hostptr, acc_is_present)
10757 (acc_map_data, acc_unmap_data, present_create_copy, delete_copyout)
10758 (update_dev_host, gomp_acc_insert_pointer, gomp_acc_remove_pointer):
10759 Add locking.
10760
ae8ffbbb
TS
107612015-05-05 Thomas Schwinge <thomas@codesourcery.com>
10762
10763 PR testsuite/65205
10764 PR libgomp/65993
10765 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: In dg-output,
10766 don't expect "0x" prefix for "%p" format specifier, don't expect
10767 "(nil)" for NULL pointer.
10768 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
10769 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
10770 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
10771 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
10772 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
10773 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
10774 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
10775 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
10776 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
10777 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
10778 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
10779 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
10780 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
10781 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
10782 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
10783 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
10784 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
10785 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
10786 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
10787 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
10788 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
10789 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
10790 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
10791 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
10792 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
10793 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
10794 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
10795 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
10796 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: More
10797 accurately specify what we're looking for.
10798 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
10799 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
10800 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
10801 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
10802 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
10803
1309f1d2
JN
108042015-04-30 James Norris <jnorris@codesourcery.com>
10805
10806 PR testsuite/65205
10807 * testsuite/lib/libgomp.exp
10808 (check_effective_target_openacc_host_selected)
10809 (check_effective_target_openacc_host_nonshm_selected): New
10810 procedures.
10811 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Fix misuse of
10812 dg-shouldfail.
10813 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
10814 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
10815 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
10816 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
10817 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
10818 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
10819 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
10820 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
10821 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
10822 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
10823 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
10824 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
10825 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
10826 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
10827 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
10828 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
10829 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
10830 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
10831 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
10832 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
10833 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
10834 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
10835 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
10836 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
10837 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
10838 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
10839 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
10840 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
10841 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
10842 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
10843 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
10844 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
10845 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
10846 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
10847 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
10848 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
10849 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
10850 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
10851 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
10852 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
10853 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
10854 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
10855 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
10856
d93bdab5
JB
108572015-04-08 Julian Brown <julian@codesourcery.com>
10858
10859 * libgomp.h (target_mem_desc: Remove mem_map field.
10860 (acc_dispatch_t): Remove open_device_func, close_device_func,
10861 get_device_num_func, set_device_num_func, target_data members.
10862 Change create_thread_data_func argument to device number instead of
10863 generic pointer.
10864 * oacc-async.c (assert.h): Include.
10865 (acc_async_test, acc_async_test_all, acc_wait, acc_wait_async)
10866 (acc_wait_all, acc_wait_all_async): Use current host thread's
10867 active device, not base_dev.
10868 * oacc-cuda.c (acc_get_current_cuda_device)
10869 (acc_get_current_cuda_context, acc_get_cuda_stream)
10870 (acc_set_cuda_stream): Likewise.
10871 * oacc-host.c (host_dispatch): Don't set open_device_func,
10872 close_device_func, get_device_num_func or set_device_num_func.
10873 * oacc-init.c (base_dev, init_key): Remove.
10874 (cached_base_dev): New.
10875 (name_of_acc_device_t): New.
10876 (acc_init_1): Initialise default-numbered device, not zeroth.
10877 (acc_shutdown_1): Close all devices of a given type.
10878 (goacc_destroy_thread): Don't use base_dev.
10879 (lazy_open, lazy_init, lazy_init_and_open): Remove.
10880 (goacc_attach_host_thread_to_device): New.
10881 (acc_init): Reimplement with goacc_attach_host_thread_to_device.
10882 (acc_get_num_devices): Don't use base_dev.
10883 (acc_set_device_type): Reimplement.
10884 (acc_get_device_type): Don't use base_dev.
10885 (acc_get_device_num): Tweak logic.
10886 (acc_set_device_num): Likewise.
10887 (acc_on_device): Use acc_get_device_type.
10888 (goacc_runtime_initialize): Initialize cached_base_dev not base_dev.
10889 (goacc_lazy_initialize): Reimplement with acc_init and
10890 goacc_attach_host_thread_to_device.
10891 * oacc-int.h (goacc_thread): Add base_dev field.
10892 (base_dev): Remove extern declaration.
10893 (goacc_attach_host_thread_to_device): Add prototype.
10894 * oacc-mem.c (acc_malloc): Use current thread's device instead of
10895 base_dev.
10896 (acc_free): Likewise.
10897 (acc_memcpy_to_device): Likewise.
10898 (acc_memcpy_from_device): Likewise.
10899 * oacc-parallel.c (select_acc_device): Remove. Replace calls with
10900 goacc_lazy_initialize (throughout).
10901 (GOACC_parallel): Use tgt_offset to locate target functions.
10902 * target.c (gomp_map_vars): Don't set tgt->mem_map.
10903 (gomp_unmap_vars): Use devicep->mem_map pointer not tgt->mem_map.
10904 (gomp_load_plugin_for_device): Remove open_device, close_device,
10905 get_device_num, set_device_num openacc hook initialisation. Don't set
10906 openacc.target_data.
10907 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_open_device)
10908 (GOMP_OFFLOAD_openacc_close_device)
10909 (GOMP_OFFLOAD_openacc_get_device_num)
10910 (GOMP_OFFLOAD_openacc_set_device_num): Remove.
10911 (GOMP_OFFLOAD_openacc_create_thread_data): Change (unused) argument
10912 to int.
10913 * plugin/plugin-nvptx.c (ptx_inited): Remove.
10914 (instantiated_devices, ptx_dev_lock): New.
10915 (struct ptx_image_data): New.
10916 (ptx_devices, ptx_images, ptx_image_lock): New.
10917 (fini_streams_for_device): Reorder cuStreamDestroy call.
10918 (nvptx_get_num_devices): Remove forward declaration.
10919 (nvptx_init): Change return type to bool.
10920 (nvptx_fini): Remove.
10921 (nvptx_attach_host_thread_to_device): New.
10922 (nvptx_open_device): Return struct ptx_device* instead of void*.
10923 (nvptx_close_device): Change argument type to struct ptx_device*,
10924 return type to void.
10925 (nvptx_get_num_devices): Use instantiated_devices not ptx_inited.
10926 (kernel_target_data, kernel_host_table): Remove static globals.
10927 (GOMP_OFFLOAD_register_image, GOMP_OFFLOAD_get_table): Remove.
10928 (GOMP_OFFLOAD_init_device): Reimplement.
10929 (GOMP_OFFLOAD_fini_device): Likewise.
10930 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New.
10931 (GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free, GOMP_OFFLOAD_dev2host)
10932 (GOMP_OFFLOAD_host2dev): Use ORD argument.
10933 (GOMP_OFFLOAD_openacc_open_device)
10934 (GOMP_OFFLOAD_openacc_close_device)
10935 (GOMP_OFFLOAD_openacc_set_device_num)
10936 (GOMP_OFFLOAD_openacc_get_device_num): Remove.
10937 (GOMP_OFFLOAD_openacc_create_thread_data): Change argument to int
10938 (device number).
10939
10940 testsuite/
10941 * libgomp.oacc-c-c++-common/lib-9.c: Fix devnum check in test.
10942
a51df54e
IV
109432015-04-06 Ilya Verbin <ilya.verbin@intel.com>
10944
10945 * libgomp-plugin.h (struct mapping_table): Replace with addr_pair.
10946 * libgomp.h (struct gomp_memory_mapping): Remove.
10947 (struct target_mem_desc): Change type of mem_map from
10948 gomp_memory_mapping * to splay_tree_s *.
10949 (struct gomp_device_descr): Remove register_image_func, get_table_func.
10950 Add load_image_func, unload_image_func.
10951 Change type of mem_map from gomp_memory_mapping to splay_tree_s.
10952 Remove offload_regions_registered.
10953 (gomp_init_tables): Remove.
10954 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
10955 to splay_tree_s *.
10956 * libgomp.map (GOMP_4.0.1): Add GOMP_offload_unregister.
10957 * oacc-host.c (host_dispatch): Do not initialize register_image_func,
10958 get_table_func, mem_map.is_initialized, mem_map.splay_tree.root,
10959 offload_regions_registered.
10960 Initialize load_image_func, unload_image_func, mem_map.root.
10961 (goacc_host_init): Do not initialize host_dispatch.mem_map.lock.
10962 * oacc-init.c (lazy_open): Don't call gomp_init_tables.
10963 (acc_shutdown_1): Use dev's lock and splay_tree instead of mem_map's.
10964 * oacc-mem.c (lookup_host): Get gomp_device_descr *dev instead of
10965 gomp_memory_mapping *. Use dev's lock and splay_tree.
10966 (lookup_dev): Use dev's lock.
10967 (acc_deviceptr): Pass dev to lookup_host instead of mem_map.
10968 (acc_is_present): Likewise.
10969 (acc_map_data): Likewise.
10970 (acc_unmap_data): Likewise. Use dev's lock.
10971 (present_create_copy): Likewise.
10972 (delete_copyout): Pass dev to lookup_host instead of mem_map.
10973 (update_dev_host): Likewise.
10974 (gomp_acc_remove_pointer): Likewise. Use dev's lock.
10975 * oacc-parallel.c (GOACC_parallel): Use dev's lock and splay_tree.
10976 * plugin/plugin-host.c (GOMP_OFFLOAD_register_image): Remove.
10977 (GOMP_OFFLOAD_get_table): Remove
10978 (GOMP_OFFLOAD_load_image): New function.
10979 (GOMP_OFFLOAD_unload_image): New function.
10980 * target.c (register_lock): New mutex for offload image registration.
10981 (num_devices): Do not guard with PLUGIN_SUPPORT.
10982 (gomp_realloc_unlock): New static function.
10983 (gomp_map_vars_existing): Add device descriptor argument. Unlock mutex
10984 before gomp_fatal.
10985 (gomp_map_vars): Use dev's lock and splay_tree instead of mem_map's.
10986 Pass devicep to gomp_map_vars_existing. Unlock mutex before gomp_fatal.
10987 (gomp_copy_from_async): Use dev's lock and splay_tree instead of
10988 mem_map's.
10989 (gomp_unmap_vars): Likewise.
10990 (gomp_update): Remove gomp_memory_mapping argument. Use dev's lock and
10991 splay_tree instead of mm's. Unlock mutex before gomp_fatal.
10992 (gomp_offload_image_to_device): New static function.
10993 (GOMP_offload_register): Add mutex lock.
10994 Call gomp_offload_image_to_device for all initialized devices.
10995 Replace gomp_realloc with gomp_realloc_unlock.
10996 (GOMP_offload_unregister): New function.
10997 (gomp_init_tables): Replace with gomp_init_device. Replace a call to
10998 get_table_func from the plugin with calls to init_device_func and
10999 gomp_offload_image_to_device.
11000 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
11001 to splay_tree_s *.
11002 (GOMP_target): Do not call gomp_init_tables. Use dev's lock and
11003 splay_tree instead of mem_map's. Unlock mutex before gomp_fatal.
11004 (GOMP_target_data): Do not call gomp_init_tables.
11005 (GOMP_target_update): Likewise. Remove argument from gomp_update.
11006 (gomp_load_plugin_for_device): Replace register_image and get_table
11007 with load_image and unload_image in DLSYM ().
11008 (gomp_register_images_for_device): Remove function.
11009 (gomp_target_init): Do not initialize current_device.mem_map.*,
11010 current_device.offload_regions_registered.
11011 Remove call to gomp_register_images_for_device.
11012 Do not free offload_images and num_offload_images.
11013
6c384511
JJ
110142015-03-30 Jakub Jelinek <jakub@redhat.com>
11015
11016 PR fortran/65597
11017 * testsuite/libgomp.fortran/pr65597.f90: New test.
11018
3e8165a5
TV
110192015-03-27 Tom de Vries <tom@codesourcery.com>
11020
11021 PR testsuite/65594
11022 * testsuite/libgomp.graphite/force-parallel-6.c (abort): Declare.
11023 (init, check): New function.
11024 (foo): Change return type to void.
11025 (main): Call init and check.
11026
4d688c9a
TV
110272015-03-27 Tom de Vries <tom@codesourcery.com>
11028
11029 PR testsuite/65594
11030 * testsuite/libgomp.graphite/force-parallel-6.c (M): Define.
11031 (foo): Use M for non-inner loops to scale down test-case.
11032
01c0b3b0
KT
110332015-03-25 Kai Tietz <ktietz@redhat.com>
11034
11035 PR libgomp/64972
11036 * oacc-parallel.c (GOACC_parallel): Use PRIu64 if available.
11037 (GOACC_data_start): Likewise.
11038 * target.c (gomp_map_vars): Likewise.
11039
844d9a76
JDA
110402015-03-21 John David Anglin <danglin@gcc.gnu.org>
11041
11042 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Don't run on
11043 hppa*-*-hpux*.
11044
9b65e171
JJ
110452015-03-19 Jakub Jelinek <jakub@redhat.com>
11046
11047 * testsuite/libgomp.c/target-10.c: New test.
11048 * testsuite/libgomp.c++/target-4.C: New test.
11049
db397e2e
IV
110502015-03-13 Ilya Verbin <ilya.verbin@intel.com>
11051
11052 * testsuite/libgomp.fortran/declare-target-1.f90: New test.
11053 * testsuite/libgomp.fortran/declare-target-2.f90: New file.
11054
cd93945d
SH
110552015-03-13 Sebastian Huber <sebastian.huber@embedded-brains.de>
11056
11057 * configure.tgt (*-*-rtems*): Use local-exec TLS model.
11058 * configure.ac (*-*-rtems*): Assume Pthread is supported.
11059 (pthread.h): Check for this header file.
11060 * configure: Regenerate.
11061
05deba9f
TV
110622015-02-25 Tom de Vries <tom@codesourcery.com>
11063
11064 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (DO_PRAGMA)
11065 (check_reduction_op, check_reduction_macro, max, min):
11066 Declare.
11067 (test_reductions_int, test_reductions_minmax, test_reductions_bool): New
11068 function.
11069 (main): Use new functions.
11070
196904d8
IT
110712015-02-18 Ilya Tocar <ilya.tocar@intel.com>
11072
11073 * target.c (gomp_load_plugin_for_device): Use const char * instead of
11074 char * for variables holding dlerror return values.
11075 (DLSYM_OPT): Ditto.
11076
a2818955
TS
110772015-02-17 Thomas Schwinge <thomas@codesourcery.com>
11078
11079 * libgomp-plugin.c (GOMP_PLUGIN_debug): Fix typo.
11080
26f93312
TS
110812015-02-17 Thomas Schwinge <thomas@codesourcery.com>
11082 Cesar Philippidis <cesar@codesourcery.com>
11083
11084 * oacc-ptx.h (GOACC_INTERNAL_PTX): Add GOACC_tid, GOACC_ntid,
11085 GOACC_ctaid, and GOACC_nctaid routines.
11086
fa01ffcc
JJ
110872015-02-11 Jakub Jelinek <jakub@redhat.com>
11088
11089 PR c/64824
11090 * testsuite/libgomp.c/atomic-18.c: New test.
11091 * testsuite/libgomp.c++/atomic-16.C: New test.
11092
4886ec8e
JJ
110932015-02-04 Jakub Jelinek <jakub@redhat.com>
11094
11095 PR c/64824
11096 PR c/64868
11097 * testsuite/libgomp.c/pr64824.c: New test.
11098 * testsuite/libgomp.c/pr64868.c: New test.
11099 * testsuite/libgomp.c++/pr64824.C: New test.
11100 * testsuite/libgomp.c++/pr64868.C: New test.
11101
02d3e45e
DE
111022015-02-01 David Edelsohn <dje.gcc@gmail.com>
11103
11104 PR libgomp/64635
11105 * configure.tgt (*-*-aix*): Use standard posix plugin-suffix.h.
11106 Link with -lpthread.
11107 * config/aix/plugin-suffix.h: Delete.
11108
b5f7a6ca
JH
111092015-01-28 Jack Howarth <howarth.at.gcc@gmail.com>
11110
11111 PR libgomp/64635
11112 * configure.tgt (*-*-aix*): Use config_path "aix posix".
11113 (*-*-darwin*): Use config_path "bsd darwin posix".
11114 (*-*-hpux*): Use config_path "hpux posix".
11115 * target.c: Add include of plugin-suffix.h and use
11116 SONAME_SUFFIX macro.
11117 * config/aix/plugin-suffix.h: New file.
11118 * config/darwin/plugin-suffix.h: New file.
11119 * config/hpux/plugin-suffix.h: New file.
11120 * config/posix/plugin-suffix.h: New file.
11121
b8910447
JJ
111222015-01-23 Jakub Jelinek <jakub@redhat.com>
11123
11124 PR middle-end/64734
11125 * libgomp.c/pr64734.c: New test.
11126
a0c88d06
TV
111272015-01-23 Tom de Vries <tom@codesourcery.com>
11128
11129 PR libgomp/64672
11130 * testsuite/libgomp.oacc-c-c++-common/abort-5.c: New test.
11131
1506ae0e
TV
111322015-01-23 Tom de Vries <tom@codesourcery.com>
11133
11134 PR libgomp/64707
11135 * testsuite/libgomp.c/target-9.c: Add -ftree-parallelize-loops=0 to
11136 dg-options.
11137
128b26dc
TS
111382015-01-19 Thomas Schwinge <thomas@codesourcery.com>
11139
bed62c21 11140 PR libgomp/64625
128b26dc
TS
11141 * libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data)
11142 (GOACC_parallel, GOACC_update): Remove const_void *offload_table
11143 formal parameter. Update all users.
11144 * target.c (GOMP_target, GOMP_target_data, GOMP_target_update):
11145 Document unused formal parameter.
11146
6e36114c
TS
111472015-01-16 Thomas Schwinge <thomas@codesourcery.com>
11148
11149 * oacc-parallel.c: Don't include <alloca.h>.
11150 (GOACC_parallel): Use gomp_alloca instead of alloca.
11151
973e9808
GP
111522015-01-16 Gerald Pfeifer <gerald@pfeifer.com>
11153
11154 * target.c (num_devices): Guard with PLUGIN_SUPPORT.
11155
41dbbb37
TS
111562015-01-15 Thomas Schwinge <thomas@codesourcery.com>
11157 James Norris <jnorris@codesourcery.com>
11158 Tom de Vries <tom@codesourcery.com>
11159 Julian Brown <julian@codesourcery.com>
11160 Cesar Philippidis <cesar@codesourcery.com>
11161 Nathan Sidwell <nathan@codesourcery.com>
11162 Tobias Burnus <burnus@net-b.de>
11163
11164 * Makefile.am (search_path): Add $(top_srcdir)/../include.
11165 (libgomp_la_SOURCES): Add splay-tree.c, libgomp-plugin.c,
11166 oacc-parallel.c, oacc-host.c, oacc-init.c, oacc-mem.c,
11167 oacc-async.c, oacc-plugin.c, oacc-cuda.c.
11168 [USE_FORTRAN] (libgomp_la_SOURCES): Add openacc.f90.
11169 Include $(top_srcdir)/plugin/Makefrag.am.
11170 (nodist_libsubinclude_HEADERS): Add openacc.h.
11171 [USE_FORTRAN] (nodist_finclude_HEADERS): Add openacc_lib.h,
11172 openacc.f90, openacc.mod, openacc_kinds.mod.
11173 (omp_lib.mod): Generalize into...
11174 (%.mod): ... this new rule.
11175 (openacc_kinds.mod, openacc.mod): New rules.
11176 * plugin/configfrag.ac: New file.
11177 * configure.ac: Move plugin/offloading support into it. Include
11178 it. Instantiate testsuite/libgomp-test-support.pt.exp.
11179 * plugin/Makefrag.am: New file.
11180 * testsuite/Makefile.am (OFFLOAD_TARGETS)
11181 (OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS): Don't
11182 export.
11183 (libgomp-test-support.exp): New rule.
11184 (all-local): Depend on it.
11185 * Makefile.in: Regenerate.
11186 * testsuite/Makefile.in: Regenerate.
11187 * config.h.in: Likewise.
11188 * configure: Likewise.
11189 * configure.tgt: Harden shell syntax.
11190 * env.c: Include "oacc-int.h".
11191 (parse_acc_device_type): New function.
11192 (gomp_debug_var, goacc_device_type, goacc_device_num): New
11193 variables.
11194 (initialize_env): Initialize those. Call
11195 goacc_runtime_initialize.
11196 * error.c (gomp_vdebug, gomp_debug, gomp_vfatal): New functions.
11197 (gomp_fatal): Call gomp_vfatal.
11198 * libgomp.h: Include "libgomp-plugin.h" and <stdarg.h>.
11199 (gomp_debug_var, goacc_device_type, goacc_device_num, gomp_vdebug)
11200 (gomp_debug, gomp_verror, gomp_vfatal, gomp_init_targets_once)
11201 (splay_tree_node, splay_tree, splay_tree_key)
11202 (struct target_mem_desc, struct splay_tree_key_s)
11203 (struct gomp_memory_mapping, struct acc_dispatch_t)
11204 (struct gomp_device_descr, gomp_acc_insert_pointer)
11205 (gomp_acc_remove_pointer, target_mem_desc, gomp_copy_from_async)
11206 (gomp_unmap_vars, gomp_init_device, gomp_init_tables)
11207 (gomp_free_memmap, gomp_fini_device): New declarations.
11208 (gomp_vdebug, gomp_debug): New macros.
11209 Include "splay-tree.h".
11210 * libgomp.map (OACC_2.0): New symbol version. Use for
11211 acc_get_num_devices, acc_get_num_devices_h_, acc_set_device_type,
11212 acc_set_device_type_h_, acc_get_device_type,
11213 acc_get_device_type_h_, acc_set_device_num, acc_set_device_num_h_,
11214 acc_get_device_num, acc_get_device_num_h_, acc_async_test,
11215 acc_async_test_h_, acc_async_test_all, acc_async_test_all_h_,
11216 acc_wait, acc_wait_h_, acc_wait_async, acc_wait_async_h_,
11217 acc_wait_all, acc_wait_all_h_, acc_wait_all_async,
11218 acc_wait_all_async_h_, acc_init, acc_init_h_, acc_shutdown,
11219 acc_shutdown_h_, acc_on_device, acc_on_device_h_, acc_malloc,
11220 acc_free, acc_copyin, acc_copyin_32_h_, acc_copyin_64_h_,
11221 acc_copyin_array_h_, acc_present_or_copyin,
11222 acc_present_or_copyin_32_h_, acc_present_or_copyin_64_h_,
11223 acc_present_or_copyin_array_h_, acc_create, acc_create_32_h_,
11224 acc_create_64_h_, acc_create_array_h_, acc_present_or_create,
11225 acc_present_or_create_32_h_, acc_present_or_create_64_h_,
11226 acc_present_or_create_array_h_, acc_copyout, acc_copyout_32_h_,
11227 acc_copyout_64_h_, acc_copyout_array_h_, acc_delete,
11228 acc_delete_32_h_, acc_delete_64_h_, acc_delete_array_h_,
11229 acc_update_device, acc_update_device_32_h_,
11230 acc_update_device_64_h_, acc_update_device_array_h_,
11231 acc_update_self, acc_update_self_32_h_, acc_update_self_64_h_,
11232 acc_update_self_array_h_, acc_map_data, acc_unmap_data,
11233 acc_deviceptr, acc_hostptr, acc_is_present, acc_is_present_32_h_,
11234 acc_is_present_64_h_, acc_is_present_array_h_,
11235 acc_memcpy_to_device, acc_memcpy_from_device,
11236 acc_get_current_cuda_device, acc_get_current_cuda_context,
11237 acc_get_cuda_stream, acc_set_cuda_stream.
11238 (GOACC_2.0): New symbol version. Use for GOACC_data_end,
11239 GOACC_data_start, GOACC_enter_exit_data, GOACC_parallel,
11240 GOACC_update, GOACC_wait, GOACC_get_thread_num,
11241 GOACC_get_num_threads.
11242 (GOMP_PLUGIN_1.0): New symbol version. Use for
11243 GOMP_PLUGIN_malloc, GOMP_PLUGIN_malloc_cleared,
11244 GOMP_PLUGIN_realloc, GOMP_PLUGIN_debug, GOMP_PLUGIN_error,
11245 GOMP_PLUGIN_fatal, GOMP_PLUGIN_async_unmap_vars,
11246 GOMP_PLUGIN_acc_thread.
11247 * libgomp.texi: Update for OpenACC changes, and GOMP_DEBUG
11248 environment variable.
11249 * libgomp_g.h (GOACC_data_start, GOACC_data_end)
11250 (GOACC_enter_exit_data, GOACC_parallel, GOACC_update, GOACC_wait)
11251 (GOACC_get_num_threads, GOACC_get_thread_num): New declarations.
11252 * splay-tree.h (splay_tree_lookup, splay_tree_insert)
11253 (splay_tree_remove): New declarations.
11254 (rotate_left, rotate_right, splay_tree_splay, splay_tree_insert)
11255 (splay_tree_remove, splay_tree_lookup): Move into...
11256 * splay-tree.c: ... this new file.
11257 * target.c: Include "oacc-plugin.h", "oacc-int.h", <assert.h>.
11258 (splay_tree_node, splay_tree, splay_tree_key)
11259 (struct target_mem_desc, struct splay_tree_key_s)
11260 (struct gomp_device_descr): Don't declare.
11261 (num_devices_openmp): New variable.
11262 (gomp_get_num_devices ): Use it.
11263 (gomp_init_targets_once): New function.
11264 (gomp_get_num_devices ): Use it.
11265 (get_kind, gomp_copy_from_async, gomp_free_memmap)
11266 (gomp_fini_device, gomp_register_image_for_device): New functions.
11267 (gomp_map_vars): Add devaddrs parameter.
11268 (gomp_update): Add mm parameter.
11269 (gomp_init_device): Move most of it into...
11270 (gomp_init_tables): ... this new function.
11271 (gomp_register_images_for_device): Remove function.
11272 (splay_compare, gomp_map_vars, gomp_unmap_vars, gomp_init_device):
11273 Make them hidden instead of static.
11274 (gomp_map_vars_existing, gomp_map_vars, gomp_unmap_vars)
11275 (gomp_update, gomp_init_device, GOMP_target, GOMP_target_data)
11276 (GOMP_target_end_data, GOMP_target_update)
11277 (gomp_load_plugin_for_device, gomp_target_init): Update for
11278 OpenACC changes.
11279 * oacc-async.c: New file.
11280 * oacc-cuda.c: Likewise.
11281 * oacc-host.c: Likewise.
11282 * oacc-init.c: Likewise.
11283 * oacc-int.h: Likewise.
11284 * oacc-mem.c: Likewise.
11285 * oacc-parallel.c: Likewise.
11286 * oacc-plugin.c: Likewise.
11287 * oacc-plugin.h: Likewise.
11288 * oacc-ptx.h: Likewise.
11289 * openacc.f90: Likewise.
11290 * openacc.h: Likewise.
11291 * openacc_lib.h: Likewise.
11292 * plugin/plugin-host.c: Likewise.
11293 * plugin/plugin-nvptx.c: Likewise.
11294 * libgomp-plugin.c: Likewise.
11295 * libgomp-plugin.h: Likewise.
11296 * libgomp_target.h: Remove file after merging content into the
11297 former file. Update all users.
11298 * testsuite/lib/libgomp.exp: Load libgomp-test-support.exp.
11299 (offload_targets_s, offload_targets_s_openacc): New variables.
11300 (check_effective_target_openacc_nvidia_accel_present)
11301 (check_effective_target_openacc_nvidia_accel_selected): New
11302 procedures.
11303 (libgomp_init): Update for OpenACC changes.
11304 * testsuite/libgomp-test-support.exp.in: New file.
11305 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
11306 * testsuite/libgomp.oacc-c/c.exp: Likewise.
11307 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
11308 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Likewise.
11309 * testsuite/libgomp.oacc-c-c++-common/abort-2.c: Likewise.
11310 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
11311 * testsuite/libgomp.oacc-c-c++-common/abort-4.c: Likewise.
11312 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
11313 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
11314 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Likewise.
11315 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Likewise.
11316 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
11317 * testsuite/libgomp.oacc-c-c++-common/collapse-1.c: Likewise.
11318 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
11319 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
11320 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
11321 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
11322 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
11323 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
11324 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
11325 * testsuite/libgomp.oacc-c-c++-common/data-1.c: Likewise.
11326 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
11327 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
11328 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
11329 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
11330 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
11331 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
11332 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
11333 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
11334 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
11335 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
11336 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
11337 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
11338 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Likewise.
11339 * testsuite/libgomp.oacc-c-c++-common/kernels-empty.c: Likewise.
11340 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
11341 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
11342 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
11343 * testsuite/libgomp.oacc-c-c++-common/lib-12.c: Likewise.
11344 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
11345 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
11346 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
11347 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
11348 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
11349 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
11350 * testsuite/libgomp.oacc-c-c++-common/lib-19.c: Likewise.
11351 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
11352 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
11353 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
11354 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
11355 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
11356 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
11357 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
11358 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
11359 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
11360 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
11361 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
11362 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
11363 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
11364 * testsuite/libgomp.oacc-c-c++-common/lib-31.c: Likewise.
11365 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
11366 * testsuite/libgomp.oacc-c-c++-common/lib-33.c: Likewise.
11367 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
11368 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
11369 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
11370 * testsuite/libgomp.oacc-c-c++-common/lib-37.c: Likewise.
11371 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Likewise.
11372 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
11373 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
11374 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
11375 * testsuite/libgomp.oacc-c-c++-common/lib-41.c: Likewise.
11376 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
11377 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
11378 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
11379 * testsuite/libgomp.oacc-c-c++-common/lib-45.c: Likewise.
11380 * testsuite/libgomp.oacc-c-c++-common/lib-46.c: Likewise.
11381 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
11382 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
11383 * testsuite/libgomp.oacc-c-c++-common/lib-49.c: Likewise.
11384 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Likewise.
11385 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Likewise.
11386 * testsuite/libgomp.oacc-c-c++-common/lib-51.c: Likewise.
11387 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
11388 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
11389 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
11390 * testsuite/libgomp.oacc-c-c++-common/lib-55.c: Likewise.
11391 * testsuite/libgomp.oacc-c-c++-common/lib-56.c: Likewise.
11392 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
11393 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
11394 * testsuite/libgomp.oacc-c-c++-common/lib-59.c: Likewise.
11395 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
11396 * testsuite/libgomp.oacc-c-c++-common/lib-60.c: Likewise.
11397 * testsuite/libgomp.oacc-c-c++-common/lib-61.c: Likewise.
11398 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
11399 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
11400 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
11401 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
11402 * testsuite/libgomp.oacc-c-c++-common/lib-66.c: Likewise.
11403 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
11404 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
11405 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
11406 * testsuite/libgomp.oacc-c-c++-common/lib-7.c: Likewise.
11407 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
11408 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
11409 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
11410 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
11411 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
11412 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
11413 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
11414 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
11415 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
11416 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
11417 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
11418 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
11419 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
11420 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
11421 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
11422 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
11423 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
11424 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
11425 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
11426 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
11427 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
11428 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
11429 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
11430 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
11431 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
11432 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Likewise.
11433 * testsuite/libgomp.oacc-c-c++-common/offset-1.c: Likewise.
11434 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: Likewise.
11435 * testsuite/libgomp.oacc-c-c++-common/parallel-empty.c: Likewise.
11436 * testsuite/libgomp.oacc-c-c++-common/pointer-align-1.c: Likewise.
11437 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
11438 * testsuite/libgomp.oacc-c-c++-common/present-2.c: Likewise.
11439 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
11440 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
11441 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
11442 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
11443 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
11444 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c:
11445 Likewise.
11446 * testsuite/libgomp.oacc-c-c++-common/subr.h: Likewise.
11447 * testsuite/libgomp.oacc-c-c++-common/subr.ptx: Likewise.
11448 * testsuite/libgomp.oacc-c-c++-common/timer.h: Likewise.
11449 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
11450 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Likewise.
11451 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
11452 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
11453 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
11454 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
11455 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
11456 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
11457 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
11458 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
11459 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
11460 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
11461 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
11462 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
11463 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
11464 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
11465 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
11466 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
11467 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
11468 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
11469 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
11470 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
11471 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
11472 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
11473 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
11474 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
11475 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
11476 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
11477 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
11478 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
11479 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
11480 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
11481 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
11482 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
11483 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
11484 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
11485 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
11486 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
11487 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
11488 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
11489 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
11490 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
11491 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
11492 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
11493 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
11494 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
11495 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
11496 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
11497 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
11498 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
11499 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
11500 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
11501 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
11502 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
11503 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
11504 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
11505 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
11506
f1f3453e
TS
115072015-01-10 Thomas Schwinge <thomas@codesourcery.com>
11508 Julian Brown <julian@codesourcery.com>
11509 David Malcolm <dmalcolm@redhat.com>
11510
11511 * configure.ac: Rename libgomp from "GNU OpenMP Runtime Library"
11512 to "GNU Offloading and Multi Processing Runtime Library". Change
11513 all users.
11514 * configure: Regenerate.
11515 * libgomp.texi: Update.
11516
f9a0eca4
TS
115172015-01-08 Thomas Schwinge <thomas@codesourcery.com>
11518
b335ef4e
TS
11519 * configure.ac [tgt_dir] (offload_additional_lib_paths): Also add
11520 "$tgt_dir/lib32".
11521 * configure: Regenerate.
11522
f9a0eca4
TS
11523 * testsuite/lib/libgomp.exp (libgomp_init): Correctly match
11524 "intelmic" in $offload_targets.
11525
b67cd4e3
JJ
115262015-01-05 Jakub Jelinek <jakub@redhat.com>
11527
5624e564
JJ
11528 Update copyright years.
11529
b67cd4e3
JJ
11530 * libgomp.texi: Bump @copying's copyright year.
11531
3b41b583
KT
115322014-12-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
11533
11534 * testsuite/lib/libgomp.exp: Load target-utils.exp.
93d90219 11535 Move load of target-supports.exp earlier.
3b41b583 11536
2354caec
IV
115372014-12-10 Ilya Verbin <ilya.verbin@intel.com>
11538
11539 * testsuite/libgomp.c/target-9.c: New test.
11540
f50eecba
VR
115412014-12-09 Varvara Rainchik <varvara.rainchik@intel.com>
11542
11543 * config.h.in: Regenerate.
11544 * configure: Regenerate.
11545 * configure.ac: Add GCC_CHECK_EMUTLS.
11546 * libgomp.h: Add check for USE_EMUTLS: this case
11547 is equal to HAVE_TLS.
11548 * team.c: Likewise.
11549
68bc9270
UB
115502014-12-03 Uros Bizjak <ubizjak@gmail.com>
11551
11552 * configure.tgt (x86_64-*-linux*): Tune -m32 multilib to generic.
11553
476ff787
AT
115542014-11-28 Andrey Turetskiy <andrey.turetskiy@intel.com>
11555 Ilya Verbin <ilya.verbin@intel.com>
11556
11557 * testsuite/libgomp.c/target-critical-1.c: New test.
11558
31a30e62
JJ
115592014-11-26 Jakub Jelinek <jakub@redhat.com>
11560
11561 * testsuite/libgomp.c/examples-4/e.53.4.c: Add -DITESTITERS=20
68bc9270 11562 to dg-options unless expensive testing is on.
31a30e62
JJ
11563 (TESTITERS): Define to N if not defined.
11564 (main): Use TESTITERS instead of N.
11565 * testsuite/libgomp.c/examples-4/e.55.1.c: Define CHUNKSZ from
11566 dg-additional-options depending on whether expensive testing is on.
11567 * testsuite/libgomp.fortran/examples-4/e.55.1.f90 (e_55_1_mod):
11568 Decrease N to 100000 and CHUNKSZ to 10000.
11569
3f9e8f13
JJ
115702014-11-24 Jakub Jelinek <jakub@redhat.com>
11571
11572 PR fortran/63938
31a30e62
JJ
11573 * testsuite/libgomp.fortran/pr63938-1.f90: New test.
11574 * testsuite/libgomp.fortran/pr63938-2.f90: New test.
3f9e8f13 11575
c8451a46
SE
115762014-11-21 Steve Ellcey <sellcey@imgtec.com>
11577
11578 * config/linux/mips/futex.h (SYS_futex): Define if not already done.
11579
a699d672
L
115802014-11-21 H.J. Lu <hongjiu.lu@intel.com>
11581
11582 PR bootstrap/63784
11583 * configure: Regenerated.
11584
4a19f719
UB
115852014-11-19 Uros Bizjak <ubizjak@gmail.com>
11586
11587 * testsuite/libgomp.c/examples-4/e.53.5.c: Require
11588 vect_simd_clones effective target.
11589 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
11590
b1bf6c52
JJ
115912014-11-14 Jakub Jelinek <jakub@redhat.com>
11592
11593 * libgomp.c/examples-4/e.54.2.c (main): Use N / 8 instead
11594 of 32 as block_size.
11595 * libgomp.fortran/examples-4/e.54.2.f90 (e_54_1): Use n / 8
11596 instead of 32 as block_size.
11597
d64ae614
AT
115982014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
11599 Ilya Verbin <ilya.verbin@intel.com>
11600
11601 * Makefile.in: Regenerate.
11602 * configure: Regenerate.
11603 * configure.ac: Set up offload_additional_options,
11604 offload_additional_lib_paths and offload_targets.
11605 * testsuite/Makefile.am: Export environment variables: OFFLOAD_TARGETS,
11606 OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS.
11607 * testsuite/Makefile.in: Regenerate.
11608 * testsuite/lib/libgomp.exp (libgomp_init): Append
11609 offload_additional_lib_paths to LD_LIBRARY_PATH. Append
11610 offload_additional_options to ALWAYS_CFLAGS. Append liboffloadmic
11611 build directory to LD_LIBRARY_PATH for intelmic offload targets.
11612
122d7303
AT
116132014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
11614 Ilya Verbin <ilya.verbin@intel.com>
11615 Kirill Yukhin <kirill.yukhin@intel.com>
11616 Ilya Tocar <ilya.tocar@intel.com>
11617
11618 * testsuite/lib/libgomp.exp
11619 (check_effective_target_offload_device): New.
11620 * testsuite/libgomp.c++/c++.exp: Include tests from subdirectories.
11621 * testsuite/libgomp.c++/examples-4/e.51.5.C: New test.
11622 * testsuite/libgomp.c++/examples-4/e.53.2.C: Ditto.
11623 * testsuite/libgomp.c/examples-4/e.50.1.c: Ditto.
11624 * testsuite/libgomp.c/examples-4/e.50.2.c: Ditto.
11625 * testsuite/libgomp.c/examples-4/e.50.3.c: Ditto.
11626 * testsuite/libgomp.c/examples-4/e.50.4.c: Ditto.
11627 * testsuite/libgomp.c/examples-4/e.50.5.c: Ditto.
11628 * testsuite/libgomp.c/examples-4/e.51.1.c: Ditto.
11629 * testsuite/libgomp.c/examples-4/e.51.2.c: Ditto.
11630 * testsuite/libgomp.c/examples-4/e.51.3.c: Ditto.
11631 * testsuite/libgomp.c/examples-4/e.51.4.c: Ditto.
11632 * testsuite/libgomp.c/examples-4/e.51.6.c: Ditto.
11633 * testsuite/libgomp.c/examples-4/e.51.7.c: Ditto.
11634 * testsuite/libgomp.c/examples-4/e.52.1.c: Ditto.
11635 * testsuite/libgomp.c/examples-4/e.52.2.c: Ditto.
11636 * testsuite/libgomp.c/examples-4/e.53.1.c: Ditto.
11637 * testsuite/libgomp.c/examples-4/e.53.3.c: Ditto.
11638 * testsuite/libgomp.c/examples-4/e.53.4.c: Ditto.
11639 * testsuite/libgomp.c/examples-4/e.53.5.c: Ditto.
11640 * testsuite/libgomp.c/examples-4/e.54.2.c: Ditto.
11641 * testsuite/libgomp.c/examples-4/e.54.3.c: Ditto.
11642 * testsuite/libgomp.c/examples-4/e.54.4.c: Ditto.
11643 * testsuite/libgomp.c/examples-4/e.54.5.c: Ditto.
11644 * testsuite/libgomp.c/examples-4/e.54.6.c: Ditto.
11645 * testsuite/libgomp.c/examples-4/e.55.1.c: Ditto.
11646 * testsuite/libgomp.c/examples-4/e.55.2.c: Ditto.
11647 * testsuite/libgomp.c/examples-4/e.56.3.c: Ditto.
11648 * testsuite/libgomp.c/examples-4/e.56.4.c: Ditto.
11649 * testsuite/libgomp.c/examples-4/e.57.1.c: Ditto.
11650 * testsuite/libgomp.c/examples-4/e.57.2.c: Ditto.
11651 * testsuite/libgomp.c/examples-4/e.57.3.c: Ditto.
11652 * testsuite/libgomp.c/target-7.c: Fix test.
11653 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: New test.
11654 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Ditto.
11655 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Ditto.
11656 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Ditto.
11657 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Ditto.
11658 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Ditto.
11659 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Ditto.
11660 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Ditto.
11661 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Ditto.
11662 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Ditto.
11663 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Ditto.
11664 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Ditto.
11665 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Ditto.
11666 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Ditto.
11667 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Ditto.
11668 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Ditto.
11669 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Ditto.
11670 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Ditto.
11671 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
11672 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Ditto.
11673 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Ditto.
11674 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Ditto.
11675 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Ditto.
11676 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Ditto.
11677 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Ditto.
11678 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Ditto.
11679 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Ditto.
11680 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Ditto.
11681 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Ditto.
11682 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Ditto.
11683 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Ditto.
11684
1df3f842
JJ
116852014-11-13 Jakub Jelinek <jakub@redhat.com>
11686 Ilya Verbin <ilya.verbin@intel.com>
11687 Thomas Schwinge <thomas@codesourcery.com>
11688 Andrey Turetskiy <andrey.turetskiy@intel.com>
11689
11690 * libgomp.map (GOMP_4.0.1): New symbol version.
11691 Add GOMP_offload_register.
11692 * libgomp_target.h: New file.
11693 * splay-tree.h: New file.
11694 * target.c: Include config.h, libgomp_target.h, dlfcn.h, splay-tree.h.
11695 (gomp_target_init): New forward declaration.
11696 (gomp_is_initialized): New static variable.
11697 (splay_tree_node, splay_tree, splay_tree_key): New typedefs.
11698 (struct target_mem_desc, struct splay_tree_key_s, offload_image_descr):
11699 New structures.
11700 (offload_images, num_offload_images, devices, num_devices): New static
11701 variables.
11702 (splay_compare): New static function.
11703 (struct gomp_device_descr): New structure.
11704 (gomp_get_num_devices): Call gomp_target_init.
11705 (resolve_device, gomp_map_vars_existing, gomp_map_vars, gomp_unmap_tgt)
11706 (gomp_unmap_vars, gomp_update, gomp_init_device): New static functions.
11707 (GOMP_offload_register): New function.
11708 (GOMP_target): Arrange for host callback to be performed in a separate
11709 initial thread and contention group, inheriting ICVs from
11710 gomp_global_icv etc. Call gomp_map_vars and gomp_unmap_vars.
11711 Add device initialization and lookup for target function in splay tree.
11712 (GOMP_target_data): Add device initialization and call gomp_map_vars.
11713 (GOMP_target_end_data): Call gomp_unmap_vars.
11714 (GOMP_target_update): Add device initialization and call gomp_update.
11715 (gomp_load_plugin_for_device, gomp_register_images_for_device)
11716 (gomp_target_init): New static functions.
11717
85c64bbe
BS
117182014-11-13 Bernd Schmidt <bernds@codesourcery.com>
11719 Thomas Schwinge <thomas@codesourcery.com>
11720 Ilya Verbin <ilya.verbin@intel.com>
11721 Andrey Turetskiy <andrey.turetskiy@intel.com>
11722
11723 * config.h.in: Regenerate.
11724 * configure: Regenerate.
11725 * configure.ac: Check for libdl, required for plugin support.
11726 (PLUGIN_SUPPORT): Define if plugins are supported.
11727 (enable_offload_targets): Support Intel MIC targets.
11728 (OFFLOAD_TARGETS): List of target names suitable for offloading.
11729
ebf6d33b
FXC
117302014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
11731
11732 PR target/63610
11733 * configure: Regenerate.
11734
8c768629
RO
117352014-11-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
11736
11737 * config/posix/lock.c (_XOPEN_SOURCE) Define as 600.
11738
c1d62412
MP
117392014-10-06 Marek Polacek <polacek@redhat.com>
11740
11741 * testsuite/libgomp.c/affinity-1.c: Include <sys/wait.h>.
11742 * testsuite/libgomp.c/nqueens-1.c: Include <stdlib.h>.
11743 * testsuite/libgomp.c/thread-limit-1.c: Include <omp.h>
11744 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
11745
44a0c6cb
MP
117462014-10-06 Marek Polacek <polacek@redhat.com>
11747
11748 * testsuite/libgomp.c/affinity-1.c: Fix implicit declarations.
11749 * testsuite/libgomp.c/nqueens-1.c: Likewise.
11750 * testsuite/libgomp.c/pr26943-3.c: Likewise.
11751 * testsuite/libgomp.c/pr26943-4.c: Likewise.
11752 * testsuite/libgomp.c/pr36802-2.c: Likewise.
11753 * testsuite/libgomp.c/pr36802-3.c: Likewise.
11754 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
11755 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
11756 * testsuite/libgomp.c/appendix-a/a.15.1.c: Include <omp.h>.
11757 * testsuite/libgomp.c/omp-loop02.c: Fix defaulting to int.
11758 * testsuite/libgomp.c/omp-parallel-for.c: Likewise.
11759 * testsuite/libgomp.c/omp-parallel-if.c: Likewise.
11760 * testsuite/libgomp.c/omp-single-1.c: Likewise.
11761 * testsuite/libgomp.c/omp-single-2.c: Likewise.
11762 * testsuite/libgomp.c/omp_matvec.c: Likewise.
11763 * testsuite/libgomp.c/omp_workshare3.c: Likewise.
11764 * testsuite/libgomp.c/omp_workshare4.c: Likewise.
11765 * testsuite/libgomp.c/shared-1.c: Fix defaulting to int. Fix implicit
11766 declarations.
11767
5771c391
JJ
117682014-10-03 Jakub Jelinek <jakub@redhat.com>
11769
11770 PR libgomp/61200
11771 * testsuite/libgomp.c/pr61200.c: New test.
11772
bce16b88
JJ
117732014-09-18 Jakub Jelinek <jakub@redhat.com>
11774
11775 PR c++/63248
11776 * testsuite/libgomp.c++/pr63248.C: New test.
11777
3696163c
JJ
117782014-08-04 Jakub Jelinek <jakub@redhat.com>
11779
11780 * task.c (GOMP_taskgroup_end): If taskgroup->num_children
11781 is not zero, but taskgroup->children is NULL and there are
11782 any task->children, schedule those instead of waiting.
11783 * testsuite/libgomp.c/depend-6.c: New test.
11784 * testsuite/libgomp.c/depend-7.c: New test.
11785 * testsuite/libgomp.c/depend-8.c: New test.
11786 * testsuite/libgomp.c/depend-9.c: New test.
11787 * testsuite/libgomp.c/depend-10.c: New test.
11788
0494285a
JJ
117892014-08-01 Jakub Jelinek <jakub@redhat.com>
11790
11791 * libgomp.h (struct gomp_task_depend_entry): Add redundant_out field.
11792 (struct gomp_taskwait): New type.
11793 (struct gomp_task): Add taskwait and parent_depends_on, remove
11794 in_taskwait and taskwait_sem fields.
11795 (gomp_finish_task): Don't destroy taskwait_sem.
11796 * task.c (gomp_init_task): Don't init in_taskwait, instead init
11797 taskwait and parent_depends_on.
11798 (GOMP_task): For if (0) tasks with depend clause that depend on
11799 earlier tasks don't defer them, instead call
11800 gomp_task_maybe_wait_for_dependencies to wait for the dependencies.
11801 Initialize redundant_out field, for redundant out entries just
11802 move them at the end of linked list instead of removing them
11803 completely, and set redundant_out flag instead of redundant.
11804 (gomp_task_run_pre): Update last_parent_depends_on if scheduling
11805 that task.
11806 (gomp_task_run_post_handle_dependers): If parent is in
11807 gomp_task_maybe_wait_for_dependencies and newly runnable task
11808 is not parent_depends_on, queue it in parent->children linked
11809 list after all runnable tasks with parent_depends_on set.
11810 Adjust for addition of taskwait indirection.
11811 (gomp_task_run_post_remove_parent): If parent is in
11812 gomp_task_maybe_wait_for_dependencies and task to be removed
11813 is parent_depends_on, decrement n_depend and if needed awake
11814 parent. Adjust for addition of taskwait indirection.
11815 (GOMP_taskwait): Adjust for addition of taskwait indirection.
11816 (gomp_task_maybe_wait_for_dependencies): New function.
11817 * testsuite/libgomp.c/depend-5.c: New test.
11818
60ab4b44
TB
118192014-07-13 Tobias Burnus <burnus@net-b.de>
11820
11821 * testsuite/libgomp.fortran/pr34020.f90: Make compile
0494285a 11822 with TS 18508/Fortran 2015.
60ab4b44 11823
773ec47f
MP
118242014-07-06 Marek Polacek <polacek@redhat.com>
11825
11826 PR c/6940
11827 * testsuite/libgomp.c/appendix-a/a.29.1.c (f): Add dg-warnings.
11828
f707da16
JJ
118292014-07-03 Jakub Jelinek <jakub@redhat.com>
11830
11831 * testsuite/lib/libgomp.exp (libgomp_target_compile): If $source
11832 matches regex $lang_source_re, add $lang_include_flags to options.
11833 * testsuite/libgomp.c/c.exp: Unset lang_include_flags.
11834 * testsuite/libgomp.c++/c++.exp: Likewise.
11835 * testsuite/libgomp.fortran/fortran.exp: Likewise. Set lang_source_re
11836 and lang_include_flags instead of adding -fintrinsic-modules-path= to
11837 ALWAYS_CFLAGS.
11838 * testsuite/libgomp.graphite/graphite.exp: Unset lang_include_flags.
11839
07b6c044
TS
118402014-07-03 Thomas Schwinge <thomas@codesourcery.com>
11841
11842 * testsuite/libgomp.fortran/fortran.exp: Explain
11843 gfortran-dg-runtest usage.
11844
da6f124d
JJ
118452014-06-25 Jakub Jelinek <jakub@redhat.com>
11846
11847 * testsuite/libgomp.fortran/simd5.f90: New test.
11848 * testsuite/libgomp.fortran/simd6.f90: New test.
11849 * testsuite/libgomp.fortran/simd7.f90: New test.
11850
b46ebd6c
JJ
118512014-06-24 Jakub Jelinek <jakub@redhat.com>
11852
56ad0e38
JJ
11853 * testsuite/libgomp.c/for-2.c: Define SC to static for
11854 #pragma omp for simd testing.
11855 * testsuite/libgomp.c/for-2.h (SC): Define if not defined.
11856 (N(f5), N(f6), N(f7), N(f8), N(f10), N(f12), N(f14)): Use
11857 SC macro.
11858 * testsuite/libgomp.c/simd-14.c: New test.
11859 * testsuite/libgomp.c/simd-15.c: New test.
11860 * testsuite/libgomp.c/simd-16.c: New test.
11861 * testsuite/libgomp.c/simd-17.c: New test.
11862 * testsuite/libgomp.c++/for-10.C: Define SC to static for
11863 #pragma omp for simd testing.
11864 * testsuite/libgomp.c++/simd10.C: New test.
11865 * testsuite/libgomp.c++/simd11.C: New test.
11866 * testsuite/libgomp.c++/simd12.C: New test.
11867 * testsuite/libgomp.c++/simd13.C: New test.
11868
b46ebd6c
JJ
11869 * testsuite/libgomp.fortran/aligned1.f03: New test.
11870 * testsuite/libgomp.fortran/nestedfn5.f90: New test.
11871 * testsuite/libgomp.fortran/target7.f90: Surround loop spawning
11872 tasks with !$omp parallel !$omp single.
11873 * testsuite/libgomp.fortran/target8.f90: New test.
11874 * testsuite/libgomp.fortran/udr4.f90 (foo UDR, bar UDR): Adjust
11875 not to use trim in the combiner, instead call elemental function.
11876 (fn): New elemental function.
11877 * testsuite/libgomp.fortran/udr6.f90 (do_add, dp_add, dp_init):
11878 Make elemental.
11879 * testsuite/libgomp.fortran/udr7.f90 (omp_priv, omp_orig, omp_out,
11880 omp_in): Likewise.
11881 * testsuite/libgomp.fortran/udr12.f90: New test.
11882 * testsuite/libgomp.fortran/udr13.f90: New test.
11883 * testsuite/libgomp.fortran/udr14.f90: New test.
11884 * testsuite/libgomp.fortran/udr15.f90: New test.
11885
f014c653
JJ
118862014-06-18 Jakub Jelinek <jakub@redhat.com>
11887
11888 * omp_lib.f90.in (openmp_version): Set to 201307.
11889 * omp_lib.h.in (openmp_version): Likewise.
11890 * testsuite/libgomp.c/target-8.c: New test.
11891 * testsuite/libgomp.fortran/declare-simd-1.f90: Add notinbranch
11892 and inbranch clauses.
11893 * testsuite/libgomp.fortran/depend-3.f90: New test.
11894 * testsuite/libgomp.fortran/openmp_version-1.f: Adjust for new
11895 openmp_version.
11896 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
11897 * testsuite/libgomp.fortran/target1.f90: New test.
11898 * testsuite/libgomp.fortran/target2.f90: New test.
11899 * testsuite/libgomp.fortran/target3.f90: New test.
11900 * testsuite/libgomp.fortran/target4.f90: New test.
11901 * testsuite/libgomp.fortran/target5.f90: New test.
11902 * testsuite/libgomp.fortran/target6.f90: New test.
11903 * testsuite/libgomp.fortran/target7.f90: New test.
11904
92d28cbb
JJ
119052014-06-10 Jakub Jelinek <jakub@redhat.com>
11906
11907 PR fortran/60928
11908 * testsuite/libgomp.fortran/allocatable9.f90: New test.
11909 * testsuite/libgomp.fortran/allocatable10.f90: New test.
11910 * testsuite/libgomp.fortran/allocatable11.f90: New test.
11911 * testsuite/libgomp.fortran/allocatable12.f90: New test.
11912 * testsuite/libgomp.fortran/alloc-comp-1.f90: New test.
11913 * testsuite/libgomp.fortran/alloc-comp-2.f90: New test.
11914 * testsuite/libgomp.fortran/alloc-comp-3.f90: New test.
11915 * testsuite/libgomp.fortran/associate1.f90: New test.
11916 * testsuite/libgomp.fortran/associate2.f90: New test.
11917 * testsuite/libgomp.fortran/procptr1.f90: New test.
11918
5f23671d
JJ
119192014-06-06 Jakub Jelinek <jakub@redhat.com>
11920
11921 * testsuite/libgomp.fortran/simd1.f90: New test.
11922 * testsuite/libgomp.fortran/udr1.f90: New test.
11923 * testsuite/libgomp.fortran/udr2.f90: New test.
11924 * testsuite/libgomp.fortran/udr3.f90: New test.
11925 * testsuite/libgomp.fortran/udr4.f90: New test.
11926 * testsuite/libgomp.fortran/udr5.f90: New test.
11927 * testsuite/libgomp.fortran/udr6.f90: New test.
11928 * testsuite/libgomp.fortran/udr7.f90: New test.
11929 * testsuite/libgomp.fortran/udr8.f90: New test.
11930 * testsuite/libgomp.fortran/udr9.f90: New test.
11931 * testsuite/libgomp.fortran/udr10.f90: New test.
11932 * testsuite/libgomp.fortran/udr11.f90: New test.
11933
0389fbb5
UB
119342014-05-27 Uros Bizjak <ubizjak@gmail.com>
11935
11936 * testsuite/libgomp.fortran/declare-simd-1.f90: Require
11937 vect_simd_clones effective target.
11938 * testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.
11939
decaaec8
JJ
119402014-05-21 Jakub Jelinek <jakub@redhat.com>
11941
11942 PR middle-end/61252
11943 * testsuite/libgomp.c++/simd-9.C: New test.
11944
72832460
UB
119452014-05-18 Uros Bizjak <ubizjak@gmail.com>
11946
11947 * libgomp.texi (Runitme Library Routines): Remove multiple @menu.
11948 (Environment Variables) Move OMP_PROC_BIND and OMP_STACKSIZE node
11949 texts according to their @menu entry positions.
11950
dd2fc525
JJ
119512014-05-11 Jakub Jelinek <jakub@redhat.com>
11952
11953 * testsuite/libgomp.fortran/cancel-do-1.f90: New test.
11954 * testsuite/libgomp.fortran/cancel-do-2.f90: New test.
11955 * testsuite/libgomp.fortran/cancel-parallel-1.f90: New test.
11956 * testsuite/libgomp.fortran/cancel-parallel-3.f90: New test.
11957 * testsuite/libgomp.fortran/cancel-sections-1.f90: New test.
11958 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: New test.
11959 * testsuite/libgomp.fortran/declare-simd-1.f90: New test.
11960 * testsuite/libgomp.fortran/declare-simd-2.f90: New test.
11961 * testsuite/libgomp.fortran/declare-simd-3.f90: New test.
11962 * testsuite/libgomp.fortran/depend-1.f90: New test.
11963 * testsuite/libgomp.fortran/depend-2.f90: New test.
11964 * testsuite/libgomp.fortran/omp_atomic5.f90: New test.
11965 * testsuite/libgomp.fortran/simd1.f90: New test.
11966 * testsuite/libgomp.fortran/simd2.f90: New test.
11967 * testsuite/libgomp.fortran/simd3.f90: New test.
11968 * testsuite/libgomp.fortran/simd4.f90: New test.
11969 * testsuite/libgomp.fortran/taskgroup1.f90: New test.
11970
95782571
JJ
119712014-05-02 Jakub Jelinek <jakub@redhat.com>
11972
11973 * testsuite/libgomp.c/simd-10.c: New test.
11974 * testsuite/libgomp.c/simd-11.c: New test.
11975 * testsuite/libgomp.c/simd-12.c: New test.
11976 * testsuite/libgomp.c/simd-13.c: New test.
11977
f7468577
JJ
119782014-04-24 Jakub Jelinek <jakub@redhat.com>
11979
42056eac
JJ
11980 * testsuite/libgomp.c++/atomic-14.C: Allow seq_cst and
11981 atomic type clauses in any order and optional comma in between.
11982 * testsuite/libgomp.c++/atomic-15.C: Likewise.
11983 * testsuite/libgomp.c/atomic-17.c: Likewise.
11984
f7468577
JJ
11985 * testsuite/libgomp.c/simd-7.c: New test.
11986 * testsuite/libgomp.c/simd-8.c: New test.
11987 * testsuite/libgomp.c/simd-9.c: New test.
11988 * testsuite/libgomp.c/loop-16.c: New test.
11989
ab18f2f5
RH
119902014-04-02 Richard Henderson <rth@redhat.com>
11991
11992 * config/linux/futex.h (futex_wait): Get error value from errno.
11993 (futex_wake): Likewise.
11994
8bcc90b0
JJ
119952014-03-25 Jakub Jelinek <jakub@redhat.com>
11996
11997 PR c++/60331
11998 * testsuite/libgomp.c++/udr-11.C: New test.
11999 * testsuite/libgomp.c++/udr-12.C: New test.
12000 * testsuite/libgomp.c++/udr-13.C: New test.
12001 * testsuite/libgomp.c++/udr-14.C: New test.
12002 * testsuite/libgomp.c++/udr-15.C: New test.
12003 * testsuite/libgomp.c++/udr-16.C: New test.
12004 * testsuite/libgomp.c++/udr-17.C: New test.
12005 * testsuite/libgomp.c++/udr-18.C: New test.
12006 * testsuite/libgomp.c++/udr-19.C: New test.
12007
18d73c7f
RS
120082014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
12009
12010 Update copyright years
12011
f9030485
RS
120122014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
12013
12014 * hashtab.h: Use the standard form for the copyright notice.
12015
98db73df
TB
120162014-01-02 Tobias Burnus <burnus@net-b.de>
12017
12018 * libgomp.texi: Bump @copying's copyright year.
12019
ae246f7f
AT
120202013-12-17 Andreas Tobler <andreast@gcc.gnu.org>
12021
93d90219 12022 * testsuite/libgomp.c/affinity-1.c: Remove alloca.h include. Replace
ae246f7f
AT
12023 alloca () with __builtin_alloca ().
12024 * testsuite/libgomp.c/icv-2.c: Add FreeBSD coverage.
12025 * testsuite/libgomp.c/lock-3.c: Likewise.
12026 * testsuite/libgomp.c/pr48591.c: Likewise.
12027
fa00a5fe
JJ
120282013-12-17 Jakub Jelinek <jakub@redhat.com>
12029
12030 PR testsuite/59534
12031 * testsuite/libgomp.fortran/retval1.f90 (e5): Avoid non-shortcircuited
12032 comparisons.
12033
e9792e1d
JJ
120342013-12-16 Jakub Jelinek <jakub@redhat.com>
12035
12036 PR libgomp/58756
12037 * testsuite/libgomp.c/pr58756.c: New test.
12038
cab37c89
JJ
120392013-12-12 Jakub Jelinek <jakub@redhat.com>
12040
12041 PR libgomp/59467
12042 * testsuite/libgomp.fortran/crayptr2.f90: Add private (d) clause to
12043 !$omp parallel.
12044
de14871c
TS
120452013-11-07 Thomas Schwinge <thomas@codesourcery.com>
12046
1707a5de
TS
12047 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -fopenmp to
12048 ALWAYS_CFLAGS.
12049 * testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Add -fopenmp.
12050 * testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
12051 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
12052 * testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
12053 Likewise.
12054
70f05c43
TS
12055 * libgomp_g.h: Include <stddef.h> for size_t.
12056
de14871c
TS
12057 * libgomp.spec.in: Update comment about libgomp's dependencies.
12058 * configure.ac: Likewise.
12059 * configure: Regenerate.
12060
83fd6c5b
TB
120612013-10-16 Tobias Burnus <burnus@net-b.de>
12062
12063 * libgomp.texi: (Runtime Library Routines): Update references for
12064 OpenMP 4.0. Add omp_get_cancellation, omp_get_default_device,
12065 omp_get_num_devices, omp_get_num_teams, omp_get_proc_bind,
12066 omp_get_team_num, omp_is_initial_device, omp_set_default_device.
12067 (Environment Variables): Update references for OpenMP 4.0. Add
12068 OMP_CANCELLATION, OMP_DEFAULT_DEVICE, OMP_PLACES.
12069 Move OMP_DISPLAY_ENV and OMP_PROC_BIND up to be in alphabetical
12070 order.
12071
c8673881
JJ
120722013-10-14 Jakub Jelinek <jakub@redhat.com>
12073
12074 * env.c (parse_bind_var): Initialize value to avoid
12075 (false positive) warning.
12076
f89163fd
JJ
120772013-10-12 Jakub Jelinek <jakub@redhat.com>
12078
12079 PR libgomp/58691
12080 * config/linux/proc.c (gomp_cpuset_popcount): Add unused attribute
12081 to check variable.
12082 (gomp_init_num_threads): Move i variable declaration into
12083 #ifdef CPU_ALLOC_SIZE block.
12084 * config/linux/affinity.c (gomp_affinity_init_level): Test
12085 gomp_places_list_len == 0 rather than gomp_places_list == 0
12086 when checking for topology reading error.
12087 * team.c (gomp_team_start): Don't handle bind == omp_proc_bind_false.
12088 * env.c (parse_affinity): Add ignore argument, if true, don't populate
12089 gomp_places_list, only parse env var and always return false.
12090 (parse_places_var): Likewise. Don't check gomp_global_icv.bind_var.
12091 (initialize_env): Always parse OMP_PLACES and GOMP_CPU_AFFINITY env
12092 vars, default to OMP_PROC_BIND=true if OMP_PROC_BIND wasn't specified
12093 and either of these variables were parsed correctly into a places
12094 list.
12095
1d340638
TS
120962013-10-11 Thomas Schwinge <thomas@codesourcery.com>
12097 Jakub Jelinek <jakub@redhat.com>
12098
12099 * testsuite/libgomp.graphite/force-parallel-1.c: Expect 4 instead
12100 of 5 loopfn matches.
12101 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
12102 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
12103 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
12104 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
12105 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
12106 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
12107 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
12108 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
12109
71a81c21
TS
121102013-10-11 Thomas Schwinge <thomas@codesourcery.com>
12111
bd87f731
TS
12112 * Makefile.am (omp_lib.mod): Streamline rule.
12113 * Makefile.in: Regenerate.
12114
f5745bed
TS
12115 * libgomp.texi (Runtime Library Routines): C linkage, don't throw
12116 exceptions.
12117
b5512c66
TS
12118 * testsuite/libgomp.c/lib-1.c (main): Add missing error check.
12119 * testsuite/libgomp.fortran/lib1.f90: Likewise.
12120 * testsuite/libgomp.fortran/lib2.f: Likewise.
12121 * testsuite/libgomp.fortran/lib3.f: Likewise.
12122
451c19c4
TS
12123 * configure.ac: Typo fix.
12124 * configure: Regenerate.
12125
86a6016d
TS
12126 * testsuite/libgomp.fortran/openmp_version-1.f: New file.
12127 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
12128
71a81c21
TS
12129 * omp.h.in: Don't touch the user's namespace.
12130
acf0174b
JJ
121312013-10-11 Jakub Jelinek <jakub@redhat.com>
12132 Tobias Burnus <burnus@net-b.de>
12133 Richard Henderson <rth@redhat.com>
12134
12135 * target.c: New file.
12136 * Makefile.am (libgomp_la_SOURCES): Add target.c.
12137 * Makefile.in: Regenerated.
12138 * libgomp_g.h (GOMP_task): Add depend argument.
12139 (GOMP_barrier_cancel, GOMP_loop_end_cancel,
12140 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
12141 GOMP_target_end_data, GOMP_target_update, GOMP_teams,
12142 GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
12143 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
12144 GOMP_parallel, GOMP_cancel, GOMP_cancellation_point,
12145 GOMP_taskgroup_start, GOMP_taskgroup_end,
12146 GOMP_parallel_sections): New prototypes.
12147 * fortran.c (omp_is_initial_device): Add ialias_redirect.
12148 (omp_is_initial_device_): New function.
12149 (ULP, STR1, STR2, ialias_redirect): Removed.
12150 (omp_get_cancellation_, omp_get_proc_bind_, omp_set_default_device_,
12151 omp_set_default_device_8_, omp_get_default_device_,
12152 omp_get_num_devices_, omp_get_num_teams_, omp_get_team_num_): New
12153 functions.
12154 * libgomp.map (GOMP_barrier_cancel, GOMP_loop_end_cancel,
12155 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
12156 GOMP_target_end_data, GOMP_target_update, GOMP_teams): Export
12157 @@GOMP_4.0.
12158 (omp_is_initial_device, omp_is_initial_device_, omp_get_cancellation,
12159 omp_get_cancellation_, omp_get_proc_bind, omp_get_proc_bind_,
12160 omp_set_default_device, omp_set_default_device_,
12161 omp_set_default_device_8_, omp_get_default_device,
12162 omp_get_default_device_, omp_get_num_devices, omp_get_num_devices_,
12163 omp_get_num_teams, omp_get_num_teams_, omp_get_team_num,
12164 omp_get_team_num_): Export @@OMP_4.0.
12165 * team.c (struct gomp_thread_start_data): Add place field.
12166 (gomp_thread_start): Clear thr->thread_pool and
12167 thr->task before returning. Use gomp_team_barrier_wait_final
12168 instead of gomp_team_barrier_wait. Initialize thr->place.
12169 (gomp_new_team): Initialize work_shares_to_free, work_share_cancelled,
12170 team_cancelled and task_queued_count fields.
12171 (gomp_free_pool_helper): Clear thr->thread_pool and thr->task
12172 before calling pthread_exit.
12173 (gomp_free_thread): No longer static. Use
12174 gomp_managed_threads_lock instead of gomp_remaining_threads_lock.
12175 (gomp_team_start): Add flags argument. Set
12176 thr->thread_pool->threads_busy to nthreads immediately after creating
12177 new pool. Use gomp_managed_threads_lock instead of
12178 gomp_remaining_threads_lock. Handle OpenMP 4.0 affinity.
12179 (gomp_team_end): Use gomp_managed_threads_lock instead of
12180 gomp_remaining_threads_lock. Use gomp_team_barrier_wait_final instead
12181 of gomp_team_barrier_wait. If team->team_cancelled, call
93d90219 12182 gomp_fini_workshare on ws chain starting at team->work_shares_to_free
acf0174b
JJ
12183 rather than thr->ts.work_share.
12184 (initialize_team): Don't call gomp_sem_init here.
12185 * sections.c (GOMP_parallel_sections_start): Adjust gomp_team_start
12186 caller.
12187 (GOMP_parallel_sections, GOMP_sections_end_cancel): New functions.
12188 * env.c (gomp_global_icv): Add default_device_var, target_data and
12189 bind_var initializers.
12190 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
12191 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
12192 gomp_places_list_len): New variables.
12193 (parse_bind_var, parse_one_place, parse_places_var): New functions.
12194 (parse_affinity): Rewritten to construct OMP_PLACES list with unit
12195 sized places.
12196 (gomp_cancel_var): New global variable.
12197 (parse_int): New function.
12198 (handle_omp_display_env): New function.
12199 (initialize_env): Use it. Initialize default_device_var.
12200 Parse OMP_CANCELLATION env var. Use parse_bind_var to parse
12201 OMP_PROC_BIND instead of parse_boolean. Use parse_places_var for
12202 OMP_PLACES parsing. Don't call parse_affinity if OMP_PLACES has
12203 been successfully parsed (and call gomp_init_affinity in that case).
12204 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
12205 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
12206 omp_get_team_num, omp_is_initial_device): New functions.
12207 * libgomp.h: Include stdlib.h.
12208 (ialias_ulp, ialias_str1, ialias_str2, ialias_redirect, ialias_call):
12209 Define.
12210 (struct target_mem_desc): Forward declare.
12211 (struct gomp_task_icv): Add default_device_var, target_data, bind_var
12212 and thread_limit_var fields.
12213 (gomp_get_num_devices): New prototype.
12214 (gomp_cancel_var): New extern decl.
12215 (struct gomp_team): Add work_shares_to_free, work_share_cancelled,
12216 team_cancelled and task_queued_count fields. Add comments about
12217 task_{,queued_,running_}count.
12218 (gomp_cancel_kind): New enum.
12219 (gomp_work_share_end_cancel): New prototype.
12220 (struct gomp_task): Add next_taskgroup, prev_taskgroup, taskgroup,
12221 copy_ctors_done, dependers, depend_hash, depend_count, num_dependees
12222 and depend fields.
12223 (struct gomp_taskgroup): New type.
12224 (struct gomp_task_depend_entry,
12225 struct gomp_dependers_vec): New types.
12226 (gomp_finish_task): Free depend_hash if non-NULL.
12227 (struct gomp_team_state): Add place_partition_off
12228 and place_partition_len fields.
12229 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
12230 gomp_places_list_len): New extern decls.
12231 (struct gomp_thread): Add place field.
12232 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
12233 (gomp_init_thread_affinity): Add place argument.
12234 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
12235 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
12236 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
12237 gomp_affinity_init_level, gomp_affinity_print_place): New
12238 prototypes.
12239 (gomp_team_start): Add flags argument.
12240 (gomp_thread_limit_var, gomp_remaining_threads_count,
12241 gomp_remaining_threads_lock): Remove.
12242 (gomp_managed_threads_lock): New variable.
12243 (struct gomp_thread_pool): Add threads_busy field.
12244 (gomp_free_thread): New prototype.
12245 * task.c: Include hashtab.h.
12246 (hash_entry_type): New typedef.
12247 (htab_alloc, htab_free, htab_hash, htab_eq): New inlines.
12248 (gomp_init_task): Clear dependers, depend_hash, depend_count,
12249 copy_ctors_done and taskgroup fields.
12250 (GOMP_task): Add depend argument, handle depend clauses. If
12251 gomp_team_barrier_cancelled or if it's taskgroup has been
12252 cancelled, don't queue or start new tasks. Set copy_ctors_done
12253 field if needed. Initialize taskgroup field. If copy_ctors_done
12254 and already cancelled, don't discard the task. If taskgroup is
12255 non-NULL, enqueue the task into taskgroup queue. Increment
12256 num_children field in taskgroup. Increment task_queued_count.
12257 (gomp_task_run_pre, gomp_task_run_post_remove_parent,
12258 gomp_task_run_post_remove_taskgroup): New inline functions.
12259 (gomp_task_run_post_handle_depend_hash,
12260 gomp_task_run_post_handle_dependers,
12261 gomp_task_run_post_handle_depend): New functions.
12262 (GOMP_taskwait): Use them. If more than one new tasks
12263 have been queued, wake other threads if needed.
12264 (gomp_barrier_handle_tasks): Likewise. If
12265 gomp_team_barrier_cancelled, don't start any new tasks, just free
12266 all tasks.
12267 (GOMP_taskgroup_start, GOMP_taskgroup_end): New functions.
12268 * omp_lib.f90.in
12269 (omp_proc_bind_kind, omp_proc_bind_false,
12270 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
12271 omp_proc_bind_spread): New params.
12272 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
12273 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
12274 omp_get_team_num, omp_is_initial_device): New interfaces.
12275 (omp_get_dynamic, omp_get_nested, omp_in_parallel,
12276 omp_get_max_threads, omp_get_num_procs, omp_get_num_threads,
12277 omp_get_thread_num, omp_get_thread_limit, omp_set_max_active_levels,
12278 omp_get_max_active_levels, omp_get_level, omp_get_ancestor_thread_num,
12279 omp_get_team_size, omp_get_active_level, omp_in_final): Remove
12280 useless use omp_lib_kinds.
12281 * omp.h.in (omp_proc_bind_t): New typedef.
12282 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
12283 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
12284 omp_get_team_num, omp_is_initial_device): New prototypes.
12285 * loop.c (gomp_parallel_loop_start): Add flags argument, pass it
12286 through to gomp_team_start.
12287 (GOMP_parallel_loop_static_start, GOMP_parallel_loop_dynamic_start,
12288 GOMP_parallel_loop_guided_start, GOMP_parallel_loop_runtime_start):
12289 Adjust gomp_parallel_loop_start callers.
12290 (GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
12291 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
12292 GOMP_loop_end_cancel): New functions.
12293 (GOMP_parallel_end): Add ialias_redirect.
12294 * hashtab.h: New file.
12295 * libgomp.texi (Environment Variables): Minor cleanup,
12296 update section refs to OpenMP 4.0rc2.
12297 (OMP_DISPLAY_ENV, GOMP_SPINCOUNT): Document these
12298 environment variables.
12299 * work.c (gomp_work_share_end, gomp_work_share_end_nowait): Set
12300 team->work_shares_to_free to thr->ts.work_share before calling
12301 free_work_share.
12302 (gomp_work_share_end_cancel): New function.
12303 * config/linux/proc.c: Include errno.h.
12304 (gomp_get_cpuset_size, gomp_cpuset_size, gomp_cpusetp): New variables.
12305 (gomp_cpuset_popcount): Add cpusetsize argument, use it instead of
12306 sizeof (cpu_set_t) to determine number of iterations. Fix up check
12307 extern decl. Use CPU_COUNT_S if available, or CPU_COUNT if
12308 gomp_cpuset_size is sizeof (cpu_set_t).
12309 (gomp_init_num_threads): Initialize gomp_cpuset_size,
12310 gomp_get_cpuset_size and gomp_cpusetp here, use gomp_cpusetp instead
12311 of &cpuset and pass gomp_cpuset_size instead of sizeof (cpu_set_t)
12312 to pthread_getaffinity_np. Free and clear gomp_cpusetp if it didn't
12313 contain any logical CPUs.
12314 (get_num_procs): Don't call pthread_getaffinity_np if gomp_cpusetp
12315 is NULL. Use gomp_cpusetp instead of &cpuset and pass
12316 gomp_get_cpuset_size instead of sizeof (cpu_set_t) to
12317 pthread_getaffinity_np. Check gomp_places_list instead of
12318 gomp_cpu_affinity. Adjust gomp_cpuset_popcount caller.
12319 * config/linux/bar.c (gomp_barrier_wait_end,
12320 gomp_barrier_wait_last): Use BAR_* defines.
12321 (gomp_team_barrier_wait_end): Likewise. Clear BAR_CANCELLED
12322 from state where needed. Set work_share_cancelled to 0 on last
12323 thread.
12324 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel_end,
12325 gomp_team_barrier_wait_cancel, gomp_team_barrier_cancel): New
12326 functions.
12327 * config/linux/proc.h (gomp_cpuset_popcount): Add attribute_hidden.
12328 Add cpusetsize argument.
12329 (gomp_cpuset_size, gomp_cpusetp): Declare.
12330 * config/linux/affinity.c: Include errno.h, stdio.h and string.h.
12331 (affinity_counter): Remove.
12332 (CPU_ISSET_S, CPU_ZERO_S, CPU_SET_S, CPU_CLR_S): Define
12333 if CPU_ALLOC_SIZE isn't defined.
12334 (gomp_init_affinity): Rewritten, if gomp_places_list is NULL, try
12335 silently create OMP_PLACES=threads, if it is non-NULL afterwards,
12336 bind current thread to the first place.
12337 (gomp_init_thread_affinity): Rewritten. Add place argument, just
12338 pthread_setaffinity_np to gomp_places_list[place].
12339 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
12340 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
12341 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
12342 gomp_affinity_init_level, gomp_affinity_print_place): New functions.
12343 * config/linux/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
12344 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
12345 (gomp_barrier_t): Add awaited_final field.
12346 (gomp_barrier_init): Initialize awaited_final field.
12347 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel,
12348 gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): New
12349 prototypes.
12350 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit. Use BAR_*
12351 defines.
12352 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final_start,
12353 gomp_team_barrier_cancelled): New inline functions.
12354 (gomp_barrier_last_thread,
12355 gomp_team_barrier_set_task_pending,
12356 gomp_team_barrier_clear_task_pending,
12357 gomp_team_barrier_set_waiting_for_tasks,
12358 gomp_team_barrier_waiting_for_tasks,
12359 gomp_team_barrier_done): Use BAR_* defines.
12360 * config/posix/bar.c (gomp_barrier_init): Clear cancellable field.
12361 (gomp_barrier_wait_end): Use BAR_* defines.
12362 (gomp_team_barrier_wait_end): Clear BAR_CANCELLED from state.
12363 Set work_share_cancelled to 0 on last thread, use __atomic_load_n.
12364 Use BAR_* defines.
12365 (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_wait_cancel,
12366 gomp_team_barrier_cancel): New functions.
12367 * config/posix/affinity.c (gomp_init_thread_affinity): Add place
12368 argument.
12369 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
12370 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
12371 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
12372 gomp_affinity_init_level, gomp_affinity_print_place): New stubs.
12373 * config/posix/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
12374 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
12375 (gomp_barrier_t): Add cancellable field.
12376 (gomp_team_barrier_wait_cancel, gomp_team_barrier_wait_cancel_end,
12377 gomp_team_barrier_cancel): New prototypes.
12378 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit.
12379 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final,
12380 gomp_team_barrier_cancelled): New inline functions.
12381 (gomp_barrier_wait_start, gomp_barrier_last_thread,
12382 gomp_team_barrier_set_task_pending,
12383 gomp_team_barrier_clear_task_pending,
12384 gomp_team_barrier_set_waiting_for_tasks,
12385 gomp_team_barrier_waiting_for_tasks,
12386 gomp_team_barrier_done): Use BAR_* defines.
12387 * barrier.c (GOMP_barrier_cancel): New function.
12388 * omp_lib.h.in (omp_proc_bind_kind, omp_proc_bind_false,
12389 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
12390 omp_proc_bind_spread): New params.
12391 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
12392 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
12393 omp_get_team_num, omp_is_initial_device): New externals.
12394 * parallel.c (GOMP_parallel, GOMP_cancel, GOMP_cancellation_point):
12395 New functions.
12396 (gomp_resolve_num_threads): Adjust for thread_limit now being in
12397 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
12398 infinity. If not nested, just return minimum of max_num_threads
12399 and icv->thread_limit_var and if thr->thread_pool, set threads_busy
12400 to the returned value. Otherwise, don't update atomically
12401 gomp_remaining_threads_count, but instead thr->thread_pool->threads_busy.
12402 (GOMP_parallel_end): Adjust for thread_limit now being in
12403 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
12404 infinity. Adjust threads_busy in the pool rather than
12405 gomp_remaining_threads_count. Remember team->nthreads and call
12406 gomp_team_end before adjusting threads_busy, if not nested
12407 afterwards, just set it to 1 non-atomically. Add ialias.
12408 (GOMP_parallel_start): Adjust gomp_team_start caller.
12409 * testsuite/libgomp.c/atomic-14.c: Add parens to make it valid.
12410 * testsuite/libgomp.c/affinity-1.c: New test.
12411 * testsuite/libgomp.c/atomic-15.c: New test.
12412 * testsuite/libgomp.c/atomic-16.c: New test.
12413 * testsuite/libgomp.c/atomic-17.c: New test.
12414 * testsuite/libgomp.c/cancel-for-1.c: New test.
12415 * testsuite/libgomp.c/cancel-for-2.c: New test.
12416 * testsuite/libgomp.c/cancel-parallel-1.c: New test.
12417 * testsuite/libgomp.c/cancel-parallel-2.c: New test.
12418 * testsuite/libgomp.c/cancel-parallel-3.c: New test.
12419 * testsuite/libgomp.c/cancel-sections-1.c: New test.
12420 * testsuite/libgomp.c/cancel-taskgroup-1.c: New test.
12421 * testsuite/libgomp.c/cancel-taskgroup-2.c: New test.
12422 * testsuite/libgomp.c/depend-1.c: New test.
12423 * testsuite/libgomp.c/depend-2.c: New test.
12424 * testsuite/libgomp.c/depend-3.c: New test.
12425 * testsuite/libgomp.c/depend-4.c: New test.
12426 * testsuite/libgomp.c/for-1.c: New test.
12427 * testsuite/libgomp.c/for-1.h: New file.
12428 * testsuite/libgomp.c/for-2.c: New test.
12429 * testsuite/libgomp.c/for-2.h: New file.
12430 * testsuite/libgomp.c/for-3.c: New test.
12431 * testsuite/libgomp.c/pr58392.c: New test.
12432 * testsuite/libgomp.c/simd-1.c: New test.
12433 * testsuite/libgomp.c/simd-2.c: New test.
12434 * testsuite/libgomp.c/simd-3.c: New test.
12435 * testsuite/libgomp.c/simd-4.c: New test.
12436 * testsuite/libgomp.c/simd-5.c: New test.
12437 * testsuite/libgomp.c/simd-6.c: New test.
12438 * testsuite/libgomp.c/target-1.c: New test.
12439 * testsuite/libgomp.c/target-2.c: New test.
12440 * testsuite/libgomp.c/target-3.c: New test.
12441 * testsuite/libgomp.c/target-4.c: New test.
12442 * testsuite/libgomp.c/target-5.c: New test.
12443 * testsuite/libgomp.c/target-6.c: New test.
12444 * testsuite/libgomp.c/target-7.c: New test.
12445 * testsuite/libgomp.c/taskgroup-1.c: New test.
12446 * testsuite/libgomp.c/thread-limit-1.c: New test.
12447 * testsuite/libgomp.c/thread-limit-2.c: New test.
12448 * testsuite/libgomp.c/thread-limit-3.c: New test.
12449 * testsuite/libgomp.c/udr-1.c: New test.
12450 * testsuite/libgomp.c/udr-2.c: New test.
12451 * testsuite/libgomp.c/udr-3.c: New test.
12452 * testsuite/libgomp.c++/affinity-1.C: New test.
12453 * testsuite/libgomp.c++/atomic-10.C: New test.
12454 * testsuite/libgomp.c++/atomic-11.C: New test.
12455 * testsuite/libgomp.c++/atomic-12.C: New test.
12456 * testsuite/libgomp.c++/atomic-13.C: New test.
12457 * testsuite/libgomp.c++/atomic-14.C: New test.
12458 * testsuite/libgomp.c++/atomic-15.C: New test.
12459 * testsuite/libgomp.c++/cancel-for-1.C: New test.
12460 * testsuite/libgomp.c++/cancel-for-2.C: New test.
12461 * testsuite/libgomp.c++/cancel-parallel-1.C: New test.
12462 * testsuite/libgomp.c++/cancel-parallel-2.C: New test.
12463 * testsuite/libgomp.c++/cancel-parallel-3.C: New test.
12464 * testsuite/libgomp.c++/cancel-sections-1.C: New test.
12465 * testsuite/libgomp.c++/cancel-taskgroup-1.C: New test.
12466 * testsuite/libgomp.c++/cancel-taskgroup-2.C: New test.
12467 * testsuite/libgomp.c++/cancel-taskgroup-3.C: New test.
12468 * testsuite/libgomp.c++/cancel-test.h: New file.
12469 * testsuite/libgomp.c++/for-9.C: New test.
12470 * testsuite/libgomp.c++/for-10.C: New test.
12471 * testsuite/libgomp.c++/for-11.C: New test.
12472 * testsuite/libgomp.c++/simd-1.C: New test.
12473 * testsuite/libgomp.c++/simd-2.C: New test.
12474 * testsuite/libgomp.c++/simd-3.C: New test.
12475 * testsuite/libgomp.c++/simd-4.C: New test.
12476 * testsuite/libgomp.c++/simd-5.C: New test.
12477 * testsuite/libgomp.c++/simd-6.C: New test.
12478 * testsuite/libgomp.c++/simd-7.C: New test.
12479 * testsuite/libgomp.c++/simd-8.C: New test.
12480 * testsuite/libgomp.c++/target-1.C: New test.
12481 * testsuite/libgomp.c++/target-2.C: New test.
12482 * testsuite/libgomp.c++/target-2-aux.cc: New file.
12483 * testsuite/libgomp.c++/target-3.C: New test.
12484 * testsuite/libgomp.c++/taskgroup-1.C: New test.
12485 * testsuite/libgomp.c++/udr-1.C: New test.
12486 * testsuite/libgomp.c++/udr-2.C: New test.
12487 * testsuite/libgomp.c++/udr-3.C: New test.
12488 * testsuite/libgomp.c++/udr-4.C: New test.
12489 * testsuite/libgomp.c++/udr-5.C: New test.
12490 * testsuite/libgomp.c++/udr-6.C: New test.
12491 * testsuite/libgomp.c++/udr-7.C: New test.
12492 * testsuite/libgomp.c++/udr-8.C: New test.
12493 * testsuite/libgomp.c++/udr-9.C: New test.
12494
bd599dea
JJ
124952013-09-20 Jakub Jelinek <jakub@redhat.com>
12496
12497 PR testsuite/57605
12498 * testsuite/lib/libgomp.exp: Add -fdiagnostics-color=never to
12499 ALWAYS_CFLAGS.
12500
3cbe17f7
AM
125012013-09-20 Alan Modra <amodra@gmail.com>
12502
12503 * configure: Regenerate.
12504
4befd127
JJ
125052013-09-19 Jakub Jelinek <jakub@redhat.com>
12506
12507 * testsuite/libgomp.c/sections-2.c: New test.
12508
946c8f7b
MS
125092013-06-28 Marcus Shawcroft <marcus.shawcroft@arm.com>
12510
12511 * testsuite/libgomp.fortran/strassen.f90:
12512 Add dg-skip-if aarch64_tiny.
12513
1ef3b58e
IS
125142013-06-20 Iain Sandoe <iain@codesourcery.com>
12515 Cesar Philippidis <cesar@codesourcery.com>
12516
12517 * testsuite/lib/libgomp.exp: Reorder lib loads into dependency order.
12518 Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
12519 * testsuite/libgomp.c/c.exp: load_gcc_lib gcc-dg.exp.
12520 * testsuite/libgomp.fortran/fortran.exp: Likewise.
12521 * testsuite/libgomp.graphite/graphite.exp: Likewise.
12522 * testsuite/libgomp.c++/c++.exp: load_gcc_lib gcc-dg.exp.
12523 Use dg-runtest rather than gfortran-dg-runtest.
12524
9275f73a
TS
125252013-06-10 Thomas Schwinge <thomas@codesourcery.com>
12526
12527 * testsuite/libgomp.c/icv-2.c: Extend current handling of
12528 Linux-based x86 systems to cover all GNU systems.
12529 * testsuite/libgomp.c/lock-3.c: Likewise.
12530 * testsuite/libgomp.c/pr48591.c: Likewise.
12531
492992e2
TS
125322013-06-06 Thomas Schwinge <thomas@codesourcery.com>
12533
48df3acb
TS
12534 * configure.tgt (XCFLAGS): Add -ftls-model=initial-exec for
12535 GNU/Hurd, as done for Linux-based systems.
12536
492992e2
TS
12537 * config/posix/ptrlock.h: Fix comment.
12538
4fed6b25
TB
125392013-05-27 Tobias Burnus <burnus@net-b.de>
12540
12541 PR fortran/57423
12542 * libgomp.texi (omp_set_dynamic, omp_set_nested, omp_set_nested,
12543 omp_set_num_threads, omp_init_lock, omp_set_lock, omp_test_lock,
12544 omp_unset_lock, omp_destroy_lock, omp_init_nest_lock,
12545 omp_set_nest_lock, omp_test_nest_lock, omp_unset_nest_lock,
12546 omp_destroy_nest_lock): Correct arguments to match the one in
12547 the OpenMP spec.
12548 * omp_lib.f90.in (omp_init_lock, omp_init_nest_lock, omp_destroy_lock
12549 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock, omp_unset_lock,
12550 omp_unset_nest_lock, omp_set_dynamic, omp_set_nested,
12551 omp_set_num_threads, omp_test_lock, omp_test_nest_lock): Ditto.
12552
5a0f4dd3
JJ
125532013-05-16 Jakub Jelinek <jakub@redhat.com>
12554
12555 * testsuite/libgomp.c/loop-13.c: New test.
12556 * testsuite/libgomp.c/loop-14.c: New test.
12557 * testsuite/libgomp.c/loop-15.c: New test.
12558 * testsuite/libgomp.c++/loop-13.C: New test.
12559 * testsuite/libgomp.c++/loop-14.C: New test.
12560 * testsuite/libgomp.c++/loop-15.C: New test.
12561
6d840d99
JJ
125622013-02-06 Jakub Jelinek <jakub@redhat.com>
12563
12564 PR middle-end/56217
12565 * testsuite/libgomp.c++/pr56217.C: New test.
12566
bed8d8a6
AM
125672013-02-01 Alan Modra <amodra@gmail.com>
12568
12569 * task.c (GOMP_task, GOMP_taskwait): Comment.
12570
3b35cd04
DV
125712013-01-31 Dmitry Vyukov <dvyukov@gcc.gnu.org>
12572 Joost VandeVondele <Joost.VandeVondele@mat.ethz.ch>
12573
12574 PR libgomp/55561
12575 * config/linux/wait.h (do_spin): Use atomic load for addr.
12576 * config/linux/ptrlock.c (gomp_ptrlock_get_slow): Use atomic
12577 for intptr and ptrlock.
12578 * config/linux/ptrlock.h (gomp_ptrlock_get): Use atomic load
12579 for ptrlock.
12580
9a647288
AM
125812013-01-22 Alan Modra <amodra@gmail.com>
12582
12583 PR libgomp/51376
12584 PR libgomp/56073
12585 * task.c (GOMP_task): Revert 2011-12-09 change.
12586 (GOMP_taskwait): Likewise. Instead use atomic load with acquire
12587 barrier to read task->children..
12588 (gomp_barrier_handle_tasks): ..and matching atomic store with
12589 release barrier here when setting parent->children to NULL.
12590
f34dea03
JJ
125912013-01-16 Jakub Jelinek <jakub@redhat.com>
12592 Tobias Burnus <burnus@net-b.de>
12593
12594 PR driver/55884
12595 * testsuite/libgomp.fortran/fortran.exp: Use
12596 -fintrinsic-modules-path= instead of
12597 -fintrinsic-modules-path.
12598
8129609c
RS
125992013-01-14 Richard Sandiford <rdsandiford@googlemail.com>
12600
12601 Update copyright years.
12602
aa86bf1e
TB
126032012-12-19 Tobias Burnus <burnus@net-b.de>
12604
12605 * testsuite/libgomp.fortran/fortran.exp: Set
12606 -fintrinsic-modules-path.
12607
2865ea66
TB
126082012-12-19 Tobias Burnus <burnus@net-b.de>
12609
12610 * testsuite/libgomp.fortran/use_intrinsic_1.f90: New; moved
12611 from gcc/testsuite/gfortran.dg/gomp/use_intrinsic_1.f90.
12612
4c5ba8d0
JJ
126132012-11-21 Jakub Jelinek <jakub@redhat.com>
12614
12615 PR libgomp/55411
12616 * team.c (gomp_free_thread): Decrease gomp_managed_threads
12617 if pool had any threads_used.
12618
e9f958c2
JH
126192012-11-07 Jack Howarth <howarth@bromo.med.uc.edu>
12620
12621 * testsuite/libgomp.c++/pr24455.C: Use
12622 -Wl,-undefined,dynamic_lookup on darwin.
12623
a57d75dc
DE
126242012-11-07 David Edelsohn <dje.gcc@gmail.com>
12625
12626 * testsuite/libgomp.c++/pr24455.C: Use -Wl,-G on AIX.
12627
c6c08485
DH
126282012-10-24 Dominique d'Humieres <dominiq@lps.ens.fr>
12629
12630 * testsuite/libgomp.graphite/force-parallel-6.c: Adjust the loops.
12631
c1f37c00
IB
126322012-10-23 Ian Bolton <ian.bolton@arm.com>
12633 Jim MacArthur <jim.macarthur@arm.com>
12634 Marcus Shawcroft <marcus.shawcroft@arm.com>
12635 Nigel Stephens <nigel.stephens@arm.com>
12636 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
12637 Richard Earnshaw <rearnsha@arm.com>
12638 Sofiane Naci <sofiane.naci@arm.com>
12639 Stephen Thomas <stephen.thomas@arm.com>
12640 Tejas Belagod <tejas.belagod@arm.com>
12641 Yufeng Zhang <yufeng.zhang@arm.com>
12642
12643 * configure.tgt: Add AArch64.
12644
7c424acd
JM
126452012-10-04 Jason Merrill <jason@redhat.com>
12646
12647 * testsuite/libgomp.c++/tls-init1.C: New.
12648
6608378b
DE
126492012-09-14 David Edelsohn <dje.gcc@gmail.com>
12650
12651 * configure: Regenerated.
12652
c24dbebb
CLT
126532012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
12654
12655 * config/linux/mips/futex.h (sys_futex0): Change to static
12656 function with noinline, nomips16 attributes under MIPS16. Adjust
12657 asm statement to place 'li v0,SYS_futex' immediately before
12658 syscall insn.
12659
3d3949df
SL
126602012-07-04 Sandra Loosemore <sandra@codesourcery.com>
12661
12662 * libgomp.texi (Library Index): Renamed from "Index" to prevent
12663 conflict with index.html on case-insensitive file systems.
12664
68a12ef3
UB
126652012-07-03 Uros Bizjak <ubizjak@gmail.com>
12666
12667 * config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
12668 * testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.
12669
33ad93b9 126702012-07-02 Richard Guenther <rguenther@suse.de>
68a12ef3
UB
12671 Michael Matz <matz@suse.de>
12672 Tobias Grosser <tobias@grosser.es>
12673 Sebastian Pop <sebpop@gmail.com>
33ad93b9
RG
12674
12675 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
12676 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
12677 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
12678 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
12679
e6fdc918
AS
126802012-06-28 Andreas Schwab <schwab@linux-m68k.org>
12681
12682 * libgomp.texi: Include gpl_v3.texi instead of gpl.texi.
12683
62e0a1ed
RG
126842012-06-22 Richard Guenther <rguenther@suse.de>
12685
12686 Merge from graphite branch
12687 2012-01-13 Tobias Grosser <tobias@grosser.es>
12688
12689 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
12690 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
12691
26127932
JJ
126922012-06-07 Jakub Jelinek <jakub@redhat.com>
12693
12694 PR middle-end/53580
12695 * testsuite/libgomp.c/pr26943-2.c: Remove #pragma omp barrier,
12696 use GOMP_barrier () call instead.
12697 * testsuite/libgomp.c/pr26943-3.c: Likewise.
12698 * testsuite/libgomp.c/pr26943-4.c: Likewise.
12699 * testsuite/libgomp.fortran/vla4.f90: Remove !$omp barrier,
12700 call GOMP_barrier instead.
12701 * testsuite/libgomp.fortran/vla5.f90: Likewise.
12702
43fa5db5
JJ
127032012-06-06 Jakub Jelinek <jakub@redhat.com>
12704
12705 PR libgomp/52993
12706 * config/linux/lock.c (gomp_init_nest_lock_25): Fix up last
12707 argument to memset call.
12708
e6d5f8c9
L
127092012-05-16 H.J. Lu <hongjiu.lu@intel.com>
12710
12711 * configure: Regenerated.
12712
559d990c
MLI
127132012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
12714
12715 * testsuite/lib/libgomp.exp: Add -fno-diagnostics-show-caret.
12716
b9c23a61
L
127172012-03-31 H.J. Lu <hongjiu.lu@intel.com>
12718
12719 PR bootstrap/52812
12720 * configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.
12721
c140ddf3
JJ
127222012-03-22 Jakub Jelinek <jakub@redhat.com>
12723
12724 PR middle-end/52547
12725 * testsuite/libgomp.c/pr52547.c: New test.
12726
6a26a74d
BRF
127272012-03-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
12728
12729 * testsuite/lib/libgomp.exp: load fortran-modules.exp
12730
b24513a1
RO
127312012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12732
12733 * configure.tgt (mips-sgi-irix6*): Remove.
12734
5c30094f
RO
127352012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12736
12737 * configure.tgt (alpha*-dec-osf*): Remove.
12738
12739 * config/osf/sem.h: Remove.
12740 * config/posix/lock.c (_XOPEN_SOURCE): Define unconditionally.
12741
a339c9d6
EB
127422012-02-29 Eric Botcazou <ebotcazou@adacore.com>
12743
12744 * config/linux/sparc/futex.h (cpu_relax): Read from CC register.
12745
cc2de92d
RO
127462012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12747
12748 PR libstdc++/52188
12749 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Remove symvers_renaming.
12750 Remove ENABLE_SYMVERS_SOL2.
12751 * configure: Regenerate.
12752 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB] (comma): New variable.
12753 (PREPROCESS): New variable.
12754 (libgomp.ver): New target.
12755 [LIBGOMP_BUILD_VERSIONED_SHLIB &&
12756 LIBGOMP_BUILD_VERSIONED_SHLIB_GNU]: Remove
12757 LIBGOMP_BUILD_VERSIONED_SHLIB_SOL2 handling.
12758 Use libgomp.ver.
12759 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Use libgomp.ver, libgomp.ver-sun.
12760 * Makefile.in: Regenerate.
12761
dd552284
WL
127622012-02-14 Walter Lee <walt@tilera.com>
12763
12764 * configure.tgt: Handle tilegx and tilepro.
12765 * config/linux/tile/futex.h: New file.
12766
31432e21
RG
127672012-02-08 Richard Guenther <rguenther@suse.de>
12768
12769 PR tree-optimization/46886
12770 * testsuite/libgomp.c/pr46886.c: New testcase.
12771
b9264b5f
MK
127722012-01-25 Matthias Klose <doko@ubuntu.com>
12773
12774 * config/linux/arm: Remove empty directory.
12775 * configure.tgt (config_path): Remove linux-arm for arm*-*-linux*.
12776
fbf7be80
AM
127772011-12-09 Alan Modra <amodra@gmail.com>
12778
12779 PR libgomp/51376
12780 * task.c (GOMP_taskwait): Don't access task->children outside of
12781 task_lock mutex region.
12782 (GOMP_task): Likewise.
12783
5de62d00
JJ
127842011-12-06 Jakub Jelinek <jakub@redhat.com>
12785
12786 PR libgomp/51132
12787 * testsuite/libgomp.graphite/force-parallel-1.c: Move large arrays
12788 to file scope.
12789 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
12790 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
12791 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
12792 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
12793 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
12794
45608a43
AM
127952011-12-02 Alan Modra <amodra@gmail.com>
12796
12797 * config/linux/affinity.c: Use atomic rather than sync builtin.
12798 * config/linux/lock.c: Likewise.
12799 * config/linux/ptrlock.h: Likewise.
12800 * config/linux/ptrlock.c: Likewise.
12801 * config/linux/ptrlock.h (gomp_ptrlock_set): Always write here..
12802 * config/linux/ptrlock.c (gomp_ptrlock_set_slow): ..not here.
12803 * config/linux/futex.h (atomic_write_barrier): Delete unused function.
12804 * config/linux/alpha/futex.h (atomic_write_barrier): Likewise.
12805 * config/linux/ia64/futex.h (atomic_write_barrier): Likewise.
12806 * config/linux/mips/futex.h (atomic_write_barrier): Likewise.
12807 * config/linux/powerpc/futex.h (atomic_write_barrier): Likewise.
12808 * config/linux/s390/futex.h (atomic_write_barrier): Likewise.
12809 * config/linux/sparc/futex.h (atomic_write_barrier): Likewise.
12810 * config/linux/x86/futex.h (atomic_write_barrier): Likewise.
12811
ab6dd406
AM
128122011-11-30 Alan Modra <amodra@gmail.com>
12813
12814 PR libgomp/51298
12815 * config/linux/bar.h: Use atomic rather than sync builtins.
12816 * config/linux/bar.c: Likewise. Add missing acquire
12817 synchronisation on generation field.
12818 * task.c (gomp_barrier_handle_tasks): Regain lock so as to not
12819 double unlock.
12820
b40c885f
AM
128212011-11-30 Alan Modra <amodra@gmail.com>
12822
12823 * ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
12824 * critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence.
12825 * config/linux/mutex.h: Use atomic rather than sync builtins.
12826 * config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state.
12827 * config/linux/omp-lock.h: Comment fix.
12828 * config/linux/arm/mutex.h: Delete.
12829 * config/linux/powerpc/mutex.h: Delete.
12830 * config/linux/ia64/mutex.h: Delete.
12831 * config/linux/mips/mutex.h: Delete.
12832
3e348fcc
AM
128332011-11-30 Alan Modra <amodra@gmail.com>
12834
12835 PR libgomp/51249
12836 * config/linux/sem.h: Rewrite.
12837 * config/linux/sem.c: Rewrite.
12838
cef86eb2
RH
128392011-11-28 Richard Henderson <rth@redhat.com>
12840
12841 * libgomp.h (enum memmodel): New.
12842
c6084f68
AT
128432011-11-21 Andreas Tobler <andreast@fgznet.ch>
12844
12845 * configure: Regenerate.
12846
06fe026c
MK
128472011-10-10 Matthias Klose <doko@ubuntu.com>
12848
12849 * config/posix95: Remove empty directory.
12850
a6c975bd
JJ
128512011-08-26 Jakub Jelinek <jakub@redhat.com>
12852
12853 * testsuite/libgomp.fortran/threadprivate4.f90: New test.
12854
c26dffff
JJ
128552011-08-19 Jakub Jelinek <jakub@redhat.com>
12856
12857 PR fortran/49792
12858 * testsuite/libgomp.fortran/pr49792-1.f90: New test.
12859 * testsuite/libgomp.fortran/pr49792-2.f90: New test.
12860
ddaad3c8
RO
128612011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12862
12863 * config/posix95/lock.c, posix95/omp-lock.h: Remove.
12864
98d03683
RO
128652011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12866
12867 PR libgomp/49965
12868 * testsuite/libgomp.c++/task-8.C: Replaced err by errval.
12869
e0b23d9f
UB
128702011-08-03 Uros Bizjak <ubizjak@gmail.com>
12871
12872 * config/linux/proc.h: New.
12873 * config/linux/proc.c: Include "proc.h". Do not include <sched.h>.
12874 (gomp_cpuset_popcount): Rename from cpuset_popcount. No more static.
12875 (gomp_init_num_threads): Update call to cpuset_popcount.
12876 (get_num_procs): Ditto.
12877 * config/linux/affinity.c (gomp_init_affinity): Call
12878 gomp_cpuset_popcount.
12879
20906c66
JJ
128802011-08-02 Jakub Jelinek <jakub@redhat.com>
12881
12882 PR fortran/42041
12883 PR fortran/46752
12884 * omp.h.in (omp_in_final): New prototype.
12885 * omp_lib.f90.in (omp_in_final): New interface.
12886 (omp_integer_kind, omp_logical_kind): Remove
12887 and replace all its uses in the module with 4.
12888 (openmp_version): Change to 201107.
12889 * omp_lib.h.in (omp_sched_static, omp_sched_dynamic,
12890 omp_sched_guided, omp_sched_auto): Use omp_sched_kind
12891 kind for the parameters.
12892 (omp_in_final): New external.
12893 (openmp_version): Change to 201107.
12894 * task.c (omp_in_final): New function.
12895 (gomp_init_task): Initialize final_task.
12896 (GOMP_task): Remove unused attribute from flags. Handle final
12897 tasks.
12898 (GOMP_taskyield): New function.
12899 (omp_in_final): Return true if if (false) or final (true) task
12900 or descendant of final (true).
12901 * fortran.c (omp_in_final_): New function.
12902 * libgomp.map (OMP_3.1): Export omp_in_final and omp_in_final_.
12903 (GOMP_3.0): Export GOMP_taskyield.
12904 * env.c (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New
12905 variables.
12906 (parse_unsigned_long_list): New function.
12907 (initialize_env): Use it for OMP_NUM_THREADS. Call parse_boolean
12908 with "OMP_PROC_BIND". If OMP_PROC_BIND=true, call gomp_init_affinity
12909 even if parse_affinity returned false.
12910 * config/linux/affinity.c (gomp_init_affinity): Handle
12911 gomp_cpu_affinity_len == 0.
12912 * libgomp_g.h (GOMP_taskyield): New prototype.
12913 * libgomp.h (struct gomp_task): Add final_task field.
12914 (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New externs.
12915 * team.c (gomp_team_start): Override new task's nthreads_var icv
12916 if list form OMP_NUM_THREADS has been used and it has value for
12917 the new nesting level.
12918
12919 * testsuite/libgomp.c/atomic-11.c: New test.
12920 * testsuite/libgomp.c/atomic-12.c: New test.
12921 * testsuite/libgomp.c/atomic-13.c: New test.
12922 * testsuite/libgomp.c/atomic-14.c: New test.
12923 * testsuite/libgomp.c/reduction-6.c: New test.
12924 * testsuite/libgomp.c/task-5.c: New test.
12925 * testsuite/libgomp.c++/atomic-2.C: New test.
12926 * testsuite/libgomp.c++/atomic-3.C: New test.
12927 * testsuite/libgomp.c++/atomic-4.C: New test.
12928 * testsuite/libgomp.c++/atomic-5.C: New test.
12929 * testsuite/libgomp.c++/atomic-6.C: New test.
12930 * testsuite/libgomp.c++/atomic-7.C: New test.
12931 * testsuite/libgomp.c++/atomic-8.C: New test.
12932 * testsuite/libgomp.c++/atomic-9.C: New test.
12933 * testsuite/libgomp.c++/task-8.C: New test.
12934 * testsuite/libgomp.c++/reduction-4.C: New test.
12935 * testsuite/libgomp.fortran/allocatable7.f90: New test.
12936 * testsuite/libgomp.fortran/allocatable8.f90: New test.
12937 * testsuite/libgomp.fortran/crayptr3.f90: New test.
12938 * testsuite/libgomp.fortran/omp_atomic3.f90: New test.
12939 * testsuite/libgomp.fortran/omp_atomic4.f90: New test.
12940 * testsuite/libgomp.fortran/pointer1.f90: New test.
12941 * testsuite/libgomp.fortran/pointer2.f90: New test.
12942 * testsuite/libgomp.fortran/task4.f90: New test.
12943
129442011-08-02 Tobias Burnus <burnus@net-b.de>
12945
12946 * libgomp.texi: Update OpenMP spec references to 3.1.
12947 (omp_in_final,OMP_PROC_BIND): New sections.
12948 (OMP_NUM_THREADS): Document that the value can be now a list.
12949 (GOMP_STACKSIZE,GOMP_CPU_AFFINITY): Update @ref.
12950
c01ecafc
L
129512011-08-02 H.J. Lu <hongjiu.lu@intel.com>
12952
12953 * config/linux/x86/futex.h: Check __x86_64__ instead of
12954 __LP64__.
12955
25142650
JJ
129562011-07-29 Jakub Jelinek <jakub@redhat.com>
12957
12958 PR middle-end/49897
12959 PR middle-end/49898
12960 * testsuite/libgomp.c/pr49897-1.c: New test.
12961 * testsuite/libgomp.c/pr49897-2.c: New test.
12962 * testsuite/libgomp.c/pr49898-1.c: New test.
12963 * testsuite/libgomp.c/pr49898-2.c: New test.
12964
f53d712f
L
129652011-07-28 H.J. Lu <hongjiu.lu@intel.com>
12966
12967 * testsuite/lib/libgomp.exp (libgomp_init): Add -march=i486
12968 for ia32 instead of ilp32.
12969
12970 * testsuite/libgomp.c/atomic-1.c: Require ia32 instead of ilp32.
12971 * testsuite/libgomp.c/atomic-6.c: Likewise.
12972
3689198d
SP
129732011-07-23 Sebastian Pop <sebastian.pop@amd.com>
12974
12975 * testsuite/libgomp.graphite/force-parallel-1.c: Un-xfail.
12976 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust pattern.
12977
1a79cb73
RO
129782011-07-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12979
12980 PR libgomp/45351
12981 * config/osf/sem.h: New file.
12982 * configure.tgt (alpha*-dec-osf*): Prepend osf to config_path.
12983
c1f51484
RO
129842011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12985
12986 PR target/49541
12987 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -lgomp to
12988 ldflags.
12989
bfee0724
JJ
129902011-07-15 Jakub Jelinek <jakub@redhat.com>
12991
12992 * config/linux/wait.h (do_spin): New inline, largely copied
12993 from do_wait, just don't do futex_wait here, instead return true if
12994 it should be done.
12995 (do_wait): Implement using do_spin.
12996 * config/linux/mutex.h (gomp_mutex_lock_slow): Add an int argument
12997 to prototype.
12998 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
12999 __sync_bool_compare_and_swap, pass the oldval to
13000 gomp_mutex_lock_slow.
13001 * config/linux/mutex.c (gomp_mutex_lock_slow): Add oldval argument.
13002 If all mutex contenders are just spinning and not sleeping, don't
13003 change state to 2 unnecessarily. Optimize the loop when state has
13004 already become 2 to use just one atomic operation per loop instead
13005 of two.
13006 * config/linux/ia64/mutex.h (gomp_mutex_lock_slow): Add an int argument
13007 to prototype.
13008 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
13009 __sync_bool_compare_and_swap, pass the oldval to
13010 gomp_mutex_lock_slow.
13011
fb79f500
JJ
130122011-06-22 Jakub Jelinek <jakub@redhat.com>
13013
13014 PR libgomp/49490
13015 * iter.c (gomp_iter_static_next): For chunk size 0
13016 only use n ceil/ nthreads size for the first
13017 n % nthreads threads in the team instead of
13018 all threads except for the last few ones which
13019 get less work or none at all.
13020 * iter_ull.c (gomp_iter_ull_static_next): Likewise.
13021 * env.c (parse_schedule): If OMP_SCHEDULE doesn't have
13022 chunk argument, set run_sched_modifier to 0 for static
13023 resp. 1 for other kinds. If chunk argument is 0
13024 and not static, set value to 1.
13025
4577f730
JJ
130262011-05-19 Jakub Jelinek <jakub@redhat.com>
13027
ea93a47b
JJ
13028 PR c++/49043
13029 * testsuite/libgomp.c++/pr49043.C: New test.
13030
4577f730
JJ
13031 PR c++/48869
13032 * testsuite/libgomp.c++/pr48869.C: New test.
13033
e7385332
JJ
130342011-05-06 Jakub Jelinek <jakub@redhat.com>
13035
13036 PR fortran/48894
13037 * fortran.c: Include limits.h.
13038 (TO_INT): Define.
13039 (omp_set_dynamic_8_, omp_set_num_threads_8_): Use !!*set instead of
13040 *set.
13041 (omp_set_num_threads_8_, omp_set_schedule_8_,
13042 omp_set_max_active_levels_8_, omp_get_ancestor_thread_num_8_,
13043 omp_get_team_size_8_): Use TO_INT macro.
13044 * testsuite/libgomp.fortran/pr48894.f90: New test.
13045
20790697
JJ
130462011-04-13 Jakub Jelinek <jakub@redhat.com>
13047
13048 PR middle-end/48591
13049 * testsuite/libgomp.c/pr48591.c: New test.
13050
bf382f5f
RO
130512011-03-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
13052
13053 PR bootstrap/48135
13054 * acinclude.m4 (enable_symvers): Handle --disable-symvers.
13055 * configure: Regenerate.
13056
113a53c1
JJ
130572011-02-27 Jakub Jelinek <jakub@redhat.com>
13058
13059 PR fortran/47886
13060 * testsuite/libgomp.fortran/task3.f90: New test.
13061
0024f1af
TB
130622011-02-24 Tobias Burnus <burnus@net-b.de>
13063
13064 * libgomp.texi (GOMP_STACKSIZE): Fix @ref to OMP_STACKSIZE.
13065
21e1e594
JJ
130662011-02-23 Jakub Jelinek <jakub@redhat.com>
13067
13068 PR libgomp/47854
13069 * libgomp.texi (omp_get_wtime): Don't say time in the past
13070 must be Unix Epoch.
13071
67962076
JJ
130722011-02-18 Jakub Jelinek <jakub@redhat.com>
13073
13074 PR libgomp/47804
13075 * testsuite/libgomp.fortran/fortran.exp: Check for both
13076 libquadmath.a and libquadmath.${shlib_ext}. If neither exists,
13077 but $blddir != "", still append ${blddir}/${lang_library_path}
13078 to ld_library_path.
13079
3808007c
TB
130802011-02-16 Tobias Burnus <burnus@net-b.de>
13081
13082 PR libgomp/47758
13083 * testsuite/libgomp.fortran/fortran.exp: Check for the existence
13084 of libquadmath.a before adding its libpath to ldflags.
13085
53b4d41d
JJ
130862011-02-14 Jakub Jelinek <jakub@redhat.com>
13087
13088 PR libgomp/47731
13089 * config/linux/futex.h (futex_wait): Pass NULL as timeout argument
13090 to FUTEX_WAIT futex syscall.
13091 * config/linux/wait.h: Include <futex.h> instead of "futex.h".
13092
029c8f3e
RW
130932011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13094
13095 * configure: Regenerate.
13096
bddd6626
BK
130972011-01-20 Benjamin Kosnik <bkoz@redhat.com>
13098
13099 PR libstdc++/36104
13100 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.
13101
f1d4ab26
GP
131022011-01-16 Gerald Pfeifer
13103
13104 * configure.tgt (*-*-freebsd*): Add -lpthread to XLDFLAGS.
13105
2b503136
JJ
131062010-12-14 Jakub Jelinek <jakub@redhat.com>
13107
13108 PR fortran/46874
13109 * libgomp.fortran/allocatable6.f90: New test.
13110
c0f9d583
RO
131112010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
13112
13113 * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
13114 * configure: Regenerate.
13115
7de6ba7a
DK
131162010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
13117
13118 PR target/40125
13119 PR lto/46695
13120 * configure.ac: Invoke ACX_LT_HOST_FLAGS.
13121 * Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
13122 * aclocal.m4: Regenerate.
13123 * configure: Regenerate.
13124 * Makefile.in: Regenerate.
13125 * testsuite/Makefile.in: Regenerate.
13126
b7516041
JJ
131272010-12-02 Jakub Jelinek <jakub@redhat.com>
13128
edaadf74
JJ
13129 PR fortran/46753
13130 * libgomp.fortran/pr46753.f90: New test.
13131
4c698cf8
JJ
13132 PR libgomp/43706
13133 * env.c (initialize_env): Default to spin count 300000
13134 instead of 20000000 if neither OMP_WAIT_POLICY nor GOMP_SPINCOUNT
13135 is specified.
13136
b7516041
JJ
13137 PR libgomp/45240
13138 * parallel.c (GOMP_parallel_end): Unlock gomp_remaining_threads_lock
13139 at the end if sync builtins aren't supported.
13140
6b43a34c
RO
131412010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
13142
13143 * configure.tgt (mips-sgi-irix6*): Add -lpthread to XLDFLAGS.
13144
950691fa
RO
131452010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
13146
13147 * testsuite/libgomp.fortran/vla8.f90: Use dg-timeout-factor 2.0.
13148
fb9041ea
IS
131492010-11-24 Iain Sandoe <iains@gcc.gnu.org>
13150
13151 * testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath.
13152
1ec601bf
FXC
131532010-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
13154 Tobias Burnus <burnus@net-b.de>
13155
13156 PR fortran/32049
3e348fcc 13157 * configure.ac:
1ec601bf
FXC
13158 * configure: Regenerate.
13159
d213e92e
MS
131602010-10-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
13161
13162 * config/linux/futex.h: New.
13163 * config/linux/arm/mutex.h: New.
13164 * configure.tgt (arm*-*-linux*): Add config path.
13165
89d5c66f
SP
131662010-09-30 Sebastian Pop <sebastian.pop@amd.com>
13167
13168 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
13169
87350d4a
TB
131702010-09-23 Tobias Burnus <burnus@net-b.de>
13171
13172 * libgomp.texi (omp_get_nested, omp_set_nested, omp_set_dynamic):
13173 Change Fortran datatype to LOGICAL.
13174 (omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
13175 omp_unset_nested_lock): Use intent(inout) instead of intent(out).
13176
75bc9e5e
RW
131772010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13178
13179 * configure: Regenerate.
13180
acb5c916
JJ
131812010-07-26 Jakub Jelinek <jakub@redhat.com>
13182
13183 * libgomp.texi: Add function keyword to a couple of Fortran
13184 interfaces, use integer instead of int for Fortran.
13185
6a2ba183
AH
131862010-07-26 Aldy Hernandez <aldyh@redhat.com>
13187
13188 * libgomp.texi: Fix spelling and pasto problems throughout.
13189 Adjust prototypes to match code.
13190
df161b69
TB
131912010-07-24 Tobias Burnus <burnus@net-b.de>
13192
13193 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add -w to
13194 silence -fwhole-file warning.
13195
16c9d3b1
RO
131962010-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
13197
13198 * configure.tgt (*-*-solaris2.[56]*): Removed.
13199
6d28b933
RO
132002010-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
13201
13202 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
13203 Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
13204 LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
13205 (HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
13206 targetting solaris2*.
13207 * configure: Regenerate.
13208 * config.h.in: Regenerate.
13209
13210 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
13211 libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
13212 Add libgomp_version_dep.
13213 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
13214 versioning.
13215 [!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
13216 (libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
13217 * Makefile.in: Regenerate.
13218
13219 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
13220 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
13221 * libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
13222 to common block, protected by
13223 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
13224
07a67d6a
GP
132252010-06-10 Gerald Pfeifer <gerald@pfeifer.com>
13226
13227 * libgomp.texi: Move to GFDL version 1.3. Update copyright years.
13228
dbd34b89
IS
132292010-06-09 Iain Sandoe <iains@gcc.gnu.org>
13230
13231 PR bootstrap/43170
13232 * configure: Regenerate.
13233
13917ae3
RW
132342010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13235
13236 PR other/43620
13237 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
13238 * configure: Regenerate.
13239 * Makefile.in: Regenerate.
13240 * testsuite/Makefile.in: Regenerate.
13241
b83a701b
JJ
132422010-04-26 Jakub Jelinek <jakub@redhat.com>
13243
13244 PR c/43893
13245 * testsuite/libgomp.c/pr43893.c: New test.
13246 * testsuite/libgomp.c++/pr43893.C: New test.
13247
78db7d92
JJ
132482010-04-21 Jakub Jelinek <jakub@redhat.com>
13249
13250 PR middle-end/43570
13251 * testsuite/libgomp.fortran/vla8.f90: New test.
13252
5221d7a9
JJ
132532010-04-20 Jakub Jelinek <jakub@redhat.com>
13254
e4ba7a60
JJ
13255 PR libgomp/43706
13256 * config/linux/affinity.c (gomp_init_affinity): Decrease
13257 gomp_available_cpus if affinity mask confines the process to fewer
13258 CPUs.
13259 * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is
13260 non-NULL, just return gomp_available_cpus.
13261
5221d7a9
JJ
13262 PR libgomp/43569
13263 * sections.c (gomp_sections_init): Initialize ws->mode.
13264
289a9f86
UB
132652010-04-14 Uros Bizjak <ubizjak@gmail.com>
13266
13267 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
13268 not unused bar variable.
13269 * configure: Regenerate.
13270
4d9e8446
RW
132712010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13272
13273 * Makefile.in: Regenerate.
13274 * aclocal.m4: Regenerate.
13275 * testsuite/Makefile.in: Regenerate.
13276
80f046cc
JJ
132772010-03-22 Jakub Jelinek <jakub@redhat.com>
13278
13279 PR libgomp/42942
13280 * env.c (parse_unsigned_long): Add ALLOW_ZERO argument.
13281 (initialize_env): Adjust callers.
13282 (omp_set_max_active_levels): Set gomp_max_active_levels_var even
13283 when the argument is 0.
13284
13285 * testsuite/libgomp.c/pr42942.c: New test.
13286
b58543c3
SP
132872010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
13288
13289 PR middle-end/42644
13290 PR middle-end/42130
13291 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
13292 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust.
13293
41d1138f
RO
132942010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
13295
13296 * testsuite/libgomp.c++/task-1.C: Renamed err to e.
13297 * testsuite/libgomp.c++/task-6.C: Likewise.
13298
6684eb28
SE
132992010-01-28 Steve Ellcey <sje@cup.hp.com>
13300
13301 * configure.tgt (*-*-hpux*): Add -frandom-seed flag.
13302
2122aa97
PB
133032010-01-26 Paolo Bonzini <bonzini@gnu.org>
13304
13305 * configure.ac: Test for executability of _the first word_ of GFORTRAN.
13306 * configure: Regenerate.
13307
057dd91d
JJ
133082010-01-26 Jakub Jelinek <jakub@redhat.com>
13309
13310 PR fortran/42866
13311 * testsuite/libgomp.fortran/allocatable5.f90: New test.
13312
d0709b6a
PB
133132010-01-20 Paolo Bonzini <bonzini@gnu.org>
13314
13315 * configure.ac: Test for executability of GFORTRAN.
13316 * configure: Regenerate.
13317
b9497ab5
RO
133182010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
13319
13320 * configure: Regenerate.
13321
45de5648
L
133222010-01-04 H.J. Lu <hongjiu.lu@intel.com>
13323
13324 PR libgomp/42602
13325 * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic.
13326
e74003a1
RG
133272010-01-03 Richard Guenther <rguenther@suse.de>
13328
13329 * testsuite/libgomp.fortran/recursion1.f90: New testcase.
13330
1b3abda8
SP
133312009-12-23 Sebastian Pop <sebpop@gmail.com>
13332
13333 * testsuite/libgomp.graphite/pr4118.c: New.
13334
e19977d3
IS
133352009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
13336
13337 * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage
13338 for darwin, protect the test with require-effective-target tls_runtime.
13339 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
13340
1d32a772
IS
133412009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
13342
13343 PR target/41605
13344 * testsuite/lib/libgomp.exp: Provide -B options to allow for
13345 link spec %s substitutions for static libraries.
13346
deb109b2
JH
133472009-12-18 Jack Howarth <howarth@bromo.med.uc.edu>
13348
13349 PR testsuite/42135
13350 * libgomp.graphite/force-parallel-2.c: Reduce array size.
13351
43e02a8a
RW
133522009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13353
13354 * Makefile.in: Regenerate.
13355 * configure: Regenerate.
13356 * testsuite/Makefile.in: Regenerate.
13357
17f35e23
DK
133582009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
13359
13360 * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
13361 settings for LC_ALL and LANG.
13362
281e33e1
JJ
133632009-11-25 Jakub Jelinek <jakub@redhat.com>
13364
13365 PR fortran/42162
13366 * testsuite/libgomp.fortran/pr42162.f90: New test.
13367
2b32c27d
JJ
133682009-11-13 Jakub Jelinek <jakub@redhat.com>
13369
13370 PR middle-end/42029
281e33e1 13371 * testsuite/libgomp.c/pr42029.c: New test.
2b32c27d 13372
89c74f4a
JJ
133732009-10-26 Jakub Jelinek <jakub@redhat.com>
13374
13375 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
13376 *s. Accept ld version without text in ()s.
13377 * configure: Regenerated.
13378
7e06c3d6
EB
133792009-10-22 Razya Ladelsky <razya@il.ibm.com>
13380
13381 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan.
13382
0046b1a7
RW
133832009-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13384
13385 PR libgomp/41418
13386 * configure.ac: Set FC to "no" if $GFORTRAN starts with "no"
13387 or a hyphen (happens with fortran language disabled).
13388 * configure: Regenerate.
13389
c82852f7
RW
133902009-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13391
13392 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
13393 use sed script portable to Solaris /bin/sed for extracting ld
13394 version.
13395 * configure: Regenerate.
13396
98f3eb1f
AM
133972009-09-17 Alexander Monakov <amonakov@ispras.ru>
13398
13399 * testsuite/libgomp.graphite/bounds.c: New test.
13400
878f62e5
RW
134012009-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13402
13403 * Makefile.am (libgomp_la_LINK): New.
13404 * Makefile.in: Regenerate.
13405
df58e648
RW
134062009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13407
13408 * configure.ac (AC_PREREQ): Bump to 2.64.
13409
5213506e
RW
134102009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13411
70fa0efa
RW
13412 * Makefile.am (install-html, install-pdf): Remove.
13413 * Makefile.in: Regenerate.
13414
5213506e
RW
13415 * Makefile.in: Regenerate.
13416 * aclocal.m4: Regenerate.
13417 * config.h.in: Regenerate.
13418 * configure: Regenerate.
13419 * testsuite/Makefile.in: Regenerate.
13420
84fec8a5
RW
134212009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13422
13423 * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
13424 * Makefile.in: Regenerate.
13425
197c68cc
DK
134262009-08-20 Dave Korn <dave.korn.cygwin@gmail.com>
13427
13428 * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.
13429 * Makefile.in: Regenerate.
13430
693d54f2
TB
134312009-08-19 Tobias Burnus <burnus@net-b.de>
13432
13433 PR fortran/41102
13434 omp_lib.h.in: Fix -std=f95 errors.
13435
8cac884c
DE
134362009-08-14 David Edelsohn <edelsohn@gnu.org>
13437
13438 * testsuite/libgomp.graphite: Move from gcc.dg/graphite.
13439 * testsuite/libgomp.graphite/graphite_autopar.exp: Delete.
13440 * testsuite/libgomp.graphite/graphite.exp: New.
13441
78729ee2
AT
134422009-08-05 Andreas Tobler <a.tobler@schweiz.org>
13443
13444 * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared
13445 only build.
13446
b13b7f39
DD
134472009-08-04 David Daney <ddaney@caviumnetworks.com>
13448
13449 * config/linux/mutex.h (gomp_mutex_unlock): Add comment about
13450 needed memory barrier semantics.
13451 * config/linux/mips/mutex.h: New file.
13452
1b3b24c2
RW
134532009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13454
13455 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
13456
396b7fa4
JM
134572009-07-16 Joseph Myers <joseph@codesourcery.com>
13458
13459 * configure: Regenerate.
13460
33cde516
RS
134612009-07-11 Richard Sandiford <rdsandiford@googlemail.com>
13462
13463 PR testsuite/40699
13464 PR testsuite/40707
13465 PR testsuite/40709
13466 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
13467 * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
13468 testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.
13469
bc21bfa5
RS
134702009-07-02 Richard Sandiford <r.sandiford@uk.ibm.com>
13471
13472 * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
13473 options when choosing a multilib.
13474
b30bfd40
RS
134752009-06-30 Richard Sandiford <r.sandiford@uk.ibm.com>
13476
13477 * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
13478 ld_library_path. Use add_path. Add just find_libgcc_s to
13479 ld_library_path, not every libgcc multilib directory.
13480 * testsuite/libgomp.c/c.exp (ld_library_path): Don't call
13481 gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
13482 * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
13483 Use add_path.
13484 * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
13485
479c15c2
NF
134862009-06-09 Nathan Froyd <froydnj@codesourcery.com>
13487
13488 * Makefile.am (LTLDFLAGS): Define.
13489 (LINK): Define.
13490 * Makefile.in: Regenerate.
13491
667e6f89
JB
134922009-05-27 Janne Blomqvist <jb@gcc.gnu.org>
13493
13494 PR fortran/39718
13495 * testsuite/libgomp.fortran/fortran.exp: Don't link with
13496 libgfortranbegin, check existence of libgfortran.a instead of
13497 libgfortranbegin.a.
13498
6dea8e99
JJ
134992009-05-20 Jakub Jelinek <jakub@redhat.com>
13500
13501 PR libgomp/40174
13502 * team.c (gomp_thread_start): Destroy thr->release semaphore.
13503 (gomp_free_pool_helper): Likewise.
13504
34d01e1d
VL
135052009-04-20 Vasilis Liaskovitis <vliaskov@gmail.com>
13506 Jakub Jelinek <jakub@redhat.com>
13507
13508 PR fortran/35423
13509 * testsuite/libgomp.fortran/workshare2.f90: New test.
13510
748086b7
JJ
135112009-04-09 Nick Clifton <nickc@redhat.com>
13512
13513 * iter.c: Change copyright header to refer to version 3 of the
13514 GNU General Public License with version 3.1 of the GCC Runtime
13515 Library Exception and to point readers at the COPYING3 and
13516 COPYING3.RUNTIME files and the FSF's license web page.
13517 * alloc.c: Likewise.
13518 * barrier.c: Likewise.
13519 * config/bsd/proc.c: Likewise.
13520 * config/linux/affinity.c: Likewise.
13521 * config/linux/alpha/futex.h: Likewise.
13522 * config/linux/bar.c: Likewise.
13523 * config/linux/bar.h: Likewise.
13524 * config/linux/ia64/futex.h: Likewise.
13525 * config/linux/ia64/mutex.h: Likewise.
13526 * config/linux/lock.c: Likewise.
13527 * config/linux/mips/futex.h: Likewise.
13528 * config/linux/mutex.c: Likewise.
13529 * config/linux/mutex.h: Likewise.
13530 * config/linux/powerpc/futex.h: Likewise.
13531 * config/linux/proc.c: Likewise.
13532 * config/linux/ptrlock.c: Likewise.
13533 * config/linux/ptrlock.h: Likewise.
13534 * config/linux/s390/futex.h: Likewise.
13535 * config/linux/sem.c: Likewise.
13536 * config/linux/sem.h: Likewise.
13537 * config/linux/sparc/futex.h: Likewise.
13538 * config/linux/wait.h: Likewise.
13539 * config/linux/x86/futex.h: Likewise.
13540 * config/mingw32/proc.c: Likewise.
13541 * config/mingw32/time.c: Likewise.
13542 * config/posix/affinity.c: Likewise.
13543 * config/posix/bar.c: Likewise.
13544 * config/posix/bar.h: Likewise.
13545 * config/posix/lock.c: Likewise.
13546 * config/posix/mutex.h: Likewise.
13547 * config/posix/proc.c: Likewise.
13548 * config/posix/ptrlock.h: Likewise.
13549 * config/posix/sem.c: Likewise.
13550 * config/posix/sem.h: Likewise.
13551 * config/posix/time.c: Likewise.
13552 * config/posix95/lock.c: Likewise.
13553 * critical.c: Likewise.
13554 * env.c: Likewise.
13555 * error.c: Likewise.
13556 * fortran.c: Likewise.
13557 * iter_ull.c: Likewise.
13558 * libgomp.h: Likewise.
13559 * libgomp_f.h.in: Likewise.
13560 * libgomp_g.h: Likewise.
13561 * loop.c: Likewise.
13562 * loop_ull.c: Likewise.
13563 * omp.h.in: Likewise.
13564 * omp_lib.f90.in: Likewise.
13565 * omp_lib.h.in: Likewise.
13566 * ordered.c: Likewise.
13567 * parallel.c: Likewise.
13568 * sections.c: Likewise.
13569 * single.c: Likewise.
13570 * task.c: Likewise.
13571 * team.c: Likewise.
13572 * work.c: Likewise.
13573
135742009-04-09 Jakub Jelinek <jakub@redhat.com>
13575
13576 * testsuite/config/default.exp: Change copyright header to refer to
13577 version 3 of the GNU General Public License and to point readers
13578 at the COPYING3 file and the FSF's license web page.
13579
4f0ae266
JJ
135802009-04-08 Jakub Jelinek <jakub@redhat.com>
13581
13582 PR middle-end/39573
13583 * libgomp.c++/pr39573.C: New test.
13584
03742a9b
JJ
135852009-04-01 Jakub Jelinek <jakub@redhat.com>
13586
13587 PR other/39591
13588 * testsuite/libgomp.c/pr39591-1.c: New test.
13589 * testsuite/libgomp.c/pr39591-2.c: New test.
13590 * testsuite/libgomp.c/pr39591-3.c: New test.
13591
e50ea10b
UB
135922009-03-25 Uros Bizjak <ubizjak@gmail.com>
13593
13594 * testsuite/libgomp.c/atomic-5.c: Cleanup cpuid usage.
13595 * testsuite/libgomp.c/atomic-6.c: Ditto.
13596
c5cdb03f
JJ
135972009-03-23 Jakub Jelinek <jakub@redhat.com>
13598
13599 PR c/39495
13600 * testsuite/libgomp.c/loop-12.c: New test.
13601 * testsuite/libgomp.c/loop-11.c: New test.
13602 * testsuite/libgomp.c++/loop-11.C: New test.
13603 * testsuite/libgomp.c++/loop-12.C: New test.
13604 * testsuite/libgomp.c++/for-8.C: New test.
13605
7a9d3fe8
RW
136062009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13607
13608 * configure: Regenerate.
13609
3ad6b266
JJ
136102009-02-11 Jakub Jelinek <jakub@redhat.com>
13611
13612 PR middle-end/39154
13613 * testsuite/libgomp.c/pr39154.c: New test.
13614
b39dea08
ILT
136152009-01-30 Ian Lance Taylor <iant@google.com>
13616
13617 * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
13618 libgomp_ld_is_gold. Get gold version number.
13619 (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
13620 * configure: Rebuild.
13621
72c66596
IS
136222009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
13623
e50ea10b 13624 * testsuite/lib/libgomp.exp: Add -B option for targets that
72c66596
IS
13625 use libgfortran.a%s in their specs.
13626
876080ff
JJ
136272009-01-07 Jakub Jelinek <jakub@redhat.com>
13628
13629 PR libgomp/38086
13630 * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New check.
13631 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undefine if
13632 HAVE_AS_SYMVER_DIRECTIVE is not defined.
13633 * configure: Regenerated.
13634 * config.h.in: Likewise.
13635
e4ebaef3
JJ
136362008-12-28 Jakub Jelinek <jakub@redhat.com>
13637
13638 PR c++/38650
13639 * testsuite/libgomp.c/pr38650.c: New test.
13640 * testsuite/libgomp.c++/pr38650.C: New test.
13641
382017a6
JJ
136422008-12-27 Jakub Jelinek <jakub@redhat.com>
13643
13644 * testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
13645
79644b27
UB
136462008-12-26 Uros Bizjak <ubizjak@gmail.com>
13647
13648 * testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
13649
baafc534
RW
136502008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13651
13652 * configure: Regenerate.
13653
d9c194cb
JJ
136542008-12-08 Jakub Jelinek <jakub@redhat.com>
13655
13656 PR middle-end/36802
13657 * testsuite/libgomp.c/pr36802-1.c: New test.
13658 * testsuite/libgomp.c/pr36802-2.c: New test.
13659 * testsuite/libgomp.c/pr36802-3.c: New test.
13660
86a182bf
JJ
136612008-12-01 Janis Johnson <janis187@us.ibm.com>
13662
13663 PR libgomp/38270
13664 * config/linux/powerpc/mutex.h: New.
13665
956adfaf
JJ
136662008-12-01 Jakub Jelinek <jakub@redhat.com>
13667
a2d4cdc9
JJ
13668 PR c++/38257
13669 * testsuite/libgomp.c++/for-7.C: New test.
13670
956adfaf
JJ
13671 PR c++/38348
13672 * testsuite/libgomp.c++/for-6.C: New test.
13673
d4038ca2
JJ
136742008-11-26 Janis Johnson <janis187@us.ibm.com>
13675
13676 PR testsuite/28870
13677 * testsuite/lib/libgomp.exp: Include new timeout library files.
13678 (libgomp_target_compile): Set timeout value from new proc.
13679
8b159eea
SE
136802008-11-13 Steve Ellcey <sje@cup.hp.com>
13681
13682 PR libgomp/37938
13683 * config/linux/ia64/mutex.h: New.
13684
5c6ed53a
TB
136852008-11-04 Tobias Burnus <burnus@net-b.de>
13686
13687 PR libgomp/37935
13688 * libgomp.texi (Runtime library routines, environment variables):
13689 Update for OpenMP version 3.0.
13690
6b4a97ed
PG
136912008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
13692 Steve Ellcey <sje@cup.hp.com>
13693
13694 * configure: Regenerate for new libtool.
13695 * Makefile.in: Ditto.
13696 * testsuite/Makefile.in: Ditto.
13697
e2b34106
JJ
136982008-09-19 Jakub Jelinek <jakub@redhat.com>
13699 Andreas Tobler <a.tobler@schweiz.org>
13700
13701 * config/bsd/proc.c: New file.
8c3b3600 13702 * configure.tgt (*-*-darwin*): Use config_path "bsd posix".
e2b34106
JJ
13703 * configure.ac: Check for header <sys/sysctl.h>
13704 * configure: Regenerate.
13705 * config.h.in: Likewise.
13706
3606b8bf
JJ
137072008-09-05 Janis Johnson <janis187@us.ibm.com>
13708
13709 * testsuite/ligbomp.c/c.exp: Unset lang_test_file only if it exists.
13710
6528b88d
AL
137112008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
13712
13713 * Makefile.am (libgomp_la_LDFLAGS): Add -no-undefined.
13714 * Makefile.in: Regenerated.
13715 * testsuite/Makefile.in: Regenerated.
13716
d9b14b12 137172008-08-21 Nathan Froyd <froydnj@codesourcery.com>
8c9570df 13718
a16b68bb 13719 * testsuite/lib/libgomp.exp (libgomp_init): Only set things that
8c9570df
NF
13720 depend on blddir if blddir exists.
13721 (libgomp_target_compile): Likewise.
13722 * testsuite/libgomp.c++/c++.exp: Likewise.
13723 * testsuite/libgomp.fortran/fortran.exp: Likewise.
13724
70b1e376
RW
137252008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13726
13727 * libgomp.texi: Update to GFDL 1.2. Update copyright years.
13728 Do not list GPL as Invariant Section.
13729
318e8c3f
IG
137302008-07-28 Ilie Garbacea <ilie@mips.com>
13731 Chao-ying Fu <fu@mips.com>
13732
13733 * configure.tgt: Enable futex for MIPS.
13734 * config/linux/mips/futex.h: New file.
13735
4db72361
JJ
137362008-07-16 Jakub Jelinek <jakub@redhat.com>
13737
13738 * team.c (gomp_team_end): Free team immediately if it has
13739 just one thread.
13740
87bd23b8
DE
137412008-07-08 David Edelsohn <edelsohn@gnu.org>
13742
13743 * testsuite/libgomp.c++/c++.exp: Append multilib library path.
13744 * testsuite/libgomp.fortran/fortran.exp: Same.
13745 * testsuite/libgomp.c/c.exp: Same.
13746 * testsuite/lib/libgomp.exp: Append AIX libgcc pthread multilib
13747 directory to library path first.
13748
323ff903
KW
137492008-06-29 Krister Walfridsson <krister.walfridsson@gmail.com>
13750
13751 * env.c (parse_stacksize): Add cast to avoid warning.
13752 (parse_spincount): Likewise.
13753
b357f682
JJ
137542008-06-27 Jakub Jelinek <jakub@redhat.com>
13755
ca2b1311
JJ
13756 * testsuite/libgomp.c/loop-10.c: New test.
13757 * libgomp.c/loop-3.c (main): Add lastprivate clause.
13758 * libgomp.c++/loop-6.C (main): Likewise.
13759
b357f682
JJ
13760 PR debug/36617
13761 * testsuite/libgomp.c/debug-1.c: New test.
13762
09a46078
JJ
137632008-06-19 Jakub Jelinek <jakub@redhat.com>
13764
13765 * testsuite/libgomp.c/nqueens-1.c: New test.
13766
2368a460
JJ
13767 PR c++/36523
13768 * testsuite/libgomp.c++/task-7.C: New function.
13769
18c04407
RW
137702008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13771
13772 * configure: Regenerate.
13773
9c4e59e0
JDA
137742008-06-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
13775
13776 * env.c (initialize_env): Always initialize gomp_remaining_threads_lock
13777 mutex when HAVE_SYNC_BUILTINS isn't defined.
13778
6ccde948
RW
137792008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13780
13781 * libgomp.texi (omp_test_lock): Fix typo.
13782
b896f9fd
TB
137832008-06-12 Tobias Burnus <burnus@net-b.de>
13784
13785 * omp_lib.f90.in: Add "implicit none".
13786
c34938a8
JJ
137872008-06-12 Jakub Jelinek <jakub@redhat.com>
13788
13789 PR middle-end/36506
13790 * testsuite/libgomp.c/reduction-5.c: New test.
13791
976e44e3
JJ
137922008-06-11 Jakub Jelinek <jakub@redhat.com>
13793
5f836cbb
JJ
13794 * libgomp.h (struct gomp_task): Add in_tied_task field.
13795 * task.c (gomp_init_task): Initialize it.
13796 (GOMP_task): Likewise. Call gomp_team_barrier_set_task_pending
13797 unconditionally. Don't call gomp_team_barrier_wake if
13798 current task is implicit or if(0) from implicit and number of
13799 running tasks is equal to nthreads - 1.
13800
01501fc8
JJ
13801 PR libgomp/36471
13802 * omp_lib.f90.in (omp_get_ancestor_thread_num_8,
13803 omp_get_team_size_8): Fix pastos.
13804
976e44e3
JJ
13805 PR libgomp/36469
13806 * configure.ac: Add AC_CHECK_FUNCS (strtoull).
13807 * configure: Regenerated.
13808 * config.h.in: Regenerated.
13809 * env.c (strtoull): Define to strtoul if HAVE_STRTOULL is not
13810 defined.
13811
e919209b
AT
138122008-06-06 Andreas Tobler <a.tobler@schweiz.org>
13813
13814 PR bootstrap/36452
13815 * loop_ull.c (GOMP_loop_ull_static_start): Adjust API.
13816 (GOMP_loop_ull_dynamic_start): Likewise.
13817 (GOMP_loop_ull_guided_start): Likewise.
13818 (GOMP_loop_ull_ordered_static_start): Likewise.
13819 (GOMP_loop_ull_ordered_dynamic_start): Likewise.
13820 (GOMP_loop_ull_ordered_guided_start): Likewise.
13821
a68ab351
JJ
138222008-06-06 Jakub Jelinek <jakub@redhat.com>
13823 Richard Henderson <rth@redhat.com>
13824 Ulrich Drepper <drepper@redhat.com>
13825 Jakob Blomer <jakob.blomer@ira.uka.de>
13826
13827 * configure.ac (LIBGOMP_GNU_SYMBOL_VERSIONING): New AC_DEFINE.
13828 Substitute also OMP_*LOCK_25*.
13829 * configure: Regenerated.
13830 * config.h.in: Regenerated.
13831 * Makefile.am (libgomp_la_SOURCES): Add loop_ull.c, iter_ull.c,
13832 ptrlock.c and task.c.
13833 * Makefile.in: Regenerated.
13834 * testsuite/Makefile.in: Regenerated.
13835 * task.c: New file.
13836 * loop_ull.c: New file.
13837 * iter_ull.c: New file.
13838 * libgomp.h: Include ptrlock.h.
13839 (enum gomp_task_kind): New type.
13840 (struct gomp_team): Add task_lock, task_queue, task_count,
13841 task_running_count, single_count fields. Add
13842 work_share_list_free_lock ifndef HAVE_SYNC_BUILTINS.
13843 Remove work_share_lock, generation_mask,
13844 oldest_live_gen, num_live_gen and init_work_shares fields, add
13845 work work_share_list_alloc, work_share_list_free and work_share_chunk
13846 fields. Change work_shares from pointer to pointers into an array.
13847 Change ordered_release field into gomp_sem_t ** from flexible array
13848 member. Add implicit_task and initial_work_shares fields.
13849 Move close to the end of the struct.
13850 (struct gomp_team_state): Add single_count, last_work_share,
13851 active_level and level fields, remove work_share_generation.
13852 (gomp_barrier_handle_tasks): New prototype.
13853 (gomp_finish_task): New inline function.
13854 (struct gomp_work_share): Move chunk_size, end, incr into
13855 transparent union/struct, add chunk_size_ull, end_ll, incr_ll and
13856 next_ll fields. Reshuffle fields. Add next_alloc,
13857 next_ws, next_free and inline_ordered_team_ids fields, change
13858 ordered_team_ids into pointer from flexible array member.
13859 Add mode field. Put lock and next into a different cache line
13860 from most of the write-once fields.
13861 (gomp_iter_ull_static_next, gomp_iter_ull_dynamic_next_locked,
13862 gomp_iter_ull_guided_next_locked, gomp_iter_ull_dynamic_next,
13863 gomp_iter_ull_guided_next): New prototypes.
13864 (gomp_new_icv): New prototype.
13865 (struct gomp_thread): Add thread_pool and task fields.
13866 (struct gomp_thread_pool): New type.
13867 (gomp_new_team): New prototype.
13868 (gomp_team_start): Change type of last argument.
13869 (gomp_new_work_share): Removed.
13870 (gomp_init_work_share, gomp_fini_work_share): New prototypes.
13871 (gomp_work_share_init_done): New static inline.
13872 (gomp_throttled_spin_count_var, gomp_available_cpus,
13873 gomp_managed_threads): New extern decls.
13874 (gomp_init_task): New prototype.
13875 (gomp_spin_count_var): New extern var decl.
13876 (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef if no visibility
13877 or no alias support, or if not PIC.
13878 (gomp_init_lock_30, gomp_destroy_lock_30, gomp_set_lock_30,
13879 gomp_unset_lock_30, gomp_test_lock_30, gomp_init_nest_lock_30,
13880 gomp_destroy_nest_lock_30, gomp_set_nest_lock_30,
13881 gomp_unset_nest_lock_30, gomp_test_nest_lock_30, gomp_init_lock_25,
13882 gomp_destroy_lock_25, gomp_set_lock_25, gomp_unset_lock_25,
13883 gomp_test_lock_25, gomp_init_nest_lock_25, gomp_destroy_nest_lock_25,
13884 gomp_set_nest_lock_25, gomp_unset_nest_lock_25,
13885 gomp_test_nest_lock_25): New prototypes.
13886 (omp_lock_symver, strong_alias): Define.
13887 (gomp_remaining_threads_count, gomp_remaining_threads_lock): New
13888 decls.
13889 (gomp_end_task): New.
13890 (struct gomp_task_icv, gomp_global_icv): New.
13891 (gomp_thread_limit_var, gomp_max_active_levels_var): New.
13892 (struct gomp_task): New.
13893 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
13894 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
13895 (gomp_icv): New.
13896 (gomp_schedule_type): Reorder enum to match
13897 omp_sched_t.
13898 * team.c (struct gomp_thread_start_data): Add thread_pool and task
13899 fields.
13900 (gomp_thread_start): Add gomp_team_barrier_wait call.
13901 For non-nested case remove clearing of docked thread thr fields.
13902 Use pool fields instead of global gomp_* variables. Use
13903 gomp_barrier_wait_last when needed. Initialize ts.active_level.
13904 Create tasks for each member thread.
13905 (free_team): Only destroy team barrier, task_lock here and free it.
13906 (gomp_free_thread): Free last_team if non-NULL.
13907 (gomp_team_end): Call gomp_team_barrier_wait instead of
13908 gomp_barrier_wait. For nested case call one extra
13909 gomp_barrier_wait. Move here some destruction from free_team.
13910 Call free_team on pool->last_team if any, rather than freeing
13911 current team. Destroy work_share_list_free_lock ifndef
13912 HAVE_SYNC_BUILTINS.
13913 (gomp_new_icv): New function.
13914 (gomp_threads, gomp_threads_size, gomp_threads_used,
13915 gomp_threads_dock): Removed.
13916 (gomp_thread_destructor): New variable.
13917 (gomp_new_thread_pool, gomp_free_pool_helper, gomp_free_thread): New
13918 functions.
13919 (gomp_team_start): Create new pool if current thread doesn't have
3e348fcc 13920 one. Use pool fields instead of global gomp_* variables.
a68ab351
JJ
13921 Initialize thread_pool field for new threads. Clear single_count.
13922 Change last argument from ws to team, don't create
13923 new team, set ts.work_share to &team->work_shares[0] and clear
13924 ts.last_work_share. Don't clear ts.work_share_generation.
13925 If number of threads changed, adjust atomically gomp_managed_threads.
13926 Use gomp_init_task instead of gomp_new_task,
13927 set thr->task to the corresponding implicit_task array entry.
13928 Create tasks for each member thread. Initialize ts.level.
13929 (initialize_team): Call pthread_key_create on
13930 gomp_thread_destructor.
13931 (team_destructor): New function.
13932 (new_team): Removed.
13933 (gomp_new_team): New function.
13934 (free_team): Free gomp_work_share blocks chained through next_alloc,
13935 instead of freeing work_shares and destroying work_share_lock.
13936 (gomp_team_end): Call gomp_fini_work_share. If number of threads
13937 changed, adjust atomically gomp_managed_threads. Use gomp_end_task.
13938 * barrier.c (GOMP_barrier): Call gomp_team_barrier_wait instead
13939 of gomp_barrier_wait.
13940 * single.c (GOMP_single_copy_start): Call gomp_team_barrier_wait
13941 instead of gomp_barrier_wait. Call gomp_work_share_init_done
13942 if gomp_work_share_start returned true. Don't unlock ws->lock.
13943 (GOMP_single_copy_end): Call gomp_team_barrier_wait instead
13944 of gomp_barrier_wait.
13945 (GOMP_single_start): Rewritten if HAVE_SYNC_BUILTINS. Call
13946 gomp_work_share_init_done if gomp_work_share_start returned true.
13947 Don't unlock ws->lock.
13948 * work.c: Include stddef.h.
13949 (free_work_share): Use work_share_list_free_lock instead
13950 of atomic chaining ifndef HAVE_SYNC_BUILTINS. Add team argument.
13951 Call gomp_fini_work_share and then either free ws if orphaned, or
13952 put it into work_share_list_free list of the current team.
13953 (alloc_work_share, gomp_init_work_share, gomp_fini_work_share): New
13954 functions.
13955 (gomp_work_share_start, gomp_work_share_end,
13956 gomp_work_share_end_nowait): Rewritten.
13957 * omp_lib.f90.in Change some tabs to spaces to prevent warnings.
13958 (openmp_version): Set to 200805.
13959 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
13960 omp_sched_guided, omp_sched_auto): New parameters.
13961 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
13962 omp_set_max_active_levels, omp_get_max_active_levels,
13963 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
13964 omp_get_active_level): New interfaces.
13965 * omp_lib.h.in (openmp_version): Set to 200805.
13966 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
13967 omp_sched_guided, omp_sched_auto): New parameters.
13968 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
13969 omp_set_max_active_levels, omp_get_max_active_levels,
13970 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
13971 omp_get_active_level): New externals.
13972 * loop.c: Include limits.h.
13973 (GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Handle
13974 GFS_AUTO.
13975 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start):
13976 Likewise. Use gomp_icv.
13977 (gomp_loop_static_start, gomp_loop_dynamic_start): Clear
13978 ts.static_trip here.
13979 (gomp_loop_static_start, gomp_loop_ordered_static_start): Call
13980 gomp_work_share_init_done after gomp_loop_init. Don't unlock ws->lock.
13981 (gomp_loop_dynamic_start, gomp_loop_guided_start): Call
13982 gomp_work_share_init_done after gomp_loop_init. If HAVE_SYNC_BUILTINS,
13983 don't unlock ws->lock, otherwise lock it.
13984 (gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start): Call
13985 gomp_work_share_init_done after gomp_loop_init. Lock ws->lock.
13986 (gomp_parallel_loop_start): Call gomp_new_team instead of
13987 gomp_new_work_share. Call gomp_loop_init on &team->work_shares[0].
13988 Adjust gomp_team_start caller. Pass 0 as second argument to
13989 gomp_resolve_num_threads.
13990 (gomp_loop_init): For GFS_DYNAMIC, multiply ws->chunk_size by incr.
13991 If adding ws->chunk_size nthreads + 1 times after end won't
13992 overflow, set ws->mode to 1.
13993 * libgomp_g.h (GOMP_loop_ull_static_start, GOMP_loop_ull_dynamic_start,
13994 GOMP_loop_ull_guided_start, GOMP_loop_ull_runtime_start,
13995 GOMP_loop_ull_ordered_static_start,
13996 GOMP_loop_ull_ordered_dynamic_start,
13997 GOMP_loop_ull_ordered_guided_start,
13998 GOMP_loop_ull_ordered_runtime_start, GOMP_loop_ull_static_next,
13999 GOMP_loop_ull_dynamic_next, GOMP_loop_ull_guided_next,
14000 GOMP_loop_ull_runtime_next, GOMP_loop_ull_ordered_static_next,
14001 GOMP_loop_ull_ordered_dynamic_next, GOMP_loop_ull_ordered_guided_next,
14002 GOMP_loop_ull_ordered_runtime_next, GOMP_task, GOMP_taskwait): New
14003 prototypes.
14004 * libgomp.map: Export lock routines also @@OMP_2.0.
14005 (GOMP_loop_ordered_dynamic_first,
14006 GOMP_loop_ordered_guided_first, GOMP_loop_ordered_runtime_first,
14007 GOMP_loop_ordered_static_first): Remove.
14008 (GOMP_loop_ull_dynamic_next, GOMP_loop_ull_dynamic_start,
14009 GOMP_loop_ull_guided_next, GOMP_loop_ull_guided_start,
14010 GOMP_loop_ull_ordered_dynamic_next,
14011 GOMP_loop_ull_ordered_dynamic_start,
14012 GOMP_loop_ull_ordered_guided_next,
14013 GOMP_loop_ull_ordered_guided_start,
14014 GOMP_loop_ull_ordered_runtime_next,
14015 GOMP_loop_ull_ordered_runtime_start,
14016 GOMP_loop_ull_ordered_static_next,
14017 GOMP_loop_ull_ordered_static_start,
14018 GOMP_loop_ull_runtime_next, GOMP_loop_ull_runtime_start,
14019 GOMP_loop_ull_static_next, GOMP_loop_ull_static_start,
14020 GOMP_task, GOMP_taskwait): Export @@GOMP_2.0.
14021 (omp_set_schedule, omp_get_schedule,
14022 omp_get_thread_limit, omp_set_max_active_levels,
14023 omp_get_max_active_levels, omp_get_level,
14024 omp_get_ancestor_thread_num, omp_get_team_size, omp_get_active_level,
14025 omp_set_schedule_, omp_set_schedule_8_,
14026 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
14027 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
14028 omp_get_max_active_levels_, omp_get_level_,
14029 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
14030 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
14031 New exports @@OMP_3.0.
14032 * omp.h.in (omp_sched_t): New type.
14033 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
14034 omp_set_max_active_levels, omp_get_max_active_levels,
14035 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
14036 omp_get_active_level): New prototypes.
14037 * env.c (gomp_spin_count_var, gomp_throttled_spin_count_var,
14038 gomp_available_cpus, gomp_managed_threads, gomp_max_active_levels_var,
14039 gomp_thread_limit_var, gomp_remaining_threads_count,
14040 gomp_remaining_threads_lock): New variables.
14041 (parse_spincount): New function.
14042 (initialize_env): Call gomp_init_num_threads unconditionally.
14043 Initialize gomp_available_cpus. Call parse_spincount,
14044 initialize gomp_{,throttled_}spin_count_var
14045 depending on presence and value of OMP_WAIT_POLICY and
14046 GOMP_SPINCOUNT env vars. Handle GOMP_BLOCKTIME env var.
14047 Handle OMP_WAIT_POLICY, OMP_MAX_ACTIVE_LEVELS,
14048 OMP_THREAD_LIMIT, OMP_STACKSIZE env vars. Handle unit specification
14049 for GOMP_STACKSIZE. Initialize gomp_remaining_threads_count and
14050 gomp_remaining_threads_lock if needed. Use gomp_global_icv.
14051 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
14052 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
14053 (gomp_global_icv): New.
14054 (parse_schedule): Use it. Parse "auto".
14055 (omp_set_num_threads): Use gomp_icv.
14056 (omp_set_dynamic, omp_get_dynamic, omp_set_nested, omp_get_nested):
14057 Likewise.
14058 (omp_get_max_threads): Move from parallel.c.
14059 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
14060 omp_set_max_active_levels, omp_get_max_active_levels): New functions,
14061 add ialias.
14062 (parse_stacksize, parse_wait_policy): New functions.
14063 * fortran.c: Rewrite lock wrappers, if symbol versioning provide
14064 both wrappers for compatibility and new locks.
14065 (omp_set_schedule, omp_get_schedule,
14066 omp_get_thread_limit, omp_set_max_active_levels,
14067 omp_get_max_active_levels, omp_get_level,
14068 omp_get_ancestor_thread_num, omp_get_team_size,
14069 omp_get_active_level): New ialias_redirect.
14070 (omp_set_schedule_, omp_set_schedule_8_,
14071 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
14072 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
14073 omp_get_max_active_levels_, omp_get_level_,
14074 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
14075 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
14076 New functions.
14077 * parallel.c: Include limits.h.
14078 (gomp_resolve_num_threads): Add count argument. Rewritten.
14079 (GOMP_parallel_start): Call gomp_new_team and pass that as last
14080 argument to gomp_team_start. Pass 0 as second argument to
14081 gomp_resolve_num_threads.
14082 (GOMP_parallel_end): Decrease gomp_remaining_threads_count
14083 if gomp_thread_limit_var != ULONG_MAX.
14084 (omp_in_parallel): Implement using ts.active_level.
14085 (omp_get_max_threads): Move to env.c.
14086 (omp_get_level, omp_get_ancestor_thread_num,
14087 omp_get_team_size, omp_get_active_level): New functions,
14088 add ialias.
14089 * sections.c (GOMP_sections_start): Call gomp_work_share_init_done
14090 after gomp_sections_init. If HAVE_SYNC_BUILTINS, call
14091 gomp_iter_dynamic_next instead of the _locked variant and don't take
14092 lock around it, otherwise acquire it before calling
14093 gomp_iter_dynamic_next_locked.
14094 (GOMP_sections_next): If HAVE_SYNC_BUILTINS, call
14095 gomp_iter_dynamic_next instead of the _locked variant and don't take
14096 lock around it.
14097 (GOMP_parallel_sections_start): Call gomp_new_team instead of
14098 gomp_new_work_share. Call gomp_sections_init on &team->work_shares[0].
14099 Adjust gomp_team_start caller. Pass count as second argument to
14100 gomp_resolve_num_threads, don't adjust num_threads after the call.
14101 Use gomp_icv.
14102 * iter.c (gomp_iter_dynamic_next_locked): Don't multiply
14103 ws->chunk_size by incr.
14104 (gomp_iter_dynamic_next): Likewise. If ws->mode, use more efficient
14105 code.
14106 * libgomp_f.h.in (omp_lock_25_arg_t, omp_nest_lock_25_arg_t): New
14107 types.
14108 (omp_lock_25_arg, omp_nest_lock_25_arg): New macros.
14109 (omp_check_defines): Check even the compat defines.
14110 * config/linux/ptrlock.c: New file.
14111 * config/linux/ptrlock.h: New file.
14112 * config/linux/wait.h: New file.
14113 * config/posix/ptrlock.c: New file.
14114 * config/posix/ptrlock.h: New file.
14115 * config/linux/bar.h (gomp_team_barrier_wait,
14116 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
14117 (gomp_team_barrier_set_task_pending,
14118 gomp_team_barrier_clear_task_pending,
14119 gomp_team_barrier_set_waiting_for_tasks,
14120 gomp_team_barrier_waiting_for_tasks,
14121 gomp_team_barrier_done): New inlines.
14122 (gomp_barrier_t): Rewritten.
14123 (gomp_barrier_state_t): New typedef.
14124 (gomp_barrier_init, gomp_barrier_reinit, gomp_barrier_destroy,
14125 gomp_barrier_wait_start): Rewritten.
14126 (gomp_barrier_wait_end): Change second argument to
14127 gomp_barrier_state_t.
14128 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
14129 inlines.
14130 * config/linux/bar.c: Include wait.h instead of libgomp.h and
14131 futex.h.
14132 (gomp_barrier_wait_end): Rewritten.
14133 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
14134 gomp_team_barrier_wake, gomp_barrier_wait_last): New functions.
14135 * config/posix/bar.h (gomp_barrier_t): Add generation field.
14136 (gomp_barrier_state_t): New typedef.
14137 (gomp_team_barrier_wait,
14138 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
14139 (gomp_barrier_wait_start): Or all but low 2 bits from generation
14140 into the return value. Return gomp_barrier_state_t.
14141 (gomp_team_barrier_set_task_pending,
14142 gomp_team_barrier_clear_task_pending,
14143 gomp_team_barrier_set_waiting_for_tasks,
14144 gomp_team_barrier_waiting_for_tasks,
14145 gomp_team_barrier_done): New inlines.
14146 (gomp_barrier_wait_end): Change second argument to
14147 gomp_barrier_state_t.
14148 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
14149 inlines.
14150 * config/posix/bar.c (gomp_barrier_init): Clear generation field.
14151 (gomp_barrier_wait_end): Change second argument to
3e348fcc 14152 gomp_barrier_state_t.
a68ab351
JJ
14153 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
14154 gomp_team_barrier_wake): New functions.
14155 * config/linux/mutex.c: Include wait.h instead of libgomp.h and
14156 futex.h.
14157 (gomp_futex_wake, gomp_futex_wait): New variables.
14158 (gomp_mutex_lock_slow): Call do_wait instead of futex_wait.
14159 * config/linux/lock.c: Rewrite to make locks task owned,
14160 for backwards compatibility provide the old entrypoints
14161 if symbol versioning. Include wait.h instead of libgomp.h and
14162 futex.h.
14163 (gomp_set_nest_lock_25): Call do_wait instead of futex_wait.
14164 * config/posix95/lock.c: Rewrite to make locks task owned,
14165 for backwards compatibility provide the old entrypoints
14166 if symbol versioning.
14167 * config/posix/lock.c: Rewrite to make locks task owned,
14168 for backwards compatibility provide the old entrypoints
14169 if symbol versioning.
14170 * config/linux/proc.c (gomp_init_num_threads): Use gomp_global_icv.
14171 (get_num_procs, gomp_dynamic_max_threads): Use gomp_icv.
14172 * config/posix/proc.c, config/mingw32/proc.c: Similarly.
14173 * config/linux/powerpc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
14174 (sys_futex0): Return error code.
14175 (futex_wake, futex_wait): If ENOSYS was returned, clear
14176 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
14177 (cpu_relax, atomic_write_barrier): New static inlines.
14178 * config/linux/alpha/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
14179 (futex_wake, futex_wait): If ENOSYS was returned, clear
14180 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
14181 (cpu_relax, atomic_write_barrier): New static inlines.
14182 * config/linux/x86/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
14183 (sys_futex0): Return error code.
14184 (futex_wake, futex_wait): If ENOSYS was returned, clear
14185 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
14186 (cpu_relax, atomic_write_barrier): New static inlines.
14187 * config/linux/s390/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
14188 (sys_futex0): Return error code.
14189 (futex_wake, futex_wait): If ENOSYS was returned, clear
14190 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
14191 (cpu_relax, atomic_write_barrier): New static inlines.
14192 * config/linux/ia64/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
14193 (sys_futex0): Return error code.
14194 (futex_wake, futex_wait): If ENOSYS was returned, clear
14195 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
14196 (cpu_relax, atomic_write_barrier): New static inlines.
14197 * config/linux/sparc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
14198 (sys_futex0): Return error code.
14199 (futex_wake, futex_wait): If ENOSYS was returned, clear
14200 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
14201 (cpu_relax, atomic_write_barrier): New static inlines.
14202 * config/linux/sem.c: Include wait.h instead of libgomp.h and
14203 futex.h.
14204 (gomp_sem_wait_slow): Call do_wait instead of futex_wait.
14205 * config/linux/affinity.c: Assume HAVE_SYNC_BUILTINS.
14206 * config/linux/omp-lock.h (omp_lock_25_t, omp_nest_lock_25_t): New
14207 types.
14208 (omp_nest_lock_t): Change owner into void *, add lock field.
14209 * config/posix95/omp-lock.h: Include semaphore.h.
14210 (omp_lock_25_t, omp_nest_lock_25_t): New types.
14211 (omp_lock_t): Use sem_t instead of mutex if semaphores
14212 aren't broken.
14213 (omp_nest_lock_t): Likewise. Change owner to void *.
14214 * config/posix/omp-lock.h: Include semaphore.h.
14215 (omp_lock_25_t, omp_nest_lock_25_t): New types.
14216 (omp_lock_t): Use sem_t instead of mutex if semaphores
14217 aren't broken.
14218 (omp_nest_lock_t): Likewise. Add owner field.
14219
142202008-06-06 Jakub Jelinek <jakub@redhat.com>
14221
14222 * testsuite/libgomp.c/collapse-1.c: New test.
14223 * testsuite/libgomp.c/collapse-2.c: New test.
14224 * testsuite/libgomp.c/collapse-3.c: New test.
14225 * testsuite/libgomp.c/icv-1.c: New test.
14226 * testsuite/libgomp.c/icv-2.c: New test.
14227 * testsuite/libgomp.c/lib-2.c: New test.
14228 * testsuite/libgomp.c/lock-1.c: New test.
14229 * testsuite/libgomp.c/lock-2.c: New test.
14230 * testsuite/libgomp.c/lock-3.c: New test.
14231 * testsuite/libgomp.c/loop-4.c: New test.
14232 * testsuite/libgomp.c/loop-5.c: New test.
14233 * testsuite/libgomp.c/loop-6.c: New test.
14234 * testsuite/libgomp.c/loop-7.c: New test.
14235 * testsuite/libgomp.c/loop-8.c: New test.
14236 * testsuite/libgomp.c/loop-9.c: New test.
14237 * testsuite/libgomp.c/nested-3.c: New test.
14238 * testsuite/libgomp.c/nestedfn-6.c: New test.
14239 * testsuite/libgomp.c/sort-1.c: New test.
14240 * testsuite/libgomp.c/task-1.c: New test.
14241 * testsuite/libgomp.c/task-2.c: New test.
14242 * testsuite/libgomp.c/task-3.c: New test.
14243 * testsuite/libgomp.c/task-4.c: New test.
14244 * testsuite/libgomp.c++/c++.exp: Add libstdc++-v3 build includes
14245 to C++ testsuite default compiler options.
14246 * testsuite/libgomp.c++/collapse-1.C: New test.
14247 * testsuite/libgomp.c++/collapse-2.C: New test.
14248 * testsuite/libgomp.c++/ctor-10.C: New test.
14249 * testsuite/libgomp.c++/for-1.C: New test.
14250 * testsuite/libgomp.c++/for-2.C: New test.
14251 * testsuite/libgomp.c++/for-3.C: New test.
14252 * testsuite/libgomp.c++/for-4.C: New test.
14253 * testsuite/libgomp.c++/for-5.C: New test.
14254 * testsuite/libgomp.c++/loop-8.C: New test.
14255 * testsuite/libgomp.c++/loop-9.C: New test.
14256 * testsuite/libgomp.c++/loop-10.C: New test.
14257 * testsuite/libgomp.c++/task-1.C: New test.
14258 * testsuite/libgomp.c++/task-2.C: New test.
14259 * testsuite/libgomp.c++/task-3.C: New test.
14260 * testsuite/libgomp.c++/task-4.C: New test.
14261 * testsuite/libgomp.c++/task-5.C: New test.
14262 * testsuite/libgomp.c++/task-6.C: New test.
14263 * testsuite/libgomp.fortran/allocatable1.f90: New test.
14264 * testsuite/libgomp.fortran/allocatable2.f90: New test.
14265 * testsuite/libgomp.fortran/allocatable3.f90: New test.
14266 * testsuite/libgomp.fortran/allocatable4.f90: New test.
14267 * testsuite/libgomp.fortran/collapse1.f90: New test.
14268 * testsuite/libgomp.fortran/collapse2.f90: New test.
14269 * testsuite/libgomp.fortran/collapse3.f90: New test.
14270 * testsuite/libgomp.fortran/collapse4.f90: New test.
14271 * testsuite/libgomp.fortran/lastprivate1.f90: New test.
14272 * testsuite/libgomp.fortran/lastprivate2.f90: New test.
14273 * testsuite/libgomp.fortran/lib4.f90: New test.
14274 * testsuite/libgomp.fortran/lock-1.f90: New test.
14275 * testsuite/libgomp.fortran/lock-2.f90: New test.
14276 * testsuite/libgomp.fortran/nested1.f90: New test.
14277 * testsuite/libgomp.fortran/nestedfn4.f90: New test.
14278 * testsuite/libgomp.fortran/strassen.f90: New test.
14279 * testsuite/libgomp.fortran/tabs1.f90: New test.
14280 * testsuite/libgomp.fortran/tabs2.f: New test.
14281 * testsuite/libgomp.fortran/task1.f90: New test.
14282 * testsuite/libgomp.fortran/task2.f90: New test.
14283 * testsuite/libgomp.fortran/vla4.f90: Add dg-warning.
14284 * testsuite/libgomp.fortran/vla5.f90: Likewise.
14285 * testsuite/libgomp.c/pr26943-2.c: Likewise.
14286 * testsuite/libgomp.c/pr26943-3.c: Likewise.
14287 * testsuite/libgomp.c/pr26943-4.c: Likewise.
14288
7a0112e7
JJ
142892008-05-23 Jakub Jelinek <jakub@redhat.com>
14290
14291 PR c++/36308
14292 * testsuite/libgomp.c++/ctor-11.C: New test.
14293 * testsuite/libgomp.c++/ctor-12.C: New test.
14294
91a5b394
JJ
142952008-05-15 Janis Johnson <janis187@us.ibm.com>
14296
14297 * testsuite/lib/libgomp.exp: Load torture-options.exp from gcc lib.
14298
c18c98c0
JJ
142992008-05-07 Jakub Jelinek <jakub@redhat.com>
14300
14301 PR middle-end/36106
14302 * testsuite/libgomp.c/atomic-5.c: New test.
14303 * testsuite/libgomp.c/atomic-6.c: New test.
14304 * testsuite/libgomp.c/autopar-1.c: New test.
14305
6d26724a
RW
143062008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14307
14308 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
14309 (LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
14310 (LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
14311 (LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
14312 * configure: Regenerate.
14313 * Makefile.in, testsuite/Makefile.in: Likewise.
14314
deb984e6
PB
143152008-04-18 Paolo Bonzini <bonzini@gnu.org>
14316
14317 PR bootstrap/35457
14318 * aclocal.m4: Regenerate.
14319 * configure: Regenerate.
14320
9e775963
JJ
143212008-03-18 Jakub Jelinek <jakub@redhat.com>
14322
8119fc93
JJ
14323 PR middle-end/35611
14324 * testsuite/libgomp.c/atomic-4.c: New test.
14325
9e775963
JJ
14326 PR libgomp/35625
14327 * iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
14328 (gomp_iter_guided_next): Likewise.
14329 * testsuite/libgomp.c/pr35625.c: New test.
14330
38d24731
RW
143312008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14332
14333 * aclocal.m4: Regenerate.
14334 * configure: Likewise.
14335 * Makefile.in: Likewise.
14336 * testsuite/Makefile.in: Likewise.
14337
d0fb20be
JJ
143382008-03-13 Jakub Jelinek <jakub@redhat.com>
14339
14340 PR middle-end/35185
14341 * testsuite/libgomp.c++/pr35185.C: New test.
14342
7c8f7639
JJ
143432008-03-12 Jakub Jelinek <jakub@redhat.com>
14344
14345 PR middle-end/35549
14346 * testsuite/libgomp.c/pr35549.c: New test.
14347
251923f5
JJ
143482008-03-06 Jakub Jelinek <jakub@redhat.com>
14349
14350 * testsuite/libgomp.c/atomic-3.c: New test.
14351
f489fba1
FXC
143522008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
14353
14354 PR fortran/33197
251923f5 14355 * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
f489fba1
FXC
14356 .F08 file suffixes.
14357
a1b25e49
PG
143582008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
14359
14360 PR libgomp/33131
14361 * configure.ac: Add ACX_HEADER_STRING.
14362 * env.c: Include strings.h.
14363 * aclocal.m4: Regenerate.
14364 * config.h.in: Regenerate.
14365 * configure: Regenerate.
14366 * Makefile.in: Regenerate.
14367 * testsuite/Makefile.in: Regenerate.
14368
6837b3b8
JJ
143692008-02-15 Jakub Jelinek <jakub@redhat.com>
14370
ac84c062
JJ
14371 PR middle-end/35196
14372 * testsuite/libgomp.c/pr35196.c: New test.
14373
6837b3b8
JJ
14374 PR middle-end/35130
14375 * testsuite/libgomp.fortran/pr35130.f90: New test.
14376 * testsuite/libgomp.c/pr35130.c: New test.
14377
c256730c
JJ
143782008-01-25 Jakub Jelinek <jakub@redhat.com>
14379
14380 PR middle-end/33880
14381 * testsuite/libgomp.c/pr33880.c: New test.
14382 * testsuite/libgomp.fortran/pr33880.f90: New test.
14383
c8e95542 143842008-01-24 David Edelsohn <edelsohn@gnu.org>
d653fdfb
DE
14385
14386 * configure: Regenerate.
14387
0f3e711e
JJ
143882008-01-08 Jakub Jelinek <jakub@redhat.com>
14389
14390 * configure.ac: Move futex checking into ../config/futex.m4.
14391 * configure: Rebuilt.
14392 * aclocal.m4: Rebuilt.
14393 * Makefile.in: Rebuilt.
14394
14395 * configure.tgt: Rename have_tls to gcc_cv_have_tls to match
14396 2007-10-15 ../config/tls.m4 change.
14397
5259c813
JJ
143982007-12-19 Jakub Jelinek <jakub@redhat.com>
14399
14400 PR c++/34513
14401 * testsuite/libgomp.c/pr34513.c: New test.
14402 * testsuite/libgomp.c++/pr34513.C: New test.
14403
ae8d8879
JH
144042007-12-17 Jack Howarth <howarth@bromo.med.uc.edu>
14405
14406 PR target/32765
14407 * testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.
14408
2b4cf991
JJ
144092007-12-04 Jakub Jelinek <jakub@redhat.com>
14410
14411 * omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
14412
d2dda7fe
JJ
144132007-12-03 Jakub Jelinek <jakub@redhat.com>
14414
14415 * testsuite/libgomp.c/private-1.c: New test.
14416
d683ec81
PB
144172007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
14418 Paolo Bonzini <bonzini@gnu.org>
14419
14420 * Makefile.am: Use space as vpath separator. Use 'vpath %'
14421 instead of 'VPATH ='.
14422 * Makefile.in: Regenerate.
14423
a7415017
MK
144242007-11-23 Matthias Klose <doko@ubuntu.com>
14425
14426 * configure.ac: Adjust makeinfo version check.
14427 * configure: Regenerate.
14428
78e47463
JJ
144292007-11-10 Jakub Jelinek <jakub@redhat.com>
14430
14431 PR fortran/34020
14432 * testsuite/libgomp.fortran/pr34020.f90: New test.
14433
239371f9
JJ
144342007-11-06 Jakub Jelinek <jakub@redhat.com>
14435
14436 PR c++/33894
14437 * testsuite/libgomp.c++/atomic-1.C: New test.
14438
98a5fa94
JJ
144392007-10-25 Jakub Jelinek <jakub@redhat.com>
14440
14441 PR libgomp/33275
14442 * testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
14443 Make x and y integers rather than (implicit) reals. Add private (j)
14444 clause to the last omp parallel.
14445
3afcaaf4
MR
144462007-10-15 Maciej W. Rozycki <macro@linux-mips.org>
14447
14448 * configure: Regenerate following changes to ../config/tls.m4.
14449
bd69daef
JJ
144502007-09-28 Jakub Jelinek <jakub@redhat.com>
14451
14452 * testsuite/libgomp.fortran/stack.f90: New test.
14453
1d0bd356
DS
144542007-09-10 Danny Smith <dannysmith@users.sourceforge.net>
14455
14456 * config/mingw32/proc.c: New file.
14457
b3172cab
UB
144582007-09-05 Uros Bizjak <ubizjak@gmail.com>
14459
14460 * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
14461 (main): Use __get_cpuid to get i386 target fetaures.
14462 * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
14463 (main): Use __get_cpuid to get x86_64 target fetaures.
14464
6da17392
JH
144652007-08-15 Jack Howarth <howarth@bromo.med.uc.edu>
14466
14467 PR target/32765
14468 * testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
14469 * testsuite/libgomp.fortran/crayptr2.f90: Likwise.
14470
e1c82219
JJ
144712007-07-12 Jakub Jelinek <jakub@redhat.com>
14472
14473 PR fortran/32550
14474 * testsuite/libgomp.fortran/pr32550.f90: New test.
14475 * testsuite/libgomp.fortran/crayptr2.f90: New test.
14476
12a27363
L
144772007-07-05 H.J. Lu <hongjiu.lu@intel.com>
14478
14479 * aclocal.m4: Regenerated.
14480
5349080d
TB
144812007-07-05 Tobias Burnus <burnus@net-b.de>
14482
14483 PR fortran/32359
14484 * testsuite/libgomp.fortran/pr32359.f90: New.
14485
4f9c450c
JJ
144862007-07-02 Jakub Jelinek <jakub@redhat.com>
14487
14488 PR libgomp/32468
14489 * sections.c (GOMP_parallel_sections_start): Only decrease
14490 number of threads to COUNT if dyn_var is true.
14491 * testsuite/libgomp.c/pr32468.c: New test.
14492
28c67ed7
RO
144932007-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
14494
14495 PR libgomp/26308
14496 * config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
14497
64964499
JJ
144982007-06-21 Jakub Jelinek <jakub@redhat.com>
14499
14500 PR middle-end/32362
14501 * testsuite/libgomp.c/pr32362-1.c: New test.
14502 * testsuite/libgomp.c/pr32362-2.c: New test.
14503 * testsuite/libgomp.c/pr32362-3.c: New test.
14504
46d8fbd1
JJ
145052007-06-07 Jakub Jelinek <jakub@redhat.com>
14506
14507 * team.c (gomp_team_start): Fix setting up thread_attr
14508 stack size.
14509
82a6cadf
PB
145102007-06-02 Paolo Bonzini <bonzini@gnu.org>
14511
14512 * configure: Regenerate.
14513
1cf3d07d
SE
145142007-05-23 Steve Ellcey <sje@cup.hp.com>
14515
14516 * Makefile.in: Regenerate.
14517 * configure: Regenerate.
14518 * aclocal.m4: Regenerate.
14519 * testsuite/Makefile.in: Regenerate.
14520
12aac30b
JJ
145212007-05-04 Jakub Jelinek <jakub@redhat.com>
14522
14523 * config/linux/proc.c: New file.
14524
f1028b02
JJ
14525 PR libgomp/28482
14526 * configure.tgt: Don't link with -Wl,-z,nodlopen even on Linux.
14527
06785a48
DF
145282007-04-19 Daniel Franke <franke.daniel@gmail.com>
14529
14530 * libgomp.texi (GOMP_CPU_AFFINITY): Updated.
14531
b3b08ba0
MK
145322007-04-16 Matthias Klose <doko@debian.org>
14533
14534 * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
14535 flags if not building with -m64.
14536 * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
14537 flag for i?86-*-* targets, if current target matches -m64.
14538
6b2c5ce0
SE
145392007-04-14 Steve Ellcey <sje@cup.hp.com>
14540
14541 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.
14542 * Makefile.in: Regenerate.
14543
dd56fe7c
JDA
145442007-04-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
14545
14546 PR testsuite/31369
14547 * testsuite/libgomp.c++/c++.exp: Don't use concat when setting
14548 ld_library_path.
14549 * testsuite/libgomp.fortran/fortran.exp: Likewise.
14550
a0884cf0
JJ
145512007-04-04 Jakub Jelinek <jakub@redhat.com>
14552
14553 * libgomp.h (gomp_cpu_affinity, gomp_cpu_affinity_len): New extern
14554 decls.
14555 (gomp_init_affinity, gomp_init_thread_affinity): New prototypes.
14556 * env.c (gomp_cpu_affinity, gomp_cpu_affinity_len): New variables.
14557 (parse_affinity): New function.
14558 (initialize_env): Call it and gomp_init_affinity.
14559 * team.c (gomp_team_start): If gomp_cpu_affinity != NULL,
14560 create new pthread_attr_t and call gomp_init_thread_affinity
14561 on it for each thread before passing the attribute to pthread_create.
14562 * config/linux/affinity.c: New file.
14563 * config/posix/affinity.c: New file.
14564 * configure.ac (HAVE_PTHREAD_AFFINITY_NP): New test.
14565 * configure: Rebuilt.
14566 * config.h.in: Rebuilt.
14567 * Makefile.am (libgomp_la_SOURCES): Add affinity.c.
14568 * Makefile.in: Rebuilt.
14569
1850744b
AT
145702007-03-23 Andreas Tobler <a.tobler@schweiz.org>
14571
14572 * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
14573 *-*-darwin*.
14574 * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
14575 and use it if found.
14576
516f1ed8
UB
145772007-03-18 Uros Bizjak <ubizjak@gmail.com>
14578
14579 * testsuite/config/default.exp: New file.
14580 * testsuite/lib/libgomp.exp: New file.
14581 * testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
14582 libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
14583 load_lib *, load_gcc_lib *): Move to libgomp.exp.
14584 (libgomp_load): Remove.
14585 * testsuite/lib/libgomp.exp (libgomp_init): Compute
14586 always_ld_library_path, not ld_library_path. Set additional_flags
14587 to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
14588 (target_compile): Do not call libgomp_init. Append lang_library_path
14589 and lang_link_flags to options.
14590 * testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2. Set
14591 ld_library_path from always_ld_library_path. Set LD_LIBRARY_PATH
14592 here.
14593 * testsuite/libgomp.c++/c++.exp: Set ld_library_path from
14594 always_ld_library_path. Set LD_LIBRARY_PATH here.
14595 * testsuite/libgomp.fortran/fortran.exp: Ditto.
14596 * testsuite/libgomp.c/atomic-1.c: Set dg-options to
14597 "-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
14598 CX8 flag.
14599 * testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
14600 lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
14601 * testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
14602 * testsuite/libgomp.c/pr29947-1.c: Ditto.
14603 * testsuite/libgomp.c/atomic-10.c: Ditto.
14604
2ada56f5
JJ
146052007-03-21 Jakub Jelinek <jakub@redhat.com>
14606
14607 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
14608 dg-final cleanup-modules line.
14609 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
14610 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
14611 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
14612 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
14613 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
14614 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
14615 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
14616
f210f1cd
AS
146172007-03-18 Andreas Schwab <schwab@suse.de>
14618
14619 * acinclude.m4: Adjust regular expression for ld version
14620 extraction.
14621 * configure: Regenerate.
14622
c4dc950d
BM
146232007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
14624
14625 * Makefile.am: Add install-pdf target as copied from
14626 automake v1.10 rules.
14627 * Makefile.in: Regenerate
14628
e02a048f
JJ
146292007-02-07 Jakub Jelinek <jakub@redhat.com>
14630
78e075d4
JJ
14631 PR libgomp/28486
14632 * configure: Regenerate.
14633
e02a048f
JJ
14634 PR c++/30703
14635 * testsuite/libgomp.c++/pr30703.C: New test.
14636
60def7ed
JJ
146372007-02-02 Jakub Jelinek <jakub@redhat.com>
14638
14639 Revert:
14640 2006-07-05 Eric Christopher <echristo@apple.com>
14641 * configure.ac: Depend addition of -pthread on host OS.
14642 * configure: Regenerate.
14643
f1b0882e
RW
146442007-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14645
14646 * libgomp.texi: Fix spacing after abbreviations.
14647
748b9d7c
DF
146482007-01-31 Daniel Franke <franke.daniel@gmail.com>
14649
14650 PR libgomp/30546
14651 * configure.ac: Add check for makeinfo
14652 * Makefile.am: Redefined target libgomp.info, build libgomp.info only
a0221aee 14653 if an appropriate version of makeinfo is found.
748b9d7c
DF
14654 * aclocal.m4: Regenerated.
14655 * configure: Regenerated.
14656 * Makefile.in: Regenerated.
14657 * testsuite/Makefile.in: Regenerated.
14658
14734fc7
DF
146592007-01-29 Daniel Franke <franke.daniel@gmail.com>
14660
14661 PR libgomp/30540
14662 * libgomp.texi: More about implementation-dependent settings.
14663
7befd5d2
TB
146642007-01-26 Tobias Burnus <burnus@net-b.de>
14665
14666 * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
14667
4288fea2
JJ
146682007-01-24 Jakub Jelinek <jakub@redhat.com>
14669
14670 PR middle-end/30494
14671 * testsuite/libgomp.c/pr30494.c: New test.
14672
627ab4b8
TT
146732007-01-15 Tom Tromey <tromey@redhat.com>
14674
14675 * configure: Rebuilt.
14676 * configure.ac: Fixed comment.
14677
7c2b7f45
DF
146782007-01-14 Daniel Franke <franke.daniel@gmail.com>
14679
14680 * libgomp.texi: Document implementation specific default values of
14681 environment variables.
14682
3721b9e1
DF
146832006-12-21 Daniel Franke <franke.daniel@gmail.com>
14684
14685 PR libgomp/28209
14686 * libgomp.texi: New file.
14687 * configure.ac: Add --enable-generated-files-in-srcdir option.
14688 * Makefile.am: Add info, dvi, pdf, html targets. On request, copy
14689 files to srcdir.
14690 * Makefile.in: Regenerated.
14691 * config.h.in: Regenerated.
14692 * testsuite/Makefile.in: Regenerated.
14693 * NOTES: Removed.
14694
62bd6216
DF
146952006-12-04 Daniel Franke <franke.daniel@gmail.com>
14696
14697 PR libgomp/29949
14698 * env.c (omp_set_num_threads): Set illegal thread count to 1.
14699
aad741f4
EB
147002006-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
14701
14702 * configure: Regenerate.
14703
22568cc6
JJ
147042006-12-04 Jakub Jelinek <jakub@redhat.com>
14705
14706 PR libgomp/29947
14707 * loop.c (gomp_loop_init): Make parameters signed. Set ws->end to
14708 start if there shouldn't be any loop iterations.
14709 (gomp_loop_ordered_static_start): Remove start == end test.
14710 * testsuite/libgomp.c/pr29947-1.c: New test.
14711 * testsuite/libgomp.c/pr29947-2.c: New test.
14712
a9690009
EB
147132006-12-02 Eric Botcazou <ebotcazou@libertysurf.fr>
14714
14715 * configure.tgt: Force initial-exec TLS model on Linux only.
14716
597c25e6
DJ
147172006-11-13 Daniel Jacobowitz <dan@codesourcery.com>
14718
14719 * configure: Regenerated.
14720
6acf0b38
UB
147212006-11-09 Uros Bizjak <ubizjak@gmail.com>
14722
14723 * env.c (parse_schedule): Reject out of range values.
14724 (parse_unsigned_long): Reject out of range, negative or zero values.
14725
a7a53ca5
JJ
147262006-10-29 Jakub Jelinek <jakub@redhat.com>
14727
14728 PR fortran/29629
14729 * testsuite/libgomp.fortran/pr29629.f90: New test.
14730
6d4d216a
EB
147312006-10-24 Eric Botcazou <ebotcazou@libertysurf.fr>
14732
14733 PR libgomp/29494
14734 * configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
14735 * config/posix95: New directory.
14736 * config/posix95/omp-lock.h: New file.
14737 * config/posix95/lock.c: Likewise.
14738
5b043f08
GK
147392006-10-14 Geoffrey Keating <geoffk@apple.com>
14740
14741 * aclocal.m4: Regenerate.
14742 * configure: Regenerate.
14743
b50019f0
DS
147442006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
14745
14746 * testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
14747 '<' to '<='.
14748
8887708e
DS
147492006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
14750
14751 * acinclude.m4 (HAVE_ATTRIBUTE_ALIAS): Remove __USER_LABEL_PREFIX__ from
14752 test.
14753 * configure: Regenerate.
14754 * fortran.c (ialias_redirect): Add __USER_LABEL_PREFIX__ to alias.
14755
9b9e4cd6
JJ
147562006-09-26 Jakub Jelinek <jakub@redhat.com>
14757
a70ad3bb
JJ
14758 PR middle-end/25261
14759 PR middle-end/28790
14760 * testsuite/libgomp.c/nestedfn-4.c: New test.
14761 * testsuite/libgomp.c/nestedfn-5.c: New test.
14762 * testsuite/libgomp.fortran/nestedfn3.f90: New test.
14763
9b9e4cd6
JJ
14764 PR fortran/29097
14765 * testsuite/libgomp.fortran/condinc1.f: New test.
14766 * testsuite/libgomp.fortran/condinc2.f: New test.
14767 * testsuite/libgomp.fortran/condinc3.f90: New test.
14768 * testsuite/libgomp.fortran/condinc4.f90: New test.
14769 * testsuite/libgomp.fortran/condinc1.inc: New file.
14770
2fb31455
TT
147712006-09-18 Tom Tromey <tromey@redhat.com>
14772
14773 * configure: Rebuilt.
14774
c663e301
JM
147752006-09-13 Joseph S. Myers <joseph@codesourcery.com>
14776
14777 PR c/28768
14778 PR preprocessor/14634
14779 * configure.ac (HAVE_CLOCK_GETTIME): Add missing second argument
14780 to AC_DEFINE.
14781 * configure: Regenerate.
14782
38371be9
SK
147832006-09-08 Steven G. Kargl <kargl@gcc.gnu.org>
14784
14785 * testsuite/libgomp.fortran/reduction3.f90: Change
14786 -2147483648 to -huge(i)-1 to avoid overflow.
14787 * testsuite/libgomp.fortran/reduction4.f90: Change
14788 Z'ffffffff' to not(0) to avoid overflow.
14789
571d5ac5
JM
147902006-08-26 Joseph S. Myers <joseph@codesourcery.com>
14791
14792 PR libgomp/25938
14793 * Makefile.am (libsubincludedir): New.
14794 (nodist_include_HEADERS): Rename to nodist_libsubinclude_HEADERS.
14795 * Makefile.in: Regenerate.
14796
89b3e3cd
JJ
147972006-08-17 Jakub Jelinek <jakub@redhat.com>
14798
14799 PR libgomp/28725
14800 * env.c: Include ctype.h.
14801 (parse_schedule, parse_unsigned_long, parse_boolean): Allow
14802 leading and/or trailing whitespace and compare strings case
14803 insensitively.
14804
742fae05
JJ
148052006-07-16 Jakub Jelinek <jakub@redhat.com>
14806
14807 PR fortran/28390
14808 * testsuite/libgomp.fortran/pr28390.f: New test.
14809
a1daed2d
EC
148102006-07-05 Eric Christopher <echristo@apple.com>
14811
14812 * configure.ac: Depend addition of -pthread on host OS.
14813 * configure: Regenerate.
14814
5d7b5199
JJ
148152006-06-21 Jakub Jelinek <jakub@redhat.com>
14816
14817 * critical.c (GOMP_critical_name_start): Fix *pptr initialization
14818 when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
14819 defined.
14820
fe5568e9
JJ
148212006-06-20 Jakub Jelinek <jakub@redhat.com>
14822
14823 PR libgomp/26175
14824 PR libgomp/26477
14825 * configure.ac: If neither --enable-linux-futex nor
14826 --disable-linux-futex is passed, determine the default by checking
14827 for compiling and/or running against NPTL. With --enable-linux-futex,
14828 check if SYS_gettid and SYS_futex are defined.
14829 * configure: Rebuilt.
14830
c3b11a40
RH
148312006-06-14 Richard Henderson <rth@redhat.com>
14832
14833 PR libgomp/28008
14834 * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
14835 undefined. Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
14836
d0d1b24d
RH
148372006-06-09 Richard Henderson <rth@redhat.com>
14838
14839 * env.c (gomp_nthreads_var): Change to unsigned long.
14840 (gomp_run_sched_chunk): Likewise.
14841 (parse_unsigned_long): Rename from parse_num_threads and generalize.
14842 (initialize_env): Initialize gomp_thread_attr.
14843 * libgomp.h (gomp_nthreads_var): Update decl.
14844 (gomp_run_sched_chunk): Likewise.
14845 (gomp_thread_attr): Declare.
14846 * team.c (gomp_thread_attr): Export.
14847 (initialize_team): Don't initialize it.
14848
cd75853e
JJ
148492006-06-09 Jakub Jelinek <jakub@redhat.com>
14850
14851 PR fortran/27916
14852 * testsuite/libgomp.fortran/pr27916-1.f90: New test.
14853 * testsuite/libgomp.fortran/pr27916-2.f90: New test.
14854
33815e0c
FXC
148552006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr>
14856
14857 * config/mingw32/time.c: New file.
14858 * configure.tgt: Use it.
14859
6667de0d
CD
148602006-05-23 Carlos O'Donell <carlos@codesourcery.com>
14861
14862 * Makefile.am: Add install-html target. Add install-html to .PHONY
14863 * Makefile.in: Regenerate.
14864
e962c46b
JDA
148652006-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
14866
14867 PR libgomp/27612
14868 * testsuite/libgomp.c/sections-1.c: Require sync_int_long.
14869 * testsuite/libgomp.c/critical-1.c: Likewise.
14870 * testsuite/libgomp.c/loop-1.c: Likewise.
14871 * testsuite/libgomp.c/loop-2.c: Likewise.
14872 * testsuite/libgomp.c/single-1.c: Likewise.
14873 * testsuite/libgomp.c/ordered-1.c: Likewise.
14874 * testsuite/libgomp.c/ordered-2.c: Likewise.
14875
eeb1d9e0
JJ
148762006-05-15 Jakub Jelinek <jakub@redhat.com>
14877
14878 PR middle-end/27416
14879 * libgomp.fortran/pr27416-1.f90: New test.
14880
693d710f
JJ
148812006-05-03 Jakub Jelinek <jakub@redhat.com>
14882
14883 PR fortran/27395
14884 * testsuite/libgomp.fortran/pr27395-1.f90: New test.
14885 * testsuite/libgomp.fortran/pr27395-2.f90: New test.
14886
8ca5b2a2
JJ
148872006-05-02 Jakub Jelinek <jakub@redhat.com>
14888
14889 PR c++/26943
14890 * testsuite/libgomp.c/pr26943-1.c: New test.
14891 * testsuite/libgomp.c/pr26943-2.c: New test.
14892 * testsuite/libgomp.c/pr26943-3.c: New test.
14893 * testsuite/libgomp.c/pr26943-4.c: New test.
14894 * testsuite/libgomp.c++/pr27337.C: Remove barrier.
14895 * testsuite/libgomp.c++/pr26943.C: New test.
14896
077b0dfb
JJ
148972006-05-02 Jakub Jelinek <jakub@redhat.com>
14898
14899 PR middle-end/27337
14900 * testsuite/libgomp.c++/pr27337.C: New test.
14901
91b6c26d
JJ
149022006-04-26 Jakub Jelinek <jakub@redhat.com>
14903
14904 PR c/26171
14905 * testsuite/libgomp.c/pr26171.c: New test.
14906
60e1758f
RH
149072006-04-25 Richard Henderson <rth@redhat.com>
14908
14909 PR libgomp/25865
14910 * configure.ac: Use GCC_CHECK_TLS.
14911 * acinclude.m4 (LIBGOMP_CHECK_TLS): Remove.
14912 * Makefile.in, aclocal.m4, configure: Regenerate.
14913
615baed7
MK
149142006-04-10 Matthias Klose <doko@debian.org>
14915
14916 * testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
14917 directory names containing underscores.
14918
fae2b46b
JJ
149192006-03-21 Jakub Jelinek <jakub@redhat.com>
14920
14921 PR c++/26691
14922 * testsuite/libgomp.c++/pr26691.C: New test.
14923
11a5f608
JJ
149242006-03-13 Jakub Jelinek <jakub@redhat.com>
14925
14926 * testsuite/libgomp.fortran/retval2.f90: New test.
14927
1799e5d5
RH
149282006-03-09 Diego Novillo <dnovillo@redhat.com>
14929
14930 * testsuite/libgomp.c++: New directory.
14931
d349482e
AT
149322006-02-25 Shantonu Sen <ssen@opendarwin.org>
14933
14934 * config/posix/sem.h: Define BROKEN_POSIX_SEMAPHORES functions.
14935 * config/posix/sem.c: Implement the above.
14936
149372006-02-25 Andreas Tobler <a.tobler@schweiz.ch>
14938
14939 * configure.ac (HAVE_BROKEN_POSIX_SEMAPHORES): Check for darwin and
14940 define HAVE_BROKEN_POSIX_SEMAPHORES.
14941 * configure: Rebuilt.
14942 * config.h.in: Rebuilt.
14943
124452c9
FXC
149442006-02-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
14945
14946 PR bootstrap/26161
14947 * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment
14948 for the other pthread check.
14949 * configure: Regenerate.
14950 * config.h.in: Regenerate.
14951
dd8d6dfe
JJ
149522006-02-15 Jakub Jelinek <jakub@redhat.com>
14953
14954 PR libgomp/25938
14955 PR libgomp/25984
14956 * Makefile.am (fincludedir): New variable.
14957 (nodist_include_HEADERS): Remove Fortran files.
14958 (nodist_finclude_HEADERS): New variable.
14959 * Makefile.in: Regenerated.
14960
6c7a4dfd
JJ
149612006-02-13 Jakub Jelinek <jakub@redhat.com>
14962
14963 * testsuite/libgomp.fortran/vla7.f90: Add -w to options.
14964 Remove tests for returning assumed character length arrays.
14965
5142e08b
RS
149662006-02-12 Roger Sayle <roger@eyesopen.com>
14967 John David Anglin <dave@hiauly1.hia.nrc.ca>
14968
14969 PR libgomp/25936
14970 * configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.
a1daed2d 14971
5821fba8
UW
149722006-02-08 Ulrich Weigand <uweigand@de.ibm.com>
14973
14974 * testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
14975
cb2bbc67
EB
149762006-02-07 Eric Botcazou <ebotcazou@libertysurf.fr>
14977
14978 * testsuite/lib/libgomp-dg.exp (libgomp_init): Compute multilib related
14979 part of LD_LIBRARY_PATH manually.
14980
f05ee80c
L
149812006-02-03 H.J. Lu <hongjiu.lu@intel.com>
14982
14983 PR libgomp/25852
14984 * testsuite/lib/libgomp-dg.exp (blddir): Set it in
14985 libgomp_init.
14986
03b8fe49
PB
149872005-01-25 Paolo Bonzini <bonzini@gnu.org>
14988
14989 PR libgomp/25884
f05ee80c
L
14990 * Makefile.am (omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Remove.
14991 * configure.ac (PERL): Don't set.
14992 (gstdint.h, omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Create here.
14993 (OMP_LOCK_SIZE, OMP_LOCK_ALIGN, OMP_LOCK_KIND, OMP_NEST_LOCK_SIZE,
14994 OMP_NEST_LOCK_ALIGN, OMP_NEST_LOCK_KIND): New substitutions.
14995 * omp.h.in: Wrap the new configure substitutions with @ characters.
14996 * omp_lib.h.in, omp_lib.f90.in, libgomp_f.h.in: Likewise.
14997 * aclocal.m4, configure, Makefile.in: Regenerate.
14998 * mkomp_h.pl: Delete.
03b8fe49 14999
18cbfd85
PB
150002005-01-24 Paolo Bonzini <bonzini@gnu.org>
15001
15002 PR libgomp/25259
15003 * configure.ac: Use GCC_HEADER_STDINT.
15004 * libgomp.h: Include gstdint.h.
15005 * libgomp_f.h.in: Don't include stdint.h or inttypes.h.
15006 * configure, Makefile.in, testsuite/Makefile.in, aclocal.m4: Rebuild.
15007
c41303c6
RH
150082006-01-24 Richard Henderson <rth@redhat.com>
15009
15010 PR libgomp/25942
15011 * configure.ac: Add AM_MAINTAINER_MODE.
15012 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in: Rebuild.
15013
149b9553
DN
150142006-01-24 Diego Novillo <dnovillo@redhat.com>
15015
15016 * Makefile.in: Regenerate.
15017 * testsuite/Makefile.in: Regenerate.
15018 * aclocal.m4: Regenerate.
15019
192a50ad
AT
150202006-01-23 Andreas Tobler <a.tobler@schweiz.ch>
15021
15022 * config/posix/proc.c: Conditional include of sys/loadavg.h for
15023 Solaris.
15024 * configure.ac: Add check for loadavg.h.
15025 (link_gomp): Adjust comment.
15026 * configure: Regenerate.
15027 * config.h.in: Regenerate.
15028
a55b8e18
SE
150292006-01-21 Steve Ellcey <sje@cup.hp.com>
15030
15031 PR libgomp/25877
15032 * configure.ac: Remove check for alloca.h.
15033 * configure: Regenerate.
15034 * config.h.in: Regenerate.
15035 * libgomp.h: define gomp_alloca to be __builtin_alloca.
15036 * team.c: Remove use of alloca.h.
15037 Call gomp_alloca instead of alloca.
15038
692eeb34
SE
150392006-01-20 Steve Ellcey <sje@cup.hp.com>
15040
15041 PR libgomp/25877
15042 * team.c: Add include of alloca.h.
15043 * configure.ac: Add check for alloca.h.
15044 * configure: Regenerate.
15045 * config.h.in: Regenerate.
15046
953ff289
DN
150472006-01-17 Jakub Jelinek <jakub@redhat.com>
15048
15049 PR fortran/25219
15050 * testsuite/libgomp.fortran/pr25219.f90: New test.
15051
150522005-12-05 Uros Bizjak <uros@kss-loka.si>
15053
15054 * testsuite/libgomp.c/pr24455.c, testsuite/libgomp.c/copyin-1.c,
15055 testsuite/libgomp.c/copyin-2.c, testsuite/libgomp.c/copyin-3.c,
15056 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
15057 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
15058 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455.C,
15059 testsuite/libgomp.fortran/threadprivate1.f90,
15060 testsuite/libgomp.fortran/threadprivate2.f90,
15061 testsuite/libgomp.fortran/threadprivate3.f90,
15062 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
15063 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
15064 testsuite/libgomp.fortran/omp_parse3.f90: Change required
15065 effective-target to TLS runtime.
15066
15067 * testsuite/libgomp.fortran/pr25162.f: Require
15068 effective-target TLS runtime.
15069
150702005-12-01 Jakub Jelinek <jakub@redhat.com>
15071
15072 * testsuite/libgomp.fortran/nestedfn2.f90: New test.
15073 * testsuite/libgomp.c/nestedfn-3.c: New test.
15074
150752005-11-30 Jakub Jelinek <jakub@redhat.com>
15076
15077 PR fortran/25162
15078 * testsuite/libgomp.fortran/pr25162.f: New test.
15079
150802005-11-28 Jakub Jelinek <jakub@redhat.com>
15081
15082 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Fall back to
15083 CLOCK_REALTIME if clock_* (CLOCK_MONOTONIC, &ts) call failed.
15084
150852005-11-25 Jakub Jelinek <jakub@redhat.com>
15086
15087 * alloc.c, barrier.c, critical.c, env.c, error.c, fortran.c, iter.c,
15088 libgomp.h, libgomp_f.h.in, libgomp_g.h, loop.c, mkomp_h.pl, omp.h.in,
15089 omp_lib.f90.in, omp_lib.h.in, ordered.c, parallel.c, sections.c,
15090 single.c, team.c, work.c, config/linux/alpha/futex.h,
15091 config/linux/bar.c, config/linux/bar.h, config/linux/ia64/futex.h,
15092 config/linux/lock.c, config/linux/mutex.c, config/linux/mutex.h,
15093 config/linux/powerpc/futex.h, config/linux/s390/futex.h,
15094 config/linux/sem.c, config/linux/sem.h, config/linux/sparc/futex.h,
15095 config/linux/x86/futex.h, config/posix/bar.c, config/posix/bar.h,
15096 config/posix/lock.c, config/posix/mutex.h, config/posix/proc.c,
15097 config/posix/sem.c, config/posix/sem.h, config/posix/time.c: Update
15098 FSF address.
15099
151002005-11-18 Jakub Jelinek <jakub@redhat.com>
15101
15102 * Makefile.am: Move libgomp_f.h from nodist_include_HEADERS
15103 to nodist_noinst_HEADERS.
15104 * Makefile.in: Rebuilt.
15105
15106 * config/posix/omp-lock.h (omp_nest_lock_t): Change into struct,
15107 add integer count field.
15108 * config/posix/lock.c (omp_destroy_nest_lock): Adjust for
15109 omp_nest_lock_t type change.
15110 (omp_init_nest_lock): Likewise. Initialize count to 0.
15111 (omp_set_nest_lock): Adjust for omp_nest_lock_t type change.
15112 Increment count.
15113 (omp_unset_nest_lock): Adjust for omp_nest_lock_t type change.
15114 Decrement count.
15115 (omp_test_nest_lock): Adjust for omp_nest_lock_t type change.
15116 Increment count if successful and return the new nesting level.
15117 * config/linux/lock.c (omp_test_nest_lock): Return new nesting level.
15118 * omp_lib.f90.in (omp_test_lock): Fix LOCK argument type.
15119 * testsuite/libgomp.c/lib-1.c: New test.
15120 * testsuite/libgomp.fortran/lib1.f90: New test.
15121 * testsuite/libgomp.fortran/lib2.f: New test.
15122 * testsuite/libgomp.fortran/lib3.f: New test.
15123
151242005-11-17 Richard Henderson <rth@redhat.com>
15125
15126 PR 24845
15127 * Makefile.am (nodist_toolexeclib_HEADERS): New.
15128 * configure.ac (link_gomp): New. Substitute it.
15129 (AC_CONFIG_FILES): Add libgomp.spec.
15130 * libgomp.spec.in: New file.
15131 * Makefile.in, testsuite/Makefile.in, configure: Rebuild.
15132 * testsuite/lib/libgomp-dg.exp: Add -B${blddir}/ to flags.
15133
151342005-11-18 Jakub Jelinek <jakub@redhat.com>
15135
15136 * testsuite/libgomp.fortran/reduction1.f90: Adjust for
15137 reduction(-:var) behaving the same as reduction(+:var).
15138 * testsuite/libgomp.c/reduction-4.c: New test.
15139
151402005-11-15 Uros Bizjak <uros@kss-loka.si>
15141
15142 * testsuite/libgomp.c/pr24455-1.c, testsuite/libgomp.c/pr24455.c,
15143 testsuite/libgomp.c/copyin-1.c, testsuite/libgomp.c/copyin-2.c,
15144 testsuite/libgomp.c/copyin-3.c,
15145 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
15146 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
15147 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455-1.C,
15148 testsuite/libgomp.c++/pr24455.C,
15149 testsuite/libgomp.fortran/threadprivate1.f90,
15150 testsuite/libgomp.fortran/threadprivate2.f90,
15151 testsuite/libgomp.fortran/threadprivate3.f90,
15152 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
15153 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
15154 testsuite/libgomp.fortran/omp_parse3.f90: Require
15155 effective-target TLS.
15156
151572005-11-14 Diego Novillo <dnovillo@redhat.com>
15158
15159 * HEADER: Remove.
15160
151612005-11-13 Jakub Jelinek <jakub@redhat.com>
15162
15163 PR libgomp/24797
15164 * team.c (initialize_team): Pass NULL rather than free as
15165 pthread_key_create destructor. Initialize thread specific data
15166 pointer in initial thread to a static local variable rather than
15167 malloced memory.
15168
151692005-11-11 Uros Bizjak <uros@kss-loka.si>
15170
15171 * testsuite/lib/libgomp-dg.exp: Locate libgcc.a and append
15172 its location to ld_library_path.
15173
151742005-11-10 Diego Novillo <dnovillo@redhat.com>
15175
15176 * testsuite/libgomp.c/c.exp: Rename from dg.exp.
15177
151782005-11-10 Diego Novillo <dnovillo@redhat.com>
15179
15180 * testsuite/libgomp.c: Rename from libgomp.dg.
15181
151822005-11-09 Diego Novillo <dnovillo@redhat.com>
15183
15184 * testsuite/libgomp.c++/pr24455.C: Add copyin clause for
15185 threadprivate variable 'i'.
15186
151872005-11-09 Jakub Jelinek <jakub@redhat.com>
15188
15189 * config/linux/s390/futex.h: New file.
15190 * configure.tgt: Use it.
15191
15192 * testsuite/libgomp.fortran/omp_parse4.f90: Move n initialization
15193 before the parallel.
15194
151952005-11-08 Jakub Jelinek <jakub@redhat.com>
15196
15197 PR c++/24734
15198 * testsuite/libgomp.c++/master-1.C: New test.
15199
152002005-11-07 Jakub Jelinek <jakub@redhat.com>
15201
15202 * testsuite/libgomp.dg/copyin-3.c: New test.
15203
152042005-11-07 Jakub Jelinek <jakub@redhat.com>
15205
15206 * testsuite/libgomp.fortran/retval1.f90: New test.
15207 * testsuite/libgomp.fortran/vla7.f90: New test.
15208
152092005-11-06 Jakub Jelinek <jakub@redhat.com>
15210
15211 * testsuite/libgomp.fortran/vla2.f90: New test.
15212 * testsuite/libgomp.fortran/vla3.f90: New test.
15213 * testsuite/libgomp.fortran/vla4.f90: New test.
15214 * testsuite/libgomp.fortran/vla5.f90: New test.
15215 * testsuite/libgomp.fortran/vla6.f90: New test.
15216
152172005-11-01 Jakub Jelinek <jakub@redhat.com>
15218
15219 * config/linux/sparc/futex.h: New file.
15220 * configure.tgt: Use it.
15221 * testsuite/lib/libgomp-dg.exp: Use -mcpu=v9 for sparc testing.
15222
15223 * critical.c: Include stdlib.h.
15224 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Avoid warnings about
15225 ignoring return value.
15226 * configure.ac: Don't put -Wc,-pthread into XCFLAGS until after
15227 LIBGOMP_CHECK_SYNC_BUILTINS check.
15228 * configure: Rebuilt.
15229
152302005-10-31 Jakub Jelinek <jakub@redhat.com>
15231
15232 * testsuite/libgomp.fortran/vla1.f90: New test.
15233
152342005-10-31 Richard Henderson <rth@redhat.com>
15235
15236 * testsuite/libgomp.fortran/character2.f90: Fix race condition
15237 setting 's' in different threads.
15238
152392005-10-31 Jakub Jelinek <jakub@redhat.com>
15240
15241 * libgomp.h (attribute_hidden, ialias): Define.
15242 * config/posix/proc.c (omp_get_num_procs): Add ialias.
15243 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Likewise.
15244 * config/posix/lock.c (omp_init_lock, omp_init_nest_lock,
15245 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
15246 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
15247 omp_test_lock, omp_test_nest_lock): Likewise.
15248 * config/linux/lock.c (omp_init_lock, omp_init_nest_lock,
15249 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
15250 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
15251 omp_test_lock, omp_test_nest_lock): Likewise.
15252 * env.c (omp_set_dynamic, omp_set_nested, omp_set_num_threads,
15253 omp_get_dynamic, omp_get_nested): Likewise.
15254 * parallel.c (omp_get_num_threads, omp_get_max_threads,
15255 omp_get_thread_num, omp_in_parallel): Likewise.
15256 * fortran.c (ialias_redirect): Define.
15257 (omp_init_lock, omp_init_nest_lock, omp_destroy_lock,
15258 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock,
15259 omp_unset_lock, omp_unset_nest_lock, omp_test_lock,
15260 omp_test_nest_lock, omp_set_dynamic, omp_set_nested,
15261 omp_set_num_threads, omp_get_dynamic, omp_get_nested,
15262 omp_in_parallel, omp_get_max_threads, omp_get_num_procs,
15263 omp_get_num_threads, omp_get_thread_num, omp_get_wtick,
15264 omp_get_wtime): Add ialias_redirect.
15265
152662005-10-30 Jakub Jelinek <jakub@redhat.com>
15267
15268 * fortran.c: Include stdlib.h.
15269
152702005-10-29 Jakub Jelinek <jakub@redhat.com>
15271
15272 * Makefile.am (env.o, env.lo): Depend on libgomp_f.h.
15273 * Makefile.in: Regenerated.
15274
152752005-10-28 Jakub Jelinek <jakub@redhat.com>
15276
15277 * mkomp_h.pl: Remove all -Wc, option prefixes in $COMPILE.
15278 * libgomp_f.h.in (omp_check_defines): New function.
15279 * env.c: Include libgomp_f.h.
15280 (initialize_env): Call omp_check_defines.
15281
15282 * testsuite/libgomp.dg/copyin-2.c: New test.
15283 * testsuite/libgomp.c++/copyin-2.C: New test.
15284 * testsuite/libgomp.fortran/threadprivate3.f90: New test.
15285
15286 * testsuite/libgomp.fortran/threadprivate2.f90: New test.
15287 * testsuite/libgomp.fortran/sharing2.f90: New test.
15288
15289 * testsuite/libgomp.dg/copyin-1.c: New test.
15290 * testsuite/libgomp.c++/copyin-1.C: New test.
15291
152922005-10-26 Jakub Jelinek <jakub@redhat.com>
15293
15294 * testsuite/libgomp.fortran/crayptr1.f90: New test.
15295
15296 * testsuite/libgomp.fortran/workshare1.f90: New test.
15297
15298 * libgomp.fortran/appendix-a/a.28.5.f90: Change into compile
15299 only test.
15300 * libgomp.fortran/sharing1.f90: New test.
15301
153022005-10-24 Jakub Jelinek <jakub@redhat.com>
15303
15304 PR c++/24502
15305 * testsuite/libgomp.c++/loop-7.C: New test.
15306
15307 * testsuite/libgomp.dg/nestedfn-2.c: New test.
15308
15309 * testsuite/libgomp.dg/nestedfn-1.c: New test.
15310 * testsuite/libgomp.fortran/reduction6.f90: New test.
15311 * testsuite/libgomp.fortran/nestedfn1.f90: New test.
15312
153132005-10-23 Richard Henderson <rth@redhat.com>
15314
15315 * testsuite/libgomp.c++/ctor-1.C: New.
15316 * testsuite/libgomp.c++/ctor-2.C: New.
15317 * testsuite/libgomp.c++/ctor-3.C: New.
15318 * testsuite/libgomp.c++/ctor-4.C: New.
15319 * testsuite/libgomp.c++/ctor-5.C: New.
15320 * testsuite/libgomp.c++/ctor-6.C: New.
15321 * testsuite/libgomp.c++/ctor-7.C: New.
15322 * testsuite/libgomp.c++/ctor-8.C: New.
15323 * testsuite/libgomp.c++/ctor-9.C: New.
15324
153252005-10-21 Diego Novillo <dnovillo@redhat.com>
15326
15327 PR 24455
15328 * testsuite/libgomp.c++/pr24455-1.C: New test.
15329 * testsuite/libgomp.c++/pr24455.C: New test.
15330 * testsuite/libgomp.dg/pr24455-1.c: New test.
15331 * testsuite/libgomp.dg/pr24455.c: New test.
15332
153332005-10-20 Richard Henderson <rth@redhat.com>
15334
15335 * testsuite/libgomp.c++/loop-6.C: New.
15336 * testsuite/libgomp.dg/loop-3.c: New.
15337
153382005-10-20 Jakub Jelinek <jakub@redhat.com>
15339
15340 * testsuite/libgomp.fortran/jacobi.f: Don't make i and j
15341 explicitly private.
15342 * testsuite/libgomp.fortran/omp_parse1.f90 (test_do): Make i
15343 explicitly shared.
15344
153452005-10-19 Diego Novillo <dnovillo@redhat.com>
15346
15347 * testsuite/libgomp.fortran/jacobi.f: New test.
15348
153492005-10-19 Richard Henderson <rth@redhat.com>
15350
15351 * configure.tgt (i?86-linux): Default to with_arch instead of
15352 CFLAGS. Add -mtune to match target_cpu.
15353 (x86_64-linux): Tune to i686.
15354
15355 * fortran.c (omp_test_nest_lock_): Fix typo.
15356
153572005-10-19 Jakub Jelinek <jakub@redhat.com>
15358
15359 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
15360 gomp_ordered_sync): Do nothing if team->nthreads == 1.
15361 * testsuite/libgomp.dg/ordered-3.c: New test.
15362
15363 * testsuite/libgomp.dg/appendix-a/a.18.1.c: Remove unconditional abort.
15364 Remove volatile keyword.
15365
15366 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Reorder variables
15367 in COMMON block to avoid warnings on 64-bit targets.
15368
153692005-10-18 Diego Novillo <dnovillo@redhat.com>
15370
15371 * testsuite/libgomp.dg/shared-3.c: New test.
15372
153732005-10-18 Jakub Jelinek <jakub@redhat.com>
15374
15375 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: Removed.
15376 * testsuite/libgomp.fortran/reduction5.f90: New test.
15377
153782005-10-18 Jakub Jelinek <jakub@redhat.com>
15379
15380 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Add -ffixed-form to
15381 dg-options.
15382 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise. Enable
15383 flush loop now that __sync_synchronize has proper memory barrier.
15384 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: Fix a typo.
15385 Add -ffixed-form to dg-options.
15386
153872005-10-17 Diego Novillo <dnovillo@redhat.com>
15388
15389 * testsuite/libgomp.fortran/fortran.exp: Also gather tests
15390 from subdirectories.
15391 * testsuite/libgomp.fortran/appendix-a/a.15.1.f90: New test.
15392 * testsuite/libgomp.fortran/appendix-a/a.16.1.f90: New test.
15393 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: New test.
15394 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: New test.
15395 * testsuite/libgomp.fortran/appendix-a/a.2.1.f90: New test.
15396 * testsuite/libgomp.fortran/appendix-a/a.21.1.f90: New test.
15397 * testsuite/libgomp.fortran/appendix-a/a.22.7.f90: New test.
15398 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: New test.
15399 * testsuite/libgomp.fortran/appendix-a/a.26.1.f90: New test.
15400 * testsuite/libgomp.fortran/appendix-a/a.28.1.f90: New test.
15401 * testsuite/libgomp.fortran/appendix-a/a.28.2.f90: New test.
15402 * testsuite/libgomp.fortran/appendix-a/a.28.3.f90: New test.
15403 * testsuite/libgomp.fortran/appendix-a/a.28.4.f90: New test.
15404 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: New test.
15405 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: New test.
15406 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: New test.
15407 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: New test.
15408 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: New test.
15409 * testsuite/libgomp.fortran/appendix-a/a.33.3.f90: New test.
15410 * testsuite/libgomp.fortran/appendix-a/a.38.1.f90: New test.
15411 * testsuite/libgomp.fortran/appendix-a/a.39.1.f90: New test.
15412 * testsuite/libgomp.fortran/appendix-a/a.4.1.f90: New test.
15413 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: New test.
15414 * testsuite/libgomp.fortran/appendix-a/a.5.1.f90: New test.
15415 * testsuite/libgomp.fortran/appendix-a/a10.1.f90: New test.
15416
154172005-10-17 Jakub Jelinek <jakub@redhat.com>
15418
15419 * testsuite/libgomp.dg/dg.exp: Only unset lang_* if
15420 lang_library_path exists. Use find instead of glob to gather tests.
15421 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: Removed.
15422
154232005-10-17 Diego Novillo <dnovillo@redhat.com>
15424
15425 * testsuite/libgomp.dg/appendix-a/a.15.1.c: New test.
15426 * testsuite/libgomp.dg/appendix-a/a.16.1.c: New test.
15427 * testsuite/libgomp.dg/appendix-a/a.18.1.c: New test.
15428 * testsuite/libgomp.dg/appendix-a/a.19.1.c: New test.
15429 * testsuite/libgomp.dg/appendix-a/a.2.1.c: New test.
15430 * testsuite/libgomp.dg/appendix-a/a.21.1.c: New test.
15431 * testsuite/libgomp.dg/appendix-a/a.26.1.c: New test.
15432 * testsuite/libgomp.dg/appendix-a/a.29.1.c: New test.
15433 * testsuite/libgomp.dg/appendix-a/a.3.1.c: New test.
15434 * testsuite/libgomp.dg/appendix-a/a.39.1.c: New test.
15435 * testsuite/libgomp.dg/appendix-a/a.4.1.c: New test.
15436 * testsuite/libgomp.dg/appendix-a/a.5.1.c: New test.
15437 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: New file.
15438
154392005-10-15 Jakub Jelinek <jakub@redhat.com>
15440
15441 * testsuite/libgomp.dg/vla-1.c: New test.
15442
15443 * testsuite/libgomp.fortran/reference2.f90: New test.
15444
15445 * testsuite/libgomp.fortran/character2.f90: Remove explicit
15446 declaration of omp_get_thread_num.
15447 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise. Add
15448 use omp_lib.
15449
15450 * testsuite/libgomp.fortran/reduction1.f90: New test.
15451 * testsuite/libgomp.fortran/reduction2.f90: New test.
15452 * testsuite/libgomp.fortran/reduction3.f90: New test.
15453 * testsuite/libgomp.fortran/reduction4.f90: New test.
15454
154552005-10-13 Richard Henderson <rth@redhat.com>
15456
15457 * Makefile.am (libgomp_la_SOURCES): Add bar.c.
15458 * Makefile.in: Regenerate.
15459 * barrier.c (GOMP_barrier): Use gomp_barrier_wait.
15460 * libgomp.h: Include bar.h.
15461 (struct gomp_barrier): Remove.
15462 (struct gomp_team): Add barrier. Replace master_barrier with
15463 master_release. Replace threads with ordered_release.
15464 (struct gomp_thread): Replace barrier with release.
15465 * ordered.c (gomp_ordered_first): Update for ordered_release change.
15466 (gomp_ordered_last, gomp_ordered_next, gomp_ordered_static_init,
15467 gomp_ordered_static_next, gomp_ordered_sync): Likewise.
15468 * single.c (GOMP_single_copy_start): Use gomp_barrier_wait.
15469 (GOMP_single_copy_end): Likewise.
15470 * team.c (gomp_threads_dock): New.
15471 (gomp_barrier_init, gomp_barrier_destroy): Remove.
15472 (gomp_thread_start): Use gomp_barrier_wait.
15473 (new_team, free_team): Update for gomp_team changes.
15474 (gomp_team_start): Use gomp_barrier_wait and gomp_barrier_reinit.
15475 (gomp_team_end): Use gomp_barrier_wait.
15476 (initialize_team): Update for gomp_thread changes.
15477 * work.c (gomp_work_share_end): Use gomp_barrier_wait_start.
15478 (gomp_work_share_end_nowait): Use atomic ops when available.
15479 * config/linux/bar.c, config/linux/bar.h: New files.
15480 * config/posix/bar.c, config/posix/bar.h: New files.
15481
154822005-10-13 Jakub Jelinek <jakub@redhat.com>
15483
15484 * single.c (GOMP_single_copy_end): Don't segfault if team is NULL.
15485 * testsuite/libgomp.dg/single-2.c: New test.
15486
15487 * testsuite/libgomp.dg/dg.exp (lang_library_path, lang_test_file,
15488 lang_link_flags): Unset, so that they aren't inherited from previously
15489 sourced *.exp.
15490
15491 * testsuite/libgomp.fortran/threadprivate1.f90: New test.
15492
154932005-10-12 Richard Henderson <rth@redhat.com>
15494
15495 * testsuite/lib/libgomp-dg.exp: Set blddir at toplevel.
15496 (libgomp_init): Use lang_test_file, lang_library_path, and
15497 lang_link_flags, set by the subdirectory files. Add -fopenmp here.
15498
15499 * testsuite/libgomp.fortran/fortran.exp (lang_library_path): New.
15500 (lang_test_file, lang_link_flags): New.
15501 (DEFAULT_FFLAGS, ALWAYS_CFLAGS, multilibs, blddir): Remove.
15502
15503 * testsuite/libgomp.c++/c++.exp, testsuite/libgomp.c++/loop-1.C,
15504 testsuite/libgomp.c++/loop-2.C, testsuite/libgomp.c++/loop-3.C,
15505 testsuite/libgomp.c++/loop-4.C, testsuite/libgomp.c++/nested-1.C,
15506 testsuite/libgomp.c++/parallel-1.C,
15507 testsuite/libgomp.c++/reduction-1.C,
15508 testsuite/libgomp.c++/reduction-2.C,
15509 testsuite/libgomp.c++/reduction-3.C,
15510 testsuite/libgomp.c++/sections-1.C, testsuite/libgomp.c++/shared-1.C,
15511 testsuite/libgomp.c++/shared-2.C, testsuite/libgomp.c++/single-1.C,
15512 testsuite/libgomp.c++/single-2.C, testsuite/libgomp.c++/single-3.C:
15513 New files, largely cribbed from the C testsuite.
15514
155152005-10-12 Jakub Jelinek <jakub@redhat.com>
15516
15517 * testsuite/libgomp.fortran/character1.f90: New test.
15518 * testsuite/libgomp.fortran/character2.f90: New test.
15519
15520 * testsuite/libgomp.dg/nested-1.c: New test.
15521 * testsuite/libgomp.dg/nested-2.c: New test.
15522 * testsuite/libgomp.fortran/do1.f90: New test.
15523 * testsuite/libgomp.fortran/do2.f90: New test.
15524
15525 * testsuite/libgomp.fortran/reference1.f90: New test.
15526
155272005-10-11 Jakub Jelinek <jakub@redhat.com>
15528
15529 * testsuite/libgomp.dg/reduction-1.c: New test.
15530 * testsuite/libgomp.dg/reduction-2.c: New test.
15531 * testsuite/libgomp.dg/reduction-3.c: New test.
15532
155332005-10-10 Jakub Jelinek <jakub@redhat.com>
15534
15535 * testsuite/libgomp.dg/atomic-1.c: New test.
15536 * testsuite/libgomp.dg/atomic-2.c: New test.
15537
155382005-10-09 Richard Henderson <rth@redhat.com>
15539
15540 * critical.c (atomic_lock): New.
15541 (initialize_critical): Initialize it.
15542 (GOMP_atomic_start, GOMP_atomic_end): New.
15543 * libgomp.map: Export them.
15544 * libgomp_g.h: Declare them.
15545
15546 * testsuite/libgomp.dg/atomic-10.c: Move from gcc testsuite.
15547
155482005-10-02 Richard Henderson <rth@redhat.com>
15549
15550 * configure.ac: Move save_CFLAGS hack earlier. Append -Wall/-Werror
15551 to XCFLAGS instead of CFLAGS.
15552
155532005-09-30 Richard Henderson <rth@redhat.com>
15554
15555 * configure.ac: Determine whether -pthread or -lpthread is needed.
15556 * Makefile.am (libgomp_la_LDFLAGS): Remove explicit -lpthread.
93d90219 15557 * Makefile.in, configure: Rebuild.
953ff289
DN
15558
155592005-09-28 Richard Henderson <rth@redhat.com>
15560
15561 * testsuite/libgomp.dg/omp-loop03.c: Fix return code.
15562 * testsuite/libgomp.dg/omp-single-3.c: New test.
15563
155642005-09-28 Diego Novillo <dnovillo@redhat.com>
15565
15566 * testsuite/libgomp.dg/omp-single-2.c: New test.
15567 * testsuite/libgomp.dg/shared-2.c: Fix return code.
15568
155692005-09-27 Richard Henderson <rth@redhat.com>
15570
15571 * testsuite/libgomp.dg/omp-loop03.c: Add initial barrier.
15572 * testsuite/libgomp.dg/omp-parallel-for.c: Specify static schedule.
15573
155742005-09-27 Jakub Jelinek <jakub@redhat.com>
15575
15576 * testsuite/libgomp.dg/omp-loop03.c: New test.
15577
155782005-09-27 Diego Novillo <dnovillo@redhat.com>
15579
15580 * testsuite/libgomp.dg/omp-parallel-for.c: New test.
15581
155822005-09-27 Diego Novillo <dnovillo@redhat.com>
15583
15584 * testsuite/libgomp.dg/omp-single-1.c: New test.
15585 * testsuite/libgomp.dg/shared-1.c: Return 0.
15586 Add prototype for abort.
15587 * testsuite/libgomp.dg/shared-2.c: Likewise.
15588
155892005-09-26 Jakub Jelinek <jakub@redhat.com>
15590
15591 * testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
15592 constructs.
15593
155942005-09-26 Diego Novillo <dnovillo@redhat.com>
15595
15596 * testsuite/libgomp.dg/shared-1.c: New test.
15597 * testsuite/libgomp.dg/shared-2.c: New test.
15598
155992005-09-24 Richard Henderson <rth@redhat.com>
15600
15601 * testsuite/libgomp.dg/omp_workshare3.c: Mark dg-error.
15602
156032005-09-24 Richard Henderson <rth@redhat.com>
15604
15605 * iter.c (gomp_iter_static_next): Round up when computing number
15606 of iterations. Don't bother distributing a remainder equally.
15607
15608 * testsuite/libgomp.dg/omp-loop01.c (main1): Rename from main.
15609 Don't call srand. Zero b before testing.
15610 (main): New.
15611
156122005-09-24 Jakub Jelinek <jakub@redhat.com>
15613
15614 * testsuite/libgomp.fortran/omp_atomic1.f90: New test.
15615 * testsuite/libgomp.fortran/omp_atomic2.f90: New test.
15616
156172005-09-23 Jakub Jelinek <jakub@redhat.com>
15618
15619 * testsuite/libgomp.fortran/omp_parse1.f90: Add a test for !$omp do
15620 without !$omp end do, followed immediately by subroutine end.
15621
156222005-09-23 Diego Novillo <dnovillo@redhat.com>
15623
15624 * testsuite/libgomp.dg/omp-parallel-if.c: New test.
15625
156262005-09-22 Richard Henderson <rth@redhat.com>
15627
15628 * critical.c (GOMP_critical_name_start): Change argument to void**.
15629 Reuse the pointer space if the mutex fits.
15630 (GOMP_critical_name_end): Likewise.
15631 (initialize_critical): Don't define if GOMP_MUTEX_INIT_0.
15632 * libgomp_g.h (GOMP_critical_name_start): Update decl.
15633 (GOMP_critical_name_end): Likewise.
15634 * config/linux/mutex.h (GOMP_MUTEX_INIT_0): New.
15635 * config/posix/mutex.h (GOMP_MUTEX_INIT_0): New.
15636
156372005-09-20 Richard Henderson <rth@redhat.com>
15638
15639 * critical.c (GOMP_critical_name_start, GOMP_critical_name_end): New.
15640 (create_lock_lock): New.
15641 (initialize_critical): Initialize it.
15642 * libgomp.map (GOMP_critical_name_start, GOMP_critical_name_end): New.
15643 * libgomp_g.h (GOMP_ordered_start, GOMP_ordered_end): Declare.
15644
156452005-09-20 Diego Novillo <dnovillo@redhat.com>
15646
15647 * testsuite/libgom.dg/omp-loop01.c: Include stdio.h.
15648
156492005-09-20 Diego Novillo <dnovillo@redhat.com>
15650
15651 * testsuite/libgomp.dg/omp-loop01.c: New test.
15652 * testsuite/libgomp.dg/omp-loop02.c: New test.
15653
156542005-09-20 Jakub Jelinek <jakub@redhat.com>
15655
15656 * configure.ac (AC_PROG_FC): Add.
15657 (USE_FORTRAN): New automake conditional.
15658 * configure: Rebuilt.
15659 * Makefile.am (libgomp_la_SOURCES): Add fortran.c.
15660 (nodist_include_HEADERS): Add omp_lib.h, omp_lib.f90 and libgomp_f.h.
15661 If USE_FORTRAN, add also omp_lib.mod and omp_lib_kinds.mod.
15662 Add rules to build them.
15663 * Makefile.in: Rebuilt.
15664 * mkomp_h.pl: Compute and replace also OMP_LOCK_KIND and
15665 OMP_NEST_LOCK_KIND.
15666 * libgomp.map: Add Fortran wrappers.
15667 * libgomp_f.h.in: New file.
15668 * omp_lib.h.in: New file.
15669 * omp_lib.f90.in: New file.
15670 * fortran.c: New file.
15671 * testsuite/lib/libgomp-dg.exp: Load a few more .exp files.
15672 Append libgfortran directory to LD_LIBRARY_PATH if it exists.
15673 Add -Lpath_to_libgfortran and -lgfortran -lgfortranbegin if
15674 libgfortran has been built.
15675 * testsuite/libgomp.fortran/fortran.exp: New file.
15676 * testsuite/libgomp.fortran/omp_cond1.f: New test.
15677 * testsuite/libgomp.fortran/omp_cond2.f: New test.
15678 * testsuite/libgomp.fortran/omp_cond3.F90: New test.
15679 * testsuite/libgomp.fortran/omp_cond4.F90: New test.
15680 * testsuite/libgomp.fortran/omp_hello.f: New test.
15681 * testsuite/libgomp.fortran/omp_orphan.f: New test.
15682 * testsuite/libgomp.fortran/omp_parse1.f90: New test.
15683 * testsuite/libgomp.fortran/omp_parse2.f90: New test.
15684 * testsuite/libgomp.fortran/omp_parse3.f90: New test.
15685 * testsuite/libgomp.fortran/omp_parse4.f90: New test.
15686 * testsuite/libgomp.fortran/omp_reduction.f: New test.
15687 * testsuite/libgomp.fortran/omp_workshare1.f: New test.
15688 * testsuite/libgomp.fortran/omp_workshare2.f: New test.
15689
156902005-08-30 Richard Henderson <rth@redhat.com>
15691
15692 * loop.c (GOMP_loop_static_start): Provide fallback wrapper
15693 function for when aliases are not usable.
15694 (GOMP_loop_dynamic_start, GOMP_loop_guided_start,
15695 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
15696 GOMP_loop_ordered_guided_start, GOMP_loop_static_next,
15697 GOMP_loop_dynamic_next, GOMP_loop_guided_next,
15698 GOMP_loop_ordered_static_next, GOMP_loop_ordered_dynamic_next,
15699 GOMP_loop_ordered_guided_next): Likewise.
15700 * ordered.c (GOMP_ordered_start): Likewise.
15701
157022005-08-01 Diego Novillo <dnovillo@redhat.com>
15703
15704 * testsuite/libgomp.dg/dg.exp: Use -O2 for now.
15705 * testsuite/libgomp.dg/omp_hello.c: Fix return code
15706 * testsuite/libgomp.dg/omp_matvec.c: Likewise.
15707 * testsuite/libgomp.dg/omp_orphan.c: Likewise
15708 * testsuite/libgomp.dg/omp_reduction.c: Likewise
15709 * testsuite/libgomp.dg/omp_workshare1.c: Likewise
15710 * testsuite/libgomp.dg/omp_workshare2.c: Likewise
15711 * testsuite/libgomp.dg/omp_workshare3.c: Likewise
15712 * testsuite/libgomp.dg/omp_workshare4.c: Likewise
15713
157142005-07-07 Eric Christopher <echristo@redhat.com>
15715 Diego Novillo <dnovillo@redhat.com>
15716
15717 * testsuite/libgomp.dg/dg.exp: Add -fopenmp to DEFAULT_CFLAGS.
15718 * testsuite/libgomp.dg/omp_hello.c: Add standard includes, fix
15719 up code.
15720 * testsuite/libgomp.dg/omp_matvec.c: Ditto.
15721 * testsuite/libgomp.dg/omp_orphan.c: Ditto.
15722 * testsuite/libgomp.dg/omp_reduction.c: Ditto.
15723 * testsuite/libgomp.dg/omp_workshare1.c: Ditto.
15724 * testsuite/libgomp.dg/omp_workshare2.c: Ditto.
15725 * testsuite/libgomp.dg/omp_workshare3.c: Ditto.
15726 * testsuite/libgomp.dg/omp_workshare4.c: Ditto.
15727
157282005-06-13 Diego Novillo <dnovillo@redhat.com>
15729
15730 * TOPLEVEL.patch: Remove.
15731
157322005-05-16 Richard Henderson <rth@redhat.com>
15733
15734 * configure.ac: Test for clock_gettime.
15735 * config.h.in, configure: Rebuild.
15736 * config/posix/time.c: Use recommended TIME_WITH_SYS_TIME pattern.
15737 (omp_get_wtime): Use clock_gettime if available.
15738 (omp_get_wtick): Use clock_getres if available.
15739
157402005-05-11 Richard Henderson <rth@redhat.com>
15741
15742 * config/linux/ia64/futex.h: New file.
15743 * configure.tgt: Use it.
15744
15745 * team.c (gomp_barrier_init, gomp_barrier_destroy): Mark inline.
15746
157472005-05-07 Richard Henderson <rth@redhat.com>
15748
15749 * config/linux/powerpc/futex.h: New file.
15750 * configure.tgt: Use it.
15751
15752 * config/linux/i486/futex.h: Merge ...
15753 * config/linux/x86_64/futex.h: ... into ...
15754 * config/linux/x86/futex.h: ... here.
15755 * configure.tgt: Update to match.
15756
157572005-05-06 Richard Henderson <rth@redhat.com>
15758
15759 * config/linux/alpha/futex.h: Conditionally define SYS_futex.
15760 * config/linux/i486/futex.h: Likewise.
15761 * config/linux/x86_64/futex.h: Likewise.
15762
15763 * config/linux/lock.c: New file.
15764 * config/linux/omp-lock.h: New file.
15765
15766 * critical.c, env.h: Don't include omp.h
15767 * config/posix/lock.c: Include libgomp.h instead of omp.h.
15768 * config/posix/time.c: Likewise.
15769 * config/posix/omp-lock.h: New file.
15770 * libgomp.h: Include omp-lock.h and omp.h.
15771 * Makefile.am (nodist_include_HEADERS): New.
15772 (omp.h): New rule.
15773 * configure.ac (PERL): New.
15774 * mkomp_h.pl: New file.
15775 * omp.h.in: Rename from omp.h; replace omp_lock_t and omp_nest_lock_t
15776 with templates.
15777 * Makefile.in, configure, testsuite/Makefile.in: Rebuild.
15778
15779 * testsuite/lib/libgomp-dg.exp (libgomp_init): Add include into
15780 build directory. Re-add -march=i486 hack.
15781
15782 * testsuite/lib/libgomp-dg.exp (libgomp_compile_flags): Remove.
15783 (libgomp_link_flags): Remove.
15784 (libgomp_initialized): Remove.
15785 (libgomp_init): Don't protect from reinitialization. Copy code
15786 from libstdc++ for getting the multilib set correctly.
15787
157882005-05-05 Richard Henderson <rth@redhat.com>
15789
15790 * config/linux/alpha/futex.h: New file.
15791 * configure.tgt (alpha*-*-linux*): Use it.
15792
15793 * config/posix/mutex.c: New file.
15794 * config/posix/sem.c: Use libgomp.h.
15795
15796 * configure.tgt (x86_64-linux): Also test CC for -m32.
15797 * config/linux/x86_64/futex.h (futex_wait): Fix r10 usage.
15798
a1daed2d 15799 * testsuite/lib/libgomp-dg.exp (libgomp_link_flags): Add /
953ff289
DN
15800 after $gccpath.
15801
15802 * Makefile.am (SUBDIRS): New.
15803 (libgomp_la_LDFLAGS): Add -lpthread.
15804 * configure.ac (AM_INIT_AUTOMAKE): Enable dependencies.
15805 * Makefile.in, aclocal.m4, config.h.in, configure: Rebuild.
15806
15807 * libgomp_g.h: New file.
15808 * libgomp.h: Split out all public declarations to libgomp_g.h.
15809 Use pragma GCC visibility instead of ATTRIBUTE_HIDDEN.
15810 * config/linux/mutex.h: Remove ATTRIBUTE_HIDDEN.
15811 * config/linux/sem.h: Likewise.
15812 * config/posix/sem.h: Likewise.
15813
15814 * Makefile.am (AM_LDFLAGS): New.
15815 (libgomp_version_script): Split out from ...
15816 (libgomp_la_LDFLAGS): ... here.
15817 (libgomp_version_info): New.
15818 * acinclude.m4 (LIBGOMP_CHECK_TLS): Use LIBGOMP_ENABLE.
15819 (LIBGOMP_ENABLE): New.
15820 (LIBGOMP_CHECK_LINKER_FEATURES): New.
15821 (LIBGOMP_ENABLE_SYMVERS): New.
15822 * configure.ac (AC_INIT): Version 1.0.
15823 (enable-version-specific-runtime-libs): Use LIBGOMP_ENABLE.
15824 (enable-linux-futex): Likewise. Rename from enable-futex.
15825 (libtool_VERSION): New.
15826 (LIBGOMP_ENABLE_SYMVERS): Use it.
15827 * configure.tgt: Check with_gnu_ld wrt have_tls optimizations.
15828 * Makefile.in, aclocal.m4, configure: Rebuild.
15829
15830 * config/linux/mutex.c: Include libgomp.h instead of mutex.h.
15831 (gomp_mutex_unlock_slow): Fix typo.
15832 * config/linux/sem.c: Similarly.
15833 (gomp_sem_post_slow): Fix typo.
15834 * config/linux/sem.h (gomp_sem_post_slow): Fix typo.
15835 * config/linux/i486/futex.h: Remove USE_LINUX_SYSENTER code.
15836 [__PIC__] (sys_futex0): Don't use tmp output in asm.
15837
15838 * Makefile.am (AM_CFLAGS): Expand with XCFLAGS.
15839 (libgomp_la_LDFLAGS): Add top_srcdir to path.
15840 * acinclude.m4: Copy libtool.m4 stuff from libgfortran.
15841 * configure.ac: Check for getloadavg. Substitute XCFLAGS and
15842 XLDFLAGS. Add XCFLAGS to CFLAGS around LIBGOMP_CHECK_SYNC_BUILTINS.
15843 * configure.tgt: Set XCFLAGS and XLDFLAGS instead of CFLAGS and
15844 LDFLAGS. Pull enable_futex check to top-level.
15845 * libgomp.h: Fix sem.h and mutex.h includes. Define ATTRIBUTE_HIDDEN.
15846 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
15847
15848 First attempt at real configury.
15849 * Makefile, config.h: Remove file.
15850 * Makefile.am, Makefile.in: New file.
15851 * acinclude.m4 aclocal.m4: New file.
15852 * configure.ac, configure.tgt, configure: New file.
15853
15854 * config/posix/lock.c: Rename from sys-lock.c.
15855 * config/posix/mutex.h: Rename from sys-mutex.h.
15856 * config/posix/sem.c: Rename from sys-sem.c.
15857 * config/posix/sem.h: Rename from sys-sem.h.
15858 * config/posix/proc.c: Rename from sys-proc.c.
15859 * config/posix/time.c: Rename from sys-proc.c.
15860
15861 * config/linux/mutex.c: New file.
15862 * config/linux/mutex.h: New file.
15863 * config/linux/sem.c: New file.
15864 * config/linux/sem.h: New file.
15865 * config/linux/i486/futex.h: New file.
15866 * config/linux/x86_64/futex.h: New file.
15867
158682005-05-04 Richard Henderson <rth@redhat.com>
15869
15870 * iter.c (gomp_iter_dynamic_next, gomp_iter_guided_next): New.
15871 * libgomp.h: Declare them.
15872 * loop.c (gomp_loop_dynamic_start, gomp_loop_guided_start,
15873 gomp_loop_dynamic_next, gomp_loop_guided_next): Use them.
15874
158752005-05-04 Richard Henderson <rth@redhat.com>
15876
15877 * libgomp-1 code drop
15878
158792005-05-04 Richard Henderson <rth@redhat.com>
15880
15881 * iter.c (gomp_iter_static_next): Return tri-state on 0.
15882 * ordered.c (gomp_ordered_static_next): Remove not_last argument.
15883 * libgomp.h (struct gomp_team_state): Make static_trip unsigned.
15884 (gomp_iter_static_next): Update.
15885 (gomp_ordered_static_next): Update.
15886 * loop.c (gomp_loop_static_start): Update for gomp_iter_static_next.
15887 (gomp_loop_ordered_static_start): Likewise. Exit early for a
15888 totally empty range.
15889 (gomp_loop_ordered_static_next): Refine test for calling
15890 gomp_ordered_static_next.
15891 * testsuite/ordered-1.c: Add case for more threads than iterations.
15892
15893 * iter.c (gomp_iter_runtime_next_locked): Remove.
15894 * loop.c (gomp_loop_static_start, gomp_loop_dynamic_start,
a1daed2d 15895 gomp_loop_guided_start, gomp_loop_ordered_static_start,
953ff289
DN
15896 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
15897 gomp_loop_static_next, gomp_loop_dynamic_next, gomp_loop_guided_next,
15898 gomp_loop_ordered_static_next, gomp_loop_ordered_dynamic_next,
15899 gomp_loop_ordered_guided_next): Downcase name, make static, add
15900 an external alias with the old name.
15901 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
15902 GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Use a
15903 switch and call one of the above static functions.
15904 * libgomp.h: Update.
15905
15906 * work.c (gomp_work_share_start): Lock the mutex for !first too.
15907 * loop.c (GOMP_loop_static_start, GOMP_loop_dynamic_start,
15908 GOMP_loop_guided_start, GOMP_loop_runtime_start,
15909 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
15910 GOMP_loop_ordered_guided_start): Update to match.
15911 * sections.c (GOMP_sections_start): Likewise.
15912 * single.c (GOMP_single_start, GOMP_single_copy_start): Likewise.
15913
15914 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
15915 gomp_ordered_static_init, gomp_ordered_static_next): Rename s/_loop//.
15916 Use bounds check instead of modulus.
15917 (gomp_ordered_sync): Split out of GOMP_ordered_start.
15918 (gomp_ordered_last): Don't sync with ordered_owner here.
15919 (gomp_ordered_next): Likewise.
15920 (gomp_ordered_static_loop_next): Likewise.
15921 * loop.c, libgomp.h: Update to match.
15922
15923 * libgomp.h (GOMP_barrier): Declare.
15924
15925 * testsuite/barrier-1.c: New file.
15926 * testsuite/critical-1.c: New file.
15927 * testsuite/ordered-2.c: New file.
15928 * testsuite/ordered-1.c: New file.
15929 * testsuite/sections-1.c: New file.
15930 * testsuite/single-1.c: New file.
15931 * testsuite/Makefile (TESTS): Add them.
15932
159332005-05-04 Richard Henderson <rth@redhat.com>
15934
15935 * libgomp.h (struct gomp_work_share): Add ordered_owner.
15936 * loop.c (GOMP_loop_static_start): If not the startup thread,
15937 acquire the mutex to wait for initialization complete.
15938 (GOMP_loop_ordered_static_start): Likewise.
15939 (GOMP_loop_ordered_runtime_start): Likewise.
15940 (GOMP_loop_ordered_static_first): Remove.
15941 (GOMP_loop_ordered_dynamic_first): Remove.
15942 (GOMP_loop_ordered_guided_first): Remove.
15943 (GOMP_loop_ordered_runtime_first): Remove.
15944 * ordered.c (gomp_ordered_loop_first): Post to own release when
15945 we're the first thread.
15946 (gomp_ordered_loop_last): Wait on release if not owner.
15947 (gomp_ordered_loop_next): Likewise.
15948 (gomp_ordered_static_loop_init): New.
15949 (gomp_ordered_static_loop_next): Use ordered_owner.
15950 (GOMP_ordered_start): Likewise.
15951 * work.c (gomp_new_work_share): Initialize ordered_owner.
15952
159532005-05-03 Richard Henderson <rth@redhat.com>
15954
15955 * Makefile (OPT): New.
15956 (CFLAGS): Use it.
15957
15958 * loop.c (GOMP_loop_end, GOMP_loop_end_nowait): New.
15959 * sections.c (GOMP_sections_end, GOMP_sections_end_nowait): New.
15960 * libgomp.h, libgomp.map, NOTES: Update to match.
15961
15962 * team.c (struct gomp_thread_start_data): Remove ts, fn, data.
15963 Add initialized and thr members.
15964 (gomp_thread_start): Pause when initially spawned to wait for
15965 the whole team to be created.
15966 (gomp_team_start): Release team members at the end.
15967
15968 * testsuite/loop-1.c (N): New. Use it instead of hardcoded 100.
15969 (f_foo_1): Use GOMP_loop_end.
15970 (f_foo_2): Use GOMP_loop_end_nowait.
15971
15972 * testsuite/loop-2.c: New file.
15973 * testsuite/Makefile (TESTS): Add it.
15974
159752005-05-03 Richard Henderson <rth@redhat.com>
15976
15977 * iter.c (gomp_iter_static_next): Fix overflow check typo.
15978 (gomp_iter_dynamic_next_locked): Fix overflow check thinko.
15979 * team.c (new_team): Initialize oldest_live_gen to 1 if no
15980 initial work_share.
15981
15982 * testsuite/Makefile: New file.
15983 * testsuite/loop-1.c: New file.
15984
159852005-05-03 Richard Henderson <rth@redhat.com>
15986
15987 Initial implementation and checkin.
21fa2a29 15988\f
c48514be 15989Copyright (C) 2005-2021 Free Software Foundation, Inc.
21fa2a29
JJ
15990
15991Copying and distribution of this file, with or without modification,
15992are permitted in any medium without royalty provided the copyright
15993notice and this notice are preserved.