ChangeLog revision 1.1.1.25 1 2026-06-26 Release Manager
2
3 * GCC 14.4.0 released.
4
5 2026-04-02 Paul Thomas <pault (a] gcc.gnu.org>
6
7 * testsuite/libgomp.fortran/pr120286.f90: New test.
8
9 2026-03-15 Frank Scheiner <frank.scheiner (a] web.de>
10
11 Backported from master:
12 2025-11-25 Frank Scheiner <frank.scheiner (a] web.de>
13
14 * affinity-fmt.c: Make char *q a pointer to a const char.
15
16 2025-05-23 Release Manager
17
18 * GCC 14.3.0 released.
19
20 2024-08-05 Paul Thomas <pault (a] gcc.gnu.org>
21
22 Backported from master:
23 2024-07-19 Paul Thomas <pault (a] gcc.gnu.org>
24
25 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Cut
26 dg-note about 'a' and remove bogus warnings about its array
27 descriptor components being used uninitialized.
28
29 2024-08-01 Release Manager
30
31 * GCC 14.2.0 released.
32
33 2024-05-07 Jakub Jelinek <jakub (a] redhat.com>
34
35 Backported from master:
36 2024-05-02 Jakub Jelinek <jakub (a] redhat.com>
37
38 * testsuite/libgomp.c/declare-variant-4.h (gfx90c, gfx1036, gfx1103):
39 New functions.
40 (f): Add #pragma omp declare variant directives for those.
41 * testsuite/libgomp.c/declare-variant-4-gfx90c.c: New test.
42 * testsuite/libgomp.c/declare-variant-4-gfx1036.c: New test.
43 * testsuite/libgomp.c/declare-variant-4-gfx1103.c: New test.
44
45 2024-05-07 Release Manager
46
47 * GCC 14.1.0 released.
48
49 2024-04-26 Frederik Harwath <frederik (a] harwath.name>
50
51 * plugin/plugin-gcn.c (isa_hsa_name): Handle EF_AMDGPU_MACH_AMDGCN_GFX90c.
52 (isa_code): Handle gfx90c.
53 (max_isa_vgprs): Handle EF_AMDGPU_MACH_AMDGCN_GFX90c.
54
55 2024-04-16 Chung-Lin Tang <cltang (a] baylibre.com>
56
57 * libgomp.h (REFCOUNT_ACC_MAP_DATA): Define as (REFCOUNT_SPECIAL | 2).
58 * oacc-mem.c (acc_map_data): Adjust to use REFCOUNT_ACC_MAP_DATA,
59 initialize dynamic_refcount as 1.
60 (acc_unmap_data): Adjust to use REFCOUNT_ACC_MAP_DATA,
61 (goacc_map_var_existing): Add REFCOUNT_ACC_MAP_DATA case.
62 (goacc_exit_datum_1): Add REFCOUNT_ACC_MAP_DATA case, respect
63 REFCOUNT_ACC_MAP_DATA when decrementing/finalizing. Force lowest
64 dynamic_refcount to be 1 for REFCOUNT_ACC_MAP_DATA.
65 (goacc_enter_data_internal): Add REFCOUNT_ACC_MAP_DATA case.
66 * target.c (gomp_increment_refcount): Return early for
67 REFCOUNT_ACC_MAP_DATA case.
68 (gomp_decrement_refcount): Likewise.
69 * testsuite/libgomp.oacc-c-c++-common/lib-96.c: New testcase.
70 * testsuite/libgomp.oacc-c-c++-common/unmap-infinity-1.c: Adjust
71 testcase error output scan test.
72
73 2024-04-08 Thomas Schwinge <tschwinge (a] baylibre.com>
74
75 * plugin/plugin-gcn.c (init_hsa_context): Add and handle
76 'bool probe' parameter. Adjust all users; errors during device
77 probing are fatal.
78 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Aside from
79 'CUDA_ERROR_NO_DEVICE', errors during device probing are fatal.
80
81 2024-04-05 Thomas Schwinge <tschwinge (a] baylibre.com>
82
83 * testsuite/libgomp.c/reverse-offload-sm30.c: Set 'GCC_COLORS' to the empty string.
84
85 2024-04-05 Jakub Jelinek <jakub (a] redhat.com>
86
87 PR c++/114572
88 * testsuite/libgomp.c++/pr114572.C: New test.
89
90 2024-04-04 Tobias Burnus <tburnus (a] baylibre.com>
91
92 * libgomp.texi (TR12): Honor post-TR12 directive name change; add
93 item about curly braces/BLOCK permitted in canonical loop nests.
94
95 2024-04-02 Jakub Jelinek <jakub (a] redhat.com>
96
97 * libgomp.texi (OpenMP 5.2): Fix duplicated words; with with ->
98 with.
99 (omp_target_associate_ptr): Fix duplicated words; either either ->
100 either.
101 (omp_init_allocator): Fix duplicated words; be be -> be.
102 (omp_realloc): Fix duplicated words; is is -> is.
103 (OMP_ALLOCATOR): Fix duplicated words; other other -> other.
104 * priority_queue.h (priority_queue_multi_p): Fix duplicated words;
105 to to -> to.
106
107 2024-03-25 Richard Biener <rguenther (a] suse.de>
108
109 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): GFX1036.
110 (gcn_gfx1103_s): New.
111 (isa_hsa_name): Handle gfx1036.
112 (isa_code): Likewise.
113 (max_isa_vgprs): Likewise.
114
115 2024-03-22 Kwok Cheung Yeung <kcyeung (a] baylibre.com>
116
117 * config/accel/target-indirect.c: Include string.h and hashtab.h.
118 Remove include of splay-tree.h. Update comments.
119 (splay_tree_prefix, splay_tree_c): Delete.
120 (struct indirect_map_t): New.
121 (hash_entry_type, htab_alloc, htab_free, htab_hash, htab_eq): New.
122 (GOMP_INDIRECT_ADD_MAP): Remove volatile qualifier.
123 (USE_SPLAY_TREE_LOOKUP): Rename to...
124 (USE_HASHTAB_LOOKUP): ..this.
125 (indirect_map, indirect_array): Delete.
126 (indirect_htab): New.
127 (build_indirect_map): Remove locking. Build indirect map using
128 hashtab.
129 (GOMP_target_map_indirect_ptr): Use indirect_htab to lookup target
130 address.
131 (GOMP_target_map_indirect_ptr): Remove volatile qualifier.
132 * config/gcn/team.c (gomp_gcn_enter_kernel): Call build_indirect_map
133 from first thread of first team only.
134 * config/nvptx/team.c (gomp_nvptx_main): Likewise.
135 * testsuite/libgomp.c-c++-common/declare-target-indirect-2.c (main):
136 Add missing break statements.
137 * testsuite/libgomp.fortran/declare-target-indirect-2.f90: Remove
138 xfail.
139
140 2024-03-22 Andrew Stubbs <ams (a] baylibre.com>
141
142 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): GFX1103.
143 (gcn_gfx1103_s): New.
144 (isa_hsa_name): Handle gfx1103.
145 (isa_code): Likewise.
146 (max_isa_vgprs): Likewise.
147
148 2024-03-14 Thomas Schwinge <tschwinge (a] baylibre.com>
149
150 * testsuite/libgomp.oacc-fortran/acc-memcpy.f90: Fix 'char'
151 initialization, copy, check.
152
153 2024-03-13 Tobias Burnus <tburnus (a] baylibre.com>
154
155 PR fortran/114283
156 * testsuite/libgomp.fortran/declare-target-indirect-4.f90: New test.
157
158 2024-03-12 Tobias Burnus <tburnus (a] baylibre.com>
159
160 * libgomp.texi (Device Memory Routines): Swap item order to match
161 the order of the '@node's of the '@subsection's.
162
163 2024-03-08 Thomas Schwinge <tschwinge (a] baylibre.com>
164
165 * plugin/plugin-gcn.c (GOMP_OFFLOAD_can_run): Don't consider
166 'GCN_SUPPRESS_HOST_FALLBACK' anymore (assume always-'true').
167 (init_hsa_context): Adjust 'GCN_SUPPRESS_HOST_FALLBACK' error
168 message.
169
170 2024-03-08 Thomas Schwinge <tschwinge (a] baylibre.com>
171
172 * plugin/plugin-nvptx.c (nvptx_get_num_devices):
173 'cuDeviceGetCount' failure is fatal.
174
175 2024-03-08 Thomas Schwinge <tschwinge (a] baylibre.com>
176
177 * plugin/plugin-gcn.c (init_hsa_runtime_functions): Fatal error
178 for missing symbols.
179 * plugin/plugin-nvptx.c (init_cuda_lib): Likewise.
180
181 2024-03-06 John David Anglin <danglin (a] gcc.gnu.org>
182
183 Revert:
184 2024-02-01 John David Anglin <danglin (a] gcc.gnu.org>
185
186 * testsuite/libgomp.c++/loop-3.C: Set num_threads to 50
187 on 32-bit hppa.
188 * testsuite/libgomp.c/omp-loop03.c: Likewise.
189
190 2024-03-04 Jakub Jelinek <jakub (a] redhat.com>
191
192 PR libgomp/114216
193 * target.c (gomp_target_rev): Change host_fn type and corresponding
194 cast from void (*)() to void (*) (void *).
195
196 2024-03-01 Jakub Jelinek <jakub (a] redhat.com>
197 Tobias Burnus <tburnus (a] baylibre.com>
198
199 PR c++/110347
200 * testsuite/libgomp.c++/target-lambda-3.C: Moved from
201 gcc/testsuite/g++.dg/gomp/ and fixed is-mapped handling.
202 * testsuite/libgomp.c++/target-lambda-1.C: Modify to also
203 also work without offloading.
204 * testsuite/libgomp.c++/firstprivate-1.C: New test.
205 * testsuite/libgomp.c++/firstprivate-2.C: New test.
206 * testsuite/libgomp.c++/private-1.C: New test.
207 * testsuite/libgomp.c++/private-2.C: New test.
208 * testsuite/libgomp.c++/target-lambda-4.C: New test.
209 * testsuite/libgomp.c++/use_device_ptr-1.C: New test.
210
211 2024-02-27 Tobias Burnus <tburnus (a] baylibre.com>
212
213 * libgomp.texi (OpenACC Runtime Library Routines): Document new 3.3
214 routines that simply map to their C counterpart.
215 * openacc.f90 (openacc): Add them.
216 * openacc_lib.h: Likewise.
217 * testsuite/libgomp.oacc-fortran/acc_host_device_ptr.f90: New test.
218 * testsuite/libgomp.oacc-fortran/acc-memcpy.f90: New test.
219 * testsuite/libgomp.oacc-fortran/acc-memcpy-2.f90: New test.
220 * testsuite/libgomp.oacc-c-c++-common/lib-59.c: Crossref to f90 test.
221 * testsuite/libgomp.oacc-c-c++-common/lib-60.c: Likewise.
222 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: Likewise.
223
224 2024-02-21 Tobias Burnus <tburnus (a] baylibre.com>
225
226 * libgomp.texi (OpenMP Context Selectors): Add 'nvptx64' as additional
227 'arch' value for nvptx.
228
229 2024-02-15 Kwok Cheung Yeung <kcyeung (a] baylibre.com>
230
231 * libgomp.texi (OpenMP 5.1): Mark indirect call support as fully
232 implemented.
233
234 2024-02-15 Kwok Cheung Yeung <kcyeung (a] baylibre.com>
235
236 * testsuite/libgomp.fortran/declare-target-indirect-1.f90: New.
237 * testsuite/libgomp.fortran/declare-target-indirect-2.f90: New.
238 * testsuite/libgomp.fortran/declare-target-indirect-3.f90: New.
239
240 2024-02-12 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
241
242 PR testsuite/113448
243 * testsuite/libgomp.c/alloc-pinned-1.c [!__linux__] (CHECK_SIZE):
244 Call abort.
245 * testsuite/libgomp.c/alloc-pinned-2.c [!__linux__] (CHECK_SIZE):
246 Likewise.
247
248 2024-02-11 John David Anglin <danglin (a] gcc.gnu.org>
249
250 PR libgomp/113843
251 * configure.tgt (hppa*-*-linux*): Define config_path.
252
253 2024-02-01 John David Anglin <danglin (a] gcc.gnu.org>
254
255 * testsuite/libgomp.c++/loop-3.C: Set num_threads to 50
256 on 32-bit hppa.
257 * testsuite/libgomp.c/omp-loop03.c: Likewise.
258
259 2024-01-29 Tobias Burnus <tburnus (a] baylibre.com>
260
261 * testsuite/libgomp.c/declare-variant-4.h: Use gfx1100/gfx1030
262 function not gfx90a for gfx1100/gfx1030 context selector.
263
264 2024-01-26 Richard Biener <rguenther (a] suse.de>
265
266 * plugin/plugin-gcn.c (suitable_hsa_agent_p): Filter out
267 agents with unsupported ISA.
268
269 2024-01-26 Richard Biener <rguenther (a] suse.de>
270
271 * plugin/plugin-gcn.c
272 (EF_AMDGPU_MACH::EF_AMDGPU_MACH_UNSUPPORTED): Add.
273 (isa_code): Return that instead of -1.
274 (GOMP_OFFLOAD_init_device): Adjust.
275
276 2024-01-26 Tobias Burnus <tburnus (a] baylibre.com>
277
278 * testsuite/libgomp.c/declare-variant-4.h: Add variant functions
279 for gfx1030 and gfx1100.
280 * testsuite/libgomp.c/declare-variant-4-gfx1030.c: New test.
281 * testsuite/libgomp.c/declare-variant-4-gfx1100.c: New test.
282
283 2024-01-26 Andrew Stubbs <ams (a] baylibre.com>
284
285 * config/gcn/time.c (RTC_TICKS): Configure RDNA3.
286 (omp_get_wtime): Add RDNA3-compatible variant.
287 * plugin/plugin-gcn.c (max_isa_vgprs): Tune for gfx1030 and gfx1100.
288
289 2024-01-24 Tobias Burnus <tburnus (a] baylibre.com>
290 Sandra Loosemore <sandra (a] codesourcery.com>
291
292 * libgomp.texi (Runtime Library Routines): Document
293 omp_pause_resource, omp_pause_resource_all and
294 omp_target_memcpy{,_rect}{,_async}.
295
296 2024-01-22 Tobias Burnus <tburnus (a] baylibre.com>
297
298 * testsuite/libgomp.c/declare-variant-4-fiji.c: Xfail as fiji
299 support is no longer enabled by default.
300 * testsuite/libgomp.c/declare-variant-4-gfx803.c: Likewise.
301
302 2024-01-20 John David Anglin <danglin (a] gcc.gnu.org>
303
304 * testsuite/libgomp.fortran/alloc-comp-3.f90: Increase
305 timeout by 2 on hppa*-*-*.
306
307 2024-01-20 John David Anglin <danglin (a] gcc.gnu.org>
308
309 * testsuite/libgomp.c/simd-math-1.c: Don't run on
310 hppa*-*-hpux*.
311
312 2024-01-17 Jakub Jelinek <jakub (a] redhat.com>
313
314 PR middle-end/113409
315 * testsuite/libgomp.c/bitint-1.c: New test.
316
317 2024-01-11 Julian Brown <julian (a] codesourcery.com>
318
319 * libgomp.texi: C/C++ lvalues are supported now for map/to/from.
320 * testsuite/libgomp.c-c++-common/ind-base-4.c: New test.
321 * testsuite/libgomp.c-c++-common/unary-ptr-1.c: New test.
322
323 2024-01-10 Jakub Jelinek <jakub (a] redhat.com>
324
325 PR libgomp/113192
326 * configure.ac (FLOCK): Use $libgomp_abs_srcdir/testsuite/flock
327 instead of \$(abs_top_srcdir)/testsuite/flock.
328 * configure: Regenerated.
329
330 2024-01-09 Julian Brown <julian (a] codesourcery.com>
331
332 * testsuite/libgomp.c++/baseptrs-4.C: Remove commented-out cases that
333 now work.
334 * testsuite/libgomp.c++/baseptrs-6.C: New test.
335 * testsuite/libgomp.c++/ind-base-1.C: New test.
336 * testsuite/libgomp.c++/ind-base-2.C: New test.
337 * testsuite/libgomp.c++/lvalue-tofrom-1.C: New test.
338 * testsuite/libgomp.c++/lvalue-tofrom-2.C: New test.
339 * testsuite/libgomp.c++/map-comma-1.C: New test.
340 * testsuite/libgomp.c++/map-rvalue-ref-1.C: New test.
341 * testsuite/libgomp.c++/struct-ref-1.C: New test.
342 * testsuite/libgomp.c-c++-common/array-field-1.c: New test.
343 * testsuite/libgomp.c-c++-common/array-of-struct-1.c: New test.
344 * testsuite/libgomp.c-c++-common/array-of-struct-2.c: New test.
345
346 2024-01-09 Jakub Jelinek <jakub (a] redhat.com>
347
348 PR libgomp/113192
349 * configure.ac (FLOCK): Use \$(abs_top_srcdir)/testsuite/flock
350 rather than $srcdir/testsuite/flock.
351 * configure: Regenerated.
352
353 2024-01-08 Thomas Schwinge <thomas (a] codesourcery.com>
354
355 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
356 'EF_AMDGPU_MACH_AMDGCN_GFX1100'.
357
358 2024-01-08 Julian Brown <julian (a] codesourcery.com>
359
360 * plugin/plugin-gcn.c (hsa_runtime_fn_info): Add
361 hsa_amd_memory_lock_fn, hsa_amd_memory_unlock_fn,
362 hsa_amd_memory_async_copy_rect_fn function pointers.
363 (init_hsa_runtime_functions): Add above functions, with
364 DLSYM_OPT_FN.
365 (GOMP_OFFLOAD_memcpy2d, GOMP_OFFLOAD_memcpy3d): New functions.
366
367 2024-01-08 Tobias Burnus <tobias (a] codesourcery.com>
368
369 * plugin/plugin-gcn.c (gcn_gfx1100_s): New const string.
370 (gcn_isa_name_len): Fix length.
371 (isa_hsa_name, isa_code, max_isa_vgprs): Handle gfx1100.
372
373 2024-01-06 Tobias Burnus <tobias (a] codesourcery.com>
374
375 * libgomp.texi (OpenMP Technical Report 12): Fix a typo.
376 (Device Memory Routines): Fix OpenMP 5.1 spec refs; add
377 omp_target_is_accessible.
378 (Environment Display Routine): Uncomment and add
379 omp_display_env description.
380 (OMP_DISPLAY_ENV): Update wording, add 'see also'.
381
382 2024-01-06 Mark Wielaard <mark (a] klomp.org>
383
384 * configure: Regenerate.
385
386 2024-01-03 Jakub Jelinek <jakub (a] redhat.com>
387
388 * libgomp.texi: Bump @copying's copyright year.
389
390 2023-12-21 Julian Brown <julian (a] codesourcery.com>
391
392 * testsuite/libgomp.fortran/target-enter-data-6.f90: Remove XFAIL.
393
394 2023-12-20 Julian Brown <julian (a] codesourcery.com>
395
396 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_memcpy2d): Adjust parameters to
397 avoid out-of-bounds array checks in CUDA runtime.
398 (GOMP_OFFLOAD_memcpy3d): Likewise.
399 * testsuite/libgomp.c-c++-common/memcpyxd-bias-1.c: New test.
400
401 2023-12-18 Jakub Jelinek <jakub (a] redhat.com>
402
403 * testsuite/libgomp.c/declare-variant-1.c: Restrict the test to x86,
404 drop because of that unneeded target selector from other directives
405 and remove the aarch64 specific ones.
406
407 2023-12-15 Andre Vieira <andre.simoesdiasvieira (a] arm.com>
408
409 * testsuite/libgomp.c/declare-variant-1.c: Fixed test.
410 * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
411
412 2023-12-15 Thomas Schwinge <thomas (a] codesourcery.com>
413
414 * testsuite/libgomp.fortran/map-subarray-5.f90: Restrict
415 'dg-output's to 'target offload_device_nonshared_as'.
416
417 2023-12-15 Julian Brown <julian (a] codesourcery.com>
418
419 * oacc-mem.c (find_group_last, goacc_enter_data_internal,
420 goacc_exit_data_internal, GOACC_enter_exit_data): Add
421 GOMP_MAP_STRUCT_UNORD support.
422 * target.c (gomp_map_vars_internal): Add GOMP_MAP_STRUCT_UNORD support.
423 Detect incorrect use of variable indexing of arrays of structs.
424 (GOMP_target_enter_exit_data, gomp_target_task_fn): Add
425 GOMP_MAP_STRUCT_UNORD support.
426 * testsuite/libgomp.c-c++-common/map-arrayofstruct-1.c: New test.
427 * testsuite/libgomp.c-c++-common/map-arrayofstruct-2.c: New test.
428 * testsuite/libgomp.c-c++-common/map-arrayofstruct-3.c: New test.
429 * testsuite/libgomp.fortran/map-subarray-5.f90: New test.
430
431 2023-12-13 Julian Brown <julian (a] codesourcery.com>
432
433 * testsuite/libgomp.fortran/map-subarray.f90: New test.
434 * testsuite/libgomp.fortran/map-subarray-2.f90: New test.
435 * testsuite/libgomp.fortran/map-subarray-3.f90: New test.
436 * testsuite/libgomp.fortran/map-subarray-4.f90: New test.
437 * testsuite/libgomp.fortran/map-subarray-6.f90: New test.
438 * testsuite/libgomp.fortran/map-subarray-7.f90: New test.
439 * testsuite/libgomp.fortran/map-subarray-8.f90: New test.
440 * testsuite/libgomp.fortran/map-subcomponents.f90: New test.
441 * testsuite/libgomp.fortran/struct-elem-map-1.f90: Adjust for
442 descriptor-mapping changes. Remove XFAIL.
443
444 2023-12-13 Julian Brown <julian (a] codesourcery.com>
445
446 * target.c (gomp_map_pointer): Modify zero-length array section
447 pointer handling.
448 (gomp_attach_pointer): Likewise.
449 (gomp_map_fields_existing): Use gomp_map_0len_lookup.
450 (gomp_attach_pointer): Allow attaching null pointers (or Fortran
451 "unassociated" pointers).
452 (gomp_map_vars_internal): Handle zero-sized struct members. Add
453 diagnostic for unmapped struct pointer members.
454 * testsuite/libgomp.c-c++-common/baseptrs-1.c: New test.
455 * testsuite/libgomp.c-c++-common/baseptrs-2.c: New test.
456 * testsuite/libgomp.c-c++-common/baseptrs-6.c: New test.
457 * testsuite/libgomp.c-c++-common/baseptrs-7.c: New test.
458 * testsuite/libgomp.c-c++-common/ptr-attach-2.c: New test.
459 * testsuite/libgomp.c-c++-common/target-implicit-map-2.c: Fix missing
460 "free".
461 * testsuite/libgomp.c-c++-common/target-implicit-map-5.c: New test.
462 * testsuite/libgomp.c-c++-common/target-map-zlas-1.c: New test.
463 * testsuite/libgomp.c++/class-array-1.C: New test.
464 * testsuite/libgomp.c++/baseptrs-3.C: New test.
465 * testsuite/libgomp.c++/baseptrs-4.C: New test.
466 * testsuite/libgomp.c++/baseptrs-5.C: New test.
467 * testsuite/libgomp.c++/baseptrs-8.C: New test.
468 * testsuite/libgomp.c++/baseptrs-9.C: New test.
469 * testsuite/libgomp.c++/ref-mapping-1.C: New test.
470 * testsuite/libgomp.c++/target-48.C: New test.
471 * testsuite/libgomp.c++/target-49.C: New test.
472 * testsuite/libgomp.c++/target-exit-data-reftoptr-1.C: New test.
473 * testsuite/libgomp.c++/target-lambda-1.C: Update for OpenMP 5.2
474 semantics.
475 * testsuite/libgomp.c++/target-this-3.C: Likewise.
476 * testsuite/libgomp.c++/target-this-4.C: Likewise.
477 * testsuite/libgomp.fortran/struct-elem-map-1.f90: Add temporary XFAIL.
478 * testsuite/libgomp.fortran/target-enter-data-6.f90: Likewise.
479
480 2023-12-13 Thomas Schwinge <thomas (a] codesourcery.com>
481
482 * config/linux/allocator.c (linux_memspace_alloc): Fix 'size_t'
483 vs. '%ld' format string mismatch.
484
485 2023-12-13 Andrew Stubbs <ams (a] codesourcery.com>
486 Thomas Schwinge <thomas (a] codesourcery.com>
487
488 * allocator.c (MEMSPACE_ALLOC): Add PIN.
489 (MEMSPACE_CALLOC): Add PIN.
490 (MEMSPACE_REALLOC): Add PIN.
491 (MEMSPACE_FREE): Add PIN.
492 (MEMSPACE_VALIDATE): Add PIN.
493 (omp_init_allocator): Use MEMSPACE_VALIDATE to check pinning.
494 (omp_aligned_alloc): Add pinning to all MEMSPACE_* calls.
495 (omp_aligned_calloc): Likewise.
496 (omp_realloc): Likewise.
497 (omp_free): Likewise.
498 * config/linux/allocator.c: New file.
499 * config/nvptx/allocator.c (MEMSPACE_ALLOC): Add PIN.
500 (MEMSPACE_CALLOC): Add PIN.
501 (MEMSPACE_REALLOC): Add PIN.
502 (MEMSPACE_FREE): Add PIN.
503 (MEMSPACE_VALIDATE): Add PIN.
504 * config/gcn/allocator.c (MEMSPACE_ALLOC): Add PIN.
505 (MEMSPACE_CALLOC): Add PIN.
506 (MEMSPACE_REALLOC): Add PIN.
507 (MEMSPACE_FREE): Add PIN.
508 * libgomp.texi: Switch pinned trait to supported.
509 (MEMSPACE_VALIDATE): Add PIN.
510 * testsuite/libgomp.c/alloc-pinned-1.c: New test.
511 * testsuite/libgomp.c/alloc-pinned-2.c: New test.
512 * testsuite/libgomp.c/alloc-pinned-3.c: New test.
513 * testsuite/libgomp.c/alloc-pinned-4.c: New test.
514
515 2023-12-11 Lipeng Zhu <lipeng.zhu (a] intel.com>
516
517 * testsuite/libgomp.fortran/rwlock_1.f90: New file.
518 * testsuite/libgomp.fortran/rwlock_2.f90: New file.
519 * testsuite/libgomp.fortran/rwlock_3.f90: New file.
520
521 2023-12-11 Andre Vieira <andre.simoesdiasvieira (a] arm.com>
522
523 * testsuite/libgomp.c/declare-variant-1.c: Adapt test for aarch64.
524 * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
525
526 2023-12-11 Tobias Burnus <tobias (a] codesourcery.com>
527
528 * libgomp_g.h (GOMP_add_alloc, GOMP_is_alloc): Add.
529
530 2023-12-08 Tobias Burnus <tobias (a] codesourcery.com>
531
532 * allocator.c (struct fort_alloc_splay_tree_key_s,
533 fort_alloc_splay_compare, GOMP_add_alloc, GOMP_is_alloc): New.
534 * libgomp.h: Define splay_tree_static for 'reverse' splay tree.
535 * libgomp.map (GOMP_5.1.2): New; add GOMP_add_alloc and
536 GOMP_is_alloc; move GOMP_target_map_indirect_ptr from ...
537 (GOMP_5.1.1): ... here.
538 * libgomp.texi (Impl. Status, Memory management): Update for
539 allocators/allocate directives.
540 * splay-tree.c: Handle splay_tree_static define to declare all
541 functions as static.
542 (splay_tree_lookup_node): New.
543 * splay-tree.h: Handle splay_tree_decl_only define.
544 (splay_tree_lookup_node): New prototype.
545 * target.c: Define splay_tree_static for 'reverse'.
546 * testsuite/libgomp.fortran/allocators-1.f90: New test.
547 * testsuite/libgomp.fortran/allocators-2.f90: New test.
548 * testsuite/libgomp.fortran/allocators-3.f90: New test.
549 * testsuite/libgomp.fortran/allocators-4.f90: New test.
550 * testsuite/libgomp.fortran/allocators-5.f90: New test.
551
552 2023-12-06 Andrew Stubbs <ams (a] codesourcery.com>
553
554 * config/gcn/libgomp-gcn.h (TEAM_ARENA_START): Move to here.
555 (TEAM_ARENA_FREE): Likewise.
556 (TEAM_ARENA_END): Likewise.
557 (GCN_LOWLAT_HEAP): New.
558 * config/gcn/team.c (LITTLEENDIAN_CPU): New, and import hsa.h.
559 (__gcn_lowlat_init): New prototype.
560 (gomp_gcn_enter_kernel): Initialize the low-latency heap.
561 * libgomp.h (TEAM_ARENA_START): Move to libgomp.h.
562 (TEAM_ARENA_FREE): Likewise.
563 (TEAM_ARENA_END): Likewise.
564 * plugin/plugin-gcn.c (lowlat_size): New variable.
565 (print_kernel_dispatch): Label the group_segment_size purpose.
566 (init_environment_variables): Read GOMP_GCN_LOWLAT_POOL.
567 (create_kernel_dispatch): Pass low-latency head allocation to kernel.
568 (run_kernel): Use shadow; don't assume values.
569 * testsuite/libgomp.c/omp_alloc-traits.c: Enable for amdgcn.
570 * config/gcn/allocator.c: New file.
571 * libgomp.texi: Document low-latency implementation details.
572
573 2023-12-06 Andrew Stubbs <ams (a] codesourcery.com>
574
575 * allocator.c (MEMSPACE_VALIDATE): New macro.
576 (omp_init_allocator): Use MEMSPACE_VALIDATE.
577 (omp_aligned_alloc): Use OMP_LOW_LAT_MEM_ALLOC_INVALID.
578 (omp_aligned_calloc): Likewise.
579 (omp_realloc): Likewise.
580 * config/nvptx/allocator.c (nvptx_memspace_validate): New function.
581 (MEMSPACE_VALIDATE): New macro.
582 (OMP_LOW_LAT_MEM_ALLOC_INVALID): New define.
583 * libgomp.texi: Document low-latency implementation details.
584 * testsuite/libgomp.c/omp_alloc-1.c (main): Add gnu_lowlat.
585 * testsuite/libgomp.c/omp_alloc-2.c (main): Add gnu_lowlat.
586 * testsuite/libgomp.c/omp_alloc-3.c (main): Add gnu_lowlat.
587 * testsuite/libgomp.c/omp_alloc-4.c (main): Add access trait.
588 * testsuite/libgomp.c/omp_alloc-5.c (main): Add gnu_lowlat.
589 * testsuite/libgomp.c/omp_alloc-6.c (main): Add access trait.
590 * testsuite/libgomp.c/omp_alloc-traits.c: New test.
591
592 2023-12-06 Andrew Stubbs <ams (a] codesourcery.com>
593 Kwok Cheung Yeung <kcy (a] codesourcery.com>
594 Thomas Schwinge <thomas (a] codesourcery.com>
595
596 * allocator.c (MEMSPACE_ALLOC): New macro.
597 (MEMSPACE_CALLOC): New macro.
598 (MEMSPACE_REALLOC): New macro.
599 (MEMSPACE_FREE): New macro.
600 (predefined_alloc_mapping): New array. Add _Static_assert to match.
601 (ARRAY_SIZE): New macro.
602 (omp_aligned_alloc): Use MEMSPACE_ALLOC.
603 Implement fall-backs for predefined allocators. Simplify existing
604 fall-backs.
605 (omp_free): Use MEMSPACE_FREE.
606 (omp_calloc): Use MEMSPACE_CALLOC. Implement fall-backs for
607 predefined allocators. Simplify existing fall-backs.
608 (omp_realloc): Use MEMSPACE_REALLOC, MEMSPACE_ALLOC, and MEMSPACE_FREE.
609 Implement fall-backs for predefined allocators. Simplify existing
610 fall-backs.
611 * config/nvptx/team.c (__nvptx_lowlat_pool): New asm variable.
612 (__nvptx_lowlat_init): New prototype.
613 (gomp_nvptx_main): Call __nvptx_lowlat_init.
614 * libgomp.texi: Update memory space table.
615 * plugin/plugin-nvptx.c (lowlat_pool_size): New variable.
616 (GOMP_OFFLOAD_init_device): Read the GOMP_NVPTX_LOWLAT_POOL envvar.
617 (GOMP_OFFLOAD_run): Apply lowlat_pool_size.
618 * basic-allocator.c: New file.
619 * config/nvptx/allocator.c: New file.
620 * testsuite/libgomp.c/omp_alloc-1.c: New test.
621 * testsuite/libgomp.c/omp_alloc-2.c: New test.
622 * testsuite/libgomp.c/omp_alloc-3.c: New test.
623 * testsuite/libgomp.c/omp_alloc-4.c: New test.
624 * testsuite/libgomp.c/omp_alloc-5.c: New test.
625 * testsuite/libgomp.c/omp_alloc-6.c: New test.
626
627 2023-11-30 Thomas Schwinge <thomas (a] codesourcery.com>
628
629 * testsuite/libgomp.c/declare-variant-4-fiji.c: Adjust.
630 * testsuite/libgomp.c/declare-variant-4-gfx803.c: Likewise.
631 * testsuite/libgomp.c/declare-variant-4-gfx900.c: Likewise.
632 * testsuite/libgomp.c/declare-variant-4-gfx906.c: Likewise.
633 * testsuite/libgomp.c/declare-variant-4-gfx908.c: Likewise.
634 * testsuite/libgomp.c/declare-variant-4-gfx90a.c: Likewise.
635 * testsuite/libgomp.c/declare-variant-4.h: Likewise.
636 * testsuite/libgomp.c/declare-variant-4.c: New.
637
638 2023-11-30 Thomas Schwinge <thomas (a] codesourcery.com>
639
640 * testsuite/libgomp.c/declare-variant-3-sm30.c: Turn 'dg-do run'
641 into 'dg-do link'.
642 * testsuite/libgomp.c/declare-variant-3.c: New.
643 * testsuite/libgomp.c/declare-variant-3.h: Extend.
644
645 2023-11-30 Thomas Schwinge <thomas (a] codesourcery.com>
646
647 * testsuite/libgomp.c/declare-variant-3-sm30.c: Restrict
648 'scan-offload-tree-dump' to 'only_for_offload_target nvptx-none'.
649 * testsuite/libgomp.c/declare-variant-3-sm35.c: Likewise.
650 * testsuite/libgomp.c/declare-variant-3-sm53.c: Likewise.
651 * testsuite/libgomp.c/declare-variant-3-sm70.c: Likewise.
652 * testsuite/libgomp.c/declare-variant-3-sm75.c: Likewise.
653 * testsuite/libgomp.c/declare-variant-3-sm80.c: Likewise.
654 * testsuite/libgomp.c/declare-variant-4-fiji.c: Restrict
655 'scan-offload-tree-dump' to
656 'only_for_offload_target amdgcn-amdhsa'.
657 * testsuite/libgomp.c/declare-variant-4-gfx803.c: Likewise.
658 * testsuite/libgomp.c/declare-variant-4-gfx900.c: Likewise.
659 * testsuite/libgomp.c/declare-variant-4-gfx906.c: Likewise.
660 * testsuite/libgomp.c/declare-variant-4-gfx908.c: Likewise.
661 * testsuite/libgomp.c/declare-variant-4-gfx90a.c: Likewise.
662
663 2023-11-30 Thomas Schwinge <thomas (a] codesourcery.com>
664
665 * testsuite/libgomp.c/declare-variant-3-sm30.c:
666 'dg-additional-options -foffload=nvptx-none'.
667 * testsuite/libgomp.c/declare-variant-3-sm35.c: Likewise.
668 * testsuite/libgomp.c/declare-variant-3-sm53.c: Likewise.
669 * testsuite/libgomp.c/declare-variant-3-sm70.c: Likewise.
670 * testsuite/libgomp.c/declare-variant-3-sm75.c: Likewise.
671 * testsuite/libgomp.c/declare-variant-3-sm80.c: Likewise.
672
673 2023-11-29 Thomas Schwinge <thomas (a] codesourcery.com>
674
675 * testsuite/libgomp.c/target-simd-clone-1.c: Restrict
676 'scan-offload-ipa-dump's to
677 'only_for_offload_target amdgcn-amdhsa'.
678 * testsuite/libgomp.c/target-simd-clone-2.c: Likewise.
679 * testsuite/libgomp.c/target-simd-clone-3.c: Likewise.
680
681 2023-11-24 Tobias Burnus <tobias (a] codesourcery.com>
682
683 * libgomp.texi (5.2 Impl. Status): An argument to the destroy clause
684 is now supported.
685
686 2023-11-22 Thomas Schwinge <thomas (a] codesourcery.com>
687
688 * testsuite/libgomp.c/declare-variant-3.h (f30, f35, f53, f70)
689 (f75, f80, f): Add '__attribute__ ((noipa))'.
690 * testsuite/libgomp.c/declare-variant-4.h (gfx803, gfx900, gfx906)
691 (gfx908, gfx90a, f): Likewise.
692
693 2023-11-15 Andrew Stubbs <ams (a] codesourcery.com>
694 Andrew Jenner <andrew (a] codesourcery.com>
695
696 * plugin/plugin-gcn.c (max_isa_vgprs): New.
697 (run_kernel): CDNA2 devices have more VGPRs.
698
699 2023-11-10 Tobias Burnus <tobias (a] codesourcery.com>
700
701 * libgomp.texi (OpenMP Impl. Status): Update for OpenMP TR12;
702 renamed section from TR11.
703
704 2023-11-07 Kwok Cheung Yeung <kcy (a] codesourcery.com>
705
706 * config/linux/target-indirect.c: Move to...
707 * target-indirect.c: ...here.
708
709 2023-11-07 Kwok Cheung Yeung <kcy (a] codesourcery.com>
710
711 * Makefile.am (libgomp_la_SOURCES): Add target-indirect.c.
712 * Makefile.in: Regenerate.
713 * libgomp-plugin.h (GOMP_INDIRECT_ADDR_MAP): New define.
714 (GOMP_OFFLOAD_load_image): Add extra argument.
715 * libgomp.h (struct indirect_splay_tree_key_s): New.
716 (indirect_splay_tree_node, indirect_splay_tree,
717 indirect_splay_tree_key): New.
718 (indirect_splay_compare): New.
719 * libgomp.map (GOMP_5.1.1): Add GOMP_target_map_indirect_ptr.
720 * libgomp.texi (OpenMP 5.1): Update documentation on indirect
721 calls in target region and on indirect clause.
722 (Other new OpenMP 5.2 features): Add entry for virtual function calls.
723 * libgomp_g.h (GOMP_target_map_indirect_ptr): Add prototype.
724 * oacc-host.c (host_load_image): Add extra argument.
725 * target.c (gomp_load_image_to_device): If the GOMP_VERSION is high
726 enough, read host indirect functions table and pass to
727 load_image_func.
728 * config/accel/target-indirect.c: New.
729 * config/linux/target-indirect.c: New.
730 * config/gcn/team.c (build_indirect_map): Add prototype.
731 (gomp_gcn_enter_kernel): Initialize support for indirect
732 function calls on GCN target.
733 * config/nvptx/team.c (build_indirect_map): Add prototype.
734 (gomp_nvptx_main): Initialize support for indirect function
735 calls on NVPTX target.
736 * plugin/plugin-gcn.c (struct gcn_image_desc): Add field for
737 indirect functions count.
738 (GOMP_OFFLOAD_load_image): Add extra argument. If the GOMP_VERSION
739 is high enough, build address translation table and copy it to target
740 memory.
741 * plugin/plugin-nvptx.c (nvptx_tdata): Add field for indirect
742 functions count.
743 (GOMP_OFFLOAD_load_image): Add extra argument. If the GOMP_VERSION
744 is high enough, Build address translation table and copy it to target
745 memory.
746 * testsuite/libgomp.c-c++-common/declare-target-indirect-1.c: New.
747 * testsuite/libgomp.c-c++-common/declare-target-indirect-2.c: New.
748 * testsuite/libgomp.c++/declare-target-indirect-1.C: New.
749
750 2023-11-05 Jakub Jelinek <jakub (a] redhat.com>
751
752 * libgomp.texi (Enabling OpenMP): Adjust wording for attribute syntax
753 supported also in C.
754
755 2023-10-31 Thomas Schwinge <thomas (a] codesourcery.com>
756
757 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: Add OpenACC
758 'acc_map_data' variant.
759
760 2023-10-25 Thomas Schwinge <thomas (a] codesourcery.com>
761
762 * oacc-parallel.c (GOACC_data_start): Handle
763 'GOACC_FLAG_LOCAL_DEVICE'.
764 (GOACC_parallel_keyed): Simplify accordingly.
765 * testsuite/libgomp.oacc-fortran/self-1.f90: Adjust.
766
767 2023-10-25 Thomas Schwinge <thomas (a] codesourcery.com>
768
769 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Enhance.
770 * testsuite/libgomp.oacc-c-c++-common/self-1.c: Likewise.
771 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
772 * testsuite/libgomp.oacc-c-c++-common/if-self-1.c: New.
773 * testsuite/libgomp.oacc-fortran/self-1.f90: Likewise.
774
775 2023-10-25 Chung-Lin Tang <cltang (a] codesourcery.com>
776
777 * oacc-parallel.c (GOACC_parallel_keyed): Add code to handle
778 GOACC_FLAG_LOCAL_DEVICE case.
779 * testsuite/libgomp.oacc-c-c++-common/self-1.c: New test.
780
781 2023-10-22 Iain Sandoe <iain (a] sandoe.co.uk>
782
783 * Makefile.am: Handle Darwin rpaths.
784 * Makefile.in: Regenerate.
785 * configure: Regenerate.
786 * configure.ac: Handle Darwin rpaths
787
788 2023-10-20 Andrew Stubbs <ams (a] codesourcery.com>
789
790 * plugin/plugin-gcn.c (EF_AMDGPU_MACH_AMDGCN_GFX1030): New.
791 (isa_hsa_name): Recognise gfx1030.
792 (isa_code): Likewise.
793 * team.c (defined): Remove s_endpgm.
794
795 2023-10-20 Tobias Burnus <tobias (a] codesourcery.com>
796
797 * omp_lib.f90.in: Tag omp_lock_hint_* as being deprecated when
798 _OPENMP >= 201811.
799
800 2023-10-15 Tobias Burnus <tobias (a] codesourcery.com>
801
802 * libgomp.texi (Enabling OpenMP): Update for C/C++ attributes;
803 improve wording especially for Fortran; mention -fopenmp-simd.
804 (Enabling OpenACC): Minor cleanup; remove conditional compilation
805 sentinel.
806
807 2023-10-15 Tobias Burnus <tobias (a] codesourcery.com>
808
809 * libgomp.texi (ACC_DEVICE_TYPE, ACC_DEVICE_NUM, ACC_PROFLIB):
810 Actually document what the function does.
811 (GCC_ACC_NOTIFY): Remove unused env var.
812
813 2023-10-15 Tobias Burnus <tobias (a] codesourcery.com>
814
815 * libgomp.texi: Replace most future tense by present tense.
816
817 2023-10-14 Tobias Burnus <tobias (a] codesourcery.com>
818
819 * testsuite/libgomp.fortran/allocate-6.f90: Add missing
820 dg-additional-options "-fdump-tree-gimple"; fix scan.
821
822 2023-10-14 Tobias Burnus <tobias (a] codesourcery.com>
823
824 * libgomp.texi: Fix some typos.
825 (Memory Management Routines): Document remaining 5.x routines.
826 (Memory allocation): Make clear when the section applies.
827
828 2023-10-14 Tobias Burnus <tobias (a] codesourcery.com>
829
830 * libgomp.texi (OpenMP Impl. Status): Mention that Fortran now
831 supports the allocate directive for stack variables.
832 * testsuite/libgomp.fortran/allocate-5.f90: New test.
833 * testsuite/libgomp.fortran/allocate-6.f90: New test.
834 * testsuite/libgomp.fortran/allocate-7.f90: New test.
835 * testsuite/libgomp.fortran/allocate-8.f90: New test.
836
837 2023-10-12 Tobias Burnus <tobias (a] codesourcery.com>
838
839 * libgomp.texi (OMP_DEFAULT_DEVICE): Update spec ref; add @ref to
840 OMP_TARGET_OFFLOAD.
841 (OMP_TARGET_OFFLOAD): Update spec ref; add @ref to OMP_DEFAULT_DEVICE;
842 clarify MANDATORY behavior.
843
844 2023-10-12 Zhang, Jun <jun.zhang (a] intel.com>
845
846 * env.c (initialize_env): Use do_adjust_default_spincount.
847 * config/linux/x86/spincount.h: New file.
848
849 2023-10-08 Tobias Burnus <tobias (a] codesourcery.com>
850
851 * testsuite/libgomp.fortran/strictly-structured-block-1.f90: New test.
852
853 2023-10-06 Tobias Burnus <tobias (a] codesourcery.com>
854
855 * libgomp.texi (Device Memory Routines): New.
856
857 2023-10-04 Tobias Burnus <tobias (a] codesourcery.com>
858
859 * libgomp.texi (OpenMP Context Selectors): Clarify 'kind' trait
860 and that other target archs have no 'arch'/'isa' traits implemented.
861
862 2023-09-20 Tobias Burnus <tobias (a] codesourcery.com>
863
864 * libgomp.texi (OpenMP 5.1 Impl.): Mark 'omp allocate' as
865 implemented for C only.
866 * testsuite/libgomp.c/allocate-4.c: New test.
867 * testsuite/libgomp.c/allocate-5.c: New test.
868 * testsuite/libgomp.c/allocate-6.c: New test.
869
870 2023-09-20 Jakub Jelinek <jakub (a] redhat.com>
871
872 PR c++/111392
873 * libgomp.texi: Mark decl attribute was added to the C++ attribute
874 syntax as implemented.
875
876 2023-09-19 Jakub Jelinek <jakub (a] redhat.com>
877
878 PR libgomp/111413
879 * env.c (initialize_env): Don't dereference environ if it is NULL.
880 Reindent.
881
882 2023-09-18 Richard Biener <rguenther (a] suse.de>
883
884 PR tree-optimization/111294
885 * team.c (gomp_team_start): Assert alloca size to avoid false
886 positive alloc-size diagnostic.
887
888 2023-09-12 Thomas Schwinge <thomas (a] codesourcery.com>
889 Chung-Lin Tang <cltang (a] codesourcery.com>
890
891 PR testsuite/91884
892 PR testsuite/109951
893 * configure.ac: Revert earlier changes, instead
894 'AC_SUBST(SYSROOT_CFLAGS_FOR_TARGET)'.
895 * Makefile.in: Regenerate.
896 * configure: Likewise.
897 * testsuite/Makefile.in: Likewise.
898 * testsuite/lib/libgomp.exp (libgomp_init): Remove
899 "Fix up '-funconfigured-libstdc++-v3' in 'GXX_UNDER_TEST'" code.
900 If '--with-build-sysroot=[...]' was specified, use it for
901 build-tree testing.
902 * testsuite/libgomp-site-extra.exp.in (GCC_UNDER_TEST)
903 (GXX_UNDER_TEST, GFORTRAN_UNDER_TEST): Don't set.
904 (SYSROOT_CFLAGS_FOR_TARGET): Set.
905 * testsuite/libgomp.c++/c++.exp (lang_source_re)
906 (lang_include_flags): Set for build-tree testing.
907 * testsuite/libgomp.oacc-c++/c++.exp (lang_source_re)
908 (lang_include_flags): Likewise.
909
910 2023-09-07 Tobias Burnus <tobias (a] codesourcery.com>
911
912 * libgomp.texi (Memory Management Routines): New; add documentation for
913 omp_init_allocator, omp_destroy_allocator, omp_set_default_allocator,
914 omp_get_default_allocator.
915 (OMP_ALLOCATOR): Fix ICV var name; add see-also references.
916
917 2023-09-07 Tobias Burnus <tobias (a] codesourcery.com>
918
919 * target.c (gomp_unload_device): Remove tailing whitespace.
920
921 2023-09-04 Tobias Burnus <tobias (a] codesourcery.com>
922 Thomas Schwinge <thomas (a] codesourcery.com>
923
924 * testsuite/libgomp.c-c++-common/pr100059-1.c: New.
925
926 2023-08-25 Sandra Loosemore <sandra (a] codesourcery.com>
927
928 * libgomp.texi (OpenMP 5.0): Imperfectly-nested loops are done.
929
930 2023-08-25 Sandra Loosemore <sandra (a] codesourcery.com>
931
932 * testsuite/libgomp.fortran/imperfect-destructor.f90: New.
933 * testsuite/libgomp.fortran/imperfect1.f90: New.
934 * testsuite/libgomp.fortran/imperfect2.f90: New.
935 * testsuite/libgomp.fortran/imperfect3.f90: New.
936 * testsuite/libgomp.fortran/imperfect4.f90: New.
937 * testsuite/libgomp.fortran/target-imperfect1.f90: New.
938 * testsuite/libgomp.fortran/target-imperfect2.f90: New.
939 * testsuite/libgomp.fortran/target-imperfect3.f90: New.
940 * testsuite/libgomp.fortran/target-imperfect4.f90: New.
941
942 2023-08-25 Sandra Loosemore <sandra (a] codesourcery.com>
943
944 * testsuite/libgomp.c-c++-common/imperfect1.c: New.
945 * testsuite/libgomp.c-c++-common/imperfect2.c: New.
946 * testsuite/libgomp.c-c++-common/imperfect3.c: New.
947 * testsuite/libgomp.c-c++-common/imperfect4.c: New.
948 * testsuite/libgomp.c-c++-common/imperfect5.c: New.
949 * testsuite/libgomp.c-c++-common/imperfect6.c: New.
950 * testsuite/libgomp.c-c++-common/target-imperfect1.c: New.
951 * testsuite/libgomp.c-c++-common/target-imperfect2.c: New.
952 * testsuite/libgomp.c-c++-common/target-imperfect3.c: New.
953 * testsuite/libgomp.c-c++-common/target-imperfect4.c: New.
954
955 2023-08-25 Sandra Loosemore <sandra (a] codesourcery.com>
956
957 * testsuite/libgomp.c++/attrs-imperfect1.C: New test.
958 * testsuite/libgomp.c++/attrs-imperfect2.C: New test.
959 * testsuite/libgomp.c++/attrs-imperfect3.C: New test.
960 * testsuite/libgomp.c++/attrs-imperfect4.C: New test.
961 * testsuite/libgomp.c++/attrs-imperfect5.C: New test.
962 * testsuite/libgomp.c++/attrs-imperfect6.C: New test.
963 * testsuite/libgomp.c++/imperfect-class-1.C: New test.
964 * testsuite/libgomp.c++/imperfect-class-2.C: New test.
965 * testsuite/libgomp.c++/imperfect-class-3.C: New test.
966 * testsuite/libgomp.c++/imperfect-destructor.C: New test.
967 * testsuite/libgomp.c++/imperfect-template-1.C: New test.
968 * testsuite/libgomp.c++/imperfect-template-2.C: New test.
969 * testsuite/libgomp.c++/imperfect-template-3.C: New test.
970
971 2023-08-22 Francois-Xavier Coudert <fxcoudert (a] gmail.com>
972
973 * testsuite/lib/libgomp.exp: Add effective target.
974 * testsuite/libgomp.c/simd-math-1.c: Avoid calling nonstandard
975 functions.
976
977 2023-08-22 Tobias Burnus <tobias (a] codesourcery.com>
978
979 * libgomp.texi (OpenMP 5.2 status): Add depobj with
980 destroy-var argument as 'N'. Mark defaultmap with
981 'all' category as 'Y'.
982
983 2023-08-19 Tobias Burnus <tobias (a] codesourcery.com>
984
985 PR middle-end/111017
986 * testsuite/libgomp.c-c++-common/non-rect-loop-1.c: New test.
987
988 2023-08-17 Tobias Burnus <tobias (a] codesourcery.com>
989
990 PR libgomp/111024
991 * allocator.c (gomp_init_libnuma): Call numa_available; if
992 not available or not returning 0, disable libnuma usage.
993
994 2023-08-07 Nick Alcock <nick.alcock (a] oracle.com>
995
996 * configure: Regenerate.
997
998 2023-08-07 Alexander von Gluck IV <kallisti5 (a] unixzen.com>
999
1000 * configure: Regenerate.
1001
1002 2023-08-07 Nick Alcock <nick.alcock (a] oracle.com>
1003
1004 * configure: Regenerate.
1005
1006 2023-08-07 Nick Alcock <nick.alcock (a] oracle.com>
1007
1008 * configure: Regenerate.
1009
1010 2023-08-07 H.J. Lu <hjl.tools (a] gmail.com>
1011
1012 * configure: Regenerate.
1013
1014 2023-08-07 H.J. Lu <hjl.tools (a] gmail.com>
1015
1016 * configure: Regenerate.
1017
1018 2023-07-29 Tobias Burnus <tobias (a] codesourcery.com>
1019
1020 * target.c (omp_target_memcpy_rect_worker): Undo dim=1 change for
1021 GOMP_OFFLOAD_CAP_SHARED_MEM.
1022 (omp_target_memcpy_rect_copy): Likewise for lock condition.
1023 (gomp_load_plugin_for_device): Use DLSYM_OPT not DLSYM for
1024 memcpy3d/memcpy2d.
1025 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_memcpy2d,
1026 GOMP_OFFLOAD_memcpy3d): Use memset 0 to nullify reserved and
1027 unused src/dst fields for that mem type; remove '{src,dst}LOD = 0'.
1028
1029 2023-07-26 Tobias Burnus <tobias (a] codesourcery.com>
1030
1031 * libgomp-plugin.h (GOMP_OFFLOAD_memcpy2d,
1032 GOMP_OFFLOAD_memcpy3d): New prototypes.
1033 * libgomp.h (struct gomp_device_descr): Add memcpy2d_func
1034 and memcpy3d_func.
1035 * libgomp.texi (nvtpx): Document when cuMemcpy2D/cuMemcpy3D is used.
1036 * oacc-host.c (memcpy2d_func, .memcpy3d_func): Init with NULL.
1037 * plugin/cuda-lib.def (cuMemcpy2D, cuMemcpy2DUnaligned,
1038 cuMemcpy3D): Invoke via CUDA_ONE_CALL.
1039 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_memcpy2d,
1040 GOMP_OFFLOAD_memcpy3d): New.
1041 * target.c (omp_target_memcpy_rect_worker):
1042 (omp_target_memcpy_rect_check, omp_target_memcpy_rect_copy):
1043 Permit all device-to-device copyies; invoke new plugins for
1044 2D and 3D copying when available.
1045 (gomp_load_plugin_for_device): DLSYM the new plugin functions.
1046 * testsuite/libgomp.c/target-12.c: Fix dimension bug.
1047 * testsuite/libgomp.fortran/target-12.f90: Likewise.
1048 * testsuite/libgomp.fortran/target-memcpy-rect-1.f90: New test.
1049
1050 2023-07-26 Tobias Burnus <tobias (a] codesourcery.com>
1051
1052 * libgomp.texi (OpenMP 5.2 features): Add 'all' for 'defaultmap' as 'N'.
1053 (Tasking Routines): Document omp_in_explicit_task.
1054 (Implementation-defined ICV Initialization): Use @ref not @code.
1055
1056 2023-07-20 Tobias Burnus <tobias (a] codesourcery.com>
1057
1058 * libgomp.texi (OpenMP Runtime Library Routines):
1059 Split long list by adding sections and moving routines there.
1060 (OMP_ALLOCATORS): Fix typo.
1061
1062 2023-07-19 Tobias Burnus <tobias (a] codesourcery.com>
1063
1064 PR fortran/107424
1065 * libgomp.texi (Impl. Status 5.0): Add link to new PR110735.
1066 * testsuite/libgomp.fortran/non-rectangular-loop-1.f90: Enable
1067 commented tests.
1068 * testsuite/libgomp.fortran/non-rectangular-loop-1a.f90: Remove
1069 test file; tests are in non-rectangular-loop-1.f90.
1070 * testsuite/libgomp.fortran/non-rectangular-loop-5.f90: Change
1071 testcase to use a non-constant step to retain the 'sorry' test.
1072 * testsuite/libgomp.fortran/non-rectangular-loop-6.f90: New test.
1073
1074 2023-07-17 Tobias Burnus <tobias (a] codesoucery.com>
1075 Chung-Lin Tang <cltang (a] codesourcery.com>
1076
1077 * testsuite/libgomp.fortran/uses_allocators_1.f90: New test.
1078 * testsuite/libgomp.fortran/uses_allocators_2.f90: New test.
1079
1080 2023-07-14 Tobias Burnus <tobias (a] codesourcery.com>
1081
1082 * libgomp.texi (OMP_ALLOCATOR): Document the default values for
1083 the traits. Add crossref to 'Memory allocation'.
1084 (Memory allocation): Refer to OMP_ALLOCATOR for the available
1085 traits and allocators/mem spaces; document the default value
1086 for the pool_size trait.
1087
1088 2023-07-14 Tobias Burnus <tobias (a] codesourcery.com>
1089
1090 * allocator.c (omp_init_allocator): Check whether symbol from
1091 dlopened libnuma is available before using libnuma for
1092 allocations.
1093
1094 2023-07-13 David Edelsohn <dje.gcc (a] gmail.com>
1095
1096 * testsuite/libgomp.c++/target-map-class-2.C: Require LTO.
1097 * testsuite/libgomp.c-c++-common/requires-4.c: Require LTO.
1098 * testsuite/libgomp.c-c++-common/requires-4a.c: Require LTO.
1099
1100 2023-07-12 Tobias Burnus <tobias (a] codesourcery.com>
1101
1102 * libgomp.texi (OpenMP 5.0): Replace '... stub' by @ref to
1103 'Memory allocation' section which contains the full status.
1104 (TR11): Remove differently worded duplicated entry.
1105
1106 2023-07-12 Tobias Burnus <tobias (a] codesourcery.com>
1107
1108 * allocator.c: Add ifdef for LIBGOMP_USE_LIBNUMA.
1109 (enum gomp_numa_memkind_kind): Renamed from gomp_memkind_kind;
1110 add GOMP_MEMKIND_LIBNUMA.
1111 (struct gomp_libnuma_data, gomp_init_libnuma, gomp_get_libnuma): New.
1112 (omp_init_allocator): Handle partition=nearest with libnuma if avail.
1113 (omp_aligned_alloc, omp_free, omp_aligned_calloc, omp_realloc): Add
1114 numa_alloc_local (+ memset), numa_free, and numa_realloc calls as
1115 needed.
1116 * config/linux/allocator.c (LIBGOMP_USE_LIBNUMA): Define
1117 * libgomp.texi: Fix a typo; use 'fi' instead of its ligature char.
1118 (Memory allocation): Renamed from 'Memory allocation with libmemkind';
1119 updated for libnuma usage.
1120 * testsuite/libgomp.c-c++-common/alloc-11.c: New test.
1121 * testsuite/libgomp.c-c++-common/alloc-12.c: New test.
1122
1123 2023-07-11 Tobias Burnus <tobias (a] codesourcery.com>
1124
1125 * allocator.c (omp_init_allocator): Use malloc for
1126 omp_high_bw_mem_space when the memkind lib is unavailable
1127 instead of returning omp_null_allocator.
1128 * libgomp.texi (OpenMP 5.0): Fix typo.
1129 (Memory allocation with libmemkind): Document implementation
1130 in more detail.
1131
1132 2023-06-22 Tobias Burnus <tobias (a] codesourcery.com>
1133
1134 * libgomp.texi: Use @var for ICV vars.
1135 (OpenMP Environment Variables): Mention _ALL/_DEV/_DEV_<no> variants,
1136 document which ICV is set and which scope the ICV has; extend/cleanup
1137 some @ref.
1138 (Implementation-defined ICV Initialization): New.
1139 (nvptx): Document the implementation-defined used per-warp stack size.
1140
1141 2023-06-19 Thomas Schwinge <thomas (a] codesourcery.com>
1142
1143 * testsuite/libgomp.c/target-51.c: Fix DejaGnu directive syntax
1144 error.
1145
1146 2023-06-19 Tobias Burnus <tobias (a] codesourcery.com>
1147
1148 * testsuite/libgomp.c/target-51.c: Accept more error msg variants
1149 as expected dg-output.
1150
1151 2023-06-19 Tobias Burnus <tobias (a] codesourcery.com>
1152
1153 PR middle-end/110270
1154 * target.c (gomp_map_vars_internal): Copy host value instead of NULL
1155 for GOMP_MAP_ZERO_LEN_ARRAY_SECTION if not mapped.
1156 * libgomp.texi (OpenMP 5.2 Impl.): Mark as 'Y'.
1157 * testsuite/libgomp.c/target-19.c: Update expected value.
1158 * testsuite/libgomp.c++/target-18.C: Likewise.
1159 * testsuite/libgomp.c++/target-19.C: Likewise.
1160 * testsuite/libgomp.c-c++-common/requires-unified-addr-2.c: New test.
1161 * testsuite/libgomp.c-c++-common/target-implicit-map-3.c: New test.
1162 * testsuite/libgomp.c-c++-common/target-implicit-map-4.c: New test.
1163
1164 2023-06-16 Tobias Burnus <tobias (a] codesourcery.com>
1165
1166 * target.c (resolve_device): Call gomp_get_num_devices early to ensure
1167 gomp_init_targets_once was called before using default-device-var.
1168 * testsuite/libgomp.c/target-55.c: New test.
1169 * testsuite/libgomp.c/target-55a.c: New test.
1170
1171 2023-06-15 Tobias Burnus <tobias (a] codesourcery.com>
1172
1173 * env.c (gomp_def_allocator_envvar): New var.
1174 (parse_allocator): Handle OpenMP 5.1 syntax.
1175 (cleanup_env): New.
1176 (omp_display_env): Output gomp_def_allocator_envvar
1177 for an allocator with traits.
1178 * libgomp.texi (OMP_ALLOCATOR, OMP_AFFINITY_FORMAT,
1179 OMP_DISPLAY_AFFINITY): New.
1180 * testsuite/libgomp.c/allocator-1.c: New test.
1181 * testsuite/libgomp.c/allocator-2.c: New test.
1182 * testsuite/libgomp.c/allocator-3.c: New test.
1183 * testsuite/libgomp.c/allocator-4.c: New test.
1184 * testsuite/libgomp.c/allocator-5.c: New test.
1185 * testsuite/libgomp.c/allocator-6.c: New test.
1186
1187 2023-06-14 Thomas Schwinge <thomas (a] codesourcery.com>
1188
1189 * target.c (resolve_device): Align a
1190 'OMP_TARGET_OFFLOAD=mandatory' diagnostic with others.
1191 * testsuite/libgomp.c/target-51.c: Adjust.
1192
1193 2023-06-14 Thomas Schwinge <thomas (a] codesourcery.com>
1194
1195 * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Don't
1196 set.
1197 * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags):
1198 Likewise.
1199 * testsuite/libgomp.c/simd-math-1.c: Remove
1200 '-foffload-options=-lm'.
1201 * testsuite/libgomp.fortran/fortran-torture_execute_math.f90:
1202 Likewise.
1203 * testsuite/libgomp.oacc-fortran/fortran-torture_execute_math.f90:
1204 Likewise.
1205
1206 2023-06-14 Thomas Schwinge <thomas (a] codesourcery.com>
1207
1208 * testsuite/libgomp.fortran/fortran-torture_execute_math.f90: New.
1209 * testsuite/libgomp.oacc-fortran/fortran-torture_execute_math.f90:
1210 Likewise.
1211
1212 2023-06-14 Thomas Schwinge <thomas (a] codesourcery.com>
1213
1214 * testsuite/libgomp.c/target-51.c: Fix typo.
1215
1216 2023-06-14 Tobias Burnus <tobias (a] codesourcery.com>
1217
1218 * env.c (gomp_default_icv_values): Init default_device_var to
1219 an nonconforming value - INT_MIN.
1220 (initialize_env): After env-var parsing, set default_device_var to
1221 device 0 unless OMP_TARGET_OFFLOAD=mandatory.
1222 (omp_display_env): If default_device_var is INT_MIN, call
1223 gomp_init_targets_once.
1224 * icv-device.c (omp_get_default_device): Likewise.
1225 * libgomp.texi (OMP_DEFAULT_DEVICE): Update init description.
1226 (OpenMP 5.2 Impl. Status): Mark OMP_TARGET_OFFLOAD=mandatory as 'Y'.
1227 * target.c (resolve_device): Improve error message device-num < 0
1228 with 'mandatory' and no no-host devices available.
1229 (gomp_target_init): Set default-device-var if INT_MIN.
1230 * testsuite/libgomp.c/target-48.c: New test.
1231 * testsuite/libgomp.c/target-49.c: New test.
1232 * testsuite/libgomp.c/target-50.c: New test.
1233 * testsuite/libgomp.c/target-50a.c: New test.
1234 * testsuite/libgomp.c/target-51.c: New test.
1235 * testsuite/libgomp.c/target-52.c: New test.
1236 * testsuite/libgomp.c/target-53.c: New test.
1237 * testsuite/libgomp.c/target-54.c: New test.
1238
1239 2023-06-13 Tobias Burnus <tobias (a] codesourcery.com>
1240
1241 PR libgomp/109837
1242 * testsuite/libgomp.c-c++-common/requires-unified-addr-1.c: New test.
1243 * testsuite/libgomp.fortran/requires-unified-addr-1.f90: New test.
1244
1245 2023-06-12 Tobias Burnus <tobias (a] codesourcery.com>
1246
1247 * target.c (gomp_to_device_kind_p, gomp_map_vars_internal): Replace
1248 GOMP_MAP_PRESENT_{FROM,TO,TOFROM,ACLLOC} by GOMP_MAP_FORCE_PRESENT.
1249 (gomp_map_vars_internal, gomp_update): Likewise; unify and improve
1250 error message.
1251 * testsuite/libgomp.c-c++-common/target-present-2.c: Update for
1252 changed error message.
1253 * testsuite/libgomp.fortran/target-present-1.f90: Likewise.
1254 * testsuite/libgomp.fortran/target-present-2.f90: Likewise.
1255 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
1256 * testsuite/libgomp.c-c++-common/target-present-1.c: Likewise and
1257 extend testcase to check that data is copied when needed.
1258 * testsuite/libgomp.c-c++-common/target-present-3.c: Likewise.
1259 * testsuite/libgomp.fortran/target-present-3.f90: Likewise.
1260
1261 2023-06-07 Thomas Schwinge <thomas (a] codesourcery.com>
1262 Tobias Burnus <tobias (a] codesourcery.com>
1263
1264 * testsuite/libgomp.c-c++-common/target-present-1.c: Run code
1265 also for non-offload_device targets; check that it runs
1266 successfully for those and for all until a checkpoint for all
1267 * testsuite/libgomp.c-c++-common/target-present-2.c: Likewise.
1268 * testsuite/libgomp.c-c++-common/target-present-3.c: Likewise.
1269 * testsuite/libgomp.fortran/target-present-1.f90: Likewise.
1270 * testsuite/libgomp.fortran/target-present-3.f90: Likewise.
1271 * testsuite/libgomp.fortran/target-present-2.f90: Likewise;
1272 add missing vars to map clause.
1273
1274 2023-06-06 Tobias Burnus <tobias (a] codesourcery.com>
1275
1276 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Regard
1277 unified_address requirement as supported.
1278 * libgomp.texi (OpenMP 5.0, AMD Radeon, nvptx): Remove
1279 'unified_address' from the not-supported requirements.
1280
1281 2023-06-06 Kwok Cheung Yeung <kcy (a] codesourcery.com>
1282 Tobias Burnus <tobias (a] codesourcery.com>
1283
1284 * libgomp.texi (OpenMP 5.1 Impl. status): Set 'present' support for
1285 defaultmap to 'Y', add 'Y' entry for 'present' on to/from/map clauses.
1286 * target.c (gomp_to_device_kind_p): Add map kinds with 'present'
1287 modifier.
1288 (gomp_map_vars_existing): Use new GOMP_MAP_FORCE_P macro.
1289 (gomp_map_vars_internal, gomp_update, gomp_target_rev):
1290 Emit runtime error if memory region not present.
1291 * testsuite/libgomp.c-c++-common/target-present-1.c: New test.
1292 * testsuite/libgomp.c-c++-common/target-present-2.c: New test.
1293 * testsuite/libgomp.c-c++-common/target-present-3.c: New test.
1294 * testsuite/libgomp.fortran/target-present-1.f90: New test.
1295 * testsuite/libgomp.fortran/target-present-2.f90: New test.
1296 * testsuite/libgomp.fortran/target-present-3.f90: New test.
1297
1298 2023-06-02 Thomas Schwinge <thomas (a] codesourcery.com>
1299
1300 PR testsuite/66005
1301 * testsuite/lib/libgomp.exp: 'flock' through stdout.
1302 * testsuite/flock: New.
1303 * configure.ac (FLOCK): Point to that if no 'flock' available, but
1304 'perl' is.
1305 * configure: Regenerate.
1306
1307 2023-06-02 Thomas Schwinge <thomas (a] codesourcery.com>
1308
1309 * configure.ac (PERL): Remove.
1310 * configure: Regenerate.
1311 * Makefile.in: Likewise.
1312 * testsuite/Makefile.in: Likewise.
1313
1314 2023-06-01 Tobias Burnus <tobias (a] codesourcery.com>
1315
1316 * libgomp.texi (OpenMP 5.2): Mark pure-directive handling as 'Y'.
1317
1318 2023-05-26 Tobias Burnus <tobias (a] codesourcery.com>
1319
1320 * testsuite/libgomp.fortran/allocate-4.f90: Update dg-error.
1321
1322 2023-05-21 Tobias Burnus <tobias (a] codesourcery.com>
1323
1324 PR libgomp/109875
1325 * config/gcn/target.c (GOMP_teams4): Honor nteams-var ICV.
1326 * config/nvptx/target.c (GOMP_teams4): Likewise.
1327 * testsuite/libgomp.c-c++-common/teams-nteams-icv-1.c: New test.
1328 * testsuite/libgomp.c-c++-common/teams-nteams-icv-2.c: New test.
1329 * testsuite/libgomp.c-c++-common/teams-nteams-icv-3.c: New test.
1330 * testsuite/libgomp.c-c++-common/teams-nteams-icv-4.c: New test.
1331
1332 2023-05-19 Jakub Jelinek <jakub (a] redhat.com>
1333
1334 PR libgomp/109904
1335 * configure.ac (link_gomp): Include also $DL_LIBS.
1336 * configure: Regenerated.
1337
1338 2023-05-17 Tobias Burnus <tobias (a] codesourcery.com>
1339
1340 * testsuite/libgomp.fortran/target-enter-data-3.f90: Uncomment
1341 'target exit data'.
1342 * testsuite/libgomp.fortran/target-enter-data-4.f90: New test.
1343 * testsuite/libgomp.fortran/target-enter-data-5.f90: New test.
1344 * testsuite/libgomp.fortran/target-enter-data-6.f90: New test.
1345 * testsuite/libgomp.fortran/target-enter-data-7.f90: New test.
1346
1347 2023-05-15 Thomas Schwinge <thomas (a] codesourcery.com>
1348
1349 PR testsuite/66005
1350 * configure.ac: Look for 'flock'.
1351 * testsuite/Makefile.am (gcc_test_parallel_slots): Enable parallel testing.
1352 * testsuite/config/default.exp: Don't 'load_lib "standard.exp"' here...
1353 * testsuite/lib/libgomp.exp: ... but here, instead.
1354 (libgomp_load): Override for parallel testing.
1355 * testsuite/libgomp-site-extra.exp.in (FLOCK): Set.
1356 * configure: Regenerate.
1357 * Makefile.in: Regenerate.
1358 * testsuite/Makefile.in: Regenerate.
1359
1360 2023-05-15 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
1361 Thomas Schwinge <thomas (a] codesourcery.com>
1362
1363 PR testsuite/66005
1364 * testsuite/Makefile.am (PWD_COMMAND): New variable.
1365 (%/site.exp): New target.
1366 (check_p_numbers0, check_p_numbers1, check_p_numbers2)
1367 (check_p_numbers3, check_p_numbers4, check_p_numbers5)
1368 (check_p_numbers6, check_p_numbers, gcc_test_parallel_slots)
1369 (check_p_subdirs)
1370 (check_DEJAGNU_libgomp_targets): New variables.
1371 ($(check_DEJAGNU_libgomp_targets)): New target.
1372 ($(check_DEJAGNU_libgomp_targets)): New dependency.
1373 (check-DEJAGNU $(check_DEJAGNU_libgomp_targets)): New targets.
1374 * testsuite/Makefile.in: Regenerate.
1375 * testsuite/lib/libgomp.exp: For parallel testing,
1376 'load_file ../libgomp-test-support.exp'.
1377
1378 2023-05-15 Thomas Schwinge <thomas (a] codesourcery.com>
1379
1380 PR testsuite/91884
1381 * configure.ac: 'AC_SUBST(CXX)'.
1382 * configure: Regenerate.
1383 * Makefile.in: Likewise.
1384 * testsuite/Makefile.in: Likewise.
1385 * testsuite/libgomp-site-extra.exp.in (GXX_UNDER_TEST)
1386 (GFORTRAN_UNDER_TEST): Set.
1387 * testsuite/lib/libgomp.exp (libgomp_init): Adjust.
1388 * testsuite/libgomp.c++/c++.exp: Use 'GXX_UNDER_TEST'.
1389 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1390 * testsuite/libgomp.fortran/fortran.exp: Use
1391 'GFORTRAN_UNDER_TEST'.
1392 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1393
1394 2023-05-15 Thomas Schwinge <thomas (a] codesourcery.com>
1395
1396 PR testsuite/91884
1397 * testsuite/lib/libgomp.exp (libgomp_target_compile): Don't
1398 specify compiler.
1399 * testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Specify compiler.
1400 * testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
1401 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
1402 * testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
1403 Likewise.
1404 * testsuite/libgomp.oacc-c++/c++.exp (ALWAYS_CFLAGS): Likewise.
1405 * testsuite/libgomp.oacc-c/c.exp (ALWAYS_CFLAGS): Likewise.
1406 * testsuite/libgomp.oacc-fortran/fortran.exp (ALWAYS_CFLAGS):
1407 Likewise.
1408
1409 2023-05-12 Tobias Burnus <tobias (a] codesourcery.com>
1410
1411 PR libstdc++/109816
1412 * testsuite/libgomp.c++/target-map-class-1.C: New test.
1413 * testsuite/libgomp.c++/target-map-class-2.C: New test.
1414
1415 2023-05-12 Thomas Schwinge <thomas (a] codesourcery.com>
1416
1417 * testsuite/lib/libgomp.exp (libgomp_target_compile): Generalize
1418 'lang_library_path' into a list of 'lang_library_paths'.
1419 * testsuite/libgomp.c++/c++.exp: Adjust.
1420 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1421 * testsuite/libgomp.fortran/fortran.exp: Adjust. Use that for
1422 libquadmath, too.
1423 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1424
1425 2023-05-12 Thomas Schwinge <thomas (a] codesourcery.com>
1426
1427 * testsuite/lib/libgomp.exp (libgomp_target_compile): Don't look
1428 at 'lang_test_file_found'.
1429 * testsuite/libgomp.c++/c++.exp: Don't set and use it, and instead
1430 'return' early if not able to test. Simplify 'ld_library_path' setup.
1431 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1432 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1433 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1434
1435 2023-05-12 Thomas Schwinge <thomas (a] codesourcery.com>
1436
1437 * testsuite/libgomp.c++/c++.exp: Resolve 'lang_test_file_found'
1438 first.
1439 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1440 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1441 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1442
1443 2023-05-12 Thomas Schwinge <thomas (a] codesourcery.com>
1444
1445 * testsuite/libgomp.c++/c++.exp: Localize 'lang_[...]' etc.
1446 * testsuite/libgomp.c/c.exp: Likewise.
1447 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1448 * testsuite/libgomp.graphite/graphite.exp: Likewise.
1449 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1450 * testsuite/libgomp.oacc-c/c.exp: Likewise.
1451 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1452
1453 2023-05-09 Thomas Schwinge <thomas (a] codesourcery.com>
1454
1455 * testsuite/libgomp.c++/c++.exp: Don't set 'lang_test_file'.
1456 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1457 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1458 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1459 * testsuite/libgomp.c/c.exp: Unset 'lang_test_file_found' instead of
1460 'lang_test_file'.
1461 * testsuite/libgomp.oacc-c/c.exp: Likewise.
1462 * testsuite/libgomp.graphite/graphite.exp: Likewise.
1463 * testsuite/lib/libgomp.exp (libgomp_target_compile): Look for
1464 'lang_test_file_found' instead of 'lang_test_file'.
1465
1466 2023-05-09 Thomas Schwinge <thomas (a] codesourcery.com>
1467
1468 * testsuite/lib/libgomp.exp (libgomp_init): Only use 'blddir' if
1469 set.
1470 * testsuite/libgomp.c++/c++.exp: Likewise.
1471 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1472
1473 2023-05-09 Thomas Schwinge <thomas (a] codesourcery.com>
1474
1475 * testsuite/libgomp.c++/c++.exp (blddir): Don't set.
1476 * testsuite/libgomp.oacc-c++/c++.exp (blddir): Likewise.
1477
1478 2023-05-08 Thomas Schwinge <thomas (a] codesourcery.com>
1479
1480 * testsuite/libgomp.c++/c++.exp: Use 'lang_include_flags' instead
1481 of 'libstdcxx_includes'.
1482 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1483
1484 2023-05-08 Thomas Schwinge <thomas (a] codesourcery.com>
1485
1486 * target.c (gomp_target_rev): Instead of 'dev_to_host_cpy',
1487 'host_to_dev_cpy', 'token', take a single 'goacc_asyncqueue'.
1488 * libgomp.h (gomp_target_rev): Adjust.
1489 * libgomp-plugin.c (GOMP_PLUGIN_target_rev): Adjust.
1490 * libgomp-plugin.h (GOMP_PLUGIN_target_rev): Adjust.
1491 * plugin/plugin-gcn.c (process_reverse_offload): Adjust.
1492 * plugin/plugin-nvptx.c (rev_off_dev_to_host_cpy)
1493 (rev_off_host_to_dev_cpy): Remove.
1494 (GOMP_OFFLOAD_run): Adjust.
1495
1496 2023-05-04 Julian Brown <julian (a] codesourcery.com>
1497
1498 PR fortran/109622
1499 * testsuite/libgomp.fortran/pr109622.f90: Move test...
1500 * testsuite/libgomp.oacc-fortran/pr109622.f90: ...to here. Ignore
1501 vector length warning.
1502 * testsuite/libgomp.fortran/pr109622-2.f90: Move test...
1503 * testsuite/libgomp.oacc-fortran/pr109622-2.f90: ...to here. Add
1504 missing copyin/copyout variable. Ignore vector length warnings.
1505 * testsuite/libgomp.fortran/pr109622-3.f90: Move test...
1506 * testsuite/libgomp.oacc-fortran/pr109622-3.f90: ...to here. Ignore
1507 vector length warnings.
1508 * testsuite/libgomp.oacc-fortran/pr109622-4.f90: New test.
1509
1510 2023-04-28 Julian Brown <julian (a] codesourcery.com>
1511
1512 PR fortran/109622
1513 * testsuite/libgomp.fortran/pr109622.f90: New test.
1514 * testsuite/libgomp.fortran/pr109622-2.f90: New test.
1515 * testsuite/libgomp.fortran/pr109622-3.f90: New test.
1516
1517 2023-04-25 Tobias Burnus <tobias (a] codesourcery.com>
1518
1519 * testsuite/libgomp.c-c++-common/scan-1.c: New test.
1520 * testsuite/libgomp.c/scan-23.c: New test.
1521 * testsuite/libgomp.fortran/scan-2.f90: New test.
1522
1523 2023-03-28 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
1524
1525 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c: Add
1526 weak_undefined options.
1527
1528 2023-03-24 Tobias Burnus <tobias (a] codesourcery.com>
1529
1530 * libgomp.texi (Offload-Target Specifics): Grammar fix.
1531
1532 2023-03-24 Thomas Schwinge <thomas (a] codesourcery.com>
1533
1534 PR fortran/104949
1535 * target.c (gomp_map_vars_internal) <GOMP_MAP_FIRSTPRIVATE>: Add
1536 caveat/safeguard.
1537
1538 2023-03-10 Thomas Schwinge <thomas (a] codesourcery.com>
1539
1540 PR libgomp/90596
1541 * target.c (gomp_map_vars_internal): Allow for
1542 'param_kind == GOMP_MAP_VARS_OPENACC | GOMP_MAP_VARS_TARGET'.
1543 * oacc-parallel.c (GOACC_parallel_keyed): Pass
1544 'GOMP_MAP_VARS_TARGET' to 'goacc_map_vars'.
1545 * plugin/plugin-gcn.c (alloc_by_agent, gcn_exec)
1546 (GOMP_OFFLOAD_openacc_exec, GOMP_OFFLOAD_openacc_async_exec):
1547 Adjust, simplify.
1548 (gomp_offload_free): Remove.
1549 * plugin/plugin-nvptx.c (nvptx_exec, GOMP_OFFLOAD_openacc_exec)
1550 (GOMP_OFFLOAD_openacc_async_exec): Adjust, simplify.
1551 (cuda_free_argmem): Remove.
1552 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
1553 Adjust.
1554
1555 2023-03-10 Thomas Schwinge <thomas (a] codesourcery.com>
1556
1557 * target.c (gomp_copy_host2dev, gomp_map_vars_internal): Allow
1558 libgomp 'cbuf' buffering with OpenACC 'async' for 'ephemeral'
1559 data.
1560
1561 2023-03-10 Thomas Schwinge <thomas (a] codesourcery.com>
1562
1563 * target.c (gomp_map_vars_internal): Use 'OFFSET_INLINED' for
1564 'GOMP_MAP_IF_PRESENT'.
1565 * plugin/plugin-gcn.c (gcn_exec, GOMP_OFFLOAD_openacc_exec)
1566 (GOMP_OFFLOAD_openacc_async_exec): Adjust.
1567 * plugin/plugin-nvptx.c (nvptx_exec, GOMP_OFFLOAD_openacc_exec)
1568 (GOMP_OFFLOAD_openacc_async_exec): Likewise.
1569 * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: Add 'async'
1570 testing.
1571 * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: Likewise.
1572
1573 2023-03-10 Thomas Schwinge <thomas (a] codesourcery.com>
1574
1575 * oacc-async.c (goacc_wait): Remove 'acc_async_test' -> skip
1576 shortcut.
1577
1578 2023-03-10 Thomas Schwinge <thomas (a] codesourcery.com>
1579
1580 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Document/verify
1581 another aspect of OpenACC 'async' semantics.
1582
1583 2023-03-10 Thomas Schwinge <thomas (a] codesourcery.com>
1584
1585 * plugin/plugin-gcn.c (gcn_exec): Fix 'acc_ev_enqueue_launch_end'
1586 position.
1587 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
1588 Verify 'acc_ev_alloc', 'acc_ev_free'.
1589
1590 2023-03-09 Hongyu Wang <hongyu.wang (a] intel.com>
1591
1592 PR libgomp/109062
1593 * env.c (wait_policy): Initialize to -1.
1594 (initialize_icvs): Initialize icvs->wait_policy to -1.
1595 * testsuite/libgomp.c-c++-common/pr109062.c: New test.
1596
1597 2023-03-08 Tobias Burnus <tobias (a] codesourcery.com>
1598
1599 * libgomp.texi (Offload-Target Specifics): Mention GCN_STACK_SIZE.
1600
1601 2023-03-02 Kwok Cheung Yeung <kcy (a] codesourcery.com>
1602 Paul-Antoine Arras <pa (a] codesourcery.com>
1603
1604 * testsuite/libgomp.c/simd-math-1.c: New testcase.
1605
1606 2023-03-01 Tobias Burnus <tobias (a] codesourcery.com>
1607
1608 PR middle-end/108546
1609 * testsuite/libgomp.fortran/is_device_ptr-3.f90: New test.
1610 * testsuite/libgomp.fortran/use_device_ptr-optional-4.f90: New test.
1611
1612 2023-02-22 Thomas Schwinge <thomas (a] codesourcery.com>
1613
1614 * testsuite/libgomp.fortran/alloc-10.f90: Use
1615 '-Wno-complain-wrong-lang'.
1616 * testsuite/libgomp.fortran/alloc-11.f90: Likewise.
1617 * testsuite/libgomp.fortran/alloc-7.f90: Likewise.
1618 * testsuite/libgomp.fortran/alloc-9.f90: Likewise.
1619 * testsuite/libgomp.fortran/allocate-1.f90: Likewise.
1620 * testsuite/libgomp.fortran/depend-4.f90: Likewise.
1621 * testsuite/libgomp.fortran/depend-5.f90: Likewise.
1622 * testsuite/libgomp.fortran/depend-6.f90: Likewise.
1623 * testsuite/libgomp.fortran/depend-7.f90: Likewise.
1624 * testsuite/libgomp.fortran/depend-inoutset-1.f90: Likewise.
1625 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90:
1626 Likewise.
1627 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90:
1628 Likewise.
1629 * testsuite/libgomp.fortran/order-reproducible-1.f90: Likewise.
1630 * testsuite/libgomp.fortran/order-reproducible-2.f90: Likewise.
1631 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
1632 * testsuite/libgomp.fortran/task-detach-6.f90: Remove left-over
1633 'dg-prune-output'.
1634
1635 2023-02-16 Jakub Jelinek <jakub (a] redhat.com>
1636
1637 * libgomp.texi: Fix typos - theads -> threads.
1638
1639 2023-02-16 Jakub Jelinek <jakub (a] redhat.com>
1640
1641 * testsuite/libgomp.fortran/target-nowait-array-section.f90: Fix
1642 comment typo and improve its wording.
1643
1644 2023-02-15 Tobias Burnus <tobias (a] codesourcery.com>
1645
1646 * target.c (gomp_target_rev): Dereference ptr
1647 to get device address.
1648 * testsuite/libgomp.fortran/reverse-offload-5.f90: Add test
1649 for unallocated allocatable.
1650
1651 2023-02-15 Tobias Burnus <tobias (a] codesourcery.com>
1652
1653 * target.c (gomp_map_vars_internal): Add 'i > 0' before doing a
1654 kind check.
1655 (GOMP_target_enter_exit_data): If the next map item is
1656 GOMP_MAP_ALWAYS_POINTER map it together with the current item.
1657 * testsuite/libgomp.fortran/target-enter-data-3.f90: New test.
1658
1659 2023-02-09 Tobias Burnus <tobias (a] codesourcery.com>
1660
1661 PR fortran/107424
1662 * testsuite/libgomp.fortran/non-rectangular-loop-1.f90: New test.
1663 * testsuite/libgomp.fortran/non-rectangular-loop-1a.f90: New test.
1664 * testsuite/libgomp.fortran/non-rectangular-loop-2.f90: New test.
1665 * testsuite/libgomp.fortran/non-rectangular-loop-3.f90: New test.
1666 * testsuite/libgomp.fortran/non-rectangular-loop-4.f90: New test.
1667 * testsuite/libgomp.fortran/non-rectangular-loop-5.f90: New test.
1668
1669 2023-02-07 Thomas Schwinge <thomas (a] codesourcery.com>
1670
1671 * testsuite/libgomp.fortran/reverse-offload-6.f90: Fix nvptx
1672 offloading compilation.
1673
1674 2023-02-03 Tobias Burnus <tobias (a] codesourcery.com>
1675
1676 * target.c (gomp_target_rev): Handle mapnum == 0 and avoid
1677 freeing not allocated memory.
1678 * testsuite/libgomp.fortran/reverse-offload-6.f90: New test.
1679
1680 2023-02-03 Tobias Burnus <tobias (a] codesourcery.com>
1681
1682 * libgomp.texi (5.0 Impl. Status, gcn specifics): Update for
1683 reverse offload.
1684 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Accept
1685 reverse-offload requirement.
1686
1687 2023-02-02 Andrew Stubbs <ams (a] codesourcery.com>
1688
1689 * config/gcn/libgomp-gcn.h (DEFAULT_GCN_STACK_SIZE): New define.
1690 (DEFAULT_TEAM_ARENA_SIZE): New define.
1691 (struct heap): Move to this file.
1692 (struct kernargs_abi): Likewise.
1693 * config/gcn/team.c (gomp_gcn_enter_kernel): Use team arena size from
1694 the kernargs.
1695 * libgomp.h: Include libgomp-gcn.h.
1696 (TEAM_ARENA_SIZE): Remove.
1697 (team_malloc): Update the error message.
1698 * plugin/plugin-gcn.c (struct kernargs): Move common content to
1699 struct kernargs_abi.
1700 (struct agent_info): Rename team arenas to ephemeral memories.
1701 (struct team_arena_list): Rename ....
1702 (struct ephemeral_memories_list): to this.
1703 (struct heap): Delete.
1704 (team_arena_size): New variable.
1705 (stack_size): New variable.
1706 (print_kernel_dispatch): Update debug messages.
1707 (init_environment_variables): Read GCN_TEAM_ARENA_SIZE.
1708 Read GCN_STACK_SIZE.
1709 (get_team_arena): Rename ...
1710 (configure_ephemeral_memories): ... to this, and set up stacks.
1711 (release_team_arena): Rename ...
1712 (release_ephemeral_memories): ... to this.
1713 (destroy_team_arenas): Rename ...
1714 (destroy_ephemeral_memories): ... to this.
1715 (create_kernel_dispatch): Add num_threads parameter.
1716 Adjust for kernargs_abi refactor and ephemeral memories.
1717 (release_kernel_dispatch): Adjust for ephemeral memories.
1718 (run_kernel): Pass thread-count to create_kernel_dispatch.
1719 (GOMP_OFFLOAD_init_device): Adjust for ephemeral memories.
1720 (GOMP_OFFLOAD_fini_device): Adjust for ephemeral memories.
1721
1722 2023-02-02 Tobias Burnus <tobias (a] codesourcery.com>
1723
1724 * libgomp.texi (OpenMP TR11): Fix item for 'strict' modifier.
1725
1726 2023-02-01 Tobias Burnus <tobias (a] codesourcery.com>
1727
1728 * testsuite/libgomp.fortran/allocate-3.f90: Fix ALIGN
1729 usage, remove unused -fdump-tree-original.
1730 * testsuite/libgomp.fortran/allocate-4.f90: New.
1731
1732 2023-02-01 Tobias Burnus <tobias (a] codesourcery.com>
1733
1734 * libgomp.texi (5.0 Impl. Status): Update 'requires' and 'ancestor'.
1735 (GCN): Add item about 'omp requires'.
1736 (nvptx): Likewise; add item about reverse offload.
1737
1738 2023-01-27 Tobias Burnus <tobias (a] codesourcery.com>
1739
1740 PR fortran/108558
1741 * testsuite/libgomp.fortran/has_device_addr.f90: New test.
1742
1743 2023-01-23 Tobias Burnus <tobias (a] codesourcery.com>
1744
1745 * libgomp.texi (OpenMP 5.0): Set non-rectangular
1746 loop nest back to 'P' as Fortran support is incomplete.
1747
1748 2023-01-19 Jakub Jelinek <jakub (a] redhat.com>
1749
1750 PR middle-end/108459
1751 * testsuite/libgomp.c/pr108459.c: New test.
1752
1753 2023-01-17 Martin Liska <mliska (a] suse.cz>
1754
1755 * Makefile.in: Regenerate.
1756 * configure: Regenerate.
1757
1758 2023-01-07 LIU Hao <lh_mouse (a] 126.com>
1759
1760 PR middle-end/108300
1761 * config/mingw32/proc.c: Define `WIN32_LEAN_AND_MEAN` before
1762 <windows.h>.
1763
1764 2023-01-05 Jakub Jelinek <jakub (a] redhat.com>
1765
1766 PR c++/108286
1767 * testsuite/libgomp.c++/pr108286.C: New test.
1768
1769 2023-01-02 Jakub Jelinek <jakub (a] redhat.com>
1770
1771 * libgomp.texi: Bump @copying's copyright year.
1772
1773 2022-12-21 Chung-Lin Tang <cltang (a] codesourcery.com>
1774
1775 PR target/99555
1776 * config/nvptx/bar.c (generation_to_barrier): Remove.
1777 (futex_wait,futex_wake,do_spin,do_wait): Remove.
1778 (GOMP_WAIT_H): Remove.
1779 (#include "../linux/bar.c"): Remove.
1780 (gomp_barrier_wait_end): New function.
1781 (gomp_barrier_wait): Likewise.
1782 (gomp_barrier_wait_last): Likewise.
1783 (gomp_team_barrier_wait_end): Likewise.
1784 (gomp_team_barrier_wait): Likewise.
1785 (gomp_team_barrier_wait_final): Likewise.
1786 (gomp_team_barrier_wait_cancel_end): Likewise.
1787 (gomp_team_barrier_wait_cancel): Likewise.
1788 (gomp_team_barrier_cancel): Likewise.
1789 * config/nvptx/bar.h (gomp_barrier_t): Remove waiters, lock fields.
1790 (gomp_barrier_init): Remove init of waiters, lock fields.
1791 (gomp_team_barrier_wake): Remove prototype, add new static inline
1792 function.
1793
1794 2022-12-21 Jakub Jelinek <jakub (a] redhat.com>
1795
1796 PR c++/108180
1797 * testsuite/libgomp.c++/pr108180.C: New test.
1798
1799 2022-12-16 Tobias Burnus <tobias (a] codesourcery.com>
1800
1801 PR libfortran/108056
1802 * testsuite/libgomp.fortran/allocate-4.f90: Remove
1803 accidentally added file.
1804
1805 2022-12-15 Tobias Burnus <tobias (a] codesourcery.com>
1806
1807 PR libfortran/108056
1808 * testsuite/libgomp.fortran/allocate-4.f90: New file.
1809
1810 2022-12-14 Julian Brown <julian (a] codesourcery.com>
1811
1812 * testsuite/libgomp.fortran/combined-directive-splitting-1.f90: New
1813 test.
1814
1815 2022-12-10 Tobias Burnus <tobias (a] codesourcery.com>
1816
1817 * libgomp.h (struct target_mem_desc): Predeclare; move
1818 below after 'reverse_splay_tree_node' and add rev_array
1819 member.
1820 (struct reverse_splay_tree_key_s, reverse_splay_compare): New.
1821 (reverse_splay_tree_node, reverse_splay_tree,
1822 reverse_splay_tree_key): New typedef.
1823 (struct gomp_device_descr): Add mem_map_rev member.
1824 * oacc-host.c (host_dispatch): NULL init .mem_map_rev.
1825 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_get_num_devices): Claim
1826 support for GOMP_REQUIRES_REVERSE_OFFLOAD.
1827 * splay-tree.h (splay_tree_callback_stop): New typedef; like
1828 splay_tree_callback but returning int not void.
1829 (splay_tree_foreach_lazy): Define; like splay_tree_foreach but
1830 taking splay_tree_callback_stop as argument.
1831 * splay-tree.c (splay_tree_foreach_internal_lazy,
1832 splay_tree_foreach_lazy): New; but early exit if callback returns
1833 nonzero.
1834 * target.c: Instatiate splay_tree_c with splay_tree_prefix 'reverse'.
1835 (gomp_map_lookup_rev): New.
1836 (gomp_load_image_to_device): Handle reverse-offload function
1837 lookup table.
1838 (gomp_unload_image_from_device): Free devicep->mem_map_rev.
1839 (struct gomp_splay_tree_rev_lookup_data, gomp_splay_tree_rev_lookup,
1840 gomp_map_rev_lookup, struct cpy_data, gomp_map_cdata_lookup_int,
1841 gomp_map_cdata_lookup): New auxiliary structs and functions for
1842 gomp_target_rev.
1843 (gomp_target_rev): Implement reverse offloading and its mapping.
1844 (gomp_target_init): Init current_device.mem_map_rev.root.
1845 * testsuite/libgomp.fortran/reverse-offload-2.f90: New test.
1846 * testsuite/libgomp.fortran/reverse-offload-3.f90: New test.
1847 * testsuite/libgomp.fortran/reverse-offload-4.f90: New test.
1848 * testsuite/libgomp.fortran/reverse-offload-5.f90: New test.
1849 * testsuite/libgomp.fortran/reverse-offload-5a.f90: New test without
1850 mapping of on-device allocated variables.
1851
1852 2022-12-09 Tobias Burnus <tobias (a] codesourcery.com>
1853
1854 * libgomp.texi (5.1 Impl. Status): Split allocate clause/directive
1855 item about 'align'; mark clause as 'Y' and directive as 'N'.
1856 * testsuite/libgomp.fortran/allocate-2.f90: New test.
1857 * testsuite/libgomp.fortran/allocate-3.f90: New test.
1858
1859 2022-12-06 Marcel Vollweiler <marcel (a] codesourcery.com>
1860
1861 * config/gcn/icv-device.c (omp_get_teams_thread_limit): Added to
1862 allow processing of device-specific values.
1863 (omp_set_teams_thread_limit): Likewise.
1864 (ialias): Likewise.
1865 * config/nvptx/icv-device.c (omp_get_teams_thread_limit): Likewise.
1866 (omp_set_teams_thread_limit): Likewise.
1867 (ialias): Likewise.
1868 * icv-device.c (omp_get_teams_thread_limit): Likewise.
1869 (ialias): Likewise.
1870 (omp_set_teams_thread_limit): Likewise.
1871 * icv.c (omp_set_teams_thread_limit): Removed.
1872 (omp_get_teams_thread_limit): Likewise.
1873 (ialias): Likewise.
1874 * libgomp.texi: Updated documentation for nvptx and gcn corresponding
1875 to the limitation of the number of teams.
1876 * plugin/plugin-gcn.c (limit_teams): New helper function that limits
1877 the number of teams by twice the number of compute units.
1878 (parse_target_attributes): Limit the number of teams on gcn offload
1879 devices.
1880 * target.c (get_gomp_offload_icvs): Added teams_thread_limit_var
1881 handling.
1882 (gomp_load_image_to_device): Added a size check for the ICVs struct
1883 variable.
1884 (gomp_copy_back_icvs): New function that is used in GOMP_target_ext to
1885 copy back the ICV values from device to host.
1886 (GOMP_target_ext): Update the number of teams and threads in the kernel
1887 args also considering device-specific values.
1888 * testsuite/libgomp.c-c++-common/icv-4.c: Fixed an error in the reading
1889 of OMP_TEAMS_THREAD_LIMIT from the environment.
1890 * testsuite/libgomp.c-c++-common/icv-5.c: Extended.
1891 * testsuite/libgomp.c-c++-common/icv-6.c: Extended.
1892 * testsuite/libgomp.c-c++-common/icv-7.c: Extended.
1893 * testsuite/libgomp.c-c++-common/icv-9.c: New test.
1894 * testsuite/libgomp.fortran/icv-5.f90: New test.
1895 * testsuite/libgomp.fortran/icv-6.f90: New test.
1896
1897 2022-12-06 Tobias Burnus <tobias (a] codesourcery.com>
1898
1899 * libgomp.texi (OpenMP 5.2): Add missing 'the'.
1900 (TR11): Add missing '@tab N @tab'.
1901
1902 2022-11-30 Tobias Burnus <tobias (a] codesourcery.com>
1903
1904 * libgomp.texi (OpenMP Context Selectors): Add 'gfx803' to gcn's isa.
1905
1906 2022-11-30 Paul-Antoine Arras <pa (a] codesourcery.com>
1907
1908 * testsuite/libgomp.c/declare-variant-4-fiji.c: New test.
1909 * testsuite/libgomp.c/declare-variant-4-gfx803.c: New test.
1910 * testsuite/libgomp.c/declare-variant-4-gfx900.c: New test.
1911 * testsuite/libgomp.c/declare-variant-4-gfx906.c: New test.
1912 * testsuite/libgomp.c/declare-variant-4-gfx908.c: New test.
1913 * testsuite/libgomp.c/declare-variant-4-gfx90a.c: New test.
1914 * testsuite/libgomp.c/declare-variant-4.h: New header file.
1915
1916 2022-11-28 Tobias Burnus <tobias (a] codesourcery.com>
1917
1918 * libgomp.texi (OpenMP 5.2): Mark end-directive as Y.
1919
1920 2022-11-25 Sandra Loosemore <sandra (a] codesourcery.com>
1921
1922 * testsuite/lib/libgomp.exp: Load scanoffloadipa.exp library.
1923 * testsuite/libgomp.c/target-simd-clone-1.c: New.
1924 * testsuite/libgomp.c/target-simd-clone-2.c: New.
1925 * testsuite/libgomp.c/target-simd-clone-3.c: New.
1926
1927 2022-11-25 Tobias Burnus <tobias (a] codesourcery.com>
1928
1929 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Use unsigned int
1930 for 'i' to match 'fn_entries'; regard absent GOMP_REV_OFFLOAD_VAR
1931 as valid and the code having no reverse-offload code.
1932 * testsuite/libgomp.c-c++-common/reverse-offload-2.c: New test.
1933
1934 2022-11-25 Tobias Burnus <tobias (a] codesourcery.com>
1935
1936 * libgomp.texi (OpenMP Implementation Status): Add three 5.1 items
1937 and status for Technical Report (TR) 11.
1938
1939 2022-11-21 Tobias Burnus <tobias (a] codesourcery.com>
1940
1941 * config/gcn/libgomp-gcn.h (struct output):
1942 Remove 'msg_u64' from the union, change
1943 value_u64[2] to value_u64[6].
1944 * config/gcn/target.c (GOMP_target_ext): Update accordingly.
1945 * plugin/plugin-gcn.c (process_reverse_offload, console_output):
1946 Likewise.
1947
1948 2022-11-19 Tobias Burnus <tobias (a] codesourcery.com>
1949
1950 * config/gcn/libgomp-gcn.h: New file; contains
1951 struct output, declared previously in plugin-gcn.c.
1952 * config/gcn/target.c: Include it.
1953 (GOMP_ADDITIONAL_ICVS): Declare as extern var.
1954 (GOMP_target_ext): Handle reverse offload.
1955 * plugin/plugin-gcn.c: Include libgomp-gcn.h.
1956 (struct kernargs): Replace struct def by the one
1957 from libgomp-gcn.h for output_data.
1958 (process_reverse_offload): New.
1959 (console_output): Call it.
1960
1961 2022-11-16 Tobias Burnus <tobias (a] codesourcery.com>
1962 Andrew Stubbs <ams (a] codesourcery.com>
1963
1964 * config/gcn/team.c (gomp_gcn_enter_kernel): Use
1965 __builtin_gcn_kernarg_ptr instead of asm ("s8").
1966
1967 2022-11-14 Martin Liska <mliska (a] suse.cz>
1968
1969 Revert:
1970 2022-11-14 Martin Liska <mliska (a] suse.cz>
1971
1972 * doc/amd-radeon-gcn.rst: New file.
1973 * doc/conf.py: New file.
1974 * doc/copyright.rst: New file.
1975 * doc/cuda-streams-usage.rst: New file.
1976 * doc/enabling-openacc.rst: New file.
1977 * doc/enabling-openmp.rst: New file.
1978 * doc/first-invocation-nvidia-cublas-library-api.rst: New file.
1979 * doc/first-invocation-openacc-library-api.rst: New file.
1980 * doc/funding.rst: New file.
1981 * doc/general-public-license-3.rst: New file.
1982 * doc/gnu-free-documentation-license.rst: New file.
1983 * doc/implementation-status-and-implementation-defined-behavior.rst: New file.
1984 * doc/index.rst: New file.
1985 * doc/indices-and-tables.rst: New file.
1986 * doc/introduction.rst: New file.
1987 * doc/memory-allocation-with-libmemkind.rst: New file.
1988 * doc/nvptx.rst: New file.
1989 * doc/offload-target-specifics.rst: New file.
1990 * doc/openacc-environment-variables.rst: New file.
1991 * doc/openacc-environment-variables/accdevicenum.rst: New file.
1992 * doc/openacc-environment-variables/accdevicetype.rst: New file.
1993 * doc/openacc-environment-variables/accproflib.rst: New file.
1994 * doc/openacc-environment-variables/gccaccnotify.rst: New file.
1995 * doc/openacc-introduction.rst: New file.
1996 * doc/openacc-library-and-environment-variables.rst: New file.
1997 * doc/openacc-library-interoperability.rst: New file.
1998 * doc/openacc-profiling-interface.rst: New file.
1999 * doc/openacc-runtime-library-routines.rst: New file.
2000 * doc/openacc-runtime-library-routines/accasynctest.rst: New file.
2001 * doc/openacc-runtime-library-routines/accasynctestall.rst: New file.
2002 * doc/openacc-runtime-library-routines/accattach.rst: New file.
2003 * doc/openacc-runtime-library-routines/acccopyin.rst: New file.
2004 * doc/openacc-runtime-library-routines/acccopyout.rst: New file.
2005 * doc/openacc-runtime-library-routines/acccreate.rst: New file.
2006 * doc/openacc-runtime-library-routines/accdelete.rst: New file.
2007 * doc/openacc-runtime-library-routines/accdetach.rst: New file.
2008 * doc/openacc-runtime-library-routines/accdeviceptr.rst: New file.
2009 * doc/openacc-runtime-library-routines/accfree.rst: New file.
2010 * doc/openacc-runtime-library-routines/accgetcudastream.rst: New file.
2011 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst: New file.
2012 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst: New file.
2013 * doc/openacc-runtime-library-routines/accgetdevicenum.rst: New file.
2014 * doc/openacc-runtime-library-routines/accgetdevicetype.rst: New file.
2015 * doc/openacc-runtime-library-routines/accgetnumdevices.rst: New file.
2016 * doc/openacc-runtime-library-routines/accgetproperty.rst: New file.
2017 * doc/openacc-runtime-library-routines/acchostptr.rst: New file.
2018 * doc/openacc-runtime-library-routines/accinit.rst: New file.
2019 * doc/openacc-runtime-library-routines/accispresent.rst: New file.
2020 * doc/openacc-runtime-library-routines/accmalloc.rst: New file.
2021 * doc/openacc-runtime-library-routines/accmapdata.rst: New file.
2022 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst: New file.
2023 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst: New file.
2024 * doc/openacc-runtime-library-routines/accondevice.rst: New file.
2025 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst: New file.
2026 * doc/openacc-runtime-library-routines/accpresentorcreate.rst: New file.
2027 * doc/openacc-runtime-library-routines/accproflookup.rst: New file.
2028 * doc/openacc-runtime-library-routines/accprofregister.rst: New file.
2029 * doc/openacc-runtime-library-routines/accprofunregister.rst: New file.
2030 * doc/openacc-runtime-library-routines/accregisterlibrary.rst: New file.
2031 * doc/openacc-runtime-library-routines/accsetcudastream.rst: New file.
2032 * doc/openacc-runtime-library-routines/accsetdevicenum.rst: New file.
2033 * doc/openacc-runtime-library-routines/accsetdevicetype.rst: New file.
2034 * doc/openacc-runtime-library-routines/accshutdown.rst: New file.
2035 * doc/openacc-runtime-library-routines/accunmapdata.rst: New file.
2036 * doc/openacc-runtime-library-routines/accupdatedevice.rst: New file.
2037 * doc/openacc-runtime-library-routines/accupdateself.rst: New file.
2038 * doc/openacc-runtime-library-routines/accwait.rst: New file.
2039 * doc/openacc-runtime-library-routines/accwaitall.rst: New file.
2040 * doc/openacc-runtime-library-routines/accwaitallasync.rst: New file.
2041 * doc/openacc-runtime-library-routines/accwaitasync.rst: New file.
2042 * doc/openmp-context-selectors.rst: New file.
2043 * doc/openmp-environment-variables.rst: New file.
2044 * doc/openmp-environment-variables/gompcpuaffinity.rst: New file.
2045 * doc/openmp-environment-variables/gompdebug.rst: New file.
2046 * doc/openmp-environment-variables/gomprtemsthreadpools.rst: New file.
2047 * doc/openmp-environment-variables/gompspincount.rst: New file.
2048 * doc/openmp-environment-variables/gompstacksize.rst: New file.
2049 * doc/openmp-environment-variables/ompcancellation.rst: New file.
2050 * doc/openmp-environment-variables/ompdefaultdevice.rst: New file.
2051 * doc/openmp-environment-variables/ompdisplayenv.rst: New file.
2052 * doc/openmp-environment-variables/ompdynamic.rst: New file.
2053 * doc/openmp-environment-variables/ompmaxactivelevels.rst: New file.
2054 * doc/openmp-environment-variables/ompmaxtaskpriority.rst: New file.
2055 * doc/openmp-environment-variables/ompnested.rst: New file.
2056 * doc/openmp-environment-variables/ompnumteams.rst: New file.
2057 * doc/openmp-environment-variables/ompnumthreads.rst: New file.
2058 * doc/openmp-environment-variables/ompplaces.rst: New file.
2059 * doc/openmp-environment-variables/ompprocbind.rst: New file.
2060 * doc/openmp-environment-variables/ompschedule.rst: New file.
2061 * doc/openmp-environment-variables/ompstacksize.rst: New file.
2062 * doc/openmp-environment-variables/omptargetoffload.rst: New file.
2063 * doc/openmp-environment-variables/ompteamsthreadlimit.rst: New file.
2064 * doc/openmp-environment-variables/ompthreadlimit.rst: New file.
2065 * doc/openmp-environment-variables/ompwaitpolicy.rst: New file.
2066 * doc/openmp-implementation-specifics.rst: New file.
2067 * doc/openmp-implementation-status.rst: New file.
2068 * doc/openmp-implementation-status/openmp-45.rst: New file.
2069 * doc/openmp-implementation-status/openmp-50.rst: New file.
2070 * doc/openmp-implementation-status/openmp-51.rst: New file.
2071 * doc/openmp-implementation-status/openmp-52.rst: New file.
2072 * doc/openmp-runtime-library-routines.rst: New file.
2073 * doc/openmp-runtime-library-routines/ompdestroylock.rst: New file.
2074 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst: New file.
2075 * doc/openmp-runtime-library-routines/ompfulfillevent.rst: New file.
2076 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst: New file.
2077 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst: New file.
2078 * doc/openmp-runtime-library-routines/ompgetcancellation.rst: New file.
2079 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst: New file.
2080 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst: New file.
2081 * doc/openmp-runtime-library-routines/ompgetdynamic.rst: New file.
2082 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst: New file.
2083 * doc/openmp-runtime-library-routines/ompgetlevel.rst: New file.
2084 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst: New file.
2085 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst: New file.
2086 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst: New file.
2087 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst: New file.
2088 * doc/openmp-runtime-library-routines/ompgetnested.rst: New file.
2089 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst: New file.
2090 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst: New file.
2091 * doc/openmp-runtime-library-routines/ompgetnumteams.rst: New file.
2092 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst: New file.
2093 * doc/openmp-runtime-library-routines/ompgetprocbind.rst: New file.
2094 * doc/openmp-runtime-library-routines/ompgetschedule.rst: New file.
2095 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst: New file.
2096 * doc/openmp-runtime-library-routines/ompgetteamnum.rst: New file.
2097 * doc/openmp-runtime-library-routines/ompgetteamsize.rst: New file.
2098 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst: New file.
2099 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst: New file.
2100 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst: New file.
2101 * doc/openmp-runtime-library-routines/ompgetwtick.rst: New file.
2102 * doc/openmp-runtime-library-routines/ompgetwtime.rst: New file.
2103 * doc/openmp-runtime-library-routines/ompinfinal.rst: New file.
2104 * doc/openmp-runtime-library-routines/ompinitlock.rst: New file.
2105 * doc/openmp-runtime-library-routines/ompinitnestlock.rst: New file.
2106 * doc/openmp-runtime-library-routines/ompinparallel.rst: New file.
2107 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst: New file.
2108 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst: New file.
2109 * doc/openmp-runtime-library-routines/ompsetdynamic.rst: New file.
2110 * doc/openmp-runtime-library-routines/ompsetlock.rst: New file.
2111 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst: New file.
2112 * doc/openmp-runtime-library-routines/ompsetnested.rst: New file.
2113 * doc/openmp-runtime-library-routines/ompsetnestlock.rst: New file.
2114 * doc/openmp-runtime-library-routines/ompsetnumteams.rst: New file.
2115 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst: New file.
2116 * doc/openmp-runtime-library-routines/ompsetschedule.rst: New file.
2117 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst: New file.
2118 * doc/openmp-runtime-library-routines/omptestlock.rst: New file.
2119 * doc/openmp-runtime-library-routines/omptestnestlock.rst: New file.
2120 * doc/openmp-runtime-library-routines/ompunsetlock.rst: New file.
2121 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst: New file.
2122 * doc/reporting-bugs.rst: New file.
2123 * doc/the-libgomp-abi.rst: New file.
2124 * doc/the-libgomp-abi/implementing-atomic-construct.rst: New file.
2125 * doc/the-libgomp-abi/implementing-barrier-construct.rst: New file.
2126 * doc/the-libgomp-abi/implementing-critical-construct.rst: New file.
2127 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
2128 New file.
2129 * doc/the-libgomp-abi/implementing-flush-construct.rst: New file.
2130 * doc/the-libgomp-abi/implementing-for-construct.rst: New file.
2131 * doc/the-libgomp-abi/implementing-master-construct.rst: New file.
2132 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst: New file.
2133 * doc/the-libgomp-abi/implementing-ordered-construct.rst: New file.
2134 * doc/the-libgomp-abi/implementing-parallel-construct.rst: New file.
2135 * doc/the-libgomp-abi/implementing-private-clause.rst: New file.
2136 * doc/the-libgomp-abi/implementing-reduction-clause.rst: New file.
2137 * doc/the-libgomp-abi/implementing-sections-construct.rst: New file.
2138 * doc/the-libgomp-abi/implementing-single-construct.rst: New file.
2139 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst: New file.
2140
2141 2022-11-14 Martin Liska <mliska (a] suse.cz>
2142
2143 Revert:
2144 2022-11-14 Martin Liska <mliska (a] suse.cz>
2145
2146 * Makefile.in: Support Sphinx based documentation.
2147
2148 2022-11-14 Martin Liska <mliska (a] suse.cz>
2149
2150 Revert:
2151 2022-11-14 Martin Liska <mliska (a] suse.cz>
2152
2153 * libgomp.texi: Removed.
2154
2155 2022-11-14 Martin Liska <mliska (a] suse.cz>
2156
2157 Revert:
2158 2022-11-14 Martin Liska <mliska (a] suse.cz>
2159
2160 * Makefile.in: Support --with-sphinx-build.
2161 * configure.ac: Likewise..
2162 * configure: Regenerate.
2163
2164 2022-11-14 Martin Liska <mliska (a] suse.cz>
2165
2166 Revert:
2167 2022-11-09 Martin Liska <mliska (a] suse.cz>
2168
2169 * Makefile.in: Build info pages conditionally.
2170
2171 2022-11-14 Martin Liska <mliska (a] suse.cz>
2172
2173 Revert:
2174 2022-11-14 Martin Liska <mliska (a] suse.cz>
2175
2176 * doc/amd-radeon-gcn.rst:
2177 Add trailing newline.
2178 * doc/copyright.rst:
2179 Add trailing newline.
2180 * doc/cuda-streams-usage.rst:
2181 Add trailing newline.
2182 * doc/enabling-openacc.rst:
2183 Add trailing newline.
2184 * doc/enabling-openmp.rst:
2185 Add trailing newline.
2186 * doc/first-invocation-nvidia-cublas-library-api.rst:
2187 Add trailing newline.
2188 * doc/first-invocation-openacc-library-api.rst:
2189 Add trailing newline.
2190 * doc/funding.rst:
2191 Add trailing newline.
2192 * doc/general-public-license-3.rst:
2193 Add trailing newline.
2194 * doc/gnu-free-documentation-license.rst:
2195 Add trailing newline.
2196 * doc/implementation-status-and-implementation-defined-behavior.rst:
2197 Add trailing newline.
2198 * doc/index.rst:
2199 Add trailing newline.
2200 * doc/indices-and-tables.rst:
2201 Add trailing newline.
2202 * doc/introduction.rst:
2203 Add trailing newline.
2204 * doc/memory-allocation-with-libmemkind.rst:
2205 Add trailing newline.
2206 * doc/nvptx.rst:
2207 Add trailing newline.
2208 * doc/offload-target-specifics.rst:
2209 Add trailing newline.
2210 * doc/openacc-environment-variables.rst:
2211 Add trailing newline.
2212 * doc/openacc-environment-variables/accdevicenum.rst:
2213 Add trailing newline.
2214 * doc/openacc-environment-variables/accdevicetype.rst:
2215 Add trailing newline.
2216 * doc/openacc-environment-variables/accproflib.rst:
2217 Add trailing newline.
2218 * doc/openacc-environment-variables/gccaccnotify.rst:
2219 Add trailing newline.
2220 * doc/openacc-introduction.rst:
2221 Add trailing newline.
2222 * doc/openacc-library-and-environment-variables.rst:
2223 Add trailing newline.
2224 * doc/openacc-library-interoperability.rst:
2225 Add trailing newline.
2226 * doc/openacc-profiling-interface.rst:
2227 Add trailing newline.
2228 * doc/openacc-runtime-library-routines.rst:
2229 Add trailing newline.
2230 * doc/openacc-runtime-library-routines/accasynctest.rst:
2231 Add trailing newline.
2232 * doc/openacc-runtime-library-routines/accasynctestall.rst:
2233 Add trailing newline.
2234 * doc/openacc-runtime-library-routines/accattach.rst:
2235 Add trailing newline.
2236 * doc/openacc-runtime-library-routines/acccopyin.rst:
2237 Add trailing newline.
2238 * doc/openacc-runtime-library-routines/acccopyout.rst:
2239 Add trailing newline.
2240 * doc/openacc-runtime-library-routines/acccreate.rst:
2241 Add trailing newline.
2242 * doc/openacc-runtime-library-routines/accdelete.rst:
2243 Add trailing newline.
2244 * doc/openacc-runtime-library-routines/accdetach.rst:
2245 Add trailing newline.
2246 * doc/openacc-runtime-library-routines/accdeviceptr.rst:
2247 Add trailing newline.
2248 * doc/openacc-runtime-library-routines/accfree.rst:
2249 Add trailing newline.
2250 * doc/openacc-runtime-library-routines/accgetcudastream.rst:
2251 Add trailing newline.
2252 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst:
2253 Add trailing newline.
2254 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst:
2255 Add trailing newline.
2256 * doc/openacc-runtime-library-routines/accgetdevicenum.rst:
2257 Add trailing newline.
2258 * doc/openacc-runtime-library-routines/accgetdevicetype.rst:
2259 Add trailing newline.
2260 * doc/openacc-runtime-library-routines/accgetnumdevices.rst:
2261 Add trailing newline.
2262 * doc/openacc-runtime-library-routines/accgetproperty.rst:
2263 Add trailing newline.
2264 * doc/openacc-runtime-library-routines/acchostptr.rst:
2265 Add trailing newline.
2266 * doc/openacc-runtime-library-routines/accinit.rst:
2267 Add trailing newline.
2268 * doc/openacc-runtime-library-routines/accispresent.rst:
2269 Add trailing newline.
2270 * doc/openacc-runtime-library-routines/accmalloc.rst:
2271 Add trailing newline.
2272 * doc/openacc-runtime-library-routines/accmapdata.rst:
2273 Add trailing newline.
2274 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst:
2275 Add trailing newline.
2276 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst:
2277 Add trailing newline.
2278 * doc/openacc-runtime-library-routines/accondevice.rst:
2279 Add trailing newline.
2280 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst:
2281 Add trailing newline.
2282 * doc/openacc-runtime-library-routines/accpresentorcreate.rst:
2283 Add trailing newline.
2284 * doc/openacc-runtime-library-routines/accproflookup.rst:
2285 Add trailing newline.
2286 * doc/openacc-runtime-library-routines/accprofregister.rst:
2287 Add trailing newline.
2288 * doc/openacc-runtime-library-routines/accprofunregister.rst:
2289 Add trailing newline.
2290 * doc/openacc-runtime-library-routines/accregisterlibrary.rst:
2291 Add trailing newline.
2292 * doc/openacc-runtime-library-routines/accsetcudastream.rst:
2293 Add trailing newline.
2294 * doc/openacc-runtime-library-routines/accsetdevicenum.rst:
2295 Add trailing newline.
2296 * doc/openacc-runtime-library-routines/accsetdevicetype.rst:
2297 Add trailing newline.
2298 * doc/openacc-runtime-library-routines/accshutdown.rst:
2299 Add trailing newline.
2300 * doc/openacc-runtime-library-routines/accunmapdata.rst:
2301 Add trailing newline.
2302 * doc/openacc-runtime-library-routines/accupdatedevice.rst:
2303 Add trailing newline.
2304 * doc/openacc-runtime-library-routines/accupdateself.rst:
2305 Add trailing newline.
2306 * doc/openacc-runtime-library-routines/accwait.rst:
2307 Add trailing newline.
2308 * doc/openacc-runtime-library-routines/accwaitall.rst:
2309 Add trailing newline.
2310 * doc/openacc-runtime-library-routines/accwaitallasync.rst:
2311 Add trailing newline.
2312 * doc/openacc-runtime-library-routines/accwaitasync.rst:
2313 Add trailing newline.
2314 * doc/openmp-context-selectors.rst:
2315 Add trailing newline.
2316 * doc/openmp-environment-variables.rst:
2317 Add trailing newline.
2318 * doc/openmp-environment-variables/gompcpuaffinity.rst:
2319 Add trailing newline.
2320 * doc/openmp-environment-variables/gompdebug.rst:
2321 Add trailing newline.
2322 * doc/openmp-environment-variables/gomprtemsthreadpools.rst:
2323 Add trailing newline.
2324 * doc/openmp-environment-variables/gompspincount.rst:
2325 Add trailing newline.
2326 * doc/openmp-environment-variables/gompstacksize.rst:
2327 Add trailing newline.
2328 * doc/openmp-environment-variables/ompcancellation.rst:
2329 Add trailing newline.
2330 * doc/openmp-environment-variables/ompdefaultdevice.rst:
2331 Add trailing newline.
2332 * doc/openmp-environment-variables/ompdisplayenv.rst:
2333 Add trailing newline.
2334 * doc/openmp-environment-variables/ompdynamic.rst:
2335 Add trailing newline.
2336 * doc/openmp-environment-variables/ompmaxactivelevels.rst:
2337 Add trailing newline.
2338 * doc/openmp-environment-variables/ompmaxtaskpriority.rst:
2339 Add trailing newline.
2340 * doc/openmp-environment-variables/ompnested.rst:
2341 Add trailing newline.
2342 * doc/openmp-environment-variables/ompnumteams.rst:
2343 Add trailing newline.
2344 * doc/openmp-environment-variables/ompnumthreads.rst:
2345 Add trailing newline.
2346 * doc/openmp-environment-variables/ompplaces.rst:
2347 Add trailing newline.
2348 * doc/openmp-environment-variables/ompprocbind.rst:
2349 Add trailing newline.
2350 * doc/openmp-environment-variables/ompschedule.rst:
2351 Add trailing newline.
2352 * doc/openmp-environment-variables/ompstacksize.rst:
2353 Add trailing newline.
2354 * doc/openmp-environment-variables/omptargetoffload.rst:
2355 Add trailing newline.
2356 * doc/openmp-environment-variables/ompteamsthreadlimit.rst:
2357 Add trailing newline.
2358 * doc/openmp-environment-variables/ompthreadlimit.rst:
2359 Add trailing newline.
2360 * doc/openmp-environment-variables/ompwaitpolicy.rst:
2361 Add trailing newline.
2362 * doc/openmp-implementation-specifics.rst:
2363 Add trailing newline.
2364 * doc/openmp-implementation-status.rst:
2365 Add trailing newline.
2366 * doc/openmp-implementation-status/openmp-45.rst:
2367 Add trailing newline.
2368 * doc/openmp-implementation-status/openmp-50.rst:
2369 Add trailing newline.
2370 * doc/openmp-implementation-status/openmp-51.rst:
2371 Add trailing newline.
2372 * doc/openmp-implementation-status/openmp-52.rst:
2373 Add trailing newline.
2374 * doc/openmp-runtime-library-routines.rst:
2375 Add trailing newline.
2376 * doc/openmp-runtime-library-routines/ompdestroylock.rst:
2377 Add trailing newline.
2378 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst:
2379 Add trailing newline.
2380 * doc/openmp-runtime-library-routines/ompfulfillevent.rst:
2381 Add trailing newline.
2382 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst:
2383 Add trailing newline.
2384 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst:
2385 Add trailing newline.
2386 * doc/openmp-runtime-library-routines/ompgetcancellation.rst:
2387 Add trailing newline.
2388 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst:
2389 Add trailing newline.
2390 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst:
2391 Add trailing newline.
2392 * doc/openmp-runtime-library-routines/ompgetdynamic.rst:
2393 Add trailing newline.
2394 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst:
2395 Add trailing newline.
2396 * doc/openmp-runtime-library-routines/ompgetlevel.rst:
2397 Add trailing newline.
2398 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst:
2399 Add trailing newline.
2400 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst:
2401 Add trailing newline.
2402 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst:
2403 Add trailing newline.
2404 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst:
2405 Add trailing newline.
2406 * doc/openmp-runtime-library-routines/ompgetnested.rst:
2407 Add trailing newline.
2408 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst:
2409 Add trailing newline.
2410 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst:
2411 Add trailing newline.
2412 * doc/openmp-runtime-library-routines/ompgetnumteams.rst:
2413 Add trailing newline.
2414 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst:
2415 Add trailing newline.
2416 * doc/openmp-runtime-library-routines/ompgetprocbind.rst:
2417 Add trailing newline.
2418 * doc/openmp-runtime-library-routines/ompgetschedule.rst:
2419 Add trailing newline.
2420 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst:
2421 Add trailing newline.
2422 * doc/openmp-runtime-library-routines/ompgetteamnum.rst:
2423 Add trailing newline.
2424 * doc/openmp-runtime-library-routines/ompgetteamsize.rst:
2425 Add trailing newline.
2426 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst:
2427 Add trailing newline.
2428 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst:
2429 Add trailing newline.
2430 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst:
2431 Add trailing newline.
2432 * doc/openmp-runtime-library-routines/ompgetwtick.rst:
2433 Add trailing newline.
2434 * doc/openmp-runtime-library-routines/ompgetwtime.rst:
2435 Add trailing newline.
2436 * doc/openmp-runtime-library-routines/ompinfinal.rst:
2437 Add trailing newline.
2438 * doc/openmp-runtime-library-routines/ompinitlock.rst:
2439 Add trailing newline.
2440 * doc/openmp-runtime-library-routines/ompinitnestlock.rst:
2441 Add trailing newline.
2442 * doc/openmp-runtime-library-routines/ompinparallel.rst:
2443 Add trailing newline.
2444 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst:
2445 Add trailing newline.
2446 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst:
2447 Add trailing newline.
2448 * doc/openmp-runtime-library-routines/ompsetdynamic.rst:
2449 Add trailing newline.
2450 * doc/openmp-runtime-library-routines/ompsetlock.rst:
2451 Add trailing newline.
2452 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst:
2453 Add trailing newline.
2454 * doc/openmp-runtime-library-routines/ompsetnested.rst:
2455 Add trailing newline.
2456 * doc/openmp-runtime-library-routines/ompsetnestlock.rst:
2457 Add trailing newline.
2458 * doc/openmp-runtime-library-routines/ompsetnumteams.rst:
2459 Add trailing newline.
2460 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst:
2461 Add trailing newline.
2462 * doc/openmp-runtime-library-routines/ompsetschedule.rst:
2463 Add trailing newline.
2464 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst:
2465 Add trailing newline.
2466 * doc/openmp-runtime-library-routines/omptestlock.rst:
2467 Add trailing newline.
2468 * doc/openmp-runtime-library-routines/omptestnestlock.rst:
2469 Add trailing newline.
2470 * doc/openmp-runtime-library-routines/ompunsetlock.rst:
2471 Add trailing newline.
2472 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst:
2473 Add trailing newline.
2474 * doc/reporting-bugs.rst:
2475 Add trailing newline.
2476 * doc/the-libgomp-abi.rst:
2477 Add trailing newline.
2478 * doc/the-libgomp-abi/implementing-atomic-construct.rst:
2479 Add trailing newline.
2480 * doc/the-libgomp-abi/implementing-barrier-construct.rst:
2481 Add trailing newline.
2482 * doc/the-libgomp-abi/implementing-critical-construct.rst:
2483 Add trailing newline.
2484 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
2485 Add trailing newline.
2486 * doc/the-libgomp-abi/implementing-flush-construct.rst:
2487 Add trailing newline.
2488 * doc/the-libgomp-abi/implementing-for-construct.rst:
2489 Add trailing newline.
2490 * doc/the-libgomp-abi/implementing-master-construct.rst:
2491 Add trailing newline.
2492 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst:
2493 Add trailing newline.
2494 * doc/the-libgomp-abi/implementing-ordered-construct.rst:
2495 Add trailing newline.
2496 * doc/the-libgomp-abi/implementing-parallel-construct.rst:
2497 Add trailing newline.
2498 * doc/the-libgomp-abi/implementing-private-clause.rst:
2499 Add trailing newline.
2500 * doc/the-libgomp-abi/implementing-reduction-clause.rst:
2501 Add trailing newline.
2502 * doc/the-libgomp-abi/implementing-sections-construct.rst:
2503 Add trailing newline.
2504 * doc/the-libgomp-abi/implementing-single-construct.rst:
2505 Add trailing newline.
2506 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst:
2507 Add trailing newline.
2508
2509 2022-11-14 Martin Liska <mliska (a] suse.cz>
2510
2511 Revert:
2512 2022-11-09 Martin Liska <mliska (a] suse.cz>
2513
2514 * Makefile.in: Add missing HAS_SPHINX_BUILD.
2515
2516 2022-11-14 Martin Liska <mliska (a] suse.cz>
2517
2518 Revert:
2519 2022-11-14 Martin Liska <mliska (a] suse.cz>
2520
2521 * doc/conf.py: Add newline at last line.
2522
2523 2022-11-14 Martin Liska <mliska (a] suse.cz>
2524
2525 Revert:
2526 2022-11-14 Martin Liska <mliska (a] suse.cz>
2527
2528 PR other/107620
2529 * configure: Regenerate.
2530 * configure.ac: Always set sphinx-build.
2531
2532 2022-11-13 Martin Liska <mliska (a] suse.cz>
2533
2534 PR other/107620
2535 * configure: Regenerate.
2536 * configure.ac: Always set sphinx-build.
2537
2538 2022-11-12 Jakub Jelinek <jakub (a] redhat.com>
2539
2540 PR libgomp/107641
2541 * env.c (parse_unsigned_long): Cast params[2] to uintptr_t rather than
2542 unsigned long. Change type of upper from unsigned to unsigned long.
2543
2544 2022-11-10 Martin Liska <mliska (a] suse.cz>
2545
2546 * doc/conf.py: Add newline at last line.
2547
2548 2022-11-09 Martin Liska <mliska (a] suse.cz>
2549
2550 * Makefile.in: Add missing HAS_SPHINX_BUILD.
2551
2552 2022-11-09 Martin Liska <mliska (a] suse.cz>
2553
2554 * doc/amd-radeon-gcn.rst:
2555 Add trailing newline.
2556 * doc/copyright.rst:
2557 Add trailing newline.
2558 * doc/cuda-streams-usage.rst:
2559 Add trailing newline.
2560 * doc/enabling-openacc.rst:
2561 Add trailing newline.
2562 * doc/enabling-openmp.rst:
2563 Add trailing newline.
2564 * doc/first-invocation-nvidia-cublas-library-api.rst:
2565 Add trailing newline.
2566 * doc/first-invocation-openacc-library-api.rst:
2567 Add trailing newline.
2568 * doc/funding.rst:
2569 Add trailing newline.
2570 * doc/general-public-license-3.rst:
2571 Add trailing newline.
2572 * doc/gnu-free-documentation-license.rst:
2573 Add trailing newline.
2574 * doc/implementation-status-and-implementation-defined-behavior.rst:
2575 Add trailing newline.
2576 * doc/index.rst:
2577 Add trailing newline.
2578 * doc/indices-and-tables.rst:
2579 Add trailing newline.
2580 * doc/introduction.rst:
2581 Add trailing newline.
2582 * doc/memory-allocation-with-libmemkind.rst:
2583 Add trailing newline.
2584 * doc/nvptx.rst:
2585 Add trailing newline.
2586 * doc/offload-target-specifics.rst:
2587 Add trailing newline.
2588 * doc/openacc-environment-variables.rst:
2589 Add trailing newline.
2590 * doc/openacc-environment-variables/accdevicenum.rst:
2591 Add trailing newline.
2592 * doc/openacc-environment-variables/accdevicetype.rst:
2593 Add trailing newline.
2594 * doc/openacc-environment-variables/accproflib.rst:
2595 Add trailing newline.
2596 * doc/openacc-environment-variables/gccaccnotify.rst:
2597 Add trailing newline.
2598 * doc/openacc-introduction.rst:
2599 Add trailing newline.
2600 * doc/openacc-library-and-environment-variables.rst:
2601 Add trailing newline.
2602 * doc/openacc-library-interoperability.rst:
2603 Add trailing newline.
2604 * doc/openacc-profiling-interface.rst:
2605 Add trailing newline.
2606 * doc/openacc-runtime-library-routines.rst:
2607 Add trailing newline.
2608 * doc/openacc-runtime-library-routines/accasynctest.rst:
2609 Add trailing newline.
2610 * doc/openacc-runtime-library-routines/accasynctestall.rst:
2611 Add trailing newline.
2612 * doc/openacc-runtime-library-routines/accattach.rst:
2613 Add trailing newline.
2614 * doc/openacc-runtime-library-routines/acccopyin.rst:
2615 Add trailing newline.
2616 * doc/openacc-runtime-library-routines/acccopyout.rst:
2617 Add trailing newline.
2618 * doc/openacc-runtime-library-routines/acccreate.rst:
2619 Add trailing newline.
2620 * doc/openacc-runtime-library-routines/accdelete.rst:
2621 Add trailing newline.
2622 * doc/openacc-runtime-library-routines/accdetach.rst:
2623 Add trailing newline.
2624 * doc/openacc-runtime-library-routines/accdeviceptr.rst:
2625 Add trailing newline.
2626 * doc/openacc-runtime-library-routines/accfree.rst:
2627 Add trailing newline.
2628 * doc/openacc-runtime-library-routines/accgetcudastream.rst:
2629 Add trailing newline.
2630 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst:
2631 Add trailing newline.
2632 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst:
2633 Add trailing newline.
2634 * doc/openacc-runtime-library-routines/accgetdevicenum.rst:
2635 Add trailing newline.
2636 * doc/openacc-runtime-library-routines/accgetdevicetype.rst:
2637 Add trailing newline.
2638 * doc/openacc-runtime-library-routines/accgetnumdevices.rst:
2639 Add trailing newline.
2640 * doc/openacc-runtime-library-routines/accgetproperty.rst:
2641 Add trailing newline.
2642 * doc/openacc-runtime-library-routines/acchostptr.rst:
2643 Add trailing newline.
2644 * doc/openacc-runtime-library-routines/accinit.rst:
2645 Add trailing newline.
2646 * doc/openacc-runtime-library-routines/accispresent.rst:
2647 Add trailing newline.
2648 * doc/openacc-runtime-library-routines/accmalloc.rst:
2649 Add trailing newline.
2650 * doc/openacc-runtime-library-routines/accmapdata.rst:
2651 Add trailing newline.
2652 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst:
2653 Add trailing newline.
2654 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst:
2655 Add trailing newline.
2656 * doc/openacc-runtime-library-routines/accondevice.rst:
2657 Add trailing newline.
2658 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst:
2659 Add trailing newline.
2660 * doc/openacc-runtime-library-routines/accpresentorcreate.rst:
2661 Add trailing newline.
2662 * doc/openacc-runtime-library-routines/accproflookup.rst:
2663 Add trailing newline.
2664 * doc/openacc-runtime-library-routines/accprofregister.rst:
2665 Add trailing newline.
2666 * doc/openacc-runtime-library-routines/accprofunregister.rst:
2667 Add trailing newline.
2668 * doc/openacc-runtime-library-routines/accregisterlibrary.rst:
2669 Add trailing newline.
2670 * doc/openacc-runtime-library-routines/accsetcudastream.rst:
2671 Add trailing newline.
2672 * doc/openacc-runtime-library-routines/accsetdevicenum.rst:
2673 Add trailing newline.
2674 * doc/openacc-runtime-library-routines/accsetdevicetype.rst:
2675 Add trailing newline.
2676 * doc/openacc-runtime-library-routines/accshutdown.rst:
2677 Add trailing newline.
2678 * doc/openacc-runtime-library-routines/accunmapdata.rst:
2679 Add trailing newline.
2680 * doc/openacc-runtime-library-routines/accupdatedevice.rst:
2681 Add trailing newline.
2682 * doc/openacc-runtime-library-routines/accupdateself.rst:
2683 Add trailing newline.
2684 * doc/openacc-runtime-library-routines/accwait.rst:
2685 Add trailing newline.
2686 * doc/openacc-runtime-library-routines/accwaitall.rst:
2687 Add trailing newline.
2688 * doc/openacc-runtime-library-routines/accwaitallasync.rst:
2689 Add trailing newline.
2690 * doc/openacc-runtime-library-routines/accwaitasync.rst:
2691 Add trailing newline.
2692 * doc/openmp-context-selectors.rst:
2693 Add trailing newline.
2694 * doc/openmp-environment-variables.rst:
2695 Add trailing newline.
2696 * doc/openmp-environment-variables/gompcpuaffinity.rst:
2697 Add trailing newline.
2698 * doc/openmp-environment-variables/gompdebug.rst:
2699 Add trailing newline.
2700 * doc/openmp-environment-variables/gomprtemsthreadpools.rst:
2701 Add trailing newline.
2702 * doc/openmp-environment-variables/gompspincount.rst:
2703 Add trailing newline.
2704 * doc/openmp-environment-variables/gompstacksize.rst:
2705 Add trailing newline.
2706 * doc/openmp-environment-variables/ompcancellation.rst:
2707 Add trailing newline.
2708 * doc/openmp-environment-variables/ompdefaultdevice.rst:
2709 Add trailing newline.
2710 * doc/openmp-environment-variables/ompdisplayenv.rst:
2711 Add trailing newline.
2712 * doc/openmp-environment-variables/ompdynamic.rst:
2713 Add trailing newline.
2714 * doc/openmp-environment-variables/ompmaxactivelevels.rst:
2715 Add trailing newline.
2716 * doc/openmp-environment-variables/ompmaxtaskpriority.rst:
2717 Add trailing newline.
2718 * doc/openmp-environment-variables/ompnested.rst:
2719 Add trailing newline.
2720 * doc/openmp-environment-variables/ompnumteams.rst:
2721 Add trailing newline.
2722 * doc/openmp-environment-variables/ompnumthreads.rst:
2723 Add trailing newline.
2724 * doc/openmp-environment-variables/ompplaces.rst:
2725 Add trailing newline.
2726 * doc/openmp-environment-variables/ompprocbind.rst:
2727 Add trailing newline.
2728 * doc/openmp-environment-variables/ompschedule.rst:
2729 Add trailing newline.
2730 * doc/openmp-environment-variables/ompstacksize.rst:
2731 Add trailing newline.
2732 * doc/openmp-environment-variables/omptargetoffload.rst:
2733 Add trailing newline.
2734 * doc/openmp-environment-variables/ompteamsthreadlimit.rst:
2735 Add trailing newline.
2736 * doc/openmp-environment-variables/ompthreadlimit.rst:
2737 Add trailing newline.
2738 * doc/openmp-environment-variables/ompwaitpolicy.rst:
2739 Add trailing newline.
2740 * doc/openmp-implementation-specifics.rst:
2741 Add trailing newline.
2742 * doc/openmp-implementation-status.rst:
2743 Add trailing newline.
2744 * doc/openmp-implementation-status/openmp-45.rst:
2745 Add trailing newline.
2746 * doc/openmp-implementation-status/openmp-50.rst:
2747 Add trailing newline.
2748 * doc/openmp-implementation-status/openmp-51.rst:
2749 Add trailing newline.
2750 * doc/openmp-implementation-status/openmp-52.rst:
2751 Add trailing newline.
2752 * doc/openmp-runtime-library-routines.rst:
2753 Add trailing newline.
2754 * doc/openmp-runtime-library-routines/ompdestroylock.rst:
2755 Add trailing newline.
2756 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst:
2757 Add trailing newline.
2758 * doc/openmp-runtime-library-routines/ompfulfillevent.rst:
2759 Add trailing newline.
2760 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst:
2761 Add trailing newline.
2762 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst:
2763 Add trailing newline.
2764 * doc/openmp-runtime-library-routines/ompgetcancellation.rst:
2765 Add trailing newline.
2766 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst:
2767 Add trailing newline.
2768 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst:
2769 Add trailing newline.
2770 * doc/openmp-runtime-library-routines/ompgetdynamic.rst:
2771 Add trailing newline.
2772 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst:
2773 Add trailing newline.
2774 * doc/openmp-runtime-library-routines/ompgetlevel.rst:
2775 Add trailing newline.
2776 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst:
2777 Add trailing newline.
2778 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst:
2779 Add trailing newline.
2780 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst:
2781 Add trailing newline.
2782 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst:
2783 Add trailing newline.
2784 * doc/openmp-runtime-library-routines/ompgetnested.rst:
2785 Add trailing newline.
2786 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst:
2787 Add trailing newline.
2788 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst:
2789 Add trailing newline.
2790 * doc/openmp-runtime-library-routines/ompgetnumteams.rst:
2791 Add trailing newline.
2792 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst:
2793 Add trailing newline.
2794 * doc/openmp-runtime-library-routines/ompgetprocbind.rst:
2795 Add trailing newline.
2796 * doc/openmp-runtime-library-routines/ompgetschedule.rst:
2797 Add trailing newline.
2798 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst:
2799 Add trailing newline.
2800 * doc/openmp-runtime-library-routines/ompgetteamnum.rst:
2801 Add trailing newline.
2802 * doc/openmp-runtime-library-routines/ompgetteamsize.rst:
2803 Add trailing newline.
2804 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst:
2805 Add trailing newline.
2806 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst:
2807 Add trailing newline.
2808 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst:
2809 Add trailing newline.
2810 * doc/openmp-runtime-library-routines/ompgetwtick.rst:
2811 Add trailing newline.
2812 * doc/openmp-runtime-library-routines/ompgetwtime.rst:
2813 Add trailing newline.
2814 * doc/openmp-runtime-library-routines/ompinfinal.rst:
2815 Add trailing newline.
2816 * doc/openmp-runtime-library-routines/ompinitlock.rst:
2817 Add trailing newline.
2818 * doc/openmp-runtime-library-routines/ompinitnestlock.rst:
2819 Add trailing newline.
2820 * doc/openmp-runtime-library-routines/ompinparallel.rst:
2821 Add trailing newline.
2822 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst:
2823 Add trailing newline.
2824 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst:
2825 Add trailing newline.
2826 * doc/openmp-runtime-library-routines/ompsetdynamic.rst:
2827 Add trailing newline.
2828 * doc/openmp-runtime-library-routines/ompsetlock.rst:
2829 Add trailing newline.
2830 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst:
2831 Add trailing newline.
2832 * doc/openmp-runtime-library-routines/ompsetnested.rst:
2833 Add trailing newline.
2834 * doc/openmp-runtime-library-routines/ompsetnestlock.rst:
2835 Add trailing newline.
2836 * doc/openmp-runtime-library-routines/ompsetnumteams.rst:
2837 Add trailing newline.
2838 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst:
2839 Add trailing newline.
2840 * doc/openmp-runtime-library-routines/ompsetschedule.rst:
2841 Add trailing newline.
2842 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst:
2843 Add trailing newline.
2844 * doc/openmp-runtime-library-routines/omptestlock.rst:
2845 Add trailing newline.
2846 * doc/openmp-runtime-library-routines/omptestnestlock.rst:
2847 Add trailing newline.
2848 * doc/openmp-runtime-library-routines/ompunsetlock.rst:
2849 Add trailing newline.
2850 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst:
2851 Add trailing newline.
2852 * doc/reporting-bugs.rst:
2853 Add trailing newline.
2854 * doc/the-libgomp-abi.rst:
2855 Add trailing newline.
2856 * doc/the-libgomp-abi/implementing-atomic-construct.rst:
2857 Add trailing newline.
2858 * doc/the-libgomp-abi/implementing-barrier-construct.rst:
2859 Add trailing newline.
2860 * doc/the-libgomp-abi/implementing-critical-construct.rst:
2861 Add trailing newline.
2862 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
2863 Add trailing newline.
2864 * doc/the-libgomp-abi/implementing-flush-construct.rst:
2865 Add trailing newline.
2866 * doc/the-libgomp-abi/implementing-for-construct.rst:
2867 Add trailing newline.
2868 * doc/the-libgomp-abi/implementing-master-construct.rst:
2869 Add trailing newline.
2870 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst:
2871 Add trailing newline.
2872 * doc/the-libgomp-abi/implementing-ordered-construct.rst:
2873 Add trailing newline.
2874 * doc/the-libgomp-abi/implementing-parallel-construct.rst:
2875 Add trailing newline.
2876 * doc/the-libgomp-abi/implementing-private-clause.rst:
2877 Add trailing newline.
2878 * doc/the-libgomp-abi/implementing-reduction-clause.rst:
2879 Add trailing newline.
2880 * doc/the-libgomp-abi/implementing-sections-construct.rst:
2881 Add trailing newline.
2882 * doc/the-libgomp-abi/implementing-single-construct.rst:
2883 Add trailing newline.
2884 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst:
2885 Add trailing newline.
2886
2887 2022-11-09 Martin Liska <mliska (a] suse.cz>
2888
2889 * Makefile.in: Build info pages conditionally.
2890
2891 2022-11-09 Martin Liska <mliska (a] suse.cz>
2892
2893 * Makefile.in: Support --with-sphinx-build.
2894 * configure.ac: Likewise..
2895 * configure: Regenerate.
2896
2897 2022-11-09 Martin Liska <mliska (a] suse.cz>
2898
2899 * libgomp.texi: Removed.
2900
2901 2022-11-09 Martin Liska <mliska (a] suse.cz>
2902
2903 * Makefile.in: Support Sphinx based documentation.
2904
2905 2022-11-09 Martin Liska <mliska (a] suse.cz>
2906
2907 * doc/amd-radeon-gcn.rst: New file.
2908 * doc/conf.py: New file.
2909 * doc/copyright.rst: New file.
2910 * doc/cuda-streams-usage.rst: New file.
2911 * doc/enabling-openacc.rst: New file.
2912 * doc/enabling-openmp.rst: New file.
2913 * doc/first-invocation-nvidia-cublas-library-api.rst: New file.
2914 * doc/first-invocation-openacc-library-api.rst: New file.
2915 * doc/funding.rst: New file.
2916 * doc/general-public-license-3.rst: New file.
2917 * doc/gnu-free-documentation-license.rst: New file.
2918 * doc/implementation-status-and-implementation-defined-behavior.rst: New file.
2919 * doc/index.rst: New file.
2920 * doc/indices-and-tables.rst: New file.
2921 * doc/introduction.rst: New file.
2922 * doc/memory-allocation-with-libmemkind.rst: New file.
2923 * doc/nvptx.rst: New file.
2924 * doc/offload-target-specifics.rst: New file.
2925 * doc/openacc-environment-variables.rst: New file.
2926 * doc/openacc-environment-variables/accdevicenum.rst: New file.
2927 * doc/openacc-environment-variables/accdevicetype.rst: New file.
2928 * doc/openacc-environment-variables/accproflib.rst: New file.
2929 * doc/openacc-environment-variables/gccaccnotify.rst: New file.
2930 * doc/openacc-introduction.rst: New file.
2931 * doc/openacc-library-and-environment-variables.rst: New file.
2932 * doc/openacc-library-interoperability.rst: New file.
2933 * doc/openacc-profiling-interface.rst: New file.
2934 * doc/openacc-runtime-library-routines.rst: New file.
2935 * doc/openacc-runtime-library-routines/accasynctest.rst: New file.
2936 * doc/openacc-runtime-library-routines/accasynctestall.rst: New file.
2937 * doc/openacc-runtime-library-routines/accattach.rst: New file.
2938 * doc/openacc-runtime-library-routines/acccopyin.rst: New file.
2939 * doc/openacc-runtime-library-routines/acccopyout.rst: New file.
2940 * doc/openacc-runtime-library-routines/acccreate.rst: New file.
2941 * doc/openacc-runtime-library-routines/accdelete.rst: New file.
2942 * doc/openacc-runtime-library-routines/accdetach.rst: New file.
2943 * doc/openacc-runtime-library-routines/accdeviceptr.rst: New file.
2944 * doc/openacc-runtime-library-routines/accfree.rst: New file.
2945 * doc/openacc-runtime-library-routines/accgetcudastream.rst: New file.
2946 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst: New file.
2947 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst: New file.
2948 * doc/openacc-runtime-library-routines/accgetdevicenum.rst: New file.
2949 * doc/openacc-runtime-library-routines/accgetdevicetype.rst: New file.
2950 * doc/openacc-runtime-library-routines/accgetnumdevices.rst: New file.
2951 * doc/openacc-runtime-library-routines/accgetproperty.rst: New file.
2952 * doc/openacc-runtime-library-routines/acchostptr.rst: New file.
2953 * doc/openacc-runtime-library-routines/accinit.rst: New file.
2954 * doc/openacc-runtime-library-routines/accispresent.rst: New file.
2955 * doc/openacc-runtime-library-routines/accmalloc.rst: New file.
2956 * doc/openacc-runtime-library-routines/accmapdata.rst: New file.
2957 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst: New file.
2958 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst: New file.
2959 * doc/openacc-runtime-library-routines/accondevice.rst: New file.
2960 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst: New file.
2961 * doc/openacc-runtime-library-routines/accpresentorcreate.rst: New file.
2962 * doc/openacc-runtime-library-routines/accproflookup.rst: New file.
2963 * doc/openacc-runtime-library-routines/accprofregister.rst: New file.
2964 * doc/openacc-runtime-library-routines/accprofunregister.rst: New file.
2965 * doc/openacc-runtime-library-routines/accregisterlibrary.rst: New file.
2966 * doc/openacc-runtime-library-routines/accsetcudastream.rst: New file.
2967 * doc/openacc-runtime-library-routines/accsetdevicenum.rst: New file.
2968 * doc/openacc-runtime-library-routines/accsetdevicetype.rst: New file.
2969 * doc/openacc-runtime-library-routines/accshutdown.rst: New file.
2970 * doc/openacc-runtime-library-routines/accunmapdata.rst: New file.
2971 * doc/openacc-runtime-library-routines/accupdatedevice.rst: New file.
2972 * doc/openacc-runtime-library-routines/accupdateself.rst: New file.
2973 * doc/openacc-runtime-library-routines/accwait.rst: New file.
2974 * doc/openacc-runtime-library-routines/accwaitall.rst: New file.
2975 * doc/openacc-runtime-library-routines/accwaitallasync.rst: New file.
2976 * doc/openacc-runtime-library-routines/accwaitasync.rst: New file.
2977 * doc/openmp-context-selectors.rst: New file.
2978 * doc/openmp-environment-variables.rst: New file.
2979 * doc/openmp-environment-variables/gompcpuaffinity.rst: New file.
2980 * doc/openmp-environment-variables/gompdebug.rst: New file.
2981 * doc/openmp-environment-variables/gomprtemsthreadpools.rst: New file.
2982 * doc/openmp-environment-variables/gompspincount.rst: New file.
2983 * doc/openmp-environment-variables/gompstacksize.rst: New file.
2984 * doc/openmp-environment-variables/ompcancellation.rst: New file.
2985 * doc/openmp-environment-variables/ompdefaultdevice.rst: New file.
2986 * doc/openmp-environment-variables/ompdisplayenv.rst: New file.
2987 * doc/openmp-environment-variables/ompdynamic.rst: New file.
2988 * doc/openmp-environment-variables/ompmaxactivelevels.rst: New file.
2989 * doc/openmp-environment-variables/ompmaxtaskpriority.rst: New file.
2990 * doc/openmp-environment-variables/ompnested.rst: New file.
2991 * doc/openmp-environment-variables/ompnumteams.rst: New file.
2992 * doc/openmp-environment-variables/ompnumthreads.rst: New file.
2993 * doc/openmp-environment-variables/ompplaces.rst: New file.
2994 * doc/openmp-environment-variables/ompprocbind.rst: New file.
2995 * doc/openmp-environment-variables/ompschedule.rst: New file.
2996 * doc/openmp-environment-variables/ompstacksize.rst: New file.
2997 * doc/openmp-environment-variables/omptargetoffload.rst: New file.
2998 * doc/openmp-environment-variables/ompteamsthreadlimit.rst: New file.
2999 * doc/openmp-environment-variables/ompthreadlimit.rst: New file.
3000 * doc/openmp-environment-variables/ompwaitpolicy.rst: New file.
3001 * doc/openmp-implementation-specifics.rst: New file.
3002 * doc/openmp-implementation-status.rst: New file.
3003 * doc/openmp-implementation-status/openmp-45.rst: New file.
3004 * doc/openmp-implementation-status/openmp-50.rst: New file.
3005 * doc/openmp-implementation-status/openmp-51.rst: New file.
3006 * doc/openmp-implementation-status/openmp-52.rst: New file.
3007 * doc/openmp-runtime-library-routines.rst: New file.
3008 * doc/openmp-runtime-library-routines/ompdestroylock.rst: New file.
3009 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst: New file.
3010 * doc/openmp-runtime-library-routines/ompfulfillevent.rst: New file.
3011 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst: New file.
3012 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst: New file.
3013 * doc/openmp-runtime-library-routines/ompgetcancellation.rst: New file.
3014 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst: New file.
3015 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst: New file.
3016 * doc/openmp-runtime-library-routines/ompgetdynamic.rst: New file.
3017 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst: New file.
3018 * doc/openmp-runtime-library-routines/ompgetlevel.rst: New file.
3019 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst: New file.
3020 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst: New file.
3021 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst: New file.
3022 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst: New file.
3023 * doc/openmp-runtime-library-routines/ompgetnested.rst: New file.
3024 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst: New file.
3025 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst: New file.
3026 * doc/openmp-runtime-library-routines/ompgetnumteams.rst: New file.
3027 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst: New file.
3028 * doc/openmp-runtime-library-routines/ompgetprocbind.rst: New file.
3029 * doc/openmp-runtime-library-routines/ompgetschedule.rst: New file.
3030 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst: New file.
3031 * doc/openmp-runtime-library-routines/ompgetteamnum.rst: New file.
3032 * doc/openmp-runtime-library-routines/ompgetteamsize.rst: New file.
3033 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst: New file.
3034 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst: New file.
3035 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst: New file.
3036 * doc/openmp-runtime-library-routines/ompgetwtick.rst: New file.
3037 * doc/openmp-runtime-library-routines/ompgetwtime.rst: New file.
3038 * doc/openmp-runtime-library-routines/ompinfinal.rst: New file.
3039 * doc/openmp-runtime-library-routines/ompinitlock.rst: New file.
3040 * doc/openmp-runtime-library-routines/ompinitnestlock.rst: New file.
3041 * doc/openmp-runtime-library-routines/ompinparallel.rst: New file.
3042 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst: New file.
3043 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst: New file.
3044 * doc/openmp-runtime-library-routines/ompsetdynamic.rst: New file.
3045 * doc/openmp-runtime-library-routines/ompsetlock.rst: New file.
3046 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst: New file.
3047 * doc/openmp-runtime-library-routines/ompsetnested.rst: New file.
3048 * doc/openmp-runtime-library-routines/ompsetnestlock.rst: New file.
3049 * doc/openmp-runtime-library-routines/ompsetnumteams.rst: New file.
3050 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst: New file.
3051 * doc/openmp-runtime-library-routines/ompsetschedule.rst: New file.
3052 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst: New file.
3053 * doc/openmp-runtime-library-routines/omptestlock.rst: New file.
3054 * doc/openmp-runtime-library-routines/omptestnestlock.rst: New file.
3055 * doc/openmp-runtime-library-routines/ompunsetlock.rst: New file.
3056 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst: New file.
3057 * doc/reporting-bugs.rst: New file.
3058 * doc/the-libgomp-abi.rst: New file.
3059 * doc/the-libgomp-abi/implementing-atomic-construct.rst: New file.
3060 * doc/the-libgomp-abi/implementing-barrier-construct.rst: New file.
3061 * doc/the-libgomp-abi/implementing-critical-construct.rst: New file.
3062 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
3063 New file.
3064 * doc/the-libgomp-abi/implementing-flush-construct.rst: New file.
3065 * doc/the-libgomp-abi/implementing-for-construct.rst: New file.
3066 * doc/the-libgomp-abi/implementing-master-construct.rst: New file.
3067 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst: New file.
3068 * doc/the-libgomp-abi/implementing-ordered-construct.rst: New file.
3069 * doc/the-libgomp-abi/implementing-parallel-construct.rst: New file.
3070 * doc/the-libgomp-abi/implementing-private-clause.rst: New file.
3071 * doc/the-libgomp-abi/implementing-reduction-clause.rst: New file.
3072 * doc/the-libgomp-abi/implementing-sections-construct.rst: New file.
3073 * doc/the-libgomp-abi/implementing-single-construct.rst: New file.
3074 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst: New file.
3075
3076 2022-11-04 Thomas Schwinge <thomas (a] codesourcery.com>
3077
3078 * libgomp-plugin.h (OFFLOAD_TARGET_TYPE_INTEL_MIC): Remove.
3079 * libgomp.texi (OpenMP Context Selectors): Remove Intel MIC
3080 documentation.
3081 * plugin/configfrag.ac <enable_offload_targets>
3082 [*-intelmic-* | *-intelmicemul-*]: Remove.
3083 * configure: Regenerate.
3084 * testsuite/lib/libgomp.exp (libgomp_init): Remove 'liboffloadmic'
3085 handling.
3086 (offload_target_to_openacc_device_type)
3087 [$offload_target = *-intelmic*]: Remove.
3088 (check_effective_target_offload_device_intel_mic)
3089 (check_effective_target_offload_device_any_intel_mic): Remove.
3090 * testsuite/libgomp.c-c++-common/on_device_arch.h
3091 (device_arch_intel_mic, on_device_arch_intel_mic, any_device_arch)
3092 (any_device_arch_intel_mic): Remove.
3093 * testsuite/libgomp.c-c++-common/target-45.c: Remove
3094 'offload_device_any_intel_mic' XFAIL.
3095 * testsuite/libgomp.fortran/target10.f90: Likewise.
3096
3097 2022-11-03 Tobias Burnus <tobias (a] codesourcery.com>
3098
3099 * testsuite/libgomp.fortran/target-11.f90: New test.
3100 * testsuite/libgomp.fortran/target-13.f90: New test.
3101
3102 2022-11-02 Thomas Schwinge <thomas (a] codesourcery.com>
3103
3104 PR libgomp/106643
3105 PR fortran/96668
3106 * oacc-mem.c (goacc_enter_data_internal): Support
3107 OpenACC 'declare create' with Fortran allocatable arrays, part II.
3108 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
3109 Adjust.
3110 * testsuite/libgomp.oacc-fortran/pr106643-1.f90: New.
3111
3112 2022-11-02 Thomas Schwinge <thomas (a] codesourcery.com>
3113
3114 PR libgomp/106643
3115 * oacc-mem.c (goacc_enter_data_internal): Support
3116 OpenACC 'declare create' with Fortran allocatable arrays, part I.
3117 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-directive.f90:
3118 New.
3119 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
3120 New.
3121
3122 2022-11-02 Thomas Schwinge <thomas (a] codesourcery.com>
3123
3124 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-runtime.f90:
3125 New.
3126
3127 2022-11-02 Thomas Schwinge <thomas (a] codesourcery.com>
3128
3129 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-runtime.f90:
3130 New.
3131
3132 2022-11-02 Cesar Philippidis <cesar (a] codesourcery.com>
3133 Thomas Schwinge <thomas (a] codesourcery.com>
3134
3135 * testsuite/libgomp.oacc-fortran/declare-allocatable-1.f90: New.
3136
3137 2022-10-28 Julian Brown <julian (a] codesourcery.com>
3138 Thomas Schwinge <thomas (a] codesourcery.com>
3139
3140 PR middle-end/90115
3141 * testsuite/libgomp.oacc-fortran/declare-1.f90: Adjust scan output.
3142 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
3143 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
3144 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
3145 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
3146
3147 2022-10-24 Thomas Schwinge <thomas (a] codesourcery.com>
3148
3149 * plugin/plugin-nvptx.c (nvptx_open_device): Initialize
3150 'ptx_dev->rev_data'.
3151
3152 2022-10-24 Tobias Burnus <tobias (a] codesourcery.com>
3153
3154 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Remove
3155 'static' for this variable.
3156 * config/nvptx/libgomp-nvptx.h: New file.
3157 * config/nvptx/target.c: Include it.
3158 (GOMP_ADDITIONAL_ICVS): Declare extern var.
3159 (GOMP_REV_OFFLOAD_VAR): Declare var.
3160 (GOMP_target_ext): Handle reverse offload.
3161 * libgomp-plugin.h (GOMP_PLUGIN_target_rev): New prototype.
3162 * libgomp-plugin.c (GOMP_PLUGIN_target_rev): New, call ...
3163 * target.c (gomp_target_rev): ... this new stub function.
3164 * libgomp.h (gomp_target_rev): Declare.
3165 * libgomp.map (GOMP_PLUGIN_1.4): New; add GOMP_PLUGIN_target_rev.
3166 * plugin/cuda-lib.def (cuMemHostAlloc): Add.
3167 * plugin/plugin-nvptx.c: Include libgomp-nvptx.h.
3168 (struct ptx_device): Add rev_data member.
3169 (nvptx_open_device): Remove async_engines query, last used in
3170 r10-304-g1f4c5b9b; add unified-address assert check.
3171 (GOMP_OFFLOAD_get_num_devices): Claim unified address
3172 support.
3173 (GOMP_OFFLOAD_load_image): Free rev_fn_table if no
3174 offload functions exist. Make offload var available
3175 on host and device.
3176 (rev_off_dev_to_host_cpy, rev_off_host_to_dev_cpy): New.
3177 (GOMP_OFFLOAD_run): Handle reverse offload.
3178
3179 2022-10-21 Thomas Schwinge <thomas (a] codesourcery.com>
3180
3181 PR tree-optimization/107195
3182 PR target/107344
3183 * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Restore SESE
3184 regions checking.
3185
3186 2022-10-20 Tobias Burnus <tobias (a] codesourcery.com>
3187
3188 * testsuite/lib/libgomp.exp (check_effective_target_offload_device_gcn):
3189 New.
3190 * testsuite/libgomp.c-c++-common/on_device_arch.h (device_arch_gcn,
3191 on_device_arch_gcn): New.
3192 * testsuite/libgomp.c-c++-common/requires-4a.c: New test; copied from
3193 requires-4.c but using heap-allocated memory.
3194
3195 2022-10-20 Thomas Schwinge <thomas (a] codesourcery.com>
3196
3197 PR target/105421
3198 * testsuite/libgomp.oacc-c-c++-common/private-big-1.c: New.
3199
3200 2022-10-17 Thomas Schwinge <thomas (a] codesourcery.com>
3201
3202 * testsuite/libgomp.c/reverse-offload-sm30.c: Fix nvptx-specific
3203 '-foffload-options' syntax.
3204
3205 2022-10-13 Tobias Burnus <tobias (a] codesourcery.com>
3206
3207 * testsuite/libgomp.fortran/task-7.f90: New test.
3208 * testsuite/libgomp.fortran/task-8.f90: New test.
3209 * testsuite/libgomp.fortran/task-in-explicit-1.f90: New test.
3210 * testsuite/libgomp.fortran/task-in-explicit-2.f90: New test.
3211 * testsuite/libgomp.fortran/task-in-explicit-3.f90: New test.
3212 * testsuite/libgomp.fortran/task-reduction-17.f90: New test.
3213 * testsuite/libgomp.fortran/task-reduction-18.f90: New test.
3214
3215 2022-10-12 Jakub Jelinek <jakub (a] redhat.com>
3216
3217 * libgomp.texi (OpenMP 5.2): Fix up allocator -> allocate directive
3218 in deprecation bullet.
3219
3220 2022-10-12 Jakub Jelinek <jakub (a] redhat.com>
3221
3222 * omp.h.in (omp_in_explicit_task): Declare.
3223 * omp_lib.h.in (omp_in_explicit_task): Likewise.
3224 * omp_lib.f90.in (omp_in_explicit_task): New interface.
3225 * libgomp.map (OMP_5.2): New symbol version, export
3226 omp_in_explicit_task and omp_in_explicit_task_.
3227 * task.c (omp_in_explicit_task): New function.
3228 * fortran.c (omp_in_explicit_task): Add ialias_redirect.
3229 (omp_in_explicit_task_): New function.
3230 * libgomp.texi (OpenMP 5.2): Mark omp_in_explicit_task as implemented.
3231 * testsuite/libgomp.c-c++-common/task-in-explicit-1.c: New test.
3232 * testsuite/libgomp.c-c++-common/task-in-explicit-2.c: New test.
3233 * testsuite/libgomp.c-c++-common/task-in-explicit-3.c: New test.
3234
3235 2022-10-12 Jakub Jelinek <jakub (a] redhat.com>
3236
3237 * task.c (gomp_create_artificial_team): Fix up handling of invocations
3238 from within explicit task.
3239 * target.c (GOMP_target_ext): Likewise.
3240 * testsuite/libgomp.c/task-7.c: New test.
3241 * testsuite/libgomp.c/task-8.c: New test.
3242 * testsuite/libgomp.c-c++-common/task-reduction-17.c: New test.
3243 * testsuite/libgomp.c-c++-common/task-reduction-18.c: New test.
3244
3245 2022-10-12 Martin Liska <mliska (a] suse.cz>
3246
3247 * configure: Regenerate.
3248
3249 2022-10-11 Olivier Hainque <hainque (a] adacore.com>
3250 Olivier Hainque <hainque (a] adacore.com>
3251
3252 * configure: Regenerate.
3253
3254 2022-10-05 Tobias Burnus <tobias (a] codesourcery.com>
3255
3256 * libgomp.texi (OpenMP 5.1 Impl. Status): Mark 'assume' as 'Y'.
3257
3258 2022-10-04 Jakub Jelinek <jakub (a] redhat.com>
3259
3260 * libgomp.texi (Support begin/end declare target syntax in C/C++):
3261 Mark as implemented.
3262
3263 2022-09-30 Tobias Burnus <tobias (a] codesourcery.com>
3264
3265 PR fortran/105318
3266 * testsuite/libgomp.fortran/is_device_ptr-2.f90: New test.
3267
3268 2022-09-28 Tobias Burnus <tobias (a] codesourcery.com>
3269
3270 * libgomp.texi (OpenMP 5.1): Mark 'assume' as implemented
3271 for C/C++. Remove duplicated 'begin declare target' entry.
3272
3273 2022-09-24 Jakub Jelinek <jakub (a] redhat.com>
3274
3275 PR c/106981
3276 * testsuite/libgomp.c-c++-common/pr106981.c: New test.
3277
3278 2022-09-14 Julian Brown <julian (a] codesourcery.com>
3279
3280 * testsuite/libgomp.oacc-c-c++-common/deep-copy-15.c: New test.
3281 * testsuite/libgomp.oacc-c-c++-common/deep-copy-16.c: New test.
3282 * testsuite/libgomp.oacc-c++/deep-copy-17.C: New test.
3283 * testsuite/libgomp.oacc-c-c++-common/deep-copy-arrayofstruct.c: Move
3284 test to here, make "run" test.
3285
3286 2022-09-13 Jakub Jelinek <jakub (a] redhat.com>
3287
3288 PR libgomp/106906
3289 * env.c (get_icv_member_addr): Cast false to void * before assigning
3290 it to icv_addr[1], and comment the whole assignment out.
3291
3292 2022-09-13 Tobias Burnus <tobias (a] codesourcery.com>
3293
3294 * libgomp.texi (gcn): Move misplaced -march=sm_30 remark to ...
3295 (nvptx): ... here.
3296
3297 2022-09-12 Tobias Burnus <tobias (a] codesourcery.com>
3298
3299 * libgomp.texi (Offload-Target Specifics: nvptx): Document
3300 that reverse offload requires >= -march=sm_35.
3301 * testsuite/libgomp.c-c++-common/requires-4.c: Build for nvptx
3302 with -misa=sm_35.
3303 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
3304 * testsuite/libgomp.c-c++-common/requires-6.c: Likewise.
3305 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: Likewise.
3306 * testsuite/libgomp.fortran/reverse-offload-1.f90: Likewise.
3307 * testsuite/libgomp.c/reverse-offload-sm30.c: New test.
3308
3309 2022-09-12 Tobias Burnus <tobias (a] codesourcery.com>
3310
3311 * libgomp.texi (OpenMP 5.1 Impl. Status): Add two new minor items.
3312 (OpenMP 5.2 Impl. Status): Improve omp/omx/ompx wording.
3313
3314 2022-09-12 Jakub Jelinek <jakub (a] redhat.com>
3315
3316 PR libgomp/106894
3317 * testsuite/libgomp.c-c++-common/icv-6.c: Include string.h.
3318 (main): Avoid tests for which corresponding non-_ALL suffixed variable
3319 is in the environment, or for OMP_NUM_TEAMS on the device
3320 OMP_NUM_TEAMS_DEV_?.
3321
3322 2022-09-10 Iain Sandoe <iain (a] sandoe.co.uk>
3323
3324 * env.c (initialize_env): Include libiberty environ.h.
3325
3326 2022-09-09 Tobias Burnus <tobias (a] codesourcery.com>
3327
3328 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Read offload
3329 function address table '$offload_func_table' if rev_fn_table
3330 is not NULL.
3331
3332 2022-09-09 Tobias Burnus <tobias (a] codesourcery.com>
3333
3334 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Read
3335 .offload_func_table to populate rev_fn_table when requested.
3336
3337 2022-09-09 Tobias Burnus <tobias (a] codesourcery.com>
3338
3339 * libgomp-plugin.h (GOMP_OFFLOAD_load_image): Add
3340 'uint64_t **rev_fn_table' argument.
3341 * oacc-host.c (host_load_image): Likewise.
3342 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Likewise;
3343 currently unused.
3344 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
3345 * target.c (gomp_load_image_to_device): Update call but pass
3346 NULL for now.
3347
3348 2022-09-09 Jakub Jelinek <jakub (a] redhat.com>
3349
3350 PR libgomp/106894
3351 * env.c (initialize_env) <case PARSE_BIND>: Use char ** instead of
3352 char * for dest[1] initialization from params[1]. Formatting fixes.
3353
3354 2022-09-08 Tobias Burnus <tobias (a] codesourcery.com>
3355
3356 PR fortran/106670
3357 * libgomp.texi (OpenMP 5.2): Add comment to ompx/omx entry.
3358
3359 2022-09-08 Tobias Burnus <tobias (a] codesourcery.com>
3360
3361 * libgomp.texi (OpenMP-Implementation Specifics): New; add libmemkind
3362 section; move OpenMP Context Selectors from ...
3363 (Offload-Target Specifics): ... here; add 'AMD Radeo (GCN)' and
3364 'nvptx' sections.
3365
3366 2022-09-08 Marcel Vollweiler <marcel (a] codesourcery.com>
3367
3368 * config/gcn/icv-device.c (omp_get_default_device): Return device-
3369 specific ICV.
3370 (omp_get_max_teams): Added for GCN devices.
3371 (omp_set_num_teams): Likewise.
3372 (ialias): Likewise.
3373 * config/nvptx/icv-device.c (omp_get_default_device): Return device-
3374 specific ICV.
3375 (omp_get_max_teams): Added for NVPTX devices.
3376 (omp_set_num_teams): Likewise.
3377 (ialias): Likewise.
3378 * env.c (struct gomp_icv_list): New struct to store entries of initial
3379 ICV values.
3380 (struct gomp_offload_icv_list): New struct to store entries of device-
3381 specific ICV values that are copied to the device and back.
3382 (struct gomp_default_icv_values): New struct to store default values of
3383 ICVs according to the OpenMP standard.
3384 (parse_schedule): Generalized for different variants of OMP_SCHEDULE.
3385 (print_env_var_error): Function that prints an error for invalid values
3386 for ICVs.
3387 (parse_unsigned_long_1): Removed getenv. Generalized.
3388 (parse_unsigned_long): Likewise.
3389 (parse_int_1): Likewise.
3390 (parse_int): Likewise.
3391 (parse_int_secure): Likewise.
3392 (parse_unsigned_long_list): Likewise.
3393 (parse_target_offload): Likewise.
3394 (parse_bind_var): Likewise.
3395 (parse_stacksize): Likewise.
3396 (parse_boolean): Likewise.
3397 (parse_wait_policy): Likewise.
3398 (parse_allocator): Likewise.
3399 (omp_display_env): Extended to output different variants of environment
3400 variables.
3401 (print_schedule): New helper function for omp_display_env which prints
3402 the values of run_sched_var.
3403 (print_proc_bind): New helper function for omp_display_env which prints
3404 the values of proc_bind_var.
3405 (enum gomp_parse_type): Collection of types used for parsing environment
3406 variables.
3407 (ENTRY): Preprocess string lengths of environment variables.
3408 (OMP_VAR_CNT): Preprocess table size.
3409 (OMP_HOST_VAR_CNT): Likewise.
3410 (INT_MAX_STR_LEN): Constant for the maximal number of digits of a device
3411 number.
3412 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
3413 (gomp_set_icv_flag): Sets a flag for a particular ICV.
3414 (print_device_specific_icvs): New helper function for omp_display_env to
3415 print device specific ICV values.
3416 (get_device_num): New helper function for parse_device_specific.
3417 Extracts the device number from an environment variable name.
3418 (get_icv_member_addr): Gets the memory address for a particular member
3419 of an ICV struct.
3420 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
3421 (initialize_icvs): New function to initialize a gomp_initial_icvs
3422 struct.
3423 (add_initial_icv_to_list): Adds an ICV struct to gomp_initial_icv_list.
3424 (startswith): Checks if a string starts with a given prefix.
3425 (initialize_env): Extended to parse the new syntax of environment
3426 variables.
3427 * icv-device.c (omp_get_max_teams): Added.
3428 (ialias): Likewise.
3429 (omp_set_num_teams): Likewise.
3430 * icv.c (omp_set_num_teams): Moved to icv-device.c.
3431 (omp_get_max_teams): Likewise.
3432 (ialias): Likewise.
3433 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Removed.
3434 (GOMP_ADDITIONAL_ICVS): New target-side struct that
3435 holds the designated ICVs of the target device.
3436 * libgomp.h (enum gomp_icvs): Collection of ICVs.
3437 (enum gomp_device_num): Definition of device numbers for _ALL, _DEV, and
3438 no suffix.
3439 (enum gomp_env_suffix): Collection of possible suffixes of environment
3440 variables.
3441 (struct gomp_initial_icvs): Contains all ICVs for which we need to store
3442 initial values.
3443 (struct gomp_default_icv):New struct to hold ICVs for which we need
3444 to store initial values.
3445 (struct gomp_icv_list): Definition of a linked list that is used for
3446 storing ICVs for the devices and also for _DEV, _ALL, and without
3447 suffix.
3448 (struct gomp_offload_icvs): New struct to hold ICVs that are copied to
3449 a device.
3450 (struct gomp_offload_icv_list): Definition of a linked list that holds
3451 device-specific ICVs that are copied to devices.
3452 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
3453 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
3454 * libgomp.texi: Updated.
3455 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Extended to read
3456 further ICVs from the offload image.
3457 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
3458 * target.c (gomp_get_offload_icv_item): Get a list item of
3459 gomp_offload_icv_list.
3460 (get_gomp_offload_icvs): New. Returns the ICV values
3461 depending on the device num and the variable hierarchy.
3462 (gomp_load_image_to_device): Extended to copy further ICVs to a device.
3463 * testsuite/libgomp.c-c++-common/icv-5.c: New test.
3464 * testsuite/libgomp.c-c++-common/icv-6.c: New test.
3465 * testsuite/libgomp.c-c++-common/icv-7.c: New test.
3466 * testsuite/libgomp.c-c++-common/icv-8.c: New test.
3467 * testsuite/libgomp.c-c++-common/omp-display-env-1.c: New test.
3468 * testsuite/libgomp.c-c++-common/omp-display-env-2.c: New test.
3469
3470 2022-09-08 Jakub Jelinek <jakub (a] redhat.com>
3471
3472 * libgomp.texi (OpenMP 5.2): Mention that omp_cur_iteration is now
3473 fully supported.
3474 * testsuite/libgomp.c/doacross-4.c: New test.
3475 * testsuite/libgomp.c/doacross-5.c: New test.
3476 * testsuite/libgomp.c/doacross-6.c: New test.
3477 * testsuite/libgomp.c/doacross-7.c: New test.
3478
3479 2022-09-05 Tobias Burnus <tobias (a] codesourcery.com>
3480
3481 * libgomp.texi (OpenMP 5.2): Update doacross/omp_cur_iteration status.
3482
3483 2022-08-26 Tobias Burnus <tobias (a] codesourcery.com>
3484
3485 * libgomp.texi (OpenMP 5.0): Mark 'ancestor' as implemented but
3486 refer to 'requires'.
3487 * testsuite/libgomp.c-c++-common/reverse-offload-1-aux.c: New test.
3488 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: New test.
3489 * testsuite/libgomp.fortran/reverse-offload-1-aux.f90: New test.
3490 * testsuite/libgomp.fortran/reverse-offload-1.f90: New test.
3491
3492 2022-08-17 Tobias Burnus <tobias (a] codesourcery.com>
3493
3494 PR middle-end/106548
3495 * testsuite/libgomp.c/linear-2.c: New test.
3496
3497 2022-08-17 Tobias Burnus <tobias (a] codesourcery.com>
3498
3499 * splay-tree.h: Fix splay_* macro unsetting if
3500 splay_tree_prefix is defined.
3501
3502 2022-07-29 Tobias Burnus <tobias (a] codesourcery.com>
3503
3504 * testsuite/libgomp.c-c++-common/pr106449-2.c: New test.
3505
3506 2022-07-29 Jakub Jelinek <jakub (a] redhat.com>
3507
3508 PR middle-end/106449
3509 * testsuite/libgomp.c-c++-common/pr106449.c: New test.
3510
3511 2022-07-12 Tobias Burnus <tobias (a] codesourcery.com>
3512
3513 * target.c (gomp_target_init): Added tailing '\n' to gomp_debug.
3514
3515 2022-07-12 Thomas Schwinge <thomas (a] codesourcery.com>
3516
3517 PR middle-end/101551
3518 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: XFAIL
3519 'offloading_enabled' diagnostics issue.
3520
3521 2022-07-11 Thomas Schwinge <thomas (a] codesourcery.com>
3522
3523 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Enhance
3524 '_Pragma' diagnostics verification.
3525
3526 2022-07-10 Lewis Hyatt <lhyatt (a] gmail.com>
3527
3528 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Adapt for
3529 improved warning locations.
3530 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Likewise.
3531
3532 2022-07-08 Thomas Schwinge <thomas (a] codesourcery.com>
3533
3534 * testsuite/libgomp.c-c++-common/requires-1.c: Add 'dg-note's.
3535 * testsuite/libgomp.c-c++-common/requires-2.c: Likewise.
3536 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
3537 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
3538 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
3539
3540 2022-07-07 Thomas Schwinge <thomas (a] codesourcery.com>
3541
3542 * target.c (GOMP_offload_register, GOMP_offload_unregister):
3543 Denote as legacy entry points.
3544 * testsuite/lib/libgomp.exp
3545 (check_effective_target_offload_target_any): New proc.
3546 * testsuite/libgomp.c-c++-common/requires-1.c: Enable for
3547 'offload_target_any'.
3548 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
3549 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
3550 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
3551
3552 2022-07-07 Thomas Schwinge <thomas (a] codesourcery.com>
3553
3554 * testsuite/libgomp.c-c++-common/requires-4.c: Enhance testing.
3555 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
3556
3557 2022-07-07 Thomas Schwinge <thomas (a] codesourcery.com>
3558
3559 * testsuite/libgomp.c-c++-common/requires-3.c: Adjust.
3560
3561 2022-07-06 Thomas Schwinge <thomas (a] codesourcery.com>
3562
3563 * target.c (GOMP_offload_register_ver): Clarify 'target_data' ->
3564 'data'.
3565 (GOMP_offload_unregister_ver): Likewise. Fix up 'target_data'.
3566
3567 2022-07-04 Tobias Burnus <tobias (a] codesourcery.com>
3568 Jakub Jelinek <jakub (a] redhat.com>
3569
3570 * libgomp.texi (OpenMP 5.2): Mark linear-clause change as 'Y'.
3571
3572 2022-07-04 Tobias Burnus <tobias (a] codesourcery.com>
3573 Chung-Lin Tang <cltang (a] codesourcery.com>
3574 Thomas Schwinge <thomas (a] codesourcery.com>
3575
3576 * libgomp-plugin.h (GOMP_OFFLOAD_get_num_devices): Add
3577 omp_requires_mask arg.
3578 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Likewise;
3579 return -1 when device available but omp_requires_mask != 0.
3580 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_get_num_devices): Likewise.
3581 * oacc-host.c (host_get_num_devices, host_openacc_get_property):
3582 Update call.
3583 * oacc-init.c (resolve_device, acc_init_1, acc_shutdown_1,
3584 goacc_attach_host_thread_to_device, acc_get_num_devices,
3585 acc_set_device_num, get_property_any): Likewise.
3586 * target.c (omp_requires_mask): New global var.
3587 (gomp_requires_to_name): New.
3588 (GOMP_offload_register_ver): Handle passed omp_requires_mask.
3589 (gomp_target_init): Handle omp_requires_mask.
3590 * libgomp.texi (OpenMP 5.0): Update requires impl. status.
3591 (OpenMP 5.1): Add a missed item.
3592 (OpenMP 5.2): Mark linear-clause change as supported in C/C++.
3593 * testsuite/libgomp.c-c++-common/requires-1-aux.c: New test.
3594 * testsuite/libgomp.c-c++-common/requires-1.c: New test.
3595 * testsuite/libgomp.c-c++-common/requires-2-aux.c: New test.
3596 * testsuite/libgomp.c-c++-common/requires-2.c: New test.
3597 * testsuite/libgomp.c-c++-common/requires-3-aux.c: New test.
3598 * testsuite/libgomp.c-c++-common/requires-3.c: New test.
3599 * testsuite/libgomp.c-c++-common/requires-4-aux.c: New test.
3600 * testsuite/libgomp.c-c++-common/requires-4.c: New test.
3601 * testsuite/libgomp.c-c++-common/requires-5-aux.c: New test.
3602 * testsuite/libgomp.c-c++-common/requires-5.c: New test.
3603 * testsuite/libgomp.c-c++-common/requires-6.c: New test.
3604 * testsuite/libgomp.c-c++-common/requires-7-aux.c: New test.
3605 * testsuite/libgomp.c-c++-common/requires-7.c: New test.
3606 * testsuite/libgomp.fortran/requires-1-aux.f90: New test.
3607 * testsuite/libgomp.fortran/requires-1.f90: New test.
3608
3609 2022-07-01 Tobias Burnus <tobias (a] codesourcery.com>
3610
3611 * libgomp.texi (OpenMP 5.2): Mark target enter/exit data
3612 with fromto as implemented.
3613
3614 2022-06-28 Martin Liska <mliska (a] suse.cz>
3615
3616 * acinclude.m4: Fix typo in mold linker detection.
3617 * Makefile.in: Regenerate.
3618 * configure: Regenerate.
3619
3620 2022-06-21 Jakub Jelinek <jakub (a] redhat.com>
3621 Paul Iannetta <piannetta (a] kalrayinc.com>
3622
3623 PR libgomp/106045
3624 * testsuite/libgomp.c/target-31.c: Add private (i) clause.
3625
3626 2022-06-17 Martin Liska <mliska (a] suse.cz>
3627
3628 * libgomp.texi: Add table header for new features of
3629 OpenMP 5.2.
3630
3631 2022-06-15 Jakub Jelinek <jakub (a] redhat.com>
3632
3633 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c (main): Initialize
3634 q to ddress of an automatic variable. Use -5 instead of -1 in
3635 omp_get_mapped_ptr call. Add test with omp_initial_device.
3636 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90 (main): Use -5 instead
3637 of -1 in omp_get_mapped_ptr call. Add test with omp_initial_device.
3638 Renumber stop arguments afterwards.
3639
3640 2022-06-13 Jakub Jelinek <jakub (a] redhat.com>
3641
3642 * omp.h.in (omp_initial_device, omp_invalid_device): New enumerators.
3643 * omp_lib.f90.in (omp_initial_device, omp_invalid_device): New
3644 parameters.
3645 * omp_lib.h.in (omp_initial_device, omp_invalid_device): Likewise.
3646 * target.c (resolve_device): Add remapped argument, handle
3647 GOMP_DEVICE_ICV only if remapped is true (and clear remapped),
3648 for negative values, treat GOMP_DEVICE_FALLBACK as fallback only
3649 if remapped, otherwise treat omp_initial_device that way. For
3650 omp_invalid_device, always emit gomp_fatal, even when
3651 OMP_TARGET_OFFLOAD isn't mandatory.
3652 (GOMP_target, GOMP_target_ext, GOMP_target_data, GOMP_target_data_ext,
3653 GOMP_target_update, GOMP_target_update_ext,
3654 GOMP_target_enter_exit_data): Pass true as remapped argument to
3655 resolve_device.
3656 (omp_target_alloc, omp_target_free, omp_target_is_present,
3657 omp_target_memcpy_check, omp_target_associate_ptr,
3658 omp_target_disassociate_ptr, omp_get_mapped_ptr,
3659 omp_target_is_accessible): Pass false as remapped argument to
3660 resolve_device. Treat omp_initial_device the same as
3661 gomp_get_num_devices (). Don't bypass resolve_device calls if
3662 device_num is negative.
3663 (omp_pause_resource): Treat omp_initial_device the same as
3664 gomp_get_num_devices (). Call resolve_device.
3665 * icv-device.c (omp_set_default_device): Always set to device_num
3666 even when it is negative.
3667 * libgomp.texi: Document that Conforming device numbers,
3668 omp_initial_device and omp_invalid_device is implemented.
3669 * testsuite/libgomp.c/target-41.c (main): Add test with
3670 omp_initial_device.
3671 * testsuite/libgomp.c/target-45.c: New test.
3672 * testsuite/libgomp.c/target-46.c: New test.
3673 * testsuite/libgomp.c/target-47.c: New test.
3674 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c (main): Add
3675 test with omp_initial_device. Use -5 instead of -1 for negative value
3676 test.
3677 * testsuite/libgomp.fortran/target-is-accessible-1.f90 (main):
3678 Likewise. Reorder stop numbers.
3679
3680 2022-06-10 Jakub Jelinek <jakub (a] redhat.com>
3681
3682 * allocator.c (gomp_init_memkind): Call dlopen with "libmemkind.so.0"
3683 rather than "libmemkind.so".
3684
3685 2022-06-10 Thomas Schwinge <thomas (a] codesourcery.com>
3686
3687 * plugin/Makefrag.am: Evaluate 'if PLUGIN_NVPTX_DYNAMIC' to true.
3688 * plugin/configfrag.ac (--with-cuda-driver)
3689 (--with-cuda-driver-include, --with-cuda-driver-lib)
3690 (CUDA_DRIVER_INCLUDE, CUDA_DRIVER_LIB, PLUGIN_NVPTX_CPPFLAGS)
3691 (PLUGIN_NVPTX_LDFLAGS, PLUGIN_NVPTX_LIBS, PLUGIN_NVPTX_DYNAMIC):
3692 Remove.
3693 * testsuite/libgomp-test-support.exp.in (cuda_driver_include)
3694 (cuda_driver_lib): Remove.
3695 * testsuite/lib/libgomp.exp (libgomp_init): Don't consider these.
3696 * Makefile.in: Regenerate.
3697 * configure: Likewise.
3698 * testsuite/Makefile.in: Likewise.
3699
3700 2022-06-09 Jakub Jelinek <jakub (a] redhat.com>
3701
3702 * config/linux/allocator.c: Fix up #include directive.
3703
3704 2022-06-09 Jakub Jelinek <jakub (a] redhat.com>
3705
3706 * allocator.c: Include dlfcn.h if LIBGOMP_USE_MEMKIND is defined.
3707 (enum gomp_memkind_kind): New type.
3708 (struct omp_allocator_data): Add memkind field if LIBGOMP_USE_MEMKIND
3709 is defined.
3710 (struct gomp_memkind_data): New type.
3711 (memkind_data, memkind_data_once): New variables.
3712 (gomp_init_memkind, gomp_get_memkind): New functions.
3713 (omp_init_allocator): Initialize data.memkind, don't fail for
3714 omp_high_bw_mem_space if libmemkind supports it.
3715 (omp_aligned_alloc, omp_free, omp_aligned_calloc, omp_realloc): Add
3716 memkind support of LIBGOMP_USE_MEMKIND is defined.
3717 * config/linux/allocator.c: New file.
3718
3719 2022-06-03 Tobias Burnus <tobias (a] codesourcery.com>
3720
3721 * libgomp.texi (OpenMP 5.2): Mark scope w/ firstprivate/allocate as Y.
3722 * testsuite/libgomp.fortran/scope-2.f90: New test.
3723
3724 2022-06-02 David Malcolm <dmalcolm (a] redhat.com>
3725
3726 * testsuite/lib/libgomp.exp: Add load_gcc_lib of scansarif.exp.
3727
3728 2022-05-31 Jakub Jelinek <jakub (a] redhat.com>
3729
3730 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add testcase for
3731 scope construct with allocate clause.
3732 * testsuite/libgomp.c-c++-common/allocate-3.c (foo): Likewise.
3733 * testsuite/libgomp.c-c++-common/scope-2.c: New test.
3734
3735 2022-05-28 Tobias Burnus <tobias (a] codesourcery.com>
3736
3737 * libgomp.texi (OpenMP 5.2): Mark 'enter' clause as supported.
3738 * testsuite/libgomp.fortran/declare-target-1.f90: Extend to test
3739 explicit 'to' and 'enter' clause.
3740 * testsuite/libgomp.fortran/declare-target-2.f90: Update accordingly.
3741
3742 2022-05-28 Jakub Jelinek <jakub (a] redhat.com>
3743
3744 PR libgomp/105745
3745 * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Don't define for
3746 defined(HAVE__ALIGNED_MALLOC) case.
3747 * alloc.c (gomp_aligned_alloc): Move defined(HAVE__ALIGNED_MALLOC)
3748 handling as last option before fallback instead of first.
3749 (gomp_aligned_free): For defined(HAVE__ALIGNED_MALLOC) call
3750 _aligned_free.
3751
3752 2022-05-27 Jakub Jelinek <jakub (a] redhat.com>
3753
3754 * testsuite/libgomp.c-c++-common/target-40.c: Modify some existing to
3755 clauses to enter.
3756 * testsuite/libgomp.c/target-41.c: Likewise.
3757
3758 2022-05-27 Tobias Burnus <tobias (a] codesourcery.com>
3759
3760 * libgomp.texi (Other new OpenMP 5.1 features): Add
3761 'begin declare target'.
3762 (Other new OpenMP 5.2 features): New.
3763
3764 2022-05-25 Jakub Jelinek <jakub (a] redhat.com>
3765
3766 * task.c (gomp_task_run_post_handle_dependers): If empty_task
3767 is the last task taskwait depend depends on, wake it up.
3768 Similarly if it is the last child of a taskgroup, use atomic
3769 store instead of decrement and awak taskgroup wait if any.
3770 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-2.c: New test.
3771
3772 2022-05-24 Andrew Stubbs <ams (a] codesourcery.com>
3773
3774 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
3775 EF_AMDGPU_MACH_AMDGCN_GFX90a.
3776 (gcn_gfx90a_s): New.
3777 (isa_hsa_name): Support gfx90a.
3778 (isa_code): Likewise.
3779
3780 2022-05-24 Tobias Burnus <tobias (a] codesourcery.com>
3781
3782 PR c/105378
3783 * libgomp.texi (OpenMP 5.1): Set 'taskwait nowait' to 'Y'.
3784 * testsuite/libgomp.fortran/taskwait-depend-nowait-1.f90: New.
3785
3786 2022-05-24 Jakub Jelinek <jakub (a] redhat.com>
3787
3788 PR c/105378
3789 * libgomp_g.h (GOMP_taskwait_depend_nowait): Declare.
3790 * libgomp.map (GOMP_taskwait_depend_nowait): Export at GOMP_5.1.1.
3791 * task.c (empty_task): New function.
3792 (gomp_task_run_post_handle_depend_hash): Declare earlier.
3793 (gomp_task_run_post_handle_depend): Declare.
3794 (GOMP_task): Optimize fn == empty_task if there is nothing to wait
3795 for.
3796 (gomp_task_run_post_handle_dependers): Optimize task->fn == empty_task.
3797 (GOMP_taskwait_depend_nowait): New function.
3798 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-1.c: New test.
3799
3800 2022-05-23 Tobias Burnus <tobias (a] codesourcery.com>
3801
3802 PR fortran/104949
3803 * target.c (gomp_map_vars_internal, copy_firstprivate_data):
3804 Support attach for GOMP_MAP_FIRSTPRIVATE.
3805 * testsuite/libgomp.fortran/target-firstprivate-1.f90: New test.
3806 * testsuite/libgomp.fortran/target-firstprivate-2.f90: New test.
3807 * testsuite/libgomp.fortran/target-firstprivate-3.f90: New test.
3808
3809 2022-05-20 Marcel Vollweiler <marcel (a] codesourcery.com>
3810
3811 * libgomp.map: Added omp_target_memcpy_async and
3812 omp_target_memcpy_rect_async.
3813 * libgomp.texi: Both functions are now supported.
3814 * omp.h.in: Added omp_target_memcpy_async and
3815 omp_target_memcpy_rect_async.
3816 * omp_lib.f90.in: Added interfaces for both new functions.
3817 * omp_lib.h.in: Likewise.
3818 * target.c (ialias_redirect): Added for GOMP_task.
3819 (omp_target_memcpy): Restructured into check and copy part.
3820 (omp_target_memcpy_check): New helper function for omp_target_memcpy and
3821 omp_target_memcpy_async that checks requirements.
3822 (omp_target_memcpy_copy): New helper function for omp_target_memcpy and
3823 omp_target_memcpy_async that performs the memcpy.
3824 (omp_target_memcpy_async_helper): New helper function that is used in
3825 omp_target_memcpy_async for the asynchronous task.
3826 (omp_target_memcpy_async): Added.
3827 (omp_target_memcpy_rect): Restructured into check and copy part.
3828 (omp_target_memcpy_rect_check): New helper function for
3829 omp_target_memcpy_rect and omp_target_memcpy_rect_async that checks
3830 requirements.
3831 (omp_target_memcpy_rect_copy): New helper function for
3832 omp_target_memcpy_rect and omp_target_memcpy_rect_async that performs
3833 the memcpy.
3834 (omp_target_memcpy_rect_async_helper): New helper function that is used
3835 in omp_target_memcpy_rect_async for the asynchronous task.
3836 (omp_target_memcpy_rect_async): Added.
3837 * task.c (ialias): Added for GOMP_task.
3838 * testsuite/libgomp.c-c++-common/target-memcpy-async-1.c: New test.
3839 * testsuite/libgomp.c-c++-common/target-memcpy-async-2.c: New test.
3840 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-1.c: New test.
3841 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-2.c: New test.
3842 * testsuite/libgomp.fortran/target-memcpy-async-1.f90: New test.
3843 * testsuite/libgomp.fortran/target-memcpy-async-2.f90: New test.
3844 * testsuite/libgomp.fortran/target-memcpy-rect-async-1.f90: New test.
3845 * testsuite/libgomp.fortran/target-memcpy-rect-async-2.f90: New test.
3846
3847 2022-05-18 Tobias Burnus <tobias (a] codesourcery.com>
3848
3849 * libgomp.texi (OpenMP 5.1): Set 'inoutset' to Y.
3850 (OpenMP Context Selectors): Add missing comma.
3851 * testsuite/libgomp.fortran/depend-5.f90: Add inoutset test.
3852 * testsuite/libgomp.fortran/depend-6.f90: Likewise.
3853 * testsuite/libgomp.fortran/depend-7.f90: Likewise.
3854 * testsuite/libgomp.fortran/depend-inoutset-1.f90: New test.
3855
3856 2022-05-17 Jakub Jelinek <jakub (a] redhat.com>
3857
3858 * libgomp.texi (OpenMP 5.1): Remove "Not inside target regions"
3859 comment for omp_display_env feature.
3860
3861 2022-05-17 Tobias Burnus <tobias (a] codesourcery.com>
3862
3863 * libgomp.texi (Offload-Target Specifics): New chapter; add section
3864 to document OpenMP context selectors.
3865
3866 2022-05-17 Jakub Jelinek <jakub (a] redhat.com>
3867
3868 * libgomp.h (struct gomp_task_depend_entry): Change is_in type
3869 from bool to unsigned char.
3870 * task.c (gomp_task_handle_depend): Handle GOMP_DEPEND_INOUTSET.
3871 Ignore dependencies where
3872 task->depend[i].is_in && task->depend[i].is_in == ent->is_in
3873 rather than just task->depend[i].is_in && ent->is_in. Remember
3874 whether GOMP_DEPEND_IN loop is needed and guard the loop with that
3875 conditional.
3876 (gomp_task_maybe_wait_for_dependencies): Handle GOMP_DEPEND_INOUTSET.
3877 Ignore dependencies where elem.is_in && elem.is_in == ent->is_in
3878 rather than just elem.is_in && ent->is_in.
3879 * testsuite/libgomp.c-c++-common/depend-1.c (test): Add task with
3880 inoutset depend-kind.
3881 * testsuite/libgomp.c-c++-common/depend-2.c (test): Likewise.
3882 * testsuite/libgomp.c-c++-common/depend-3.c (test): Likewise.
3883 * testsuite/libgomp.c-c++-common/depend-inoutset-1.c: New test.
3884
3885 2022-05-17 Tobias Burnus <tobias (a] codesourcery.com>
3886
3887 * libgomp.texi (OpenMP Implementation Status): Add 5.2 table.
3888
3889 2022-05-17 Tobias Burnus <tobias (a] codesourcery.com>
3890
3891 * libgomp.texi (OpenMP 5.1): Set omp_all_memory to 'Y'.
3892 * testsuite/libgomp.fortran/depend-5.f90: New test.
3893 * testsuite/libgomp.fortran/depend-6.f90: New test.
3894 * testsuite/libgomp.fortran/depend-7.f90: New test.
3895
3896 2022-05-16 Marcel Vollweiler <marcel (a] codesourcery.com>
3897
3898 * testsuite/libgomp.c++/target-has-device-addr-7.C: New test.
3899 * testsuite/libgomp.c++/target-has-device-addr-8.C: New test.
3900 * testsuite/libgomp.c++/target-has-device-addr-9.C: New test.
3901
3902 2022-05-13 Tobias Burnus <tobias (a] codesourcery.com>
3903
3904 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
3905
3906 2022-05-13 Tobias Burnus <tobias (a] codesourcery.com>
3907
3908 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
3909
3910 2022-05-13 Thomas Schwinge <thomas (a] codesourcery.com>
3911
3912 * plugin/Makefrag.am (libgomp_plugin_nvptx_la_CPPFLAGS)
3913 [PLUGIN_NVPTX_DYNAMIC]: Don't append '$(PLUGIN_NVPTX_CPPFLAGS)'.
3914 (libgomp_plugin_nvptx_la_LDFLAGS) [PLUGIN_NVPTX_DYNAMIC]: Don't
3915 append '$(PLUGIN_NVPTX_LDFLAGS)'.
3916 * Makefile.in: Regenerate.
3917
3918 2022-05-12 Thomas Schwinge <thomas (a] codesourcery.com>
3919
3920 * Makefile.am (libgomp_la_LIBADD): Initialize.
3921 * plugin/configfrag.ac (DL_LIBS): New.
3922 (PLUGIN_GCN_LIBS): Remove.
3923 (PLUGIN_NVPTX_LIBS): Don't set in the 'PLUGIN_NVPTX_DYNAMIC' case.
3924 * plugin/Makefrag.am (libgomp_la_LIBADD)
3925 (libgomp_plugin_gcn_la_LIBADD): Consider '$(DL_LIBS)'.
3926 (libgomp_plugin_nvptx_la_LIBADD) <PLUGIN_NVPTX_DYNAMIC>: Likewise.
3927 * Makefile.in: Regenerate.
3928 * config.h.in: Likewise.
3929 * configure: Likewise.
3930 * testsuite/Makefile.in: Likewise.
3931
3932 2022-05-12 Thomas Schwinge <thomas (a] codesourcery.com>
3933
3934 * plugin/Makefrag.am: Handle 'PLUGIN_NVPTX_DYNAMIC'.
3935 * plugin/configfrag.ac (PLUGIN_NVPTX_DYNAMIC): Change
3936 'AC_DEFINE_UNQUOTED' into 'AM_CONDITIONAL'.
3937 * plugin/plugin-nvptx.c: Split 'PLUGIN_NVPTX_DYNAMIC' into
3938 'PLUGIN_NVPTX_INCLUDE_SYSTEM_CUDA_H' and
3939 'PLUGIN_NVPTX_LINK_LIBCUDA'.
3940 * Makefile.in: Regenerate.
3941 * config.h.in: Likewise.
3942 * configure: Likewise.
3943
3944 2022-05-12 Thomas Schwinge <thomas (a] codesourcery.com>
3945
3946 * plugin/configfrag.ac: Don't 'AC_SUBST' and 'AC_DEFINE_UNQUOTED'
3947 for 'PLUGIN_GCN', 'PLUGIN_NVPTX'.
3948 * Makefile.in: Regenerate.
3949 * config.h.in: Likewise.
3950 * configure: Likewise.
3951 * testsuite/Makefile.in: Likewise.
3952
3953 2022-05-12 Jakub Jelinek <jakub (a] redhat.com>
3954
3955 * libgomp.h (struct gomp_task): Add depend_all_memory member.
3956 * task.c (gomp_init_task): Initialize depend_all_memory.
3957 (gomp_task_handle_depend): Handle omp_all_memory.
3958 (gomp_task_run_post_handle_depend_hash): Clear
3959 parent->depend_all_memory if equal to current task.
3960 (gomp_task_maybe_wait_for_dependencies): Handle omp_all_memory.
3961 * testsuite/libgomp.c-c++-common/depend-1.c: New test.
3962 * testsuite/libgomp.c-c++-common/depend-2.c: New test.
3963 * testsuite/libgomp.c-c++-common/depend-3.c: New test.
3964
3965 2022-05-11 Thomas Schwinge <thomas (a] codesourcery.com>
3966
3967 * plugin/configfrag.ac: Remove '--with-hsa-runtime',
3968 '--with-hsa-runtime-include', '--with-hsa-runtime-lib' processing.
3969 * Makefile.in: Regenerate.
3970 * configure: Likewise.
3971 * testsuite/Makefile.in: Likewise.
3972
3973 2022-05-11 Thomas Schwinge <thomas (a] codesourcery.com>
3974
3975 * plugin/Makefrag.am (libgomp_plugin_gcn_la_CPPFLAGS): Don't
3976 consider 'PLUGIN_GCN_CPPFLAGS'.
3977 (libgomp_plugin_gcn_la_LDFLAGS): Don't consider
3978 'PLUGIN_GCN_LDFLAGS'.
3979 * plugin/configfrag.ac (PLUGIN_GCN_CPPFLAGS, PLUGIN_GCN_LDFLAGS):
3980 Remove.
3981 * Makefile.in: Regenerate.
3982 * configure: Likewise.
3983 * testsuite/Makefile.in: Likewise.
3984
3985 2022-05-11 Thomas Schwinge <thomas (a] codesourcery.com>
3986
3987 * plugin/configfrag.ac (HSA_RUNTIME_CPPFLAGS)
3988 (HSA_RUNTIME_LDFLAGS): Remove.
3989 * configure: Regenerate.
3990
3991 2022-05-11 Thomas Schwinge <thomas (a] codesourcery.com>
3992
3993 * testsuite/lib/libgomp.exp (libgomp_init): Don't
3994 'append always_ld_library_path ":$hsa_runtime_lib"'.
3995 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib): Don't set.
3996
3997 2022-05-10 Thomas Schwinge <thomas (a] codesourcery.com>
3998
3999 * testsuite/libgomp.fortran/use_device_addr-5.f90: Fix up
4000 multi-device testing.
4001
4002 2022-05-06 Marcel Vollweiler <marcel (a] codesourcery.com>
4003
4004 * libgomp.map: Added omp_target_is_accessible.
4005 * libgomp.texi: Tagged omp_target_is_accessible as supported.
4006 * omp.h.in: Added omp_target_is_accessible.
4007 * omp_lib.f90.in: Added interface for omp_target_is_accessible.
4008 * omp_lib.h.in: Likewise.
4009 * target.c (omp_target_is_accessible): Added implementation of
4010 omp_target_is_accessible.
4011 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c: New test.
4012 * testsuite/libgomp.fortran/target-is-accessible-1.f90: New test.
4013
4014 2022-05-05 Sandra Loosemore <sandra (a] codesourcery.com>
4015
4016 * libgomp.texi (OpenMP 5.0): Feature is now fully supported.
4017
4018 2022-05-04 Tobias Burnus <tobias (a] codesourcery.com>
4019
4020 * plugin/plugin-gcn.c (isa_matches_agent): Suggest -foffload-options.
4021
4022 2022-05-04 Tobias Burnus <tobias (a] codesourcery.com>
4023
4024 * testsuite/libgomp.fortran/use_device_addr-5.f90: New test.
4025
4026 2022-05-03 Marcel Vollweiler <marcel (a] codesourcery.com>
4027
4028 * libgomp.map: Added omp_get_mapped_ptr.
4029 * libgomp.texi: Tagged omp_get_mapped_ptr as supported.
4030 * omp.h.in: Added omp_get_mapped_ptr.
4031 * omp_lib.f90.in: Added interface for omp_get_mapped_ptr.
4032 * omp_lib.h.in: Likewise.
4033 * target.c (omp_get_mapped_ptr): Added implementation of
4034 omp_get_mapped_ptr.
4035 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c: New test.
4036 * testsuite/libgomp.c-c++-common/get-mapped-ptr-2.c: New test.
4037 * testsuite/libgomp.c-c++-common/get-mapped-ptr-3.c: New test.
4038 * testsuite/libgomp.c-c++-common/get-mapped-ptr-4.c: New test.
4039 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90: New test.
4040 * testsuite/libgomp.fortran/get-mapped-ptr-2.f90: New test.
4041 * testsuite/libgomp.fortran/get-mapped-ptr-3.f90: New test.
4042 * testsuite/libgomp.fortran/get-mapped-ptr-4.f90: New test.
4043
4044 2022-04-28 Thomas Schwinge <thomas (a] codesourcery.com>
4045
4046 PR fortran/104717
4047 * testsuite/libgomp.oacc-fortran/print-1.f90: Add OpenACC
4048 privatization scanning. For GCN offloading compilation, raise
4049 '-mgang-private-size'.
4050
4051 2022-04-26 Jakub Jelinek <jakub (a] redhat.com>
4052
4053 PR libgomp/105358
4054 * work.c (gomp_init_work_share): Don't mask of adjustment for
4055 dynamic long long realignment if struct gomp_work_share has smaller
4056 alignof than long long.
4057 * loop.c (GOMP_loop_start): Don't use inline_ordered_team_ids if
4058 struct gomp_work_share has smaller alignof than long long or if
4059 sizeof (struct gomp_work_share) is smaller than
4060 INLINE_ORDERED_TEAM_IDS_OFF.
4061 * loop_ull.c (GOMP_loop_ull_start): Likewise.
4062 * sections.c (GOMP_sections2_start): Likewise.
4063
4064 2022-04-25 Jakub Jelinek <jakub (a] redhat.com>
4065 Thomas Schwinge <thomas (a] codesourcery.com>
4066
4067 PR fortran/104717
4068 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Adjust.
4069
4070 2022-04-13 Jakub Jelinek <jakub (a] redhat.com>
4071
4072 * libgomp.texi: Fix a typo - mutexinouset -> mutexinoutset.
4073
4074 2022-04-06 Thomas Schwinge <thomas (a] codesourcery.com>
4075
4076 * plugin/cuda/cuda.h: Remove file.
4077 * plugin/plugin-nvptx.c [PLUGIN_NVPTX_DYNAMIC]: Include
4078 "cuda/cuda.h" instead of <cuda.h>.
4079 * plugin/configfrag.ac <PLUGIN_NVPTX_DYNAMIC>: Don't set
4080 'PLUGIN_NVPTX_CPPFLAGS'.
4081 * configure: Regenerate.
4082
4083 2022-04-05 Chung-Lin Tang <cltang (a] codesourcery.com>
4084
4085 * testsuite/libgomp.fortran/use_device_ptr-4.f90: New testcase.
4086
4087 2022-04-04 Tom de Vries <tdevries (a] suse.de>
4088
4089 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Use
4090 on_device_arch_nvptx instead of offload_target_nvptx.
4091 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
4092
4093 2022-04-01 Tom de Vries <tdevries (a] suse.de>
4094
4095 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Define
4096 and use REC_DEPTH.
4097 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
4098
4099 2022-04-01 Tom de Vries <tdevries (a] suse.de>
4100
4101 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: Fix
4102 num_workers check.
4103
4104 2022-03-29 Chenghua Xu <xuchenghua (a] loongson.cn>
4105 Lulu Cheng <chenglulu (a] loongson.cn>
4106
4107 * configure.tgt: Add LoongArch triplet.
4108
4109 2022-03-28 Tom de Vries <tdevries (a] suse.de>
4110
4111 * plugin/configfrag.ac: Use /$(libexecdir:\$(exec_prefix)/%=%)/
4112 instead of /libexec/.
4113 * configure: Regenerate.
4114
4115 2022-03-25 Tom de Vries <tdevries (a] suse.de>
4116
4117 PR libgomp/105042
4118 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Reduce
4119 execution time.
4120 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Same.
4121 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Same.
4122
4123 2022-03-23 Tobias Burnus <tobias (a] codesourcery.com>
4124
4125 PR middle-end/104285
4126 * testsuite/libgomp.c++/target-same-name-2-a.C: New test.
4127 * testsuite/libgomp.c++/target-same-name-2-b.C: New test.
4128 * testsuite/libgomp.c++/target-same-name-2.C: New test.
4129 * testsuite/libgomp.c-c++-common/target-same-name-1-a.c: New test.
4130 * testsuite/libgomp.c-c++-common/target-same-name-1-b.c: New test.
4131 * testsuite/libgomp.c-c++-common/target-same-name-1.c: New test.
4132
4133 2022-03-22 Tom de Vries <tdevries (a] suse.de>
4134
4135 PR target/104916
4136 PR target/104783
4137 * testsuite/libgomp.c/pr104783-2.c: New test.
4138
4139 2022-03-18 Tobias Burnus <tobias (a] codesourcery.com>
4140
4141 PR fortran/103039
4142 * testsuite/libgomp.fortran/associate4.f90: New test.
4143
4144 2022-03-18 Tom de Vries <tdevries (a] suse.de>
4145
4146 PR target/104952
4147 * testsuite/libgomp.c/pr104952-1.c: New test.
4148 * testsuite/libgomp.c/pr104952-2.c: New test.
4149
4150 2022-03-18 Jakub Jelinek <jakub (a] redhat.com>
4151
4152 * config/linux/affinity.c (gomp_affinity_init_numa_domains): Move seen
4153 variable next to pl variable.
4154
4155 2022-03-17 Thomas Schwinge <thomas (a] codesourcery.com>
4156
4157 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
4158 Enhance.
4159 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
4160 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
4161
4162 2022-03-17 Thomas Schwinge <thomas (a] codesourcery.com>
4163
4164 PR middle-end/90115
4165 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Enhance.
4166 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
4167
4168 2022-03-16 Marcel Vollweiler <marcel (a] codesourcery.com>
4169
4170 * fortran.c (omp_set_num_teams_8_): Call omp_set_num_teams instead of
4171 omp_set_max_active_levels.
4172 * testsuite/libgomp.fortran/icv-8.f90: New test.
4173
4174 2022-03-16 Thomas Schwinge <thomas (a] codesourcery.com>
4175
4176 PR testsuite/102841
4177 * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Adjust.
4178
4179 2022-03-13 Tobias Burnus <tobias (a] codesourcery.com>
4180
4181 * libgomp.texi: Fix typo.
4182
4183 2022-03-12 Thomas Schwinge <thomas (a] codesourcery.com>
4184
4185 PR middle-end/100280
4186 PR middle-end/104892
4187 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
4188 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise.
4189 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4190 Likewise.
4191 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
4192 Likewise.
4193 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4194 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
4195 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
4196 Likewise.
4197
4198 2022-03-12 Thomas Schwinge <thomas (a] codesourcery.com>
4199
4200 PR middle-end/104892
4201 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Point
4202 to PR104892.
4203 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise,
4204 enable '--param=openacc-kernels=decompose' and adjust.
4205 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
4206 Likewise.
4207 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4208 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
4209 Likewise.
4210
4211 2022-03-12 Thomas Schwinge <thomas (a] codesourcery.com>
4212
4213 PR middle-end/90115
4214 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Enhance.
4215 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c: Likewise.
4216 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4217 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Likewise.
4218
4219 2022-03-12 Thomas Schwinge <thomas (a] codesourcery.com>
4220
4221 PR middle-end/100280
4222 PR middle-end/104086
4223 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
4224 Merge this...
4225 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
4226 ..., and this...
4227 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: ... into
4228 this, and adjust.
4229 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4230 Extend.
4231
4232 2022-03-10 Hafiz Abid Qadeer <abidh (a] codesourcery.com>
4233
4234 * testsuite/libgomp.fortran/allocate-1.f90: Remove pool_size
4235 trait. Test last index in w and v array. Remove redundant
4236 assignment to V(1). Move alignment checks at the end of
4237 parallel region.
4238
4239 2022-03-10 Tom de Vries <tdevries (a] suse.de>
4240
4241 * testsuite/libgomp.c/pr104783.c: New test.
4242
4243 2022-03-10 Thomas Schwinge <thomas (a] codesourcery.com>
4244
4245 PR middle-end/90115
4246 PR middle-end/102330
4247 PR middle-end/104774
4248 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4249 Enhance.
4250 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
4251 Adjust.
4252 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
4253 Likewise.
4254 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
4255 Likewise.
4256 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
4257 Likewise.
4258 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
4259 Likewise.
4260 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
4261 Likewise.
4262 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
4263 Likewise.
4264 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
4265 Likewise.
4266 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
4267 Likewise.
4268 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
4269 Likewise.
4270 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
4271 Likewise.
4272 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
4273 Likewise.
4274 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
4275 Likewise.
4276 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
4277 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
4278 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
4279
4280 2022-03-10 Thomas Schwinge <thomas (a] codesourcery.com>
4281
4282 PR middle-end/90115
4283 * testsuite/libgomp.oacc-fortran/routine-1.f90: Enhance.
4284 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
4285 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
4286 * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
4287
4288 2022-03-04 Thomas Schwinge <thomas (a] codesourcery.com>
4289
4290 PR testsuite/104791
4291 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Fix
4292 expected diagnostics.
4293
4294 2022-03-04 Thomas Schwinge <thomas (a] codesourcery.com>
4295
4296 PR middle-end/104784
4297 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
4298 Test with '--param=openacc-kernels=decompose'.
4299 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
4300 Likewise.
4301 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
4302 Likewise.
4303 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
4304 Likewise.
4305 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
4306 Likewise.
4307 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
4308 Likewise.
4309 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
4310 Likewise.
4311 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
4312 Likewise.
4313 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
4314 Likewise.
4315 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
4316 Likewise.
4317 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
4318 Likewise.
4319 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
4320 Likewise.
4321 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
4322 Likewise.
4323 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
4324 Likewise.
4325 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
4326 Likewise.
4327 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
4328 Likewise.
4329 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
4330 Likewise.
4331 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
4332 Likewise.
4333 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
4334 Likewise.
4335 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
4336 Likewise.
4337 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
4338 Likewise.
4339 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
4340 Likewise.
4341 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
4342 Likewise.
4343 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
4344 Likewise.
4345 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
4346 Likewise.
4347 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
4348 Likewise.
4349 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
4350 Likewise.
4351 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
4352 Likewise.
4353 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
4354 Likewise.
4355 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
4356 Likewise.
4357 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
4358 Likewise.
4359 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
4360 Likewise.
4361 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
4362 Likewise.
4363
4364 2022-03-04 Thomas Schwinge <thomas (a] codesourcery.com>
4365
4366 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
4367 Test '-fopt-info-omp-all'.
4368 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
4369 Likewise.
4370 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
4371 Likewise.
4372 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
4373 Likewise.
4374 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
4375 Likewise.
4376 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
4377 Likewise.
4378 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
4379 Likewise.
4380 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
4381 Likewise.
4382 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
4383 Likewise.
4384 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
4385 Likewise.
4386 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
4387 Likewise.
4388 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
4389 Likewise.
4390 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
4391 Likewise.
4392 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
4393 Likewise.
4394 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
4395 Likewise.
4396 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
4397 Likewise.
4398 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
4399 Likewise.
4400 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
4401 Likewise.
4402 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
4403 Likewise.
4404 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
4405 Likewise.
4406 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
4407 Likewise.
4408 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
4409 Likewise.
4410 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
4411 Likewise.
4412 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
4413 Likewise.
4414 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
4415 Likewise.
4416 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
4417 Likewise.
4418 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
4419 Likewise.
4420 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
4421 Likewise.
4422 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
4423 Likewise.
4424 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
4425 Likewise.
4426 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
4427 Likewise.
4428 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
4429 Likewise.
4430 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
4431 Likewise.
4432
4433 2022-03-04 Thomas Schwinge <thomas (a] codesourcery.com>
4434
4435 PR middle-end/100280
4436 PR middle-end/104132
4437 PR middle-end/104133
4438 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4439 Extend.
4440
4441 2022-03-04 Thomas Schwinge <thomas (a] codesourcery.com>
4442
4443 PR middle-end/100280
4444 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
4445 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4446 Likewise.
4447
4448 2022-03-04 Thomas Schwinge <thomas (a] codesourcery.com>
4449
4450 PR middle-end/100280
4451 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
4452 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4453 Likewise.
4454
4455 2022-02-28 Tom de Vries <tdevries (a] suse.de>
4456
4457 * testsuite/libgomp.c/declare-variant-3-sm30.c: Add -foffload=-mptx=_.
4458 * testsuite/libgomp.c/declare-variant-3-sm35.c: Same.
4459 * testsuite/libgomp.c/declare-variant-3-sm53.c: Same.
4460 * testsuite/libgomp.c/declare-variant-3-sm70.c: Same.
4461 * testsuite/libgomp.c/declare-variant-3-sm75.c: Same.
4462 * testsuite/libgomp.c/declare-variant-3-sm80.c: Same.
4463
4464 2022-02-24 Tom de Vries <tdevries (a] suse.de>
4465
4466 * testsuite/libgomp.c/declare-variant-3-sm30.c: New test.
4467 * testsuite/libgomp.c/declare-variant-3-sm35.c: New test.
4468 * testsuite/libgomp.c/declare-variant-3-sm53.c: New test.
4469 * testsuite/libgomp.c/declare-variant-3-sm70.c: New test.
4470 * testsuite/libgomp.c/declare-variant-3-sm75.c: New test.
4471 * testsuite/libgomp.c/declare-variant-3-sm80.c: New test.
4472 * testsuite/libgomp.c/declare-variant-3.h: New header file.
4473
4474 2022-02-22 Thomas Schwinge <thomas (a] codesourcery.com>
4475
4476 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Fix OpenACC
4477 gang-redundant execution.
4478
4479 2022-02-22 Tom de Vries <tdevries (a] suse.de>
4480
4481 PR target/99555
4482 * config/nvptx/bar.c (generation_to_barrier): New function, copied
4483 from config/rtems/bar.c.
4484 (futex_wait, futex_wake): New function.
4485 (do_spin, do_wait): New function, copied from config/linux/wait.h.
4486 (gomp_barrier_wait_end, gomp_barrier_wait_last)
4487 (gomp_team_barrier_wake, gomp_team_barrier_wait_end):
4488 (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): Remove
4489 and replace with include of config/linux/bar.c.
4490 * config/nvptx/bar.h (gomp_barrier_t): Add fields waiters and lock.
4491 (gomp_barrier_init): Init new fields.
4492 * testsuite/libgomp.c-c++-common/task-detach-6.c: Remove nvptx-specific
4493 workarounds.
4494 * testsuite/libgomp.c/pr99555-1.c: Same.
4495 * testsuite/libgomp.fortran/task-detach-6.f90: Same.
4496
4497 2022-02-22 Tom de Vries <tdevries (a] suse.de>
4498
4499 PR testsuite/104146
4500 * testsuite/libgomp.c++/pr96390.C: Add additional-option
4501 -foffload=-Wa,--verify for nvptx.
4502 * testsuite/libgomp.c-c++-common/pr96390.c: Same.
4503
4504 2022-02-15 Tobias Burnus <tobias (a] codesourcery.com>
4505
4506 * testsuite/libgomp.fortran/depend-4.f90: New test.
4507
4508 2022-02-10 Tobias Burnus <tobias (a] codesourcery.com>
4509
4510 PR c++/102204
4511 * testsuite/libgomp.c++/target-virtual-1.C: New test.
4512
4513 2022-02-10 Marcel Vollweiler <marcel (a] codesourcery.com>
4514
4515 * libgomp.texi: Updated entry for HAS_DEVICE_ADDR.
4516 * target.c (copy_firstprivate_data): Copy only if host address is not
4517 NULL.
4518 * testsuite/libgomp.c++/target-has-device-addr-2.C: New test.
4519 * testsuite/libgomp.c++/target-has-device-addr-4.C: New test.
4520 * testsuite/libgomp.c++/target-has-device-addr-5.C: New test.
4521 * testsuite/libgomp.c++/target-has-device-addr-6.C: New test.
4522 * testsuite/libgomp.c-c++-common/target-has-device-addr-1.c: New test.
4523 * testsuite/libgomp.c/target-has-device-addr-3.c: New test.
4524 * testsuite/libgomp.fortran/target-has-device-addr-1.f90: New test.
4525 * testsuite/libgomp.fortran/target-has-device-addr-2.f90: New test.
4526 * testsuite/libgomp.fortran/target-has-device-addr-3.f90: New test.
4527 * testsuite/libgomp.fortran/target-has-device-addr-4.f90: New test.
4528
4529 2022-02-08 Jakub Jelinek <jakub (a] redhat.com>
4530
4531 PR libgomp/104385
4532 * task.c (gomp_task_run_post_handle_dependers): If parent is NULL,
4533 clear task->parent.
4534 * testsuite/libgomp.c/pr104385.c: New test.
4535
4536 2022-02-04 Tobias Burnus <tobias (a] codesourcery.com>
4537
4538 * testsuite/libgomp.fortran/allocate-1.f90: Remove spurious
4539 STOP of previous commit.
4540
4541 2022-02-04 Tobias Burnus <tobias (a] codesourcery.com>
4542
4543 * testsuite/libgomp.fortran/allocate-1.c (is_64bit_aligned): Renamed
4544 from is_64bit_aligned_.
4545 * testsuite/libgomp.fortran/allocate-1.f90: Fix interface decl
4546 and use it, more implicit none, remove unused argument.
4547
4548 2022-02-03 David Seifert <soap (a] gentoo.org>
4549 Jakub Jelinek <jakub (a] redhat.com>
4550
4551 * configure.ac: Support --disable-werror.
4552 * configure: Regenerate.
4553
4554 2022-02-01 Tom de Vries <tdevries (a] suse.de>
4555
4556 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: Remove
4557 PR83812 workaround.
4558 * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: Same.
4559 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90: Same.
4560
4561 2022-02-01 Tom de Vries <tdevries (a] suse.de>
4562
4563 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Reduce
4564 num_workers for nvidia accelerator to fix libgomp error 'insufficient
4565 resources'.
4566 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
4567 Same.
4568 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Same.
4569
4570 2022-02-01 Tom de Vries <tdevries (a] suse.de>
4571
4572 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
4573 recursion depth.
4574 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
4575
4576 2022-01-31 Martin Liska <mliska (a] suse.cz>
4577
4578 * acinclude.m4: Detect *_ld_is_mold and use it.
4579 * configure: Regenerate.
4580
4581 2022-01-27 Tobias Burnus <tobias (a] codesourcery.com>
4582
4583 * libgomp.texi (OpenMP 5.0): Update implementation status.
4584
4585 2022-01-21 Thomas Schwinge <thomas (a] codesourcery.com>
4586
4587 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Strengthen.
4588 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
4589 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
4590 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
4591 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
4592 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
4593 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
4594 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
4595 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
4596 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
4597 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
4598 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
4599 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
4600 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
4601 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
4602
4603 2022-01-19 Marcel Vollweiler <marcel (a] codesourcery.com>
4604
4605 * config/gcn/icv-device.c: Make GOMP_DEVICE_NUM_VAR public (remove
4606 "static") to make the device num available in the offload image.
4607
4608 2022-01-19 Martin Liska <mliska (a] suse.cz>
4609 Thomas Schwinge <thomas (a] codesourcery.com>
4610
4611 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update scanning
4612 patterns.
4613 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
4614 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
4615 Likewise.
4616 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
4617 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4618 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
4619 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
4620 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
4621 Likewise.
4622 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c:
4623 Likewise.
4624 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c:
4625 Likewise.
4626 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c:
4627 Likewise.
4628 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90:
4629 Likewise.
4630 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
4631 Likewise.
4632 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
4633 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
4634 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
4635
4636 2022-01-18 Martin Liska <mliska (a] suse.cz>
4637
4638 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update keyword
4639 in dg-warning.
4640 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
4641 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
4642 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
4643 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4644 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
4645 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
4646 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c: Likewise.
4647 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: Likewise.
4648 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: Likewise.
4649 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: Likewise.
4650 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Likewise.
4651 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: Likewise.
4652 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
4653 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
4654 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
4655
4656 2022-01-17 Thomas Schwinge <thomas (a] codesourcery.com>
4657
4658 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Extend.
4659 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
4660 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
4661
4662 2022-01-17 Julian Brown <julian (a] codesourcery.com>
4663 Thomas Schwinge <thomas (a] codesourcery.com>
4664
4665 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: New test.
4666 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: New test.
4667 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: New test.
4668
4669 2022-01-16 Kwok Cheung Yeung <kcy (a] codesourcery.com>
4670 Andrew Stubbs <ams (a] codesourcery.com>
4671
4672 * plugin/plugin-gcn.c (parse_target_attributes): Automatically set
4673 the number of teams and threads if necessary.
4674 (gcn_exec): Automatically set the number of gangs and workers if
4675 necessary.
4676
4677 2022-01-13 Hafiz Abid Qadeer <abidh (a] codesourcery.com>
4678
4679 * testsuite/libgomp.fortran/allocate-1.c: New test.
4680 * testsuite/libgomp.fortran/allocate-1.f90: New test.
4681 * libgomp.texi: Remove string that says that allocate clause
4682 support is for C/C++ only.
4683
4684 2022-01-13 Thomas Schwinge <thomas (a] codesourcery.com>
4685
4686 * testsuite/libgomp.c-c++-common/on_device_arch.h
4687 (any_device_arch, any_device_arch_intel_mic): New.
4688 * testsuite/lib/libgomp.exp
4689 (check_effective_target_offload_device_any_intel_mic): New.
4690 * testsuite/libgomp.c-c++-common/target-45.c: Use it.
4691 * testsuite/libgomp.fortran/target10.f90: Likewise.
4692
4693 2022-01-13 Thomas Schwinge <thomas (a] codesourcery.com>
4694
4695 PR tree-optimization/102192
4696 * testsuite/libgomp.oacc-fortran/routine-10.f90: Document current
4697 '-Wuninitialized' diagnostics.
4698
4699 2022-01-13 Thomas Schwinge <thomas (a] codesourcery.com>
4700
4701 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Document
4702 current '-Wuninitialized' diagnostics.
4703 * testsuite/libgomp.oacc-fortran/data-5.f90: Likewise.
4704 * testsuite/libgomp.oacc-fortran/gemm-2.f90: Likewise.
4705 * testsuite/libgomp.oacc-fortran/gemm.f90: Likewise.
4706 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Likewise.
4707 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
4708 * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
4709 * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: Likewise.
4710 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
4711 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
4712 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
4713 * testsuite/libgomp.oacc-fortran/reference-reductions.f90:
4714 Likewise.
4715
4716 2022-01-13 Thomas Schwinge <thomas (a] codesourcery.com>
4717
4718 * testsuite/libgomp.c/address-space-1.c: Remove 'dg-xfail-run-if'
4719 for 'offload_device_intel_mic'.
4720
4721 2022-01-13 Julian Brown <julian (a] codesourcery.com>
4722 Thomas Schwinge <thomas (a] codesourcery.com>
4723
4724 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Remove GCN
4725 offloading execution XFAIL.
4726
4727 2022-01-13 Thomas Schwinge <thomas (a] codesourcery.com>
4728
4729 PR middle-end/100280
4730 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
4731 Update.
4732 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
4733 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4734 Likewise.
4735
4736 2022-01-13 Thomas Schwinge <thomas (a] codesourcery.com>
4737
4738 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
4739 Enhance.
4740 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
4741 Likewise.
4742 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Likewise.
4743 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
4744 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: Likewise.
4745 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: Likewise.
4746 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4747 Likewise.
4748 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
4749 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
4750 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
4751 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
4752
4753 2022-01-04 Tobias Burnus <tobias (a] codesourcery.com>
4754
4755 * testsuite/libgomp.c-c++-common/target-45.c: Iterate over all devices.
4756 * testsuite/libgomp.fortran/target10.f90: Likewise.
4757
4758 2022-01-04 Chung-Lin Tang <cltang (a] codesourcery.com>
4759
4760 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Change uses of STRINGX
4761 into XSTRING when looking for GOMP_DEVICE_NUM_VAR in offload image.
4762 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
4763
4764 2022-01-03 Jakub Jelinek <jakub (a] redhat.com>
4765
4766 * libgomp.texi: Bump @copying's copyright year.
4767
4768 2021-12-13 Tobias Burnus <tobias (a] codesourcery.com>
4769
4770 * libgomp.texi (OpenMP 5.1): Set Fortran support for atomic to 'Y'.
4771 * testsuite/libgomp.fortran/atomic-19.f90: New test.
4772
4773 2021-12-10 Andrew Stubbs <ams (a] codesourcery.com>
4774
4775 * plugin/plugin-gcn.c (struct gcn_image_desc): Remove global_variables.
4776 (GOMP_OFFLOAD_load_image): Locate the offload variables via the
4777 table, not individual symbols.
4778
4779 2021-12-09 Chung-Lin Tang <cltang (a] codesourcery.com>
4780
4781 * testsuite/libgomp.c++/target-lambda-1.C: Only run under
4782 "target offload_device_nonshared_as"
4783 * testsuite/libgomp.c++/target-this-3.C: Likewise.
4784 * testsuite/libgomp.c++/target-this-4.C: Likewise.
4785
4786 2021-12-08 Chung-Lin Tang <cltang (a] codesourcery.com>
4787
4788 * target.c (gomp_map_vars_existing): Make sure attached pointer is
4789 not overwritten during cross-host/device copying.
4790 (gomp_update): Likewise.
4791 (gomp_exit_data): Likewise.
4792 * testsuite/libgomp.c++/target-11.C: Adjust testcase.
4793 * testsuite/libgomp.c++/target-12.C: Likewise.
4794 * testsuite/libgomp.c++/target-15.C: Likewise.
4795 * testsuite/libgomp.c++/target-16.C: Likewise.
4796 * testsuite/libgomp.c++/target-17.C: Likewise.
4797 * testsuite/libgomp.c++/target-21.C: Likewise.
4798 * testsuite/libgomp.c++/target-23.C: Likewise.
4799 * testsuite/libgomp.c/target-23.c: Likewise.
4800 * testsuite/libgomp.c/target-29.c: Likewise.
4801 * testsuite/libgomp.c-c++-common/target-implicit-map-2.c: New testcase.
4802
4803 2021-12-08 Chung-Lin Tang <cltang (a] codesourcery.com>
4804
4805 PR middle-end/92120
4806 * libgomp.h (gomp_attach_pointer): Add bool parameter.
4807 * oacc-mem.c (acc_attach_async): Update call to gomp_attach_pointer.
4808 (goacc_enter_data_internal): Likewise.
4809 * target.c (gomp_map_vars_existing): Update assert condition to
4810 include GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION.
4811 (gomp_map_pointer): Add 'bool allow_zero_length_array_sections'
4812 parameter, add support for mapping a pointer with NULL target.
4813 (gomp_attach_pointer): Add 'bool allow_zero_length_array_sections'
4814 parameter, add support for attaching a pointer with NULL target.
4815 (gomp_map_vars_internal): Update calls to gomp_map_pointer and
4816 gomp_attach_pointer, add handling for
4817 GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION, and
4818 GOMP_MAP_POINTER_TO_ZERO_LENGTH_ARRAY_SECTION cases.
4819 * testsuite/libgomp.c++/target-23.C: New testcase.
4820 * testsuite/libgomp.c++/target-lambda-1.C: New testcase.
4821 * testsuite/libgomp.c++/target-lambda-2.C: New testcase.
4822 * testsuite/libgomp.c++/target-this-1.C: New testcase.
4823 * testsuite/libgomp.c++/target-this-2.C: New testcase.
4824 * testsuite/libgomp.c++/target-this-3.C: New testcase.
4825 * testsuite/libgomp.c++/target-this-4.C: New testcase.
4826 * testsuite/libgomp.c++/target-this-5.C: New testcase.
4827
4828 2021-12-04 Tobias Burnus <tobias (a] codesourcery.com>
4829
4830 * libgomp.texi (OpenMP 5.1): Update status.
4831
4832 2021-12-04 Tobias Burnus <tobias (a] codesourcery.com>
4833
4834 * libgomp.texi (OMP_PLACES): Extend description for OMP 5.1 changes.
4835
4836 2021-12-02 Chung-Lin Tang <cltang (a] codesourcery.com>
4837
4838 PR fortran/90030
4839 * testsuite/libgomp.oacc-fortran/pr90030.f90: New test.
4840 * testsuite/libgomp.fortran/pr90030.f90: New test.
4841
4842 2021-11-30 Kwok Cheung Yeung <kcy (a] codesourcery.com>
4843 Thomas Schwinge <thomas (a] codesourcery.com>
4844
4845 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Remove
4846 temporary skip.
4847
4848 2021-11-30 Cesar Philippidis <cesar (a] codesourcery.com>
4849 Thomas Schwinge <thomas (a] codesourcery.com>
4850
4851 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Temporarily
4852 skip.
4853
4854 2021-11-29 Richard Biener <rguenther (a] suse.de>
4855
4856 * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): Remove unreachable
4857 return.
4858
4859 2021-11-24 Jakub Jelinek <jakub (a] redhat.com>
4860
4861 PR middle-end/103384
4862 * testsuite/libgomp.c/declare-variant-2.c: New test.
4863
4864 2021-11-18 David Edelsohn <dje.gcc (a] gmail.com>
4865
4866 * alloc.c (gomp_aligned_alloc): Fix typo.
4867
4868 2021-11-18 Jakub Jelinek <jakub (a] redhat.com>
4869
4870 PR libgomp/102838
4871 * libgomp.h (GOMP_USE_ALIGNED_WORK_SHARES): Define if
4872 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined and __AMDGCN__ is not.
4873 (struct gomp_work_share): Use GOMP_USE_ALIGNED_WORK_SHARES instead of
4874 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
4875 * work.c (alloc_work_share, gomp_work_share_start): Likewise.
4876 * team.c (gomp_new_team): If GOMP_USE_ALIGNED_WORK_SHARES, use
4877 gomp_aligned_alloc instead of team_malloc.
4878
4879 2021-11-18 Jakub Jelinek <jakub (a] redhat.com>
4880
4881 PR libgomp/102838
4882 * alloc.c (gomp_aligned_alloc): Prefer _aligned_alloc over
4883 memalign over posix_memalign over aligned_alloc over fallback
4884 with malloc instead of aligned_alloc over _aligned_alloc over
4885 posix_memalign over memalign over fallback with malloc. For
4886 aligned_alloc, round up size up to multiple of al.
4887
4888 2021-11-16 Jakub Jelinek <jakub (a] redhat.com>
4889
4890 * libgomp.texi (OpenMP 5.1): Mark thread_limit clause to target
4891 construct as implemented.
4892
4893 2021-11-15 Tobias Burnus <tobias (a] codesourcery.com>
4894
4895 * testsuite/libgomp.fortran/thread-limit-1.f90: New test.
4896
4897 2021-11-15 Jakub Jelinek <jakub (a] redhat.com>
4898
4899 * task.c (gomp_create_target_task): Copy args array as well.
4900 * target.c (gomp_target_fallback): Add args argument.
4901 Set gomp_icv (true)->thread_limit_var if thread_limit is present.
4902 (GOMP_target): Adjust gomp_target_fallback caller.
4903 (GOMP_target_ext): Likewise.
4904 (gomp_target_task_fn): Likewise.
4905 * config/nvptx/team.c (gomp_nvptx_main): Set
4906 gomp_global_icv.thread_limit_var.
4907 * testsuite/libgomp.c-c++-common/thread-limit-1.c: New test.
4908
4909 2021-11-15 Jakub Jelinek <jakub (a] redhat.com>
4910
4911 * config/nvptx/team.c (__gomp_team_num): Define as
4912 __attribute__((shared)) var.
4913 (gomp_nvptx_main): Initialize __gomp_team_num to 0.
4914 * config/nvptx/target.c (__gomp_team_num): Declare as
4915 extern __attribute__((shared)) var.
4916 (GOMP_teams4): Use __gomp_team_num as the team number instead of
4917 %ctaid.x. If first, initialize it to %ctaid.x. If num_teams_lower
4918 is bigger than num_blocks, use num_teams_lower teams and arrange for
4919 bumping of __gomp_team_num if !first and returning false once we run
4920 out of teams.
4921 * config/nvptx/teams.c (__gomp_team_num): Declare as
4922 extern __attribute__((shared)) var.
4923 (omp_get_team_num): Return __gomp_team_num value instead of %ctaid.x.
4924
4925 2021-11-15 Jakub Jelinek <jakub (a] redhat.com>
4926
4927 * testsuite/libgomp.c/teams-5.c: New test.
4928
4929 2021-11-12 Jakub Jelinek <jakub (a] redhat.com>
4930
4931 PR target/103201
4932 * config/gcn/icv-device.c (omp_get_num_teams, omp_get_team_num): Move
4933 to ...
4934 * config/gcn/teams.c: ... here. New file.
4935
4936 2021-11-12 Chung-Lin Tang <cltang (a] codesourcery.com>
4937
4938 * target.c (gomp_map_vars_existing): Add 'bool implicit' parameter, add
4939 implicit map handling to allow a "superset" existing map as valid case.
4940 (get_kind): Adjust to filter out GOMP_MAP_IMPLICIT bits in return value.
4941 (get_implicit): New function to extract implicit status.
4942 (gomp_map_fields_existing): Adjust arguments in calls to
4943 gomp_map_vars_existing, and add uses of get_implicit.
4944 (gomp_map_vars_internal): Likewise.
4945 * testsuite/libgomp.c-c++-common/target-implicit-map-1.c: New test.
4946
4947 2021-11-12 Jakub Jelinek <jakub (a] redhat.com>
4948
4949 * libgomp_g.h (GOMP_teams4): Declare.
4950 * libgomp.map (GOMP_5.1): Export GOMP_teams4.
4951 * target.c (GOMP_teams4): New function.
4952 * config/nvptx/target.c (GOMP_teams): Remove.
4953 (GOMP_teams4): New function.
4954 * config/gcn/target.c (GOMP_teams): Remove.
4955 (GOMP_teams4): New function.
4956 * testsuite/libgomp.c/teams-4.c (main): Expect exactly 2
4957 teams instead of <= 2.
4958 * testsuite/libgomp.c-c++-common/teams-2.c: New test.
4959
4960 2021-11-11 Tobias Burnus <tobias (a] codesourcery.com>
4961
4962 * testsuite/libgomp.fortran/teams-1.f90: New test.
4963
4964 2021-11-11 Jakub Jelinek <jakub (a] redhat.com>
4965
4966 * libgomp.h (struct gomp_thread): Add num_teams and team_num members.
4967 * team.c (struct gomp_thread_start_data): Likewise.
4968 (gomp_thread_start): Initialize thr->num_teams and thr->team_num.
4969 (gomp_team_start): Initialize start_data->num_teams and
4970 start_data->team_num. Update nthr->num_teams and nthr->team_num.
4971 * teams.c (gomp_num_teams, gomp_team_num): Remove.
4972 (GOMP_teams_reg): Set and restore thr->num_teams and thr->team_num
4973 instead of gomp_num_teams and gomp_team_num.
4974 (omp_get_num_teams): Use thr->num_teams + 1 instead of gomp_num_teams.
4975 (omp_get_team_num): Use thr->team_num instead of gomp_team_num.
4976 * testsuite/libgomp.c/teams-4.c: New test.
4977
4978 2021-11-11 Jakub Jelinek <jakub (a] redhat.com>
4979
4980 * testsuite/libgomp.c-c++-common/teams-1.c: New test.
4981
4982 2021-11-09 Thomas Schwinge <thomas (a] codesourcery.com>
4983
4984 * env.c (parse_gomp_openacc_dim): Restore parsing.
4985
4986 2021-10-30 Tobias Burnus <tobias (a] codesourcery.com>
4987
4988 PR middle-end/102972
4989 * testsuite/libgomp.c-c++-common/icv-3.c: Nest API calls inside
4990 parallel construct.
4991 * testsuite/libgomp.c-c++-common/icv-4.c: Likewise.
4992 * testsuite/libgomp.c/target-3.c: Likewise.
4993 * testsuite/libgomp.c/target-5.c: Likewise.
4994 * testsuite/libgomp.c/target-6.c: Likewise.
4995 * testsuite/libgomp.c/target-teams-1.c: Likewise.
4996 * testsuite/libgomp.c/teams-1.c: Likewise.
4997 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
4998 * testsuite/libgomp.c/thread-limit-3.c: Likewise.
4999 * testsuite/libgomp.c/thread-limit-4.c: Likewise.
5000 * testsuite/libgomp.c/thread-limit-5.c: Likewise.
5001 * testsuite/libgomp.fortran/icv-3.f90: Likewise.
5002 * testsuite/libgomp.fortran/icv-4.f90: Likewise.
5003 * testsuite/libgomp.fortran/teams1.f90: Likewise.
5004
5005 2021-10-29 Aldy Hernandez <aldyh (a] redhat.com>
5006
5007 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for threading changes.
5008 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
5009
5010 2021-10-27 Jakub Jelinek <jakub (a] redhat.com>
5011
5012 * libgomp.texi (OpenMP 5.0): Mention that Non-rectangular loop nests
5013 aren't implemented for Fortran yet.
5014
5015 2021-10-27 Jakub Jelinek <jakub (a] redhat.com>
5016
5017 * testsuite/libgomp.c/loop-26.c: New test.
5018 * testsuite/libgomp.c/loop-27.c: New test.
5019
5020 2021-10-25 Tobias Burnus <tobias (a] codesourcery.com>
5021
5022 PR testsuite/102910
5023 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Use __builtin_alloca
5024 instead of #include <alloca.h> + alloca.
5025
5026 2021-10-21 Chung-Lin Tang <cltang (a] codesourcery.com>
5027
5028 * libgomp.texi (Support of strictly structured blocks in Fortran):
5029 Adjust to 'Y'.
5030 * testsuite/libgomp.fortran/task-reduction-16.f90: Adjust testcase.
5031
5032 2021-10-20 Chung-Lin Tang <cltang (a] codesourcery.com>
5033
5034 * testsuite/libgomp.fortran/target-in-reduction-1.f90: New test.
5035 * testsuite/libgomp.fortran/target-in-reduction-2.f90: New test.
5036
5037 2021-10-20 Jakub Jelinek <jakub (a] redhat.com>
5038
5039 PR libgomp/102838
5040 * libgomp.h (struct gomp_work_share_1st_cacheline): New type.
5041 (struct gomp_work_share): Only use aligned(64) attribute if
5042 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined, otherwise just
5043 add padding before lock to ensure lock is at offset 64 bytes
5044 into the structure.
5045 (gomp_workshare_struct_check1, gomp_workshare_struct_check2):
5046 New poor man's static assertions.
5047 * work.c (gomp_work_share_start): Use gomp_aligned_alloc instead of
5048 gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
5049
5050 2021-10-20 Aldy Hernandez <aldyh (a] redhat.com>
5051 Richard Biener <rguenther (a] suse.de>
5052
5053 * testsuite/libgomp.graphite/force-parallel-5.c: Remove xfail.
5054
5055 2021-10-18 Jakub Jelinek <jakub (a] redhat.com>
5056
5057 * config/linux/affinity.c (gomp_affinity_init_numa_domains): Add
5058 && gomp_places_list_len < count after nfirst <= nlast loop condition.
5059
5060 2021-10-18 Tobias Burnus <tobias (a] codesourcery.com>
5061
5062 PR fortran/102086
5063 PR fortran/92189
5064 PR fortran/92621
5065 PR fortran/101308
5066 PR fortran/101309
5067 PR fortran/101635
5068 PR fortran/92482
5069 * testsuite/libgomp.fortran/optional-bind-c.f90: New test.
5070
5071 2021-10-15 Jakub Jelinek <jakub (a] redhat.com>
5072
5073 * testsuite/libgomp.c/affinity-1.c (struct places): Change name field
5074 type from char [50] to const char *.
5075 (places_array): Add a testcase for simplified syntax place followed
5076 by length or length and stride.
5077
5078 2021-10-15 Jakub Jelinek <jakub (a] redhat.com>
5079
5080 * env.c (parse_one_place): Handle non-negative-number the same
5081 as { non-negative-number }. Reject even !number:1 and
5082 !number:1:stride or !place:1 or !place:1:stride instead of just
5083 length other than 1.
5084 * libgomp.texi (OpenMP 5.1): Document OMP_PLACES syntax extensions
5085 and OMP_NUM_TEAMS/OMP_TEAMS_THREAD_LIMIT and
5086 omp_{set_num,get_max}_teams/omp_{s,g}et_teams_thread_limit features
5087 as implemented.
5088 * testsuite/libgomp.c/affinity-1.c: Add a test for the 5.1 place
5089 simplified syntax.
5090
5091 2021-10-15 Jakub Jelinek <jakub (a] redhat.com>
5092
5093 * env.c (parse_schedule): For strtoul or strtoull calls which don't
5094 clearly reject return value 0 as invalid handle the case where end
5095 pointer is the same as first argument as invalid.
5096 (parse_unsigned_long_1): Likewise.
5097 (parse_one_place): Likewise.
5098 (parse_places_var): Likewise.
5099 (parse_stacksize): Likewise.
5100 (parse_spincount): Likewise.
5101 (parse_affinity): Likewise.
5102 (parse_gomp_openacc_dim): Likewise. Avoid strict aliasing violation.
5103 Make code valid C89.
5104 * config/linux/affinity.c (gomp_affinity_find_last_cache_level):
5105 For strtoul calls which don't clearly reject return value 0 as
5106 invalid handle the case where end pointer is the same as first
5107 argument as invalid.
5108 (gomp_affinity_init_level_1): Likewise.
5109 (gomp_affinity_init_numa_domains): Likewise.
5110 * config/rtems/proc.c (parse_thread_pools): Likewise.
5111
5112 2021-10-15 Jakub Jelinek <jakub (a] redhat.com>
5113
5114 * config/linux/affinity.c (gomp_affinity_init_level_1): For level 1
5115 after creating count places clean up and return immediately.
5116 * testsuite/libgomp.c/places-6.c: New test.
5117 * testsuite/libgomp.c/places-7.c: New test.
5118 * testsuite/libgomp.c/places-8.c: New test.
5119 * testsuite/libgomp.c/places-9.c: New test.
5120 * testsuite/libgomp.c/places-10.c: New test.
5121
5122 2021-10-15 Jakub Jelinek <jakub (a] redhat.com>
5123
5124 * env.c (parse_places_var): Handle numa_domains as level 5.
5125 * config/linux/affinity.c (gomp_affinity_init_numa_domains): New
5126 function.
5127 (gomp_affinity_init_level): Use it instead of
5128 gomp_affinity_init_level_1 for level == 5.
5129 * testsuite/libgomp.c/places-5.c: New test.
5130
5131 2021-10-15 Jakub Jelinek <jakub (a] redhat.com>
5132
5133 * env.c (parse_places_var): Handle ll_caches as level 4.
5134 * config/linux/affinity.c (gomp_affinity_find_last_cache_level): New
5135 function.
5136 (gomp_affinity_init_level_1): Handle level 4 as logical cpus sharing
5137 last level cache.
5138 (gomp_affinity_init_level): Likewise.
5139 * testsuite/libgomp.c/places-1.c: New test.
5140 * testsuite/libgomp.c/places-2.c: New test.
5141 * testsuite/libgomp.c/places-3.c: New test.
5142 * testsuite/libgomp.c/places-4.c: New test.
5143
5144 2021-10-14 Kwok Cheung Yeung <kcy (a] codesourcery.com>
5145
5146 * libgomp.texi (OpenMP 5.0): Update entry for declare variant
5147 directive.
5148
5149 2021-10-14 Kwok Cheung Yeung <kcy (a] codesourcery.com>
5150
5151 * testsuite/libgomp.fortran/declare-variant-1.f90: New test.
5152
5153 2021-10-12 Julian Brown <julian (a] codesourcery.com>
5154
5155 * target.c (gomp_copy_host2dev): Release device lock on cbuf
5156 error path.
5157
5158 2021-10-12 Tobias Burnus <tobias (a] codesourcery.com>
5159
5160 * testsuite/libgomp.fortran/icv-3.f90: New.
5161 * testsuite/libgomp.fortran/icv-4.f90: New.
5162
5163 2021-10-12 Jakub Jelinek <jakub (a] redhat.com>
5164
5165 * libgomp.texi (omp_get_max_teams, omp_get_teams_thread_limit,
5166 omp_set_num_teams, omp_set_teams_thread_limit, OMP_NUM_TEAMS,
5167 OMP_TEAMS_THREAD_LIMIT): Document.
5168
5169 2021-10-12 Jakub Jelinek <jakub (a] redhat.com>
5170
5171 * libgomp.texi (omp_get_device_num): Move @node before omp_get_dynamic
5172 to avoid makeinfo warnings.
5173
5174 2021-10-12 Jakub Jelinek <jakub (a] redhat.com>
5175
5176 * testsuite/libgomp.c-c++-common/icv-3.c: New test.
5177 * testsuite/libgomp.c-c++-common/icv-4.c: New test.
5178
5179 2021-10-12 Jakub Jelinek <jakub (a] redhat.com>
5180
5181 PR libgomp/102628
5182 PR libgomp/102668
5183 * testsuite/libgomp.c-c++-common/alloc-9.c (main): Decrease
5184 allocation sizes from 420 to 320 and from 768 to 568.
5185 * testsuite/libgomp.fortran/alloc-11.f90: Likewise.
5186 * testsuite/libgomp.fortran/alloc-1.F90: Change expected alignment
5187 for cr from 16 to 4.
5188
5189 2021-10-12 Jakub Jelinek <jakub (a] redhat.com>
5190
5191 * testsuite/libgomp.c/scan-11.c: Remove option -fvect-cost-model=cheap.
5192 * testsuite/libgomp.c/scan-12.c: Likewise.
5193 * testsuite/libgomp.c/scan-13.c: Likewise.
5194 * testsuite/libgomp.c/scan-14.c: Likewise.
5195 * testsuite/libgomp.c/scan-15.c: Likewise.
5196 * testsuite/libgomp.c/scan-16.c: Likewise.
5197 * testsuite/libgomp.c/scan-17.c: Likewise.
5198 * testsuite/libgomp.c/scan-18.c: Likewise.
5199 * testsuite/libgomp.c/scan-19.c: Likewise.
5200 * testsuite/libgomp.c/scan-20.c: Likewise.
5201 * testsuite/libgomp.c/scan-21.c: Likewise.
5202 * testsuite/libgomp.c/scan-22.c: Likewise.
5203 * testsuite/libgomp.c++/scan-9.C: Likewise.
5204 * testsuite/libgomp.c++/scan-10.C: Likewise.
5205 * testsuite/libgomp.c++/scan-11.C: Likewise.
5206 * testsuite/libgomp.c++/scan-12.C: Likewise.
5207 * testsuite/libgomp.c++/scan-13.C: Likewise.
5208 * testsuite/libgomp.c++/scan-14.C: Likewise.
5209 * testsuite/libgomp.c++/scan-15.C: Likewise.
5210 * testsuite/libgomp.c++/scan-16.C: Likewise.
5211
5212 2021-10-12 Kewen Lin <linkw (a] linux.ibm.com>
5213
5214 * testsuite/libgomp.graphite/force-parallel-8.c: Add --param max-stores-to-sink=0.
5215
5216 2021-10-11 Marcel Vollweiler <marcel (a] codesourcery.com>
5217
5218 * allocator.c (omp_init_allocator): Replace omp_atv_sequential with
5219 omp_atv_serialized.
5220 * omp.h.in: Add deprecated flag for omp_atv_sequential.
5221 * omp_lib.f90.in: Add deprecated flag for omp_atv_sequential.
5222 * testsuite/libgomp.c-c++-common/alloc-10.c: New test.
5223 * testsuite/libgomp.fortran/alloc-12.f90: New test.
5224
5225 2021-10-11 Jakub Jelinek <jakub (a] redhat.com>
5226
5227 * omp.h.in (omp_set_num_teams, omp_get_max_teams,
5228 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
5229 * omp_lib.f90.in (omp_set_num_teams, omp_get_max_teams,
5230 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
5231 * omp_lib.h.in (omp_set_num_teams, omp_get_max_teams,
5232 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
5233 * libgomp.h (gomp_nteams_var, gomp_teams_thread_limit_var): Declare.
5234 * libgomp.map (OMP_5.1): Export omp_get_max_teams{,_},
5235 omp_get_teams_thread_limit{,_}, omp_set_num_teams{,_,_8_} and
5236 omp_set_teams_thread_limit{,_,_8_}.
5237 * icv.c (omp_set_num_teams, omp_get_max_teams,
5238 omp_set_teams_thread_limit, omp_get_teams_thread_limit): New
5239 functions.
5240 * env.c (gomp_nteams_var, gomp_teams_thread_limit_var): Define.
5241 (omp_display_env): Print OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT.
5242 (initialize_env): Handle OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT env
5243 vars.
5244 * teams.c (GOMP_teams_reg): If thread_limit is not specified, use
5245 gomp_teams_thread_limit_var as fallback if not zero. If num_teams
5246 is not specified, use gomp_nteams_var.
5247 * fortran.c (omp_set_num_teams, omp_get_max_teams,
5248 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Add
5249 ialias_redirect.
5250 (omp_set_num_teams_, omp_set_num_teams_8_, omp_get_max_teams_,
5251 omp_set_teams_thread_limit_, omp_set_teams_thread_limit_8_,
5252 omp_get_teams_thread_limit_): New functions.
5253
5254 2021-10-09 liuhongt <hongtao.liu (a] intel.com>
5255
5256 * testsuite/libgomp.c++/scan-10.C: Add option -fvect-cost-model=cheap.
5257 * testsuite/libgomp.c++/scan-11.C: Ditto.
5258 * testsuite/libgomp.c++/scan-12.C: Ditto.
5259 * testsuite/libgomp.c++/scan-13.C: Ditto.
5260 * testsuite/libgomp.c++/scan-14.C: Ditto.
5261 * testsuite/libgomp.c++/scan-15.C: Ditto.
5262 * testsuite/libgomp.c++/scan-16.C: Ditto.
5263 * testsuite/libgomp.c++/scan-9.C: Ditto.
5264 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: Ditto.
5265 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: Ditto.
5266 * testsuite/libgomp.c/scan-11.c: Ditto.
5267 * testsuite/libgomp.c/scan-12.c: Ditto.
5268 * testsuite/libgomp.c/scan-13.c: Ditto.
5269 * testsuite/libgomp.c/scan-14.c: Ditto.
5270 * testsuite/libgomp.c/scan-15.c: Ditto.
5271 * testsuite/libgomp.c/scan-16.c: Ditto.
5272 * testsuite/libgomp.c/scan-17.c: Ditto.
5273 * testsuite/libgomp.c/scan-18.c: Ditto.
5274 * testsuite/libgomp.c/scan-19.c: Ditto.
5275 * testsuite/libgomp.c/scan-20.c: Ditto.
5276 * testsuite/libgomp.c/scan-21.c: Ditto.
5277 * testsuite/libgomp.c/scan-22.c: Ditto.
5278
5279 2021-10-09 Jakub Jelinek <jakub (a] redhat.com>
5280
5281 * libgomp.texi (OpenMP 5.1): Mention implemented support for
5282 structured block sequences in C/C++. Mention support for
5283 unconstrained/reproducible modifiers on order clause.
5284 Mention partial (C/C++ only) support of extentensions to atomics
5285 construct. Mention partial (C/C++ on clause only) support of
5286 align/allocator modifiers on allocate clause.
5287
5288 2021-10-02 Tobias Burnus <tobias (a] codesourcery.com>
5289
5290 * testsuite/libgomp.fortran/order-reproducible-1.f90: New test
5291 based on libgomp.c-c++-common/order-reproducible-1.c.
5292 * testsuite/libgomp.fortran/order-reproducible-2.f90: Likewise.
5293 * testsuite/libgomp.fortran/my-usleep.c: New test.
5294
5295 2021-10-01 Tobias Burnus <tobias (a] codesourcery.com>
5296
5297 * testsuite/libgomp.fortran/alloc-10.f90: Fix alignment check.
5298 * testsuite/libgomp.fortran/alloc-7.f90: Fix array access.
5299 * testsuite/libgomp.fortran/alloc-8.f90: Likewise.
5300 * testsuite/libgomp.fortran/alloc-11.f90: New test for omp_realloc,
5301 based on libgomp.c-c++-common/alloc-9.c.
5302
5303 2021-10-01 Jakub Jelinek <jakub (a] redhat.com>
5304
5305 * testsuite/libgomp.c-c++-common/order-reproducible-1.c: New test.
5306 * testsuite/libgomp.c-c++-common/order-reproducible-2.c: New test.
5307
5308 2021-10-01 Jakub Jelinek <jakub (a] redhat.com>
5309
5310 * affinity-fmt.c (omp_get_team_num, omp_get_num_teams): Add
5311 ialias_redirect.
5312 * env.c (handle_omp_display_env): Use ialias_call.
5313 * icv-device.c: Move ialias right below each function.
5314 (omp_get_device_num): Use ialias_call.
5315 * fortran.c (omp_fulfill_event): Add ialias_redirect.
5316 * icv.c (omp_get_active_level): Add ialias_redirect.
5317
5318 2021-10-01 Jakub Jelinek <jakub (a] redhat.com>
5319
5320 * omp.h.in (omp_aligned_alloc, omp_aligned_calloc): Add
5321 __alloc_align__ (1) attribute.
5322 * testsuite/libgomp.c-c++-common/alloc-9.c: New test.
5323
5324 2021-09-30 Tobias Burnus <tobias (a] codesourcery.com>
5325
5326 * testsuite/libgomp.fortran/alloc-7.f90: Add dg-prune-output
5327 for -fintrinsic-modules-path= warning of the C compiler.
5328 * testsuite/libgomp.fortran/alloc-9.f90: Likewise.
5329 * testsuite/libgomp.fortran/alloc-10.f90: Likewise.
5330
5331 2021-09-30 Tobias Burnus <tobias (a] codesourcery.com>
5332
5333 * libgomp.texi (OpenMP 5.1): Set implementation status to Y for
5334 omp_aligned_{,c}alloc and omp_{c,re}alloc routines.
5335 * omp_lib.f90.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
5336 omp_realloc): Add.
5337 * omp_lib.h.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
5338 omp_realloc): Add.
5339 * testsuite/libgomp.fortran/alloc-10.f90: New test.
5340 * testsuite/libgomp.fortran/alloc-6.f90: New test.
5341 * testsuite/libgomp.fortran/alloc-7.c: New test.
5342 * testsuite/libgomp.fortran/alloc-7.f90: New test.
5343 * testsuite/libgomp.fortran/alloc-8.f90: New test.
5344 * testsuite/libgomp.fortran/alloc-9.f90: New test.
5345
5346 2021-09-30 Jakub Jelinek <jakub (a] redhat.com>
5347
5348 * omp.h.in (omp_aligned_alloc, omp_calloc, omp_aligned_calloc,
5349 omp_realloc): New prototypes.
5350 (omp_alloc): Move after omp_free prototype, add __malloc__ (omp_free)
5351 attribute.
5352 * allocator.c: Include string.h.
5353 (omp_aligned_alloc): No longer static, add ialias. Add new_alignment
5354 variable and use it instead of alignment so that when retrying the old
5355 alignment is used again. Don't retry if new alignment is the same
5356 as old alignment, unless allocator had pool size.
5357 (omp_alloc, GOMP_alloc, GOMP_free): Use ialias_call.
5358 (omp_aligned_calloc, omp_calloc, omp_realloc): New functions.
5359 * libgomp.map (OMP_5.0.2): Export omp_aligned_alloc, omp_calloc,
5360 omp_aligned_calloc and omp_realloc.
5361 * testsuite/libgomp.c-c++-common/alloc-4.c (main): Add
5362 omp_aligned_alloc, omp_calloc and omp_aligned_calloc tests.
5363 * testsuite/libgomp.c-c++-common/alloc-5.c: New test.
5364 * testsuite/libgomp.c-c++-common/alloc-6.c: New test.
5365 * testsuite/libgomp.c-c++-common/alloc-7.c: New test.
5366 * testsuite/libgomp.c-c++-common/alloc-8.c: New test.
5367
5368 2021-09-28 Tobias Burnus <tobias (a] codesourcery.com>
5369
5370 PR libgomp/96661
5371 * configure.ac: Only check for int-type = 2*size_t support when
5372 building with Fortran support.
5373 * configure: Regenerate.
5374
5375 2021-09-28 Thomas Schwinge <thomas (a] codesourcery.com>
5376
5377 * testsuite/libgomp.oacc-fortran/if-1.f90: Adjust.
5378 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
5379
5380 2021-09-27 Aldy Hernandez <aldyh (a] redhat.com>
5381
5382 * team.c: Initialize start_data.
5383 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
5384 * testsuite/libgomp.graphite/force-parallel-8.c: Adjust.
5385
5386 2021-09-27 Tobias Burnus <tobias (a] codesourcery.com>
5387
5388 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Change
5389 dg-message back to dg-note.
5390
5391 2021-09-27 Tobias Burnus <tobias (a] codesourcery.com>
5392
5393 PR fortran/94070
5394 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Update
5395 expected dg-note output.
5396
5397 2021-09-22 Tobias Burnus <tobias (a] codesourcery.com>
5398
5399 PR fortran/55534
5400 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Revert
5401 r12-3722 by removing -Wno-missing-include-dirs.
5402 * testsuite/libgomp.oacc-fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
5403
5404 2021-09-22 Jakub Jelinek <jakub (a] redhat.com>
5405
5406 * testsuite/libgomp.c-c++-common/allocate-2.c: New test.
5407 * testsuite/libgomp.c-c++-common/allocate-3.c: New test.
5408
5409 2021-09-21 Tobias Burnus <tobias (a] codesourcery.com>
5410
5411 PR fortran/55534
5412 * testsuite/libgomp.fortran/fortran.exp: Add -Wno-missing-include-dirs
5413 to ALWAYS_CFLAGS.
5414 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
5415
5416 2021-09-18 Jakub Jelinek <jakub (a] redhat.com>
5417
5418 * testsuite/libgomp.c++/default-1.C: New test.
5419 * testsuite/libgomp.c-c++-common/default-1.c: New test.
5420 * libgomp.texi (OpenMP 5.1): Mark "private and firstprivate argument
5421 to default clause in C and C++" as implemented.
5422
5423 2021-09-17 Julian Brown <julian (a] codesourcery.com>
5424
5425 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Update.
5426
5427 2021-09-17 Julian Brown <julian (a] codesourcery.com>
5428
5429 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: New test.
5430
5431 2021-09-17 Jakub Jelinek <jakub (a] redhat.com>
5432
5433 * libgomp.texi (OpenMP 5.1): Spelling fix,
5434 declare variante -> declare variant.
5435
5436 2021-09-17 Jakub Jelinek <jakub (a] redhat.com>
5437
5438 * testsuite/libgomp.c-c++-common/atomic-19.c: Drop c effective target.
5439 Use /* */ comments instead of //.
5440 * testsuite/libgomp.c-c++-common/atomic-20.c: Likewise.
5441 * testsuite/libgomp.c-c++-common/atomic-21.c: Likewise.
5442 * testsuite/libgomp.c++/atomic-16.C: New test.
5443 * testsuite/libgomp.c++/atomic-17.C: New test.
5444
5445 2021-09-10 Jakub Jelinek <jakub (a] redhat.com>
5446
5447 * testsuite/libgomp.c-c++-common/atomic-19.c: New test.
5448 * testsuite/libgomp.c-c++-common/atomic-20.c: New test.
5449 * testsuite/libgomp.c-c++-common/atomic-21.c: New test.
5450
5451 2021-09-07 Tobias Burnus <tobias (a] codesourcery.com>
5452
5453 * libgomp.texi (OpenMP Implementation Status): Extend
5454 OpenMP 5.0 section.
5455 (OpenACC Profiling Interface): Fix typo.
5456
5457 2021-09-07 Tobias Burnus <tobias (a] codesourcery.com>
5458
5459 * libgomp.texi (Enabling OpenMP): Refer to OMP spec in general
5460 not to 4.5; link to new section.
5461 (OpenMP Implementation Status): New.
5462
5463 2021-09-06 Thomas Schwinge <thomas (a] codesourcery.com>
5464
5465 * testsuite/libgomp.c/target-43.c: '-latomic' for nvptx offloading.
5466
5467 2021-09-03 Tobias Burnus <tobias (a] codesourcery.com>
5468
5469 * testsuite/libgomp.c-c++-common/error-1.c: Use \r\n not \n\r in
5470 dg-output.
5471 * testsuite/libgomp.fortran/error-1.f90: Likewise.
5472
5473 2021-08-23 Thomas Schwinge <thomas (a] codesourcery.com>
5474 Jakub Jelinek <jakub (a] redhat.com>
5475
5476 * testsuite/libgomp.c/address-space-1.c: New file.
5477
5478 2021-08-23 Thomas Schwinge <thomas (a] codesourcery.com>
5479
5480 * testsuite/lib/libgomp.exp
5481 (check_effective_target_offload_target_intelmic): Remove 'proc'.
5482 (check_effective_target_offload_device_intel_mic): New 'proc'.
5483 * testsuite/libgomp.c-c++-common/on_device_arch.h
5484 (device_arch_intel_mic, on_device_arch_intel_mic): New.
5485 * testsuite/libgomp.c-c++-common/target-45.c: Use that for
5486 'dg-xfail-run-if'.
5487 * testsuite/libgomp.fortran/target10.f90: Likewise.
5488
5489 2021-08-23 Tobias Burnus <tobias (a] codesourcery.com>
5490
5491 * testsuite/libgomp.fortran/taskloop-4-a.f90: New test.
5492 * testsuite/libgomp.fortran/taskloop-4.f90: New test.
5493 * testsuite/libgomp.fortran/taskloop-5-a.f90: New test.
5494 * testsuite/libgomp.fortran/taskloop-5.f90: New test.
5495
5496 2021-08-23 Jakub Jelinek <jakub (a] redhat.com>
5497
5498 * taskloop.c (GOMP_taskloop): Handle GOMP_TASK_FLAG_STRICT.
5499 * testsuite/libgomp.c-c++-common/taskloop-4.c (main): Fix up comment.
5500 * testsuite/libgomp.c-c++-common/taskloop-5.c: New test.
5501
5502 2021-08-22 Thomas Schwinge <thomas (a] codesourcery.com>
5503
5504 * config/nvptx/error.c (fwrite, exit): Override, too.
5505 * testsuite/libgomp.c-c++-common/error-1.c: Add a minimum amount
5506 of offloading testing.
5507 * testsuite/libgomp.fortran/error-1.f90: Likewise.
5508
5509 2021-08-20 Tobias Burnus <tobias (a] codesourcery.com>
5510
5511 * testsuite/libgomp.fortran/error-1.f90: New test.
5512
5513 2021-08-20 Jakub Jelinek <jakub (a] redhat.com>
5514
5515 * libgomp.map (GOMP_5.1): Add GOMP_error and GOMP_warning.
5516 * libgomp_g.h (GOMP_warning, GOMP_error): Declare.
5517 * error.c (GOMP_warning, GOMP_error): New functions.
5518 * testsuite/libgomp.c-c++-common/error-1.c: New test.
5519
5520 2021-08-18 Tobias Burnus <tobias (a] codesourcery.com>
5521
5522 * omp_lib.f90.in (omp_alloc, omp_free, omp_target_alloc,
5523 omp_target_free. omp_target_is_present, omp_target_memcpy,
5524 omp_target_memcpy_rect, omp_target_associate_ptr,
5525 omp_target_disassociate_ptr): Add interface.
5526 * omp_lib.h.in (omp_alloc, omp_free, omp_target_alloc,
5527 omp_target_free. omp_target_is_present, omp_target_memcpy,
5528 omp_target_memcpy_rect, omp_target_associate_ptr,
5529 omp_target_disassociate_ptr): Add interface.
5530 * testsuite/libgomp.fortran/alloc-1.F90: Remove local
5531 interface block for omp_alloc + omp_free.
5532 * testsuite/libgomp.fortran/alloc-4.f90: Likewise.
5533 * testsuite/libgomp.fortran/refcount-1.f90: New test.
5534 * testsuite/libgomp.fortran/target-12.f90: New test.
5535
5536 2021-08-18 Jakub Jelinek <jakub (a] redhat.com>
5537
5538 * testsuite/libgomp.c-c++-common/nothing-1.c: New test.
5539
5540 2021-08-17 Tobias Burnus <tobias (a] codesourcery.com>
5541
5542 * testsuite/libgomp.fortran/scope-1.f90: New test.
5543 * testsuite/libgomp.fortran/task-reduction-16.f90: New test.
5544
5545 2021-08-17 Jakub Jelinek <jakub (a] redhat.com>
5546
5547 * Makefile.am (libgomp_la_SOURCES): Add scope.c
5548 * Makefile.in: Regenerated.
5549 * libgomp_g.h (GOMP_scope_start): Declare.
5550 * libgomp.map: Add GOMP_scope_start@@GOMP_5.1.
5551 * scope.c: New file.
5552 * testsuite/libgomp.c-c++-common/scope-1.c: New test.
5553 * testsuite/libgomp.c-c++-common/task-reduction-16.c: New test.
5554
5555 2021-08-16 Thomas Schwinge <thomas (a] codesourcery.com>
5556
5557 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Address
5558 '?:' issues.
5559
5560 2021-08-16 Tobias Burnus <tobias (a] codesourcery.com>
5561
5562 * testsuite/libgomp.fortran/masked-1.f90: New test.
5563
5564 2021-08-13 Thomas Schwinge <thomas (a] codesourcery.com>
5565
5566 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Adjust.
5567
5568 2021-08-12 Jakub Jelinek <jakub (a] redhat.com>
5569
5570 * testsuite/libgomp.c-c++-common/masked-1.c: New test.
5571
5572 2021-08-12 Tobias Burnus <tobias (a] codesourcery.com>
5573
5574 * env.c (parse_bind_var): Accept 'primary' as alias for
5575 'master'.
5576 (omp_display_env): Add TODO comment to
5577 change 'master' to 'primary' in proc_bind for OpenMP 5.1.
5578 * libgomp.texi: Change 'master thread' to 'primary thread'
5579 in line with OpenMP 5.1.
5580 (omp_get_proc_bind): Add omp_proc_bind_primary and note that
5581 omp_proc_bind_master is an alias of it.
5582 (OMP_PROC_BIND): Mention 'PRIMARY'.
5583 * omp.h.in (__GOMP_DEPRECATED_5_1): Define.
5584 (omp_proc_bind_primary): Add.
5585 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
5586 * omp_lib.f90.in (omp_proc_bind_primary): Add.
5587 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
5588 * omp_lib.h.in (omp_proc_bind_primary): Add.
5589 * testsuite/libgomp.c/affinity-1.c: Check that
5590 'primary' works and is identical to 'master'.
5591
5592 2021-08-09 Julian Brown <julian (a] codesourcery.com>
5593 Kwok Cheung Yeung <kcy (a] codesourcery.com>
5594 Thomas Schwinge <thomas (a] codesourcery.com>
5595
5596 * plugin/plugin-gcn.c (gcn_exec): Change default number of workers to
5597 16.
5598 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
5599 [acc_device_radeon]: Update.
5600 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c
5601 [ACC_DEVICE_TYPE_radeon]: Likewise.
5602 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
5603 [acc_device_radeon]: Likewise.
5604 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c
5605 [ACC_DEVICE_TYPE_radeon]: Likewise.
5606 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: XFAIL for
5607 'openacc_radeon_accel_selected' and '-O0'.
5608 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
5609
5610 2021-08-05 Chung-Lin Tang <cltang (a] codesourcery.com>
5611
5612 * icv-device.c (omp_get_device_num): New API function, host side.
5613 * fortran.c (omp_get_device_num_): New interface function.
5614 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Define macro symbol.
5615 * libgomp.map (OMP_5.0.2): New version space with omp_get_device_num,
5616 omp_get_device_num_.
5617 * libgomp.texi (omp_get_device_num): Add documentation for new API
5618 function.
5619 * omp.h.in (omp_get_device_num): Add declaration.
5620 * omp_lib.f90.in (omp_get_device_num): Likewise.
5621 * omp_lib.h.in (omp_get_device_num): Likewise.
5622 * target.c (gomp_load_image_to_device): If additional entry for device
5623 number exists at end of returned entries from 'load_image_func' hook,
5624 copy the assigned device number over to the device variable.
5625 * config/gcn/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
5626 (omp_get_device_num): New API function, device side.
5627 * plugin/plugin-gcn.c ("symcat.h"): Add include.
5628 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
5629 at end of returned 'target_table' entries.
5630 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
5631 (omp_get_device_num): New API function, device side.
5632 * plugin/plugin-nvptx.c ("symcat.h"): Add include.
5633 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
5634 at end of returned 'target_table' entries.
5635 * testsuite/lib/libgomp.exp
5636 (check_effective_target_offload_target_intelmic): New function for
5637 testing for intelmic offloading.
5638 * testsuite/libgomp.c-c++-common/target-45.c: New test.
5639 * testsuite/libgomp.fortran/target10.f90: New test.
5640
5641 2021-07-30 Thomas Schwinge <thomas (a] codesourcery.com>
5642 Ulrich Drepper <drepper (a] redhat.com>
5643
5644 * fortran.c (omp_display_env_, omp_display_env_8_): Only
5645 '#ifndef LIBGOMP_OFFLOADED_ONLY'.
5646
5647 2021-07-29 Thomas Schwinge <thomas (a] codesourcery.com>
5648 Julian Brown <julian (a] codesourcery.com>
5649 Kwok Cheung Yeung <kcy (a] codesourcery.com>
5650
5651 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c:
5652 's%oaccdevlow%oaccloops%g'.
5653 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
5654 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
5655 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c:
5656 Likewise.
5657 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c:
5658 Likewise.
5659 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c:
5660 Likewise.
5661 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c:
5662 Likewise.
5663 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c:
5664 Likewise.
5665 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c:
5666 Likewise.
5667 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c:
5668 Likewise.
5669 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c:
5670 Likewise.
5671 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
5672
5673 2021-07-29 Aldy Hernandez <aldyh (a] redhat.com>
5674
5675 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for
5676 threader.
5677 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
5678
5679 2021-07-27 Ulrich Drepper <drepper (a] gmail.com>
5680
5681 * env.c (wait_policy, stacksize): New static variables,
5682 move out of handle_omp_display_env.
5683 (omp_display_env): New function. The meat of the old
5684 handle_omp_display_env function.
5685 (handle_omp_display_env): Change to not take parameters
5686 and instead use the global variables. Only perform
5687 parsing, defer to omp_display_env for the implementation.
5688 (initialize_env): Remove local variables wait_policy and
5689 stacksize. Don't pass parameters to handle_omp_display_env.
5690 * fortran.c: Add ialias_redirect for omp_display_env.
5691 (omp_display_env_, omp_display_env_8_): New functions.
5692 * libgomp.map (OMP_5.1): New version. Add omp_display_env,
5693 omp_display_env_, and omp_display_env_8_.
5694 * omp.h.in: Declare omp_display_env.
5695 * omp_lib.f90.in: Likewise.
5696 * omp_lib.h.in: Likewise.
5697
5698 2021-07-27 Thomas Schwinge <thomas (a] codesourcery.com>
5699 Julian Brown <julian (a] codesourcery.com>
5700
5701 * target.c (gomp_coalesce_buf_add): Update comment.
5702 (gomp_copy_host2dev, gomp_map_vars_internal): Don't expect to see
5703 'aq && cbuf'.
5704 (gomp_map_vars_internal): Only 'if (!aq)', do
5705 'gomp_coalesce_buf_add'.
5706 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Remove
5707 XFAIL.
5708
5709 2021-07-27 Julian Brown <julian (a] codesourcery.com>
5710 Thomas Schwinge <thomas (a] codesourcery.com>
5711
5712 * libgomp.h (gomp_copy_host2dev): Update prototype.
5713 * oacc-mem.c (memcpy_tofrom_device, update_dev_host): Add new
5714 argument to gomp_copy_host2dev (false).
5715 * plugin/plugin-gcn.c (struct copy_data): Remove free_src field.
5716 (copy_data): Don't free src.
5717 (queue_push_copy): Remove free_src handling.
5718 (GOMP_OFFLOAD_dev2dev): Update call to queue_push_copy.
5719 (GOMP_OFFLOAD_openacc_async_host2dev): Remove source-data
5720 snapshotting.
5721 (GOMP_OFFLOAD_openacc_async_dev2host): Update call to
5722 queue_push_copy.
5723 * target.c (goacc_device_copy_async): Add SRCADDR_ORIG parameter.
5724 (gomp_copy_host2dev): Add EPHEMERAL parameter. Snapshot source
5725 data when true, and set up deferred freeing of temporary buffer.
5726 (gomp_copy_dev2host): Update call to goacc_device_copy_async.
5727 (gomp_map_vars_existing, gomp_map_pointer, gomp_attach_pointer)
5728 (gomp_detach_pointer, gomp_map_vars_internal, gomp_update): Update
5729 calls to gomp_copy_host2dev with appropriate ephemeral argument.
5730 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: Remove
5731 XFAIL.
5732
5733 2021-07-27 Thomas Schwinge <thomas (a] codesourcery.com>
5734 Tom de Vries <tom (a] codesourcery.com>
5735
5736 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: New file.
5737 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Likewise.
5738
5739 2021-07-27 Thomas Schwinge <thomas (a] codesourcery.com>
5740
5741 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Clarify
5742 sequencing of 'async' data copying vs. profiling events.
5743 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
5744 Likewise.
5745
5746 2021-07-27 Thomas Schwinge <thomas (a] codesourcery.com>
5747 Julian Brown <julian (a] codesourcery.com>
5748
5749 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: Fix OpenACC
5750 'async'/'wait' issue.
5751 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: Likewise.
5752 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: Likewise.
5753 * testsuite/libgomp.oacc-fortran/lib-16.f90: Likewise.
5754
5755 2021-07-21 Thomas Schwinge <thomas (a] codesourcery.com>
5756 Joseph Myers <joseph (a] codesourcery.com>
5757 Cesar Philippidis <cesar (a] codesourcery.com>
5758
5759 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c: New
5760 file.
5761 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
5762 Likewise.
5763 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2_2.c:
5764 Likewise.
5765 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
5766
5767 2021-07-20 Thomas Schwinge <thomas (a] codesourcery.com>
5768
5769 PR target/101484
5770 * configure.tgt [amdgcn*-*-*] (XCFLAGS): Add
5771 '-Wno-error=array-bounds'.
5772 * config/gcn/team.c: Remove '-Werror=array-bounds' work-around.
5773 * libgomp.h [__AMDGCN__]: Likewise.
5774
5775 2021-07-19 Thomas Schwinge <thomas (a] codesourcery.com>
5776
5777 PR target/101484
5778 * config/gcn/team.c: Apply '-Werror=array-bounds' work-around.
5779 * libgomp.h [__AMDGCN__]: Likewise.
5780
5781 2021-07-13 Jakub Jelinek <jakub (a] redhat.com>
5782 Florian Weimer <fweimer (a] redhat.com>
5783
5784 * config/linux/sem.h: Don't include limits.h.
5785 (SEM_WAIT): Define to -__INT_MAX__ - 1 instead of INT_MIN.
5786 * config/linux/affinity.c: Include limits.h.
5787
5788 2021-07-01 Jakub Jelinek <jakub (a] redhat.com>
5789
5790 PR middle-end/94366
5791 * testsuite/libgomp.c-c++-common/pr94366.c: New test.
5792
5793 2021-06-29 Tobias Burnus <tobias (a] codesourcery.com>
5794
5795 PR other/67300
5796 * testsuite/libgomp.c-c++-common/reduction-16.c: Replace
5797 -foffload=nvptx-none= by -foffload-options=nvptx-none= to
5798 avoid disabling other offload targets.
5799 * testsuite/libgomp.c-c++-common/reduction-5.c: Likewise.
5800 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
5801 * testsuite/libgomp.c/target-44.c: Likewise.
5802
5803 2021-06-29 Tobias Burnus <tobias (a] codesourcery.com>
5804
5805 * testsuite/libgomp.fortran/defaultmap-8.f90 (bar): Determine whether
5806 target has shared memory and disable some scalar pointer/allocatable
5807 checks if not as firstprivate does not work.
5808
5809 2021-06-25 Chung-Lin Tang <cltang (a] codesourcery.com>
5810
5811 PR testsuite/101114
5812 * testsuite/libgomp.c-c++-common/struct-elem-5.c:
5813 Add "target offload_device_nonshared_as" condition for enabling test.
5814
5815 2021-06-24 Jakub Jelinek <jakub (a] redhat.com>
5816
5817 * testsuite/libgomp.c-c++-common/target-in-reduction-1.c: New test.
5818 * testsuite/libgomp.c-c++-common/target-in-reduction-2.c: New test.
5819 * testsuite/libgomp.c++/target-in-reduction-1.C: New test.
5820 * testsuite/libgomp.c++/target-in-reduction-2.C: New test.
5821
5822 2021-06-23 Jakub Jelinek <jakub (a] redhat.com>
5823
5824 PR middle-end/101167
5825 * testsuite/libgomp.c-c++-common/task-reduction-15.c: New test.
5826
5827 2021-06-17 Chung-Lin Tang <cltang (a] codesourcery.com>
5828
5829 * hashtab.h (htab_clear): New function with initialization code
5830 factored out from...
5831 (htab_create): ...here, adjust to use htab_clear function.
5832 * libgomp.h (REFCOUNT_SPECIAL): New symbol to denote range of
5833 special refcount values, add comments.
5834 (REFCOUNT_INFINITY): Adjust definition to use REFCOUNT_SPECIAL.
5835 (REFCOUNT_LINK): Likewise.
5836 (REFCOUNT_STRUCTELEM): New special refcount range for structure
5837 element siblings.
5838 (REFCOUNT_STRUCTELEM_P): Macro for testing for structure element
5839 sibling maps.
5840 (REFCOUNT_STRUCTELEM_FLAG_FIRST): Flag to indicate first sibling.
5841 (REFCOUNT_STRUCTELEM_FLAG_LAST): Flag to indicate last sibling.
5842 (REFCOUNT_STRUCTELEM_FIRST_P): Macro to test _FIRST flag.
5843 (REFCOUNT_STRUCTELEM_LAST_P): Macro to test _LAST flag.
5844 (struct splay_tree_key_s): Add structelem_refcount and
5845 structelem_refcount_ptr fields into a union with dynamic_refcount.
5846 Add comments.
5847 (gomp_map_vars): Delete declaration.
5848 (gomp_map_vars_async): Likewise.
5849 (gomp_unmap_vars): Likewise.
5850 (gomp_unmap_vars_async): Likewise.
5851 (goacc_map_vars): New declaration.
5852 (goacc_unmap_vars): Likewise.
5853 * oacc-mem.c (acc_map_data): Adjust to use goacc_map_vars.
5854 (goacc_enter_datum): Likewise.
5855 (goacc_enter_data_internal): Likewise.
5856 * oacc-parallel.c (GOACC_parallel_keyed): Adjust to use goacc_map_vars
5857 and goacc_unmap_vars.
5858 (GOACC_data_start): Adjust to use goacc_map_vars.
5859 (GOACC_data_end): Adjust to use goacc_unmap_vars.
5860 * target.c (hash_entry_type): New typedef.
5861 (htab_alloc): New function hook for hashtab.h.
5862 (htab_free): Likewise.
5863 (htab_hash): Likewise.
5864 (htab_eq): Likewise.
5865 (hashtab.h): Add file include.
5866 (gomp_increment_refcount): New function.
5867 (gomp_decrement_refcount): Likewise.
5868 (gomp_map_vars_existing): Add refcount_set parameter, adjust to use
5869 gomp_increment_refcount.
5870 (gomp_map_fields_existing): Add refcount_set parameter, adjust calls
5871 to gomp_map_vars_existing.
5872 (gomp_map_vars_internal): Add refcount_set parameter, add local openmp_p
5873 variable to guard OpenMP specific paths, adjust calls to
5874 gomp_map_vars_existing, add structure element sibling splay_tree_key
5875 sequence creation code, adjust Fortran map case to avoid increment
5876 under OpenMP.
5877 (gomp_map_vars): Adjust to static, add refcount_set parameter, manage
5878 local refcount_set if caller passed in NULL, adjust call to
5879 gomp_map_vars_internal.
5880 (gomp_map_vars_async): Adjust and rename into...
5881 (goacc_map_vars): ...this new function, adjust call to
5882 gomp_map_vars_internal.
5883 (gomp_remove_splay_tree_key): New function with code factored out from
5884 gomp_remove_var_internal.
5885 (gomp_remove_var_internal): Add code to handle removing multiple
5886 splay_tree_key sequence for structure elements, adjust code to use
5887 gomp_remove_splay_tree_key for splay-tree key removal.
5888 (gomp_unmap_vars_internal): Add refcount_set parameter, adjust to use
5889 gomp_decrement_refcount.
5890 (gomp_unmap_vars): Adjust to static, add refcount_set parameter, manage
5891 local refcount_set if caller passed in NULL, adjust call to
5892 gomp_unmap_vars_internal.
5893 (gomp_unmap_vars_async): Adjust and rename into...
5894 (goacc_unmap_vars): ...this new function, adjust call to
5895 gomp_unmap_vars_internal.
5896 (GOMP_target): Manage refcount_set and adjust calls to gomp_map_vars and
5897 gomp_unmap_vars.
5898 (GOMP_target_ext): Likewise.
5899 (gomp_target_data_fallback): Adjust call to gomp_map_vars.
5900 (GOMP_target_data): Likewise.
5901 (GOMP_target_data_ext): Likewise.
5902 (GOMP_target_end_data): Adjust call to gomp_unmap_vars.
5903 (gomp_exit_data): Add refcount_set parameter, adjust to use
5904 gomp_decrement_refcount, adjust to queue splay-tree keys for removal
5905 after main loop.
5906 (GOMP_target_enter_exit_data): Manage refcount_set and adjust calls to
5907 gomp_map_vars and gomp_exit_data.
5908 (gomp_target_task_fn): Likewise.
5909 * testsuite/libgomp.c-c++-common/refcount-1.c: New testcase.
5910 * testsuite/libgomp.c-c++-common/struct-elem-1.c: New testcase.
5911 * testsuite/libgomp.c-c++-common/struct-elem-2.c: New testcase.
5912 * testsuite/libgomp.c-c++-common/struct-elem-3.c: New testcase.
5913 * testsuite/libgomp.c-c++-common/struct-elem-4.c: New testcase.
5914 * testsuite/libgomp.c-c++-common/struct-elem-5.c: New testcase.
5915
5916 2021-06-15 Tobias Burnus <tobias (a] codesourcery.com>
5917
5918 PR fortran/92568
5919 * testsuite/libgomp.fortran/defaultmap-8.f90: New test.
5920
5921 2021-06-10 Andrew Stubbs <ams (a] codesourcery.com>
5922 Thomas Schwinge <thomas (a] codesourcery.com>
5923
5924 * libgomp.map (GOACC_2.0.2): New symbol version.
5925 * libgomp_g.h (GOACC_enter_data, GOACC_exit_data) New prototypes.
5926 * oacc-mem.c (GOACC_enter_data, GOACC_exit_data) New functions.
5927
5928 2021-06-10 Thomas Schwinge <thomas (a] codesourcery.com>
5929 Andrew Stubbs <ams (a] codesourcery.com>
5930
5931 * oacc-mem.c (goacc_enter_exit_data_internal): New function,
5932 extracted from...
5933 (GOACC_enter_exit_data): ... here.
5934 (GOACC_declare): Use it.
5935
5936 2021-06-10 Thomas Schwinge <thomas (a] codesourcery.com>
5937
5938 * oacc-parallel.c (GOACC_declare): Move...
5939 * oacc-mem.c: ... here.
5940 * libgomp_g.h: Adjust.
5941
5942 2021-06-10 Andrew Stubbs <ams (a] codesourcery.com>
5943 Thomas Schwinge <thomas (a] codesourcery.com>
5944
5945 * oacc-parallel.c (GOACC_declare): Clean up 'GOMP_MAP_POINTER'
5946 handling.
5947
5948 2021-06-10 Jakub Jelinek <jakub (a] redhat.com>
5949
5950 PR tree-optimization/100981
5951 * testsuite/libgomp.fortran/pr100981-2.f90 (cdcdot): Initialize
5952 dsdotr and dsdoti to 0.
5953
5954 2021-06-09 H.J. Lu <hjl.tools (a] gmail.com>
5955
5956 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -march=i486
5957 if atomic compare-and-swap is supported on 'int'.
5958
5959 2021-06-09 Richard Biener <rguenther (a] suse.de>
5960
5961 PR tree-optimization/100981
5962 * testsuite/libgomp.fortran/pr100981-2.f90: New testcase.
5963
5964 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
5965
5966 * plugin/plugin-gcn.c (gcn_exec): Force 'num_workers (1)'
5967 unconditionally.
5968 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
5969 Update.
5970 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
5971 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
5972
5973 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
5974
5975 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Enable for all but
5976 '-DACC_MEM_SHARED=0'.
5977 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
5978 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
5979 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
5980 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
5981 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
5982 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
5983 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
5984 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
5985 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
5986 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
5987 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
5988 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
5989 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
5990 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
5991 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Add
5992 'acc_device_radeon' testing.
5993 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
5994 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
5995 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
5996 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Enable for all.
5997 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
5998 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
5999 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
6000 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
6001 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
6002 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
6003 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Improve checking
6004 for non-'openacc_nvidia_accel_selected'.
6005 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
6006 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Clarify that "Not
6007 all implement this checking".
6008 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
6009 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
6010 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
6011 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
6012 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
6013
6014 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
6015
6016 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Simplify.
6017 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: Update.
6018
6019 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
6020
6021 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Fix
6022 for 'acc_device_radeon'.
6023
6024 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
6025
6026 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Enhance
6027 for non-'acc_device_nvidia'.
6028
6029 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
6030
6031 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Add
6032 'acc_device_radeon' testing.
6033 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
6034 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
6035 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
6036
6037 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
6038
6039 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Don't
6040 require 'openacc_nvidia_accel_selected'. Fix up for
6041 'ACC_DEVICE_TYPE_radeon'.
6042
6043 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
6044
6045 * testsuite/libgomp.oacc-c++/declare-1.C: Don't require
6046 'openacc_nvidia_accel_selected'.
6047 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
6048
6049 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
6050
6051 * testsuite/lib/libgomp.exp
6052 (check_effective_target_openacc_radeon_accel_selected):
6053 Streamline.
6054
6055 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
6056
6057 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Revert
6058 PR80547 workaround.
6059
6060 2021-06-08 Thomas Schwinge <thomas (a] codesourcery.com>
6061
6062 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
6063 <acc_device_nvidia>: Update comment.
6064
6065 2021-05-28 Tobias Burnus <tobias (a] codesourcery.com>
6066
6067 * testsuite/libgomp.fortran/depend-iterator-2.f90: New test.
6068
6069 2021-05-27 Jakub Jelinek <jakub (a] redhat.com>
6070
6071 * testsuite/lib/libgomp.exp (check_effective_target_openacc_cuda,
6072 check_effective_target_openacc_cublas,
6073 check_effective_target_openacc_cudart): New.
6074 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Require effective
6075 target openacc_cublas.
6076 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
6077 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
6078 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Require effective
6079 target openacc_cuda.
6080 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
6081 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
6082 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
6083 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
6084 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
6085 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
6086 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
6087 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
6088 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Likewise.
6089 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
6090 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
6091 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
6092 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
6093 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
6094 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
6095 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
6096 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Require effective
6097 targets openacc_cublas and openacc_cudart.
6098 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
6099 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
6100 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
6101 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
6102 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c:
6103 Require effective target openacc_cudart.
6104 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Add -DUSE_CUDA_H
6105 for effective target openacc_cuda and add && defined USE_CUDA_H to
6106 preprocessor conditionals. Guard -lcuda also on openacc_cuda
6107 effective target.
6108
6109 2021-05-26 Jakub Jelinek <jakub (a] redhat.com>
6110
6111 PR libgomp/100573
6112 * config/nvptx/target.c (GOMP_target_ext, GOMP_target_data_ext,
6113 GOMP_target_end_data, GOMP_target_update_ext,
6114 GOMP_target_enter_exit_data): New dummy entrypoints.
6115 * config/gcn/target.c (GOMP_target_ext, GOMP_target_data_ext,
6116 GOMP_target_end_data, GOMP_target_update_ext,
6117 GOMP_target_enter_exit_data): Likewise.
6118 * testsuite/libgomp.c-c++-common/for-3.c (DO_PRAGMA, OMPTEAMS,
6119 OMPFROM, OMPTO): Define.
6120 (main): Remove #pragma omp target teams around all the tests.
6121 * testsuite/libgomp.c-c++-common/target-41.c: New test.
6122 * testsuite/libgomp.c-c++-common/target-42.c: New test.
6123
6124 2021-05-25 Jakub Jelinek <jakub (a] redhat.com>
6125
6126 PR middle-end/99928
6127 * testsuite/libgomp.c-c++-common/reduction-17.c: New test.
6128
6129 2021-05-24 Tobias Burnus <tobias (a] codesourcery.com>
6130
6131 PR fortran/86470
6132 * testsuite/libgomp.fortran/class-firstprivate-1.f90: New test.
6133 * testsuite/libgomp.fortran/class-firstprivate-2.f90: New test.
6134 * testsuite/libgomp.fortran/class-firstprivate-3.f90: New test.
6135
6136 2021-05-22 Thomas Schwinge <thomas (a] codesourcery.com>
6137
6138 PR testsuite/90115
6139 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Prune
6140 uninteresting/varying diagnostics.
6141
6142 2021-05-21 Thomas Schwinge <thomas (a] codesourcery.com>
6143
6144 PR middle-end/90115
6145 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Update.
6146 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
6147
6148 2021-05-21 Thomas Schwinge <thomas (a] codesourcery.com>
6149
6150 PR middle-end/90115
6151 * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: New
6152 file.
6153 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
6154 * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Likewise.
6155 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
6156 Likewise.
6157 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
6158 Likewise.
6159 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
6160 Likewise.
6161 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
6162 Likewise.
6163 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
6164 Likewise.
6165 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
6166 Likewise.
6167 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
6168 Likewise.
6169 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
6170 Likewise.
6171 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
6172 Likewise.
6173 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
6174 Likewise.
6175 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
6176 Likewise.
6177 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
6178 Likewise.
6179 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
6180 Likewise.
6181 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
6182 Likewise.
6183 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
6184 Likewise.
6185 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
6186 Likewise.
6187 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
6188 Likewise.
6189 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
6190 Likewise.
6191 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
6192 Likewise.
6193 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
6194 Likewise.
6195 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
6196 Likewise.
6197 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
6198 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
6199 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
6200 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
6201 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
6202 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
6203 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
6204 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
6205 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
6206 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
6207 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
6208 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
6209 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
6210 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
6211 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
6212 Likewise.
6213 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c:
6214 Likewise.
6215 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c:
6216 Likewise.
6217 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
6218 Likewise.
6219 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
6220 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
6221 Likewise.
6222 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
6223 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
6224 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
6225 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
6226 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
6227 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
6228 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
6229 Likewise.
6230 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
6231 Likewise.
6232 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
6233 Likewise.
6234 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
6235 Likewise.
6236 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
6237 Likewise.
6238 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
6239 Likewise.
6240 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
6241 Likewise.
6242 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
6243 Likewise.
6244 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
6245 Likewise.
6246 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
6247 Likewise.
6248 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
6249 Likewise.
6250 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
6251 Likewise.
6252 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
6253 Likewise.
6254 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
6255 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
6256 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
6257 Likewise.
6258 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
6259 Likewise.
6260 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
6261 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
6262 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
6263
6264 2021-05-21 Julian Brown <julian (a] codesourcery.com>
6265 Chung-Lin Tang <cltang (a] codesourcery.com>
6266 Thomas Schwinge <thomas (a] codesourcery.com>
6267
6268 PR middle-end/90115
6269 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c: New
6270 test.
6271 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
6272 Likewise.
6273 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
6274 Likewise.
6275
6276 2021-05-21 Thomas Schwinge <thomas (a] codesourcery.com>
6277
6278 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Don't skip
6279 for nvptx offloading.
6280
6281 2021-05-21 Tobias Burnus <tobias (a] codesourcery.com>
6282
6283 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: New.
6284
6285 2021-05-19 Thomas Schwinge <thomas (a] codesourcery.com>
6286
6287 PR target/83812
6288 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: New.
6289
6290 2021-05-19 Julian Brown <julian (a] codesourcery.com>
6291
6292 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: New.
6293
6294 2021-05-18 Thomas Schwinge <thomas (a] codesourcery.com>
6295
6296 * testsuite/lib/libgomp.exp
6297 (check_effective_target_offload_target_nvptx): Don't shadow global
6298 'offload_targets' variable.
6299
6300 2021-05-18 Thomas Schwinge <thomas (a] codesourcery.com>
6301
6302 * testsuite/libgomp.c-c++-common/reduction-5.c: Restrict
6303 '-latomic' to nvptx offloading compilation.
6304 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
6305
6306 2021-05-18 Thomas Schwinge <thomas (a] codesourcery.com>
6307
6308 * testsuite/libgomp.c/target-44.c: Restrict '-latomic' to nvptx
6309 offloading compilation.
6310
6311 2021-05-17 Kwok Cheung Yeung <kcy (a] codesourcery.com>
6312
6313 * task.c (omp_fulfill_event): Call gomp_team_barrier_set_task_pending
6314 if new tasks generated.
6315 * testsuite/libgomp.c-c++-common/task-detach-13.c: New.
6316
6317 2021-05-14 Tobias Burnus <tobias (a] codesourcery.com>
6318
6319 * testsuite/libgomp.fortran/parallel-master.f90: New test.
6320
6321 2021-05-13 Martin Liska <mliska (a] suse.cz>
6322
6323 PR testsuite/100569
6324 * testsuite/libgomp.c/omp-nested-3.c: Prune new LTO warning.
6325 * testsuite/libgomp.c/pr46032-2.c: Likewise.
6326 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c: Likewise.
6327 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c: Likewise.
6328
6329 2021-05-12 Tobias Burnus <tobias (a] codesourcery.com>
6330
6331 * testsuite/libgomp.c-c++-common/task-detach-12.c: New test.
6332 * testsuite/libgomp.fortran/task-detach-12.f90: New test.
6333
6334 2021-05-11 Jakub Jelinek <jakub (a] redhat.com>
6335
6336 PR middle-end/100471
6337 * taskloop.c (GOMP_taskloop): If GOMP_TASK_FLAG_REDUCTION and not
6338 GOMP_TASK_FLAG_NOGROUP, when doing early return clear the task
6339 reduction pointer.
6340 * testsuite/libgomp.c/task-reduction-4.c: New test.
6341
6342 2021-05-07 Tobias Burnus <tobias (a] codesourcery.com>
6343 Tom de Vries <tdevries (a] suse.de>
6344
6345 * testsuite/libgomp.c-c++-common/reduction-5.c: New test, testing
6346 complex/floating-point || + && reduction with 'omp target'.
6347 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
6348
6349 2021-05-04 Tobias Burnus <tobias (a] codesourcery.com>
6350
6351 * testsuite/libgomp.c-c++-common/reduction-1.c: New test.
6352 * testsuite/libgomp.c-c++-common/reduction-2.c: New test.
6353 * testsuite/libgomp.c-c++-common/reduction-3.c: New test.
6354 * testsuite/libgomp.c-c++-common/reduction-4.c: New file.
6355
6356 2021-05-04 Tobias Burnus <tobias (a] codesourcery.com>
6357
6358 PR testsuite/100397
6359 * testsuite/libgomp.fortran/depobj-1.f90 (dep2, dep3): Move var
6360 declaration to scope of non-'depend'-guarded assignment to avoid races.
6361
6362 2021-05-03 Tom de Vries <tdevries (a] suse.de>
6363
6364 PR target/100321
6365 * testsuite/libgomp.c/target-44.c: New test.
6366
6367 2021-04-30 Roman Zhuykov <zhroma (a] ispras.ru>
6368
6369 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-3.c: New test.
6370
6371 2021-04-29 Tom de Vries <tdevries (a] suse.de>
6372
6373 * testsuite/libgomp.c/pr81778.c: New test.
6374
6375 2021-04-29 Tom de Vries <tdevries (a] suse.de>
6376
6377 PR target/100232
6378 * testsuite/libgomp.c/target-43.c: New file.
6379
6380 2021-04-28 Jakub Jelinek <jakub (a] redhat.com>
6381 Tobias Burnus <tobias (a] codesourcery.com>
6382
6383 * configure.ac (OFFLOAD_DEFAULTED): AC_DEFINE if offload-defaulted.
6384 * target.c (gomp_load_plugin_for_device): If set and if a plugin
6385 can't be dlopened, silently assume it has no devices.
6386 * Makefile.in: Regenerate.
6387 * config.h.in: Regenerate.
6388 * configure: Regenerate.
6389
6390 2021-04-26 Tobias Burnus <tobias (a] codesourcery.com>
6391
6392 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
6393 Use [Ww]arning in dg-bogus as FE diagnostic and default
6394 diagnostic differ and the result depends on ENABLE_OFFLOAD.
6395 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
6396 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
6397 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
6398
6399 2021-04-26 Tobias Burnus <tobias (a] codesourcery.com>
6400
6401 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
6402 Correct spelling in dg-bogus to match -Wopenacc-parallelism.
6403 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
6404 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
6405 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
6406
6407 2021-04-26 Thomas Schwinge <thomas (a] codesourcery.com>
6408 Nathan Sidwell <nathan (a] codesourcery.com>
6409 Tom de Vries <vries (a] codesourcery.com>
6410 Julian Brown <julian (a] codesourcery.com>
6411 Kwok Cheung Yeung <kcy (a] codesourcery.com>
6412
6413 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Specify
6414 '-Wopenacc-parallelism', and match diagnostics, as appropriate.
6415 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
6416 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
6417 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
6418 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
6419 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c:
6420 Likewise.
6421 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
6422 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
6423 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
6424 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
6425 Likewise.
6426 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
6427 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
6428 Likewise.
6429 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
6430 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
6431 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
6432 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
6433 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
6434 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
6435 Likewise.
6436 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
6437 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
6438 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
6439 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
6440 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
6441 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
6442 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
6443 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
6444 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
6445 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
6446 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
6447
6448 2021-04-26 Thomas Schwinge <thomas (a] codesourcery.com>
6449
6450 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Don't
6451 compile with '-w'.
6452 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
6453 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
6454 Likewise.
6455 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
6456 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: Likewise.
6457 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
6458 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
6459 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
6460 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
6461 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
6462
6463 2021-04-22 Richard Biener <rguenther (a] suse.de>
6464
6465 * testsuite/libgomp.c-c++-common/reduction-16.c: Use -latomic
6466 only on nvptx-none.
6467
6468 2021-04-21 Tobias Burnus <tobias (a] codesourcery.com>
6469
6470 * testsuite/libgomp.fortran/depobj-1.f90: Use omp_lib's
6471 omp_depend_kind instead of defining it as 16.
6472
6473 2021-04-21 Tobias Burnus <tobias (a] codesourcery.com>
6474
6475 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
6476 New, based on check_effective_target_offload_target_nvptx.
6477 (check_effective_target_offload_target_nvptx): Call it.
6478 (check_effective_target_offload_target_amdgcn): New.
6479 * testsuite/libgomp.c-c++-common/function-not-offloaded.c:
6480 Require target offload_target_nvptx || offload_target_amdgcn.
6481 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: Likewise.
6482 * testsuite/libgomp.c/pr86416-1.c: Likewise.
6483 * testsuite/libgomp.c/pr86416-2.c: Likewise.
6484
6485 2021-04-21 Tobias Burnus <tobias (a] codesourcery.com>
6486
6487 * testsuite/libgomp.fortran/depobj-1.f90: New test.
6488
6489 2021-04-19 Thomas Schwinge <thomas (a] codesourcery.com>
6490
6491 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
6492 '-fopenacc-kernels=[...]' -> '--param=openacc-kernels=[...]'.
6493 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
6494 Likewise.
6495 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
6496 Likewise.
6497 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
6498
6499 2021-04-15 Thomas Schwinge <thomas (a] codesourcery.com>
6500
6501 PR target/99555
6502 * testsuite/lib/libgomp.exp
6503 (check_effective_target_offload_device_nvptx): New.
6504 * testsuite/libgomp.c/pr99555-1.c <nvptx offload device>: Until
6505 resolved, make sure that we exit quickly, with error status,
6506 XFAILed.
6507 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise.
6508 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
6509
6510 2021-04-14 Jakub Jelinek <jakub (a] redhat.com>
6511
6512 PR testsuite/100071
6513 * testsuite/libgomp.fortran/alloc-1.F90: Call c_f_pointer after last
6514 cp = omp_alloc with cp, p arguments instead of cq, q and call
6515 c_f_pointer after last cq = omp_alloc with cq, q.
6516
6517 2021-04-11 Hafiz Abid Qadeer <abidh (a] codesourcery.com>
6518
6519 PR middle-end/98088
6520 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Add check
6521 for loop with GT/GE condition.
6522 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
6523
6524 2021-04-09 Thomas Schwinge <thomas (a] codesourcery.com>
6525
6526 PR middle-end/84991
6527 PR middle-end/84992
6528 PR middle-end/90779
6529 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: New.
6530
6531 2021-04-09 Jakub Jelinek <jakub (a] redhat.com>
6532
6533 PR libgomp/99984
6534 * team.c (gomp_thread_start): Call pthread_setspecific for
6535 !(defined HAVE_TLS || defined USE_EMUTLS) only after local_thr
6536 has been initialized to avoid false positive warning.
6537
6538 2021-03-29 Tobias Burnus <tobias (a] codesourcery.com>
6539
6540 PR target/99555
6541 * testsuite/lib/on_device_arch.c: Move to ...
6542 * testsuite/libgomp.c-c++-common/on_device_arch.h: ... here.
6543 * testsuite/libgomp.fortran/on_device_arch.c: New file;
6544 #include on_device_arch.h.
6545 * testsuite/libgomp.c-c++-common/task-detach-6.c: #include
6546 on_device_arch.h instead of using dg-additional-source.
6547 * testsuite/libgomp.c/pr99555-1.c: Likewise.
6548 * testsuite/libgomp.fortran/task-detach-6.f90: Update to use
6549 on_device_arch.c without relative paths.
6550
6551 2021-03-25 Thomas Schwinge <thomas (a] codesourcery.com>
6552
6553 * plugin/plugin-gcn.c (init_environment_variables): Don't prepend
6554 the 'HSA_RUNTIME_LIB' path to 'libhsa-runtime64.so'.
6555 * plugin/configfrag.ac (HSA_RUNTIME_LIB): Clean up.
6556 * config.h.in: Regenerate.
6557 * configure: Likewise.
6558
6559 2021-03-25 Thomas Schwinge <thomas (a] codesourcery.com>
6560
6561 PR target/99555
6562 * testsuite/lib/on_device_arch.c: New file.
6563 * testsuite/libgomp.c/pr99555-1.c: Likewise.
6564 * testsuite/libgomp.c-c++-common/task-detach-6.c: Until resolved,
6565 skip for nvptx offloading, with error status.
6566 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
6567
6568 2021-03-25 Thomas Schwinge <thomas (a] codesourcery.com>
6569
6570 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
6571 OpenACC 'serial' construct diagnostic for nvptx offloading.
6572
6573 2021-03-15 Tobias Burnus <tobias (a] codesourcery.com>
6574
6575 PR c++/99509
6576 * testsuite/libgomp.c-c++-common/declare_target-1.c: New test.
6577
6578 2021-03-12 Tobias Burnus <tobias (a] codesourcery.com>
6579
6580 PR fortran/98858
6581 * testsuite/libgomp.fortran/use_device_ptr-3.f90: New test.
6582
6583 2021-03-04 Jakub Jelinek <jakub (a] redhat.com>
6584
6585 * configure.ac: Add AC_CHECK_SIZEOF([void *]).
6586 * plugin/configfrag.ac: Check $ac_cv_sizeof_void_p value instead of
6587 checking of -m32 or -mx32 options on the command line.
6588 * config.h.in: Regenerated.
6589 * configure: Regenerated.
6590
6591 2021-02-27 Iain Sandoe <iain (a] sandoe.co.uk>
6592
6593 * testsuite/libgomp.c-c++-common/pr96390.c: Require alias
6594 support from the target.
6595
6596 2021-02-25 Kwok Cheung Yeung <kcy (a] codesourcery.com>
6597 Jakub Jelinek <jakub (a] redhat.com>
6598
6599 PR libgomp/98738
6600 * libgomp.h (enum gomp_task_kind): Add GOMP_TASK_DETACHED.
6601 (struct gomp_task): Replace detach and completion_sem fields with
6602 union containing completion_sem and detach_team. Add deferred_p
6603 field.
6604 (struct gomp_team): Remove task_detach_queue.
6605 * task.c: Include assert.h.
6606 (gomp_init_task): Initialize deferred_p and completion_sem fields.
6607 Rearrange initialization order of fields.
6608 (task_fulfilled_p): Delete.
6609 (GOMP_task): Use address of task as the event handle. Remove
6610 initialization of detach field. Initialize deferred_p field.
6611 Use automatic local for completion_sem. Initialize detach_team field
6612 for deferred tasks.
6613 (gomp_barrier_handle_tasks): Remove handling of task_detach_queue.
6614 Set kind of suspended detach task to GOMP_TASK_DETACHED and
6615 decrement task_running_count. Move finish_cancelled block out of
6616 else branch. Relocate call to gomp_team_barrier_done.
6617 (GOMP_taskwait): Handle tasks with completion events that have not
6618 been fulfilled.
6619 (GOMP_taskgroup_end): Likewise.
6620 (omp_fulfill_event): Use address of task as event handle. Post to
6621 completion_sem for undeferred tasks. Clear detach_team if task
6622 has not finished. For finished tasks, handle post-execution tasks,
6623 call gomp_team_barrier_wake if necessary, and free task.
6624 * team.c (gomp_new_team): Remove initialization of task_detach_queue.
6625 (free_team): Remove free of task_detach_queue.
6626 * testsuite/libgomp.c-c++-common/task-detach-1.c: Fix formatting.
6627 * testsuite/libgomp.c-c++-common/task-detach-2.c: Fix formatting.
6628 * testsuite/libgomp.c-c++-common/task-detach-3.c: Fix formatting.
6629 * testsuite/libgomp.c-c++-common/task-detach-4.c: Fix formatting.
6630 * testsuite/libgomp.c-c++-common/task-detach-5.c: Fix formatting.
6631 Change data-sharing of detach events on enclosing parallel to private.
6632 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise. Remove
6633 taskwait directive.
6634 * testsuite/libgomp.c-c++-common/task-detach-7.c: New.
6635 * testsuite/libgomp.c-c++-common/task-detach-8.c: New.
6636 * testsuite/libgomp.c-c++-common/task-detach-9.c: New.
6637 * testsuite/libgomp.c-c++-common/task-detach-10.c: New.
6638 * testsuite/libgomp.c-c++-common/task-detach-11.c: New.
6639 * testsuite/libgomp.fortran/task-detach-1.f90: Fix formatting.
6640 * testsuite/libgomp.fortran/task-detach-2.f90: Fix formatting.
6641 * testsuite/libgomp.fortran/task-detach-3.f90: Fix formatting.
6642 * testsuite/libgomp.fortran/task-detach-4.f90: Fix formatting.
6643 * testsuite/libgomp.fortran/task-detach-5.f90: Fix formatting.
6644 Change data-sharing of detach events on enclosing parallel to private.
6645 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise. Remove
6646 taskwait directive.
6647 * testsuite/libgomp.fortran/task-detach-7.f90: New.
6648 * testsuite/libgomp.fortran/task-detach-8.f90: New.
6649 * testsuite/libgomp.fortran/task-detach-9.f90: New.
6650 * testsuite/libgomp.fortran/task-detach-10.f90: New.
6651 * testsuite/libgomp.fortran/task-detach-11.f90: New.
6652
6653 2021-02-22 Tobias Burnus <tobias (a] codesourcery.com>
6654
6655 PR fortran/99171
6656 * testsuite/libgomp.fortran/dummy-procs-1.f90: New test.
6657
6658 2021-02-17 Julian Brown <julian (a] codesourcery.com>
6659
6660 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Remove
6661 expected errors.
6662
6663 2021-02-17 Julian Brown <julian (a] codesourcery.com>
6664
6665 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: New test.
6666 * testsuite/libgomp.oacc-fortran/update-dt-array.f90: Likewise.
6667
6668 2021-02-11 Uro Bizjak <ubizjak (a] gmail.com>
6669
6670 * config/linux/x86/futex.h (__futex_wait):
6671 Revert output type back to long.
6672 (__futex_wake): Ditto.
6673 (futex_wait): Update for revert.
6674 (futex_wake): Ditto.
6675
6676 2021-02-11 Uro Bizjak <ubizjak (a] gmail.com>
6677
6678 * config/linux/x86/futex.h (__futex_wait): New static inline
6679 wrapper function. Correct output type to int and
6680 timeout type to void *.
6681 (__futex_wake): New static inline wrapper function.
6682 Correct output type to int.
6683 (futex_wait): Use __futex_wait.
6684 (futex_wake): Use __futex_wake.
6685
6686 2021-02-10 Julian Brown <julian (a] codesourcery.com>
6687
6688 PR fortran/98979
6689 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Add expected
6690 errors.
6691
6692 2021-02-04 Julian Brown <julian (a] codesourcery.com>
6693
6694 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: New test.
6695
6696 2021-02-03 Andrew Stubbs <ams (a] codesourcery.com>
6697
6698 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
6699 EF_AMDGPU_MACH_AMDGCN_GFX908.
6700 (gcn_gfx908_s): New constant string.
6701 (isa_hsa_name): Add gfx908.
6702 (isa_code): Add gfx908.
6703
6704 2021-01-25 Kwok Cheung Yeung <kcy (a] codesourcery.com>
6705
6706 * libgomp.texi (omp_fulfill_event): New entry.
6707
6708 2021-01-20 Jakub Jelinek <jakub (a] redhat.com>
6709
6710 * task.c (GOMP_task): Rename priority argument to priority_arg,
6711 add priority automatic variable and modify that variable. Instead of
6712 clearing detach argument when GOMP_TASK_FLAG_DETACH bit is not set,
6713 check flags for that bit.
6714
6715 2021-01-19 Tobias Burnus <tobias (a] codesourcery.com>
6716
6717 PR fortran/98476
6718 * testsuite/libgomp.fortran/is_device_ptr-1.f90: New test.
6719
6720 2021-01-18 Andreas Schwab <schwab (a] suse.de>
6721
6722 * configure.tgt (riscv64*-*-linux*): Add linux to config_path.
6723
6724 2021-01-18 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
6725
6726 * config/rtems/sem.h (gomp_sem_getcount): New function.
6727
6728 2021-01-18 Jakub Jelinek <jakub (a] redhat.com>
6729
6730 * config/linux/sem.h (gomp_sem_getcount): New function.
6731 * config/posix/sem.h (gomp_sem_getcount): New function.
6732 * config/posix/sem.c (gomp_sem_getcount): New function.
6733 * config/accel/sem.h (gomp_sem_getcount): New function.
6734 * task.c (task_fulfilled_p): Use gomp_sem_getcount.
6735 (omp_fulfill_event): Likewise.
6736
6737 2021-01-16 Kwok Cheung Yeung <kcy (a] codesourcery.com>
6738
6739 * fortran.c (omp_fulfill_event_): New.
6740 * libgomp.h (struct gomp_task): Add detach and completion_sem fields.
6741 (struct gomp_team): Add task_detach_queue and task_detach_count
6742 fields.
6743 * libgomp.map (OMP_5.0.1): Add omp_fulfill_event and omp_fulfill_event_.
6744 * libgomp_g.h (GOMP_task): Add extra argument.
6745 * omp.h.in (enum omp_event_handle_t): New.
6746 (omp_fulfill_event): New.
6747 * omp_lib.f90.in (omp_event_handle_kind): New.
6748 (omp_fulfill_event): New.
6749 * omp_lib.h.in (omp_event_handle_kind): New.
6750 (omp_fulfill_event): Declare.
6751 * priority_queue.c (priority_tree_find): New.
6752 (priority_list_find): New.
6753 (priority_queue_find): New.
6754 * priority_queue.h (priority_queue_predicate): New.
6755 (priority_queue_find): New.
6756 * task.c (gomp_init_task): Initialize detach field.
6757 (task_fulfilled_p): New.
6758 (GOMP_task): Add detach argument. Ignore detach argument if
6759 GOMP_TASK_FLAG_DETACH not set in flags. Initialize completion_sem
6760 field. Copy address of completion_sem into detach argument and
6761 into the start of the data record. Wait for detach event if task
6762 not deferred.
6763 (gomp_barrier_handle_tasks): Queue tasks with unfulfilled events.
6764 Remove completed tasks and requeue dependent tasks.
6765 (omp_fulfill_event): New.
6766 * team.c (gomp_new_team): Initialize task_detach_queue and
6767 task_detach_count fields.
6768 (free_team): Free task_detach_queue field.
6769 * testsuite/libgomp.c-c++-common/task-detach-1.c: New testcase.
6770 * testsuite/libgomp.c-c++-common/task-detach-2.c: New testcase.
6771 * testsuite/libgomp.c-c++-common/task-detach-3.c: New testcase.
6772 * testsuite/libgomp.c-c++-common/task-detach-4.c: New testcase.
6773 * testsuite/libgomp.c-c++-common/task-detach-5.c: New testcase.
6774 * testsuite/libgomp.c-c++-common/task-detach-6.c: New testcase.
6775 * testsuite/libgomp.fortran/task-detach-1.f90: New testcase.
6776 * testsuite/libgomp.fortran/task-detach-2.f90: New testcase.
6777 * testsuite/libgomp.fortran/task-detach-3.f90: New testcase.
6778 * testsuite/libgomp.fortran/task-detach-4.f90: New testcase.
6779 * testsuite/libgomp.fortran/task-detach-5.f90: New testcase.
6780 * testsuite/libgomp.fortran/task-detach-6.f90: New testcase.
6781
6782 2021-01-15 Jakub Jelinek <jakub (a] redhat.com>
6783
6784 PR target/70454
6785 * configure.tgt: For i?86 and x86_64 determine if -march=i486 needs to
6786 be added through preprocessor check on
6787 __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4.
6788
6789 2021-01-14 Thomas Schwinge <thomas (a] codesourcery.com>
6790
6791 PR libgomp/65099
6792 * plugin/configfrag.ac (PLUGIN_NVPTX): Restrict to supported
6793 configurations.
6794 * configure: Regenerate.
6795 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Remove 64-bit
6796 check.
6797
6798 2021-01-05 Samuel Thibault <samuel.thibault (a] ens-lyon.org>
6799
6800 * configure: Re-generate.
6801
6802 2021-01-05 Samuel Thibault <samuel.thibault (a] ens-lyon.org>
6803
6804 * configure: Re-generate.
6805
6806 2021-01-05 Julian Brown <julian (a] codesourcery.com>
6807
6808 * plugin/plugin-nvptx.c (SOFTSTACK_CACHE_LIMIT): New define.
6809 (struct ptx_device): Add omp_stacks struct.
6810 (nvptx_open_device): Initialise cached-stacks housekeeping info.
6811 (nvptx_close_device): Free cached stacks block and mutex.
6812 (nvptx_stacks_free): New function.
6813 (nvptx_alloc): Add SUPPRESS_ERRORS parameter.
6814 (GOMP_OFFLOAD_alloc): Add strategies for freeing soft-stacks block.
6815 (nvptx_stacks_alloc): Rename to...
6816 (nvptx_stacks_acquire): This. Cache stacks block between runs if same
6817 size or smaller is required.
6818 (nvptx_stacks_free): Remove.
6819 (GOMP_OFFLOAD_run): Call nvptx_stacks_acquire and lock stacks block
6820 during kernel execution.
6821
6822 2021-01-01 Jakub Jelinek <jakub (a] redhat.com>
6823
6824 * libgomp.texi: Bump @copying's copyright year.
6825
6826 2020-12-28 Gerald Pfeifer <gerald (a] pfeifer.com>
6827
6828 * libgomp.texi (Top): Avoid bad "up" link.
6829
6830 2020-12-18 Jakub Jelinek <jakub (a] redhat.com>
6831
6832 * testsuite/libgomp.c/task-6.c: New test.
6833
6834 2020-12-09 Andrew Stubbs <ams (a] codesourcery.com>
6835
6836 * plugin/plugin-gcn.c: Include hsa_ext_amd.h.
6837 (HSA_AMD_AGENT_INFO_COMPUTE_UNIT_COUNT): Delete redundant definition.
6838
6839 2020-12-08 Tobias Burnus <tobias (a] codesourcery.com>
6840
6841 * testsuite/libgomp.fortran/scan-1.f90: New test.
6842
6843 2020-12-05 Iain Sandoe <iain (a] sandoe.co.uk>
6844
6845 PR target/97865
6846 * configure: Regenerate.
6847
6848 2020-11-29 John David Anglin <danglin (a] gcc.gnu.org>
6849
6850 * configure: Regenerate.
6851
6852 2020-11-25 Thomas Schwinge <thomas (a] codesourcery.com>
6853
6854 * testsuite/libgomp.oacc-c++/cache-1.C: New.
6855 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Update.
6856
6857 2020-11-25 Andrew Stubbs <ams (a] codesourcery.com>
6858
6859 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Adjust
6860 expected results.
6861
6862 2020-11-24 Andrew Stubbs <ams (a] codesourcery.com>
6863
6864 * plugin/plugin-gcn.c: Don't redefine relocations if elf.h has them.
6865 (reserved): Delete unused define.
6866
6867 2020-11-24 Thomas Schwinge <thomas (a] codesourcery.com>
6868
6869 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Avoid
6870 Tcl 8.5-specific behavior.
6871 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
6872
6873 2020-11-18 Kwok Cheung Yeung <kcy (a] codesourcery.com>
6874
6875 * env.c (gomp_global_icv): Remove nest_var field. Add
6876 max_active_levels_var field.
6877 (gomp_max_active_levels_var): Remove.
6878 (parse_boolean): Return true on success.
6879 (handle_omp_display_env): Express OMP_NESTED in terms of
6880 max_active_levels_var. Change format specifier for
6881 max_active_levels_var.
6882 (initialize_env): Set max_active_levels_var from
6883 OMP_MAX_ACTIVE_LEVELS, OMP_NESTED, OMP_NUM_THREADS and
6884 OMP_PROC_BIND.
6885 * icv.c (omp_set_nested): Express in terms of
6886 max_active_levels_var.
6887 (omp_get_nested): Likewise.
6888 (omp_set_max_active_levels): Use max_active_levels_var field instead
6889 of gomp_max_active_levels_var.
6890 (omp_get_max_active_levels): Likewise.
6891 * libgomp.h (struct gomp_task_icv): Remove nest_var field. Add
6892 max_active_levels_var field.
6893 (gomp_supported_active_levels): Set to UCHAR_MAX.
6894 (gomp_max_active_levels_var): Delete.
6895 * libgomp.texi (omp_get_nested): Update documentation.
6896 (omp_set_nested): Likewise.
6897 (OMP_MAX_ACTIVE_LEVELS): Likewise.
6898 (OMP_NESTED): Likewise.
6899 (OMP_NUM_THREADS): Likewise.
6900 (OMP_PROC_BIND): Likewise.
6901 * parallel.c (gomp_resolve_num_threads): Replace reference
6902 to nest_var with max_active_levels_var. Use max_active_levels_var
6903 field instead of gomp_max_active_levels_var.
6904
6905 2020-11-18 Tobias Burnus <tobias (a] codesourcery.com>
6906
6907 * testsuite/libgomp.c/usleep.h (fallback_usleep): Renamed from
6908 nvptx_usleep; use also for device={arch(gcn)}.
6909
6910 2020-11-14 Jakub Jelinek <jakub (a] redhat.com>
6911
6912 * testsuite/libgomp.c-c++-common/allocate-1.c (struct S): New type.
6913 (foo): Add tests for non-VLA private and firstprivate clauses on
6914 omp task.
6915 (bar): Likewise. Remove taking of address from private/firstprivate
6916 variables.
6917 * testsuite/libgomp.c++/allocate-1.C (struct S): New type.
6918 (foo): Add p, q, px and s arguments. Add tests for array reductions
6919 and for non-VLA private and firstprivate clauses on omp task.
6920 (bar): Removed.
6921 (main): Adjust foo caller. Don't call bar.
6922
6923 2020-11-13 Gerg Barany <gergo (a] codesourcery.com>
6924 Thomas Schwinge <thomas (a] codesourcery.com>
6925
6926 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
6927 New.
6928 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
6929 Likewise.
6930 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
6931 Likewise.
6932 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
6933 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
6934
6935 2020-11-13 Gerg Barany <gergo (a] codesourcery.com>
6936 Thomas Schwinge <thomas (a] codesourcery.com>
6937
6938 PR fortran/94358
6939 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: New.
6940
6941 2020-11-13 Jakub Jelinek <jakub (a] redhat.com>
6942
6943 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add tests
6944 for array reductions.
6945 (main): Adjust foo callers.
6946
6947 2020-11-12 Jakub Jelinek <jakub (a] redhat.com>
6948
6949 * libgomp.map (GOMP_alloc, GOMP_free): Export at GOMP_5.0.1.
6950 * omp.h.in (omp_alloc): Add malloc and alloc_size attributes.
6951 * libgomp_g.h (GOMP_alloc, GOMP_free): Declare.
6952 * allocator.c (omp_aligned_alloc): New for now static function,
6953 add alignment argument and handle it.
6954 (omp_alloc): Reimplement using omp_aligned_alloc.
6955 (GOMP_alloc, GOMP_free): New functions.
6956 (omp_free): Add ialias.
6957 * testsuite/libgomp.c-c++-common/allocate-1.c: New test.
6958 * testsuite/libgomp.c++/allocate-1.C: New test.
6959
6960 2020-11-12 Thomas Schwinge <thomas (a] codesourcery.com>
6961
6962 PR fortran/97782
6963 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Adjust.
6964
6965 2020-11-10 Chung-Lin Tang <cltang (a] codesourcery.com>
6966
6967 * libgomp.h (enum gomp_map_vars_kind): Adjust enum values to be bit-flag
6968 usable.
6969 * oacc-mem.c (acc_map_data): Adjust gomp_map_vars argument flags to
6970 'GOMP_MAP_VARS_OPENACC | GOMP_MAP_VARS_ENTER_DATA'.
6971 (goacc_enter_datum): Likewise for call to gomp_map_vars_async.
6972 (goacc_enter_data_internal): Likewise.
6973 * target.c (gomp_map_vars_internal):
6974 Change checks of GOMP_MAP_VARS_ENTER_DATA to use bit-and (&). Adjust use
6975 of gomp_attach_pointer for OpenMP cases.
6976 (gomp_exit_data): Add handling of GOMP_MAP_DETACH.
6977 (GOMP_target_enter_exit_data): Add handling of GOMP_MAP_ATTACH.
6978 * testsuite/libgomp.c-c++-common/ptr-attach-1.c: New testcase.
6979
6980 2020-11-05 Ulrich Drepper <drepper (a] redhat.com>
6981 Kwok Cheung Yeung <kcy (a] codesourcery.com>
6982
6983 * Makefile.am (%.mod): Add -cpp and -fopenmp to compile flags.
6984 * Makefile.in: Regenerate.
6985 * fortran.c: Wrap uses of omp_set_nested and omp_get_nested with
6986 pragmas to ignore -Wdeprecated-declarations warnings.
6987 * icv.c: Likewise.
6988 * omp.h.in (__GOMP_DEPRECATED_5_0): Define.
6989 Mark omp_lock_hint_* enum values, omp_lock_hint_t, omp_set_nested,
6990 and omp_get_nested with __GOMP_DEPRECATED_5_0.
6991 * omp_lib.f90.in: Mark omp_get_nested and omp_set_nested as
6992 deprecated.
6993 * testsuite/libgomp.c++/affinity-1.C: Add -Wno-deprecated-declarations
6994 to test options.
6995 * testsuite/libgomp.c/affinity-1.c: Likewise.
6996 * testsuite/libgomp.c/affinity-2.c: Likewise.
6997 * testsuite/libgomp.c/appendix-a/a.15.1.c: Likewise.
6998 * testsuite/libgomp.c/lib-1.c: Likewise.
6999 * testsuite/libgomp.c/nested-1.c: Likewise.
7000 * testsuite/libgomp.c/nested-2.c: Likewise.
7001 * testsuite/libgomp.c/nested-3.c: Likewise.
7002 * testsuite/libgomp.c/pr32362-1.c: Likewise.
7003 * testsuite/libgomp.c/pr32362-2.c: Likewise.
7004 * testsuite/libgomp.c/pr32362-3.c: Likewise.
7005 * testsuite/libgomp.c/pr35549.c: Likewise.
7006 * testsuite/libgomp.c/pr42942.c: Likewise.
7007 * testsuite/libgomp.c/pr61200.c: Likewise.
7008 * testsuite/libgomp.c/sort-1.c: Likewise.
7009 * testsuite/libgomp.c/target-5.c: Likewise.
7010 * testsuite/libgomp.c/target-6.c: Likewise.
7011 * testsuite/libgomp.c/teams-1.c: Likewise.
7012 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
7013 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
7014 * testsuite/libgomp.c/thread-limit-4.c: Likewise.
7015 * testsuite/libgomp.fortran/affinity1.f90: Likewise.
7016 * testsuite/libgomp.fortran/lib1.f90: Likewise.
7017 * testsuite/libgomp.fortran/lib2.f: Likewise.
7018 * testsuite/libgomp.fortran/nested1.f90: Likewise.
7019 * testsuite/libgomp.fortran/teams1.f90: Likewise.
7020
7021 2020-11-02 Thomas Schwinge <thomas (a] codesourcery.com>
7022
7023 PR target/85486
7024 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: Simplify and enhance.
7025 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
7026 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
7027
7028 2020-11-02 Thomas Schwinge <thomas (a] codesourcery.com>
7029
7030 PR testsuite/80219
7031 PR testsuite/85303
7032 * testsuite/lib/libgomp.exp (libgomp_init): Set
7033 'gcc_warning_prefix', 'gcc_error_prefix'.
7034
7035 2020-10-30 Jakub Jelinek <jakub (a] redhat.com>
7036
7037 * target.c (gomp_map_vars_internal): Use FIELD_TGT_EMPTY macro
7038 even in field_tgt_clear initializer.
7039
7040 2020-10-28 Jakub Jelinek <jakub (a] redhat.com>
7041
7042 * testsuite/libgomp.c/target-42.c: New test.
7043
7044 2020-10-28 Jakub Jelinek <jakub (a] redhat.com>
7045 Tom de Vries <tdevries (a] suse.de>
7046
7047 PR testsuite/81690
7048 * testsuite/libgomp.c/usleep.h: New file.
7049 * testsuite/libgomp.c/target-32.c: Include usleep.h.
7050 (main): Use tgt_usleep instead of usleep.
7051 * testsuite/libgomp.c/thread-limit-2.c: Include usleep.h.
7052 (main): Use tgt_usleep instead of usleep.
7053
7054 2020-10-28 Jakub Jelinek <jakub (a] redhat.com>
7055
7056 PR lto/96680
7057 * testsuite/libgomp.c/declare-variant-1.c: New test.
7058
7059 2020-10-22 Jakub Jelinek <jakub (a] redhat.com>
7060
7061 * testsuite/libgomp.c/target-41.c: New test.
7062
7063 2020-10-22 Jakub Jelinek <jakub (a] redhat.com>
7064
7065 * icv.c (omp_get_initial_device): Remove including corresponding
7066 ialias.
7067 * icv-device.c (omp_get_initial_device): New function. Return
7068 gomp_get_num_devices (). Add ialias.
7069 * target.c (resolve_device): Don't fail with
7070 OMP_TARGET_OFFLOAD=mandatory if device_id is equal to
7071 gomp_get_num_devices ().
7072 (omp_target_alloc, omp_target_free, omp_target_is_present,
7073 omp_target_memcpy, omp_target_memcpy_rect, omp_target_associate_ptr,
7074 omp_target_disassociate_ptr, omp_pause_resource): Use
7075 gomp_get_num_devices () instead of GOMP_DEVICE_HOST_FALLBACK on the
7076 first use in the functions, in uses dominated by the
7077 gomp_get_num_devices call use num_devices_openmp instead.
7078 * libgomp.texi (omp_get_initial_device): Document.
7079 * config/gcn/icv-device.c (omp_get_initial_device): New function.
7080 Add ialias.
7081 * config/nvptx/icv-device.c (omp_get_initial_device): Likewise.
7082 * testsuite/libgomp.c/target-40.c: New test.
7083
7084 2020-10-21 Jakub Jelinek <jakub (a] redhat.com>
7085
7086 * env.c (parse_target_offload): Change new_offload var type to int,
7087 preinitialize to -1, remove found var and test new_offload != -1
7088 instead of found.
7089
7090 2020-10-20 Jakub Jelinek <jakub (a] redhat.com>
7091
7092 * target.c (gomp_target_init): Inside of the function, use automatic
7093 variables corresponding to num_devices, num_devices_openmp and devices
7094 global variables and update the globals only at the end of the
7095 function.
7096
7097 2020-10-20 Kwok Cheung Yeung <kcy (a] codesourcery.com>
7098
7099 * env.c (gomp_target_offload_var): New.
7100 (parse_target_offload): New.
7101 (handle_omp_display_env): Print value of OMP_TARGET_OFFLOAD.
7102 (initialize_env): Parse OMP_TARGET_OFFLOAD.
7103 * libgomp.h (gomp_target_offload_t): New.
7104 (gomp_target_offload_var): New.
7105 * libgomp.texi (OMP_TARGET_OFFLOAD): New section.
7106 * target.c (resolve_device): Generate error if device not found and
7107 offloading is mandatory.
7108 (gomp_target_fallback): Generate error if offloading is mandatory.
7109 (GOMP_target): Add argument in call to gomp_target_fallback.
7110 (GOMP_target_ext): Likewise.
7111 (gomp_target_data_fallback): Generate error if offloading is mandatory.
7112 (GOMP_target_data): Add argument in call to gomp_target_data_fallback.
7113 (GOMP_target_data_ext): Likewise.
7114 (gomp_target_task_fn): Add argument in call to gomp_target_fallback.
7115 (gomp_target_init): Return early if offloading is disabled.
7116
7117 2020-10-15 Kwok Cheung Yeung <kcy (a] codesourcery.com>
7118
7119 * libgomp.texi (omp_get_max_active_levels): Modify description.
7120 (omp_get_supported_active_levels): Make descriptions consistent.
7121
7122 2020-10-14 Jakub Jelinek <jakub (a] redhat.com>
7123
7124 * libgomp.texi (omp_get_supported_active_levels): Fix a typo.
7125
7126 2020-10-13 Kwok Cheung Yeung <kcy (a] codesourcery.com>
7127
7128 * env.c (gomp_max_active_levels_var): Initialize to
7129 gomp_supported_active_levels.
7130 (initialize_env): Limit gomp_max_active_levels_var to be at most
7131 equal to gomp_supported_active_levels.
7132 * fortran.c (omp_get_supported_active_levels): Add ialias_redirect.
7133 (omp_get_supported_active_levels_): New.
7134 * icv.c (omp_set_max_active_levels): Limit gomp_max_active_levels_var
7135 to at most equal to gomp_supported_active_levels.
7136 (omp_get_supported_active_levels): New.
7137 * libgomp.h (gomp_supported_active_levels): New.
7138 * libgomp.map (OMP_5.0.1): Add omp_get_supported_active_levels and
7139 omp_get_supported_active_levels_.
7140 * libgomp.texi (omp_get_supported_active_levels): New.
7141 (omp_set_max_active_levels): Update. Add reference to
7142 omp_get_supported_active_levels.
7143 * omp.h.in (omp_get_supported_active_levels): New.
7144 * omp_lib.f90.in (omp_get_supported_active_levels): New.
7145 * omp_lib.h.in (omp_get_supported_active_levels): New.
7146 * testsuite/libgomp.c/lib-2.c (main): Check omp_get_max_active_levels
7147 against omp_get_supported_active_levels.
7148 * testsuite/libgomp.fortran/lib4.f90 (lib4): Likewise.
7149
7150 2020-10-11 Clement Chigot <clement.chigot (a] atos.net>
7151
7152 * config/t-aix: Delete and recreate libgomp before creating
7153 FAT library.
7154
7155 2020-10-08 Tom de Vries <tdevries (a] suse.de>
7156
7157 PR libgomp/81802
7158 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_run): Report launch
7159 dimensions.
7160
7161 2020-10-06 Tom de Vries <tdevries (a] suse.de>
7162
7163 * testsuite/libgomp.oacc-fortran/declare-5.f90: Add xfail for PR92790.
7164
7165 2020-10-06 Tom de Vries <tdevries (a] suse.de>
7166
7167 PR middle-end/90861
7168 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Remove xfail.
7169
7170 2020-10-05 Tom de Vries <tdevries (a] suse.de>
7171
7172 PR fortran/95654
7173 * testsuite/libgomp.fortran/pr95654.f90: New test.
7174
7175 2020-10-02 Tobias Burnus <tobias (a] codesourcery.com>
7176
7177 * Makefile.in: Regenerate with automake 1.15.1.
7178 * aclocal.m4: Likewise.
7179 * configure: Likewise.
7180 * testsuite/Makefile.in: Likewise.
7181
7182 2020-09-30 Andrew Stubbs <ams (a] codesourcery.com>
7183
7184 * parallel.c (gomp_resolve_num_threads): Ignore nest_var on nvptx
7185 and amdgcn targets.
7186
7187 2020-09-30 Tobias Burnus <tobias (a] codesourcery.com>
7188
7189 * testsuite/libgomp.fortran/declare-target-3.f90: New test.
7190
7191 2020-09-29 Andrew Stubbs <ams (a] codesourcery.com>
7192
7193 * config/gcn/bar.c (gomp_barrier_wait_end): Skip the barrier if the
7194 total number of threads is one.
7195 (gomp_team_barrier_wake): Likewise.
7196 (gomp_team_barrier_wait_end): Likewise.
7197 (gomp_team_barrier_wait_cancel_end): Likewise.
7198 * config/nvptx/bar.c (gomp_barrier_wait_end): Likewise.
7199 (gomp_team_barrier_wake): Likewise.
7200 (gomp_team_barrier_wait_end): Likewise.
7201 (gomp_team_barrier_wait_cancel_end): Likewise.
7202 * testsuite/libgomp.c-c++-common/nested-parallel-unbalanced.c: New test.
7203
7204 2020-09-28 Tobias Burnus <tobias (a] codesourcery.com>
7205
7206 PR middle-end/96390
7207 * testsuite/libgomp.c++/pr96390.C: New test.
7208 * testsuite/libgomp.c-c++-common/pr96390.c: New test.
7209
7210 2020-09-27 Clement Chigot <clement.chigot (a] atos.net>
7211
7212 * config/t-aix: Use $(AR) without -X32_64.
7213
7214 2020-09-25 Jakub Jelinek <jakub (a] redhat.com>
7215
7216 * testsuite/libgomp.c/loop-25.c: New test.
7217
7218 2020-09-22 Tobias Burnus <tobias (a] codesourcery.com>
7219
7220 PR fortran/95654
7221 * testsuite/libgomp.fortran/pr66199-5.f90: Make stop codes unique.
7222
7223 2020-09-22 Tom de Vries <tdevries (a] suse.de>
7224
7225 * plugin/plugin-nvptx.c (link_ptx): Print elog if cuLinkComplete call
7226 fails.
7227
7228 2020-09-16 Nathan Sidwell <nathan (a] acm.org>
7229
7230 * testsuite/libgomp.c++/udr-3.C: Add missing ctor.
7231
7232 2020-09-15 Tobias Burnus <tobias (a] codesourcery.com>
7233
7234 PR fortran/96668
7235 * target.c (gomp_map_vars_internal): Initialize has_nullptr.
7236
7237 2020-09-15 Tobias Burnus <tobias (a] codesourcery.com>
7238
7239 PR fortran/96668
7240 * libgomp.h (struct target_var_desc): Add has_null_ptr_assoc member.
7241 * target.c (gomp_map_vars_existing): Add always_to_flag flag.
7242 (gomp_map_vars_existing): Update call to it.
7243 (gomp_map_fields_existing): Likewise
7244 (gomp_map_vars_internal): Update PSET handling such that if a nullptr is
7245 now allocated or if GOMP_MAP_POINTER is used PSET is updated and pointer
7246 remapped.
7247 (GOMP_target_enter_exit_data): Hanlde GOMP_MAP_ALWAYS_POINTER like
7248 GOMP_MAP_POINTER.
7249 * testsuite/libgomp.fortran/map-alloc-ptr-1.f90: New test.
7250 * testsuite/libgomp.fortran/map-alloc-ptr-2.f90: New test.
7251
7252 2020-09-14 Tom de Vries <tdevries (a] suse.de>
7253
7254 * config/nvptx/atomic.c: New file. Add
7255 __sync_val_compare_and_swap_16.
7256 * testsuite/libgomp.c-c++-common/reduction-16.c: Add -latomic for
7257 target offload_target_nvptx.
7258
7259 2020-09-08 Julian Brown <julian (a] codesourcery.com>
7260
7261 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c: Remove
7262 iteration-ordering assumptions.
7263
7264 2020-09-08 Julian Brown <julian (a] codesourcery.com>
7265
7266 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Fix race condition.
7267 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
7268
7269 2020-08-20 Chung-Lin Tang <cltang (a] codesourcery.com>
7270
7271 * plugin/plugin-nvptx.c (nvptx_free):
7272 Change "GOMP_PLUGIN_acc_thread () == NULL" test into check of
7273 CUDA_ERROR_NOT_PERMITTED status for cuMemGetAddressRange. Adjust
7274 comments.
7275
7276 2020-08-20 Tobias Burnus <tobias (a] codesourcery.com>
7277
7278 * testsuite/libgomp.fortran/lastprivate-conditional-10.f90: New test.
7279
7280 2020-08-13 Kwok Cheung Yeung <kcy (a] codesourcery.com>
7281
7282 * testsuite/libgomp.c-c++-common/reduction-16.c: New.
7283
7284 2020-08-13 Jakub Jelinek <jakub (a] redhat.com>
7285
7286 * testsuite/libgomp.c/loop-22.c (main): Add some further tests.
7287 * testsuite/libgomp.c/loop-23.c (main): Likewise.
7288 * testsuite/libgomp.c/loop-24.c: New test.
7289
7290 2020-08-08 Jakub Jelinek <jakub (a] redhat.com>
7291 Tobias Burnus <tobias (a] codesourcery.com>
7292
7293 PR fortran/93553
7294 * testsuite/libgomp.fortran/pr93553.f90: New test.
7295
7296 2020-08-05 Jakub Jelinek <jakub (a] redhat.com>
7297
7298 * testsuite/libgomp.c/loop-22.c: New test.
7299 * testsuite/libgomp.c/loop-23.c: New test.
7300
7301 2020-08-05 Jakub Jelinek <jakub (a] redhat.com>
7302
7303 PR middle-end/96459
7304 * testsuite/libgomp.c/teams-3.c: New test.
7305 * testsuite/libgomp.c-c++-common/for-2.h (OMPTEAMS): Define to nothing
7306 if not defined yet.
7307 (N(test)): Use it before all N(f*) calls.
7308 * testsuite/libgomp.c-c++-common/for-14.c (DO_PRAGMA, OMPTEAMS): Define.
7309 (main): Don't call all test_* functions from within
7310 #pragma omp teams reduction(|:err), call them directly.
7311
7312 2020-08-04 Tom de Vries <tdevries (a] suse.de>
7313
7314 PR target/96428
7315 * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: New test.
7316 * testsuite/libgomp.oacc-fortran/pr96628-part2.f90: New test.
7317
7318 2020-08-03 Julian Brown <julian (a] codesourcery.com>
7319 Thomas Schwinge <thomas (a] codesourcery.com>
7320
7321 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Don't run for
7322 shared-memory devices. Extend with further checking.
7323
7324 2020-08-03 Martin Jambor <mjambor (a] suse.cz>
7325
7326 * plugin/Makefrag.am: Remove configuration of HSA plugin.
7327 * aclocal.m4: Regenerated.
7328 * Makefile.in: Regenerated.
7329 * config.h.in: Regenerated.
7330 * configure: Regenerated.
7331 * plugin/configfrag.ac: Likewise.
7332 * plugin/hsa_ext_finalize.h: Removed.
7333 * plugin/plugin-hsa.c: Likewise.
7334 * testsuite/Makefile.in: Regenerated.
7335 * testsuite/lib/libgomp.exp
7336 (offload_target_to_openacc_device_type): Remove hsa case.
7337 (check_effective_target_hsa_offloading_selected_nocache): Removed
7338 (check_effective_target_hsa_offloading_selected): Likewise.
7339 (libgomp_init): Do not add -Wno-hsa to additional_flags.
7340 * testsuite/libgomp.hsa.c/alloca-1.c: Removed test.
7341 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
7342 * testsuite/libgomp.hsa.c/bits-insns.c: Likewise.
7343 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
7344 * testsuite/libgomp.hsa.c/c.exp: Likewise.
7345 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
7346 * testsuite/libgomp.hsa.c/complex-align-2.c: Likewise.
7347 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
7348 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
7349 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
7350 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
7351 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
7352 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
7353 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
7354 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
7355 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
7356 * testsuite/libgomp.hsa.c/pr82416.c: Likewise.
7357 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
7358 * testsuite/libgomp.hsa.c/staticvar.c: Likewise.
7359 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
7360 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
7361 * testsuite/libgomp.hsa.c/switch-sbr-2.c: Likewise.
7362 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
7363 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
7364
7365 2020-07-27 Julian Brown <julian (a] codesourcery.com>
7366 Thomas Schwinge <thomas (a] codesourcery.com>
7367
7368 * libgomp.h (struct target_var_desc): Rename do_detach field to
7369 is_attach.
7370 * oacc-mem.c (goacc_exit_datum_1): Add assert. Don't set finalize for
7371 GOMP_MAP_FORCE_DETACH. Update checking to use is_attach field.
7372 (goacc_enter_data_internal): Don't affect reference counts
7373 for attach mappings.
7374 (goacc_exit_data_internal): Don't affect reference counts for detach
7375 mappings.
7376 * target.c (gomp_map_vars_existing): Don't affect reference counts for
7377 attach mappings.
7378 (gomp_map_vars_internal): Set renamed is_attach flag unconditionally to
7379 mark attach mappings.
7380 (gomp_unmap_vars_internal): Use is_attach flag to prevent affecting
7381 reference count for attach mappings.
7382 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-1.c: New test.
7383 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
7384 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
7385 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Mark
7386 test as shouldfail.
7387 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust to fail
7388 gracefully in no-finalize mode.
7389 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-3.c: New file.
7390
7391 2020-07-24 Thomas Schwinge <thomas (a] codesourcery.com>
7392
7393 * testsuite/libgomp.oacc-c++/c++.exp: Unset 'offload_target' after
7394 use.
7395 * testsuite/libgomp.oacc-c/c.exp: Likewise.
7396 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
7397
7398 2020-07-23 Julian Brown <julian (a] codesourcery.com>
7399 Thomas Schwinge <thomas (a] codesourcery.com>
7400
7401 * target.c (gomp_unmap_vars_internal): Remove unnecessary forcing of
7402 finalization for detach operation.
7403 * testsuite/libgomp.oacc-c-c++-common/structured-detach-underflow.c:
7404 New test.
7405
7406 2020-07-23 Tobias Burnus <tobias (a] codesourcery.com>
7407
7408 * configure.ac: Add OMP_DEPEND_KIND and OMP_INT128_SIZE.
7409 * libgomp_f.h.in (omp_check_defines): Check whether
7410 sizeof of determined Fortran kind and C typedef match.
7411 * omp_lib.f90.in: Add omp_depened_kind.
7412 * omp_lib.h.in: Likewise; fix omp_alloctrait_key_kind.
7413 * configure: Regenerate.
7414 * Makefile.in: Regenerate.
7415 * testsuite/Makefile.in: Regenerate.
7416
7417 2020-07-22 Tobias Burnus <tobias (a] codesourcery.com>
7418
7419 * testsuite/libgomp.c-c++-common/critical-hint-1.c: New; moved from
7420 gcc/testsuite/c-c++-common/gomp/.
7421 * testsuite/libgomp.c-c++-common/critical-hint-2.c: Likewise.
7422 * testsuite/libgomp.fortran/critical-hint-1.f90: New; moved
7423 from gcc/testsuite/gfortran.dg/gomp/.
7424 * testsuite/libgomp.fortran/critical-hint-2.f90: Likewise.
7425
7426 2020-07-22 Tobias Burnus <tobias (a] codesourcery.com>
7427
7428 * omp_lib.f90.in: Add omp_sync_hint_* and omp_sync_hint_kind.
7429 * omp_lib.h.in: Likewise.
7430
7431 2020-07-18 H.J. Lu <hjl.tools (a] gmail.com>
7432
7433 PR target/95620
7434 * testsuite/libgomp.c/pr95620.c: New test.
7435
7436 2020-07-16 Julian Brown <julian (a] codesourcery.com>
7437 Thomas Schwinge <thomas (a] codesourcery.com>
7438
7439 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: New test.
7440 * testsuite/libgomp.oacc-fortran/attach-descriptor-2.f90: New test.
7441
7442 2020-07-15 Tobias Burnus <tobias (a] codesourcery.com>
7443
7444 * testsuite/libgomp.fortran/alloc-1.F90: Use c_size_t to
7445 avoid conversion on 32bit systems from 32bit to 64bit due
7446 to -fdefault-integer-8.
7447
7448 2020-07-15 Tobias Burnus <tobias (a] codesourcery.com>
7449
7450 * testsuite/libgomp.fortran/struct-elem-map-1.f90: Remove unused
7451 variables; add character(kind=4) tests; update TODO comment.
7452
7453 2020-07-15 Tobias Burnus <tobias (a] codesourcery.com>
7454
7455 * allocator.c: Add ialias for omp_init_allocator and
7456 omp_destroy_allocator.
7457 * configure.ac: Set INTPTR_T_KIND.
7458 * configure: Regenerate.
7459 * Makefile.in: Regenerate.
7460 * testsuite/Makefile.in: Regenerate.
7461 * fortran.c (omp_init_allocator_, omp_destroy_allocator_,
7462 omp_set_default_allocator_, omp_get_default_allocator_): New
7463 functions and ialias_redirect.
7464 * icv.c: Add ialias for omp_set_default_allocator and
7465 omp_get_default_allocator.
7466 * libgomp.map (OMP_5.0.1): Add omp_init_allocator_,
7467 omp_destroy_allocator_, omp_set_default_allocator_ and
7468 omp_get_default_allocator_.
7469 * omp_lib.f90.in: Add allocator traits parameters, declare
7470 allocator routines and add related kind parameters.
7471 * omp_lib.h.in: Likewise.
7472 * testsuite/libgomp.c-c++-common/alloc-2.c: Fix sizeof.
7473 * testsuite/libgomp.fortran/alloc-1.F90: New test.
7474 * testsuite/libgomp.fortran/alloc-2.F90: New test.
7475 * testsuite/libgomp.fortran/alloc-3.F: New test.
7476 * testsuite/libgomp.fortran/alloc-4.f90: New test.
7477 * testsuite/libgomp.fortran/alloc-5.f90: New test.
7478
7479 2020-07-14 Tom de Vries <tom (a] codesourcery.com>
7480 Cesar Philippidis <cesar (a] codesourcery.com>
7481 Thomas Schwinge <thomas (a] codesourcery.com>
7482 Kwok Cheung Yeung <kcy (a] codesourcery.com>
7483
7484 * oacc-init.c (acc_init_state_lock, acc_init_state, acc_init_thread):
7485 New variable.
7486 (acc_init_1): Set acc_init_thread to pthread_self (). Set
7487 acc_init_state to initializing at the start, and to initialized at the
7488 end.
7489 (self_initializing_p): New function.
7490 (acc_get_device_type): Return acc_device_none if called by thread that
7491 is currently executing acc_init_1.
7492 * libgomp.texi (acc_get_device_type): Update documentation.
7493 (Implementation Status and Implementation-Defined Behavior): Likewise.
7494 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-2.c: New.
7495
7496 2020-07-14 David Edelsohn <dje.gcc (a] gmail.com>
7497
7498 * config/t-aix: Set BITS from compiler cpp macro.
7499
7500 2020-07-14 Tobias Burnus <tobias (a] codesourcery.com>
7501
7502 * testsuite/libgomp.fortran/struct-elem-map-1.f90: New test.
7503
7504 2020-07-14 Tobias Burnus <tobias (a] codesourcery.com>
7505
7506 PR fortran/67311
7507 * testsuite/libgomp.fortran/target-map-1.f90: New test.
7508
7509 2020-07-14 Jakub Jelinek <jakub (a] redhat.com>
7510
7511 * testsuite/libgomp.c/loop-21.c: New test.
7512
7513 2020-07-13 Julian Brown <julian (a] codesourcery.com>
7514 Thomas Schwinge <thomas (a] codesourcery.com>
7515
7516 * testsuite/libgomp.oacc-fortran/dynamic-pointer-1.f90: New test.
7517
7518 2020-07-10 Julian Brown <julian (a] codesourcery.com>
7519 Thomas Schwinge <thomas (a] codesourcery.com>
7520
7521 * libgomp.h (struct splay_tree_key_s): Change virtual_refcount to
7522 dynamic_refcount.
7523 (struct gomp_device_descr): Remove GOMP_MAP_VARS_OPENACC_ENTER_DATA.
7524 * oacc-mem.c (acc_map_data): Substitute virtual_refcount for
7525 dynamic_refcount.
7526 (acc_unmap_data): Update comment.
7527 (goacc_map_var_existing, goacc_enter_datum): Adjust for
7528 dynamic_refcount semantics.
7529 (goacc_exit_datum_1, goacc_exit_datum): Re-add some error checking.
7530 Adjust for dynamic_refcount semantics.
7531 (goacc_enter_data_internal): Implement "present" case of dynamic
7532 memory-map handling here. Update "non-present" case for
7533 dynamic_refcount semantics.
7534 (goacc_exit_data_internal): Use goacc_exit_datum_1.
7535 * target.c (gomp_map_vars_internal): Remove
7536 GOMP_MAP_VARS_OPENACC_ENTER_DATA handling. Update for dynamic_refcount
7537 handling.
7538 (gomp_unmap_vars_internal): Remove virtual_refcount handling.
7539 (gomp_load_image_to_device): Substitute dynamic_refcount for
7540 virtual_refcount.
7541 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Remove XFAILs.
7542 * testsuite/libgomp.oacc-c-c++-common/refcounting-1.c: New test.
7543 * testsuite/libgomp.oacc-c-c++-common/refcounting-2.c: New test.
7544 * testsuite/libgomp.oacc-c-c++-common/struct-3-1-1.c: New test.
7545 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Remove XFAILs and
7546 trace output.
7547 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Remove
7548 trace output.
7549 * testsuite/libgomp.oacc-fortran/dynamic-incr-structural-1.f90: New
7550 test.
7551 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
7552 Remove stale comment.
7553 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Remove XFAILs.
7554 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
7555 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
7556 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
7557 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
7558 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Adjust XFAIL.
7559
7560 2020-07-10 Julian Brown <julian (a] codesourcery.com>
7561 Thomas Schwinge <thomas (a] codesourcery.com>
7562
7563 * oacc-mem.c (goacc_map_var_existing): New function.
7564 (goacc_enter_datum): Use above function.
7565 (goacc_exit_datum_1): New function.
7566 (goacc_exit_datum): Use above function.
7567
7568 2020-07-09 Julian Brown <julian (a] codesourcery.com>
7569 Thomas Schwinge <thomas (a] codesourcery.com>
7570
7571 PR middle-end/95270
7572 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: New test.
7573 * testsuite/libgomp.oacc-c-c++-common/pr95270-2.c: New test.
7574
7575 2020-07-09 Julian Brown <julian (a] codesourcery.com>
7576
7577 * oacc-mem.c (find_group_last): Group data-movement clauses
7578 (GOMP_MAP_TO_PSET, GOMP_MAP_TO, etc.) together with a subsequent
7579 GOMP_MAP_ATTACH. Allow standalone GOMP_MAP_ATTACH also.
7580
7581 2020-07-09 Jakub Jelinek <jakub (a] redhat.com>
7582
7583 * testsuite/libgomp.c/loop-19.c: New test.
7584 * testsuite/libgomp.c/loop-20.c: New test.
7585
7586 2020-07-09 Jakub Jelinek <jakub (a] redhat.com>
7587
7588 * omp.h.in (omp_alloctrait_value_t): Change omp_atv_default from
7589 2 to -1. Add omp_atv_serialized and define omp_atv_sequential using
7590 it. Remove __omp_alloctrait_value_max__.
7591 * allocator.c (omp_init_allocator): Handle omp_atv_default for
7592 omp_atk_alignment and omp_atk_pool_size.
7593
7594 2020-07-03 Thomas Schwinge <thomas (a] codesourcery.com>
7595
7596 * oacc-mem.c (goacc_exit_data_internal): Revert always-copyfrom
7597 behavior for 'GOMP_MAP_FORCE_FROM'.
7598 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Adjust XFAIL.
7599
7600 2020-07-03 Thomas Schwinge <thomas (a] codesourcery.com>
7601
7602 * oacc-mem.c (goacc_exit_data_internal): Remove
7603 'GOMP_MAP_ALWAYS_FROM' handling.
7604
7605 2020-06-30 Thomas Schwinge <thomas (a] codesourcery.com>
7606
7607 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Replace fragile
7608 'scan-assembler' with 'scan-offload-rtl'.
7609 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
7610 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
7611 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: Likewise.
7612 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: Likewise.
7613
7614 2020-06-30 Thomas Schwinge <thomas (a] codesourcery.com>
7615
7616 * target.c (gomp_map_vars_existing): Assert 'kind !=
7617 GOMP_MAP_ATTACH'.
7618 (gomp_map_vars_internal): Clean up.
7619
7620 2020-06-27 Jakub Jelinek <jakub (a] redhat.com>
7621
7622 * testsuite/libgomp.c/loop-17.c: New test.
7623 * testsuite/libgomp.c/loop-18.c: New test.
7624
7625 2020-06-26 Marek Polacek <polacek (a] redhat.com>
7626
7627 * testsuite/libgomp.c++/atomic-3.C: Use -std=gnu++14.
7628
7629 2020-06-23 Alexandre Oliva <oliva (a] adacore.com>
7630
7631 * testsuite/lib/libgomp.exp: Load gcc lib scanoffload.exp.
7632 * testsuite/lib/libgomp-dg.exp: Drop now-obsolete -save-temps.
7633
7634 2020-06-22 David Edelsohn <dje.gcc (a] gmail.com>
7635
7636 * Makefile.am: Use -include.
7637 * Makefile.in: Regenerate.
7638
7639 2020-06-21 David Edelsohn <dje.gcc (a] gmail.com>
7640
7641 * Makefile.am (tmake_file): Build and install AIX-style FAT libraries.
7642 * Makefile.in: Regenerate
7643 * configure.ac (tmake_file): Substitute.
7644 * configure: Regenerate.
7645 * configure.tgt (powerpc-ibm-aix*): Define tmake_file.
7646 * config/t-aix: New file.
7647
7648 2020-06-17 Thomas Schwinge <thomas (a] codesourcery.com>
7649
7650 PR lto/94848
7651 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: Add
7652 'dg-do run'.
7653
7654 2020-06-17 Andrew Stubbs <ams (a] codesourcery.com>
7655
7656 * plugin/plugin-gcn.c (init_environment_variables): Use ".so.1"
7657 variant for HSA_RUNTIME_LIB name.
7658 (find_executable_symbol_1): Delete.
7659 (find_executable_symbol): Delete.
7660 (init_kernel_properties): Add ".kd" suffix to symbol names.
7661 (find_load_offset): Delete.
7662 (create_and_finalize_hsa_program): Remove relocation handling.
7663
7664 2020-06-16 Tobias Burnus <tobias (a] codesourcery.com>
7665
7666 * testsuite/libgomp.oacc-fortran/routine-10.f90: New test.
7667
7668 2020-06-08 Tobias Burnus <tobias (a] codesourcery.com>
7669
7670 PR lto/94848
7671 PR middle-end/95551
7672 * testsuite/libgomp.fortran/target-var.f90: New test.
7673
7674 2020-06-05 Thomas Schwinge <thomas (a] codesourcery.com>
7675 Julian Brown <julian (a] codesourcery.com>
7676
7677 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>: Explain
7678 special handling.
7679
7680 2020-06-05 Thomas Schwinge <thomas (a] codesourcery.com>
7681 Julian Brown <julian (a] codesourcery.com>
7682
7683 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
7684 Simplify.
7685
7686 2020-06-05 Julian Brown <julian (a] codesourcery.com>
7687
7688 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: New test.
7689 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: New test.
7690
7691 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7692
7693 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
7694 Evaluate 'copyfrom' individually for each entry.
7695 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: Update.
7696
7697 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7698
7699 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
7700 Evaluate 'finalize' individually for each entry.
7701 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: New file.
7702 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: Remove
7703 file.
7704
7705 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7706
7707 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: Fix 'sizeof'
7708 usage.
7709 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: Likewise.
7710
7711 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7712 Julian Brown <julian (a] codesourcery.com>
7713
7714 * oacc-mem.c (goacc_exit_datum): Repair 'is_tgt_unmapped'
7715 checking.
7716 (acc_unmap_data, goacc_exit_data_internal): Restore
7717 'is_tgt_unmapped' checking.
7718 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: New
7719 file.
7720 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust.
7721 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
7722 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
7723 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
7724 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
7725 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
7726
7727 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7728 Julian Brown <julian (a] codesourcery.com>
7729
7730 * oacc-mem.c (acc_unmap_data): Don't open-code 'gomp_remove_var'.
7731
7732 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7733
7734 PR libgomp/92854
7735 * oacc-mem.c (acc_unmap_data): Remove 'tgt' reference counting.
7736
7737 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7738
7739 PR libgomp/92854
7740 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: Extend some
7741 more.
7742
7743 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7744 Julian Brown <julian (a] codesourcery.com>
7745
7746 * oacc-mem.c (goacc_enter_datum): Use 'tgt' returned from
7747 'gomp_map_vars'.
7748 (acc_map_data): Clean up accordingly.
7749
7750 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7751
7752 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: XFAIL behavior
7753 of over-eager 'finalize' clause.
7754 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: New
7755 file.
7756 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
7757 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
7758 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
7759 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
7760 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
7761 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-2.f90: Likewise.
7762 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
7763 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-2.f90: Likewise.
7764
7765 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7766
7767 * oacc-mem.c (goacc_exit_data_internal): Unlock on error path.
7768
7769 2020-06-04 Julian Brown <julian (a] codesourcery.com>
7770
7771 * oacc-mem.c (acc_attach_async): Add missing gomp_mutex_unlock on
7772 error path.
7773 (goacc_detach_internal): Likewise.
7774
7775 2020-06-04 Thomas Schwinge <thomas (a] codesourcery.com>
7776
7777 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Initialize before
7778 the checkpoint.
7779 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
7780 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
7781 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
7782 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
7783 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
7784
7785 2020-06-02 Jakub Jelinek <jakub (a] redhat.com>
7786
7787 * allocator.c (omp_free): Fix up build if HAVE_SYNC_BUILTINS is not
7788 defined.
7789
7790 2020-05-30 Jakub Jelinek <jakub (a] redhat.com>
7791
7792 * testsuite/libgomp.c-c++-common/alloc-4.c: New test.
7793
7794 2020-05-30 Jakub Jelinek <jakub (a] redhat.com>
7795
7796 * allocator.c (omp_alloc): For size == 0, return NULL early.
7797
7798 2020-05-29 H.J. Lu <hjl.tools (a] gmail.com>
7799
7800 PR bootstrap/95413
7801 * configure: Regenerated.
7802
7803 2020-05-23 Thomas Koenig <tkoenig (a] gcc.gnu.org>
7804
7805 PR libfortran/95191
7806 * testsuite/libgomp.fortran/async_io_9.f90: New test.
7807
7808 2020-05-19 Jakub Jelinek <jakub (a] redhat.com>
7809
7810 * omp.h.in (omp_uintptr_t): New typedef.
7811 (__GOMP_UINTPTR_T_ENUM): Define.
7812 (omp_memspace_handle_t, omp_allocator_handle_t, omp_alloctrait_key_t,
7813 omp_alloctrait_value_t, omp_alloctrait_t): New typedefs.
7814 (__GOMP_DEFAULT_NULL_ALLOCATOR): Define.
7815 (omp_init_allocator, omp_destroy_allocator, omp_set_default_allocator,
7816 omp_get_default_allocator, omp_alloc, omp_free): Declare.
7817 * libgomp.h (struct gomp_team_state): Add def_allocator field.
7818 (gomp_def_allocator): Declare.
7819 * libgomp.map (OMP_5.0.1): Export omp_set_default_allocator,
7820 omp_get_default_allocator, omp_init_allocator, omp_destroy_allocator,
7821 omp_alloc and omp_free.
7822 * team.c (gomp_team_start): Copy over ts.def_allocator.
7823 * env.c (gomp_def_allocator): New variable.
7824 (parse_wait_policy): Adjust function comment.
7825 (parse_allocator): New function.
7826 (handle_omp_display_env): Print OMP_ALLOCATOR.
7827 (initialize_env): Call parse_allocator.
7828 * Makefile.am (libgomp_la_SOURCES): Add allocator.c.
7829 * allocator.c: New file.
7830 * icv.c (omp_set_default_allocator, omp_get_default_allocator): New
7831 functions.
7832 * testsuite/libgomp.c-c++-common/alloc-1.c: New test.
7833 * testsuite/libgomp.c-c++-common/alloc-2.c: New test.
7834 * testsuite/libgomp.c-c++-common/alloc-3.c: New test.
7835 * Makefile.in: Regenerated.
7836
7837 2020-05-15 H.J. Lu <hongjiu.lu (a] intel.com>
7838
7839 PR bootstrap/95147
7840 * configure: Regenerated.
7841
7842 2020-05-14 Thomas Koenig <tkoenig (a] gcc.gnu.org>
7843
7844 PR libfortran/95119
7845 * testsuite/libgomp.fortran/close_errors_1.f90: New test.
7846
7847 2020-05-14 H.J. Lu <hongjiu.lu (a] intel.com>
7848
7849 * configure: Regenerated.
7850
7851 2020-05-14 Jakub Jelinek <jakub (a] redhat.com>
7852
7853 * testsuite/libgomp.c-c++-common/target-40.c: New test.
7854
7855 2020-05-13 Tobias Burnus <tobias (a] codesourcery.com>
7856
7857 PR fortran/94690
7858 * testsuite/libgomp.fortran/pr66199-3.f90: New.
7859 * testsuite/libgomp.fortran/pr66199-4.f90: New.
7860 * testsuite/libgomp.fortran/pr66199-5.f90: New.
7861 * testsuite/libgomp.fortran/pr66199-6.f90: New.
7862 * testsuite/libgomp.fortran/pr66199-7.f90: New.
7863 * testsuite/libgomp.fortran/pr66199-8.f90: New.
7864 * testsuite/libgomp.fortran/pr66199-9.f90: New.
7865
7866 2020-05-12 Jakub Jelinek <jakub (a] redhat.com>
7867
7868 * testsuite/libgomp.c/target-39.c: New test.
7869
7870 2020-04-29 Thomas Schwinge <thomas (a] codesourcery.com>
7871
7872 * config/accel/openacc.f90 (acc_device_current): Set to '-1'.
7873 * openacc.f90 (acc_device_current): Likewise.
7874 * openacc.h (acc_device_current): Likewise.
7875 * openacc_lib.h (acc_device_current): Likewise.
7876
7877 PR target/94282
7878 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Remove
7879 'dg-allow-blank-lines-in-output'.
7880
7881 * oacc-init.c (get_openacc_name): Handle 'gcn'.
7882 * testsuite/lib/libgomp.exp
7883 (offload_target_to_openacc_device_type) [amdgcn*]: Return
7884 'radeon'. Adjust all users.
7885 (check_effective_target_openacc_amdgcn_accel_present): Rename
7886 to...
7887 (check_effective_target_openacc_radeon_accel_present): ... this.
7888 Adjust all users.
7889 (check_effective_target_openacc_amdgcn_accel_selected): Rename to...
7890 (check_effective_target_openacc_radeon_accel_selected): ... this.
7891 Adjust all users.
7892
7893 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Add
7894 'dg-do run'.
7895
7896 2020-04-23 Andrew Stubbs <ams (a] codesourcery.com>
7897
7898 PR other/94629
7899
7900 * plugin/plugin-gcn.c (init_hsa_context): Check return value from
7901 hsa_iterate_agents.
7902 (GOMP_OFFLOAD_init_device): Check return values from both calls to
7903 hsa_agent_iterate_regions.
7904
7905 2020-04-20 Thomas Schwinge <thomas (a] codesourcery.com>
7906
7907 PR middle-end/94635
7908 * testsuite/libgomp.fortran/target-enter-data-2.F90: Add 'dg-do
7909 run'.
7910
7911 2020-04-20 Tobias Burnus <tobias (a] codesourcery.com>
7912
7913 PR middle-end/94120
7914 * testsuite/libgomp.oacc-c++/declare-pr94120.C: Fix 'declare copy(out)'
7915 test case.
7916
7917 2020-04-17 Tobias Burnus <tobias (a] codesourcery.com>
7918
7919 PR middle-end/94635
7920 * testsuite/libgomp.fortran/target-enter-data-2.F90: New.
7921
7922 2020-04-13 Thomas Schwinge <thomas (a] codesourcery.com>
7923
7924 PR libgomp/92843
7925 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
7926 Rename to...
7927 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1-lib.c:
7928 ... this.
7929 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
7930 Rename to...
7931 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1.c:
7932 ... this.
7933 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
7934 Rename to...
7935 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2-lib.c:
7936 ... this.
7937 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
7938 Rename to...
7939 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2.c:
7940 ... this.
7941 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
7942 Rename to...
7943 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3-lib.c:
7944 ... this.
7945 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
7946 Rename to...
7947 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3.c:
7948 ... this.
7949 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
7950 Rename to...
7951 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4-lib.c:
7952 ... this.
7953 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
7954 Rename to...
7955 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
7956 ... this.
7957 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
7958 Rename to...
7959 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5-lib.c:
7960 ... this.
7961 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
7962 Rename to...
7963 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5.c:
7964 ... this.
7965 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
7966 Rename to...
7967 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6-lib.c:
7968 ... this.
7969 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
7970 Rename to...
7971 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6.c:
7972 ... this.
7973 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
7974 Rename to...
7975 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7-lib.c:
7976 ... this.
7977 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
7978 Rename to...
7979 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7.c:
7980 ... this.
7981 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
7982 Rename to...
7983 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8-lib.c:
7984 ... this.
7985 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c::
7986 Rename to...
7987 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8.c:
7988 ... this.
7989
7990 2020-04-10 Julian Brown <julian (a] codesourcery.com>
7991 Thomas Schwinge <thomas (a] codesourcery.com>
7992
7993 PR libgomp/92843
7994 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
7995 New file.
7996 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
7997 Likewise.
7998 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
7999 Likewise.
8000 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
8001 Likewise.
8002 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
8003 Likewise.
8004 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
8005 Likewise.
8006 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
8007 Likewise.
8008 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
8009 Likewise.
8010 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
8011 Likewise.
8012 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
8013 Likewise.
8014 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
8015 Likewise.
8016 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
8017 Likewise.
8018 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
8019 Likewise.
8020 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
8021 Likewise.
8022 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
8023 Likewise.
8024 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c:
8025 Likewise.
8026
8027 2020-04-10 Thomas Schwinge <thomas (a] codesourcery.com>
8028
8029 * testsuite/libgomp.fortran/target-enter-data-1.f90: Add 'dg-do
8030 run'.
8031
8032 2020-04-08 Tobias Burnus <tobias (a] codesourcery.com>
8033
8034 PR middle-end/94120
8035 * libgomp.oacc-c++/declare-pr94120.C: New.
8036
8037 2020-04-06 Maciej W. Rozycki <macro (a] wdc.com>
8038
8039 * configure.ac: Add testsuite/libgomp-site-extra.exp to output
8040 files.
8041 * configure: Regenerate.
8042 * testsuite/libgomp-site-extra.exp.in: New file.
8043 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): Remove
8044 variable.
8045 * testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): New
8046 variable.
8047 * testsuite/Makefile.in: Regenerate.
8048
8049 2020-04-03 Thomas Schwinge <thomas (a] codesourcery.com>
8050
8051 PR tree-optimization/89713
8052 PR c/94392
8053 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Again expect
8054 'bar.sync'.
8055 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
8056
8057 2020-03-31 Tobias Burnus <tobias (a] codesourcery.com>
8058
8059 * target.c (GOMP_target_enter_exit_data): Handle PSET/MAP_POINTER.
8060 * testsuite/libgomp.fortran/target-enter-data-1.f90: New.
8061
8062 2020-03-24 Tobias Burnus <tobias (a] codesourcery.com>
8063
8064 PR libgomp/81689
8065 * testsuite/libgomp.c/target-link-1.c: Remove xfail.
8066
8067 2020-03-20 Tobias Burnus <tobias (a] codesourcery.com>
8068
8069 PR libgomp/94251
8070 * target.c (gomp_load_image_to_device): Fix link
8071 variable handling.
8072
8073 2020-03-19 Jakub Jelinek <jakub (a] redhat.com>
8074
8075 PR c++/93931
8076 * testsuite/libgomp.c++/pr93931.C: New test.
8077
8078 2020-03-19 Tobias Burnus <tobias (a] codesourcery.com>
8079
8080 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Add
8081 dg-allow-blank-lines-in-output.
8082
8083 2020-03-18 Julian Brown <julian (a] codesourcery.com>
8084 Tobias Burnus <tobias (a] codesourcery.com>
8085
8086 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Really make
8087 it work concurrently.
8088
8089 2020-03-18 Tobias Burnus <tobias (a] codesourcery.com>
8090
8091 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: Add
8092 #define DO_LONG_DOUBLE; set to 1, except for nvidia + gcn.
8093 * libgomp.oacc-c-c++-common/firstprivate-mappings-1.c: Likewise.
8094
8095 2020-03-14 Jakub Jelinek <jakub (a] redhat.com>
8096
8097 PR middle-end/93566
8098 * testsuite/libgomp.c/pr93566.c: New test.
8099
8100 2020-02-21 Frederik Harwath <frederik (a] codesourcery.com>
8101
8102 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Adapt to
8103 changes from 2020-02-19, i.e. use integer(c_size_t) instead of
8104 integer(acc_device_property) for the type of the return value of
8105 acc_get_property.
8106
8107 2020-02-19 Tobias Burnus <tobias (a] codesourcery.com>
8108
8109 * .gitattributes: New; whitespace handling for Fortran's openacc_lib.h.
8110 * config/accel/openacc.f90 (openacc_kinds): Add acc_device_current.
8111 (openacc_internal, acc_on_device_h): Fix argument name; minor cleanup.
8112 * libgomp.texi (Enabling OpenACC): No longer mark as experimental.
8113 (acc_set_device_num): Fix Fortran argument name, use same name for C.
8114 (acc_get_property): Update Fortran interface to post-OpenACC 3.0
8115 corrections; add note about the previous interface and named constant.
8116 (OpenACC library and environment variables): Fix two typos.
8117 * openacc.f90: Use for all procedures the argument names from the spec
8118 as for _h they are user visible.
8119 (openacc_kinds): Rename acc_device_property to
8120 acc_device_property_kinds and change value to int32 ; and update users.
8121 Re-add acc_device_property for for backward compatibility.
8122 (acc_get_property_string_h): Clean up as acc_device_property_kind
8123 changed.
8124 (acc_get_property_h): Likewise and return c_size_t instead of
8125 acc_device_property.
8126 (openacc): Also export acc_device_property_kinds.
8127 (acc_async_test_h, acc_async_test_all_h, acc_on_device_h,
8128 acc_is_present_32_h, acc_is_present_64_h): Simplify logical-return-value
8129 handling; check against /= 0 instead of == 1 to match C.
8130 * openacc_lib.h: Use for all procedures the argument names from the spec
8131 as for _h they are user visible. Place !GCC$ into the first column to
8132 be active also for fixed-form souce form.
8133 (acc_device_current, acc_device_property_kind, acc_device_property,
8134 acc_property_memory, acc_property_free_memory, acc_property_name,
8135 acc_property_vendor, acc_property_driver): New named constants.
8136 (acc_get_property, acc_get_property_string): New generic interface.
8137
8138 2020-02-13 Frederik Harwath <frederik (a] codesourcery.com>
8139
8140 PR libgomp/93481
8141 * plugin/plugin-nvptx.c: Remove GOMP_OFFLOAD_async_run stub.
8142 * target.c (gomp_load_plugin_for_device): Make "async_run" loading
8143 optional.
8144 (gomp_target_task_fn): Assert "devicep->async_run_func".
8145 (clear_unsupported_flags): New function to remove unsupported flags
8146 (right now only GOMP_TARGET_FLAG_NOWAIT) that can be be ignored.
8147 (GOMP_target_ext): Apply clear_unsupported_flags to flags.
8148 * testsuite/libgomp.c/target-33.c:
8149 Remove xfail for offload_target_nvptx.
8150 * testsuite/libgomp.c/target-34.c: Likewise.
8151
8152 2020-02-10 Frederik Harwath <frederik (a] codesourcery.com>
8153
8154 * testsuite/libgomp.c/target-33.c: Add xfail for execution on
8155 offload_target_nvptx, cf. https://gcc.gnu.org/PR81688.
8156 * testsuite/libgomp.c/target-34.c: Likewise.
8157 * testsuite/libgomp.c/target-link-1.c: Add xfail for
8158 offload_target_nvptx, cf. https://gcc.gnu.org/PR81689.
8159
8160 2020-02-09 Jakub Jelinek <jakub (a] redhat.com>
8161
8162 * testsuite/libgomp.c/target-38.c: New test.
8163
8164 2020-02-06 Jakub Jelinek <jakub (a] redhat.com>
8165
8166 PR libgomp/93515
8167 * testsuite/libgomp.c-c++-common/pr93515.c: New test.
8168
8169 2020-02-05 Tobias Burnus <tobias (a] codesourcery.com>
8170
8171 * testsuite/lib/libgomp.exp
8172 (check_effective_target_offload_target_nvptx): Pass flags as 'options'
8173 and not as 'source' argument to libgomp_target_compile.
8174
8175 2020-02-03 Andrew Stubbs <ams (a] codesourcery.com>
8176
8177 * plugin/plugin-gcn.c (EF_AMDGPU_MACH_AMDGCN_GFX801): Remove.
8178 (gcn_gfx801_s): Remove.
8179 (isa_hsa_name): Remove gfx801.
8180 (isa_gcc_name): Remove gfx801/carizzo.
8181 (isa_code): Remove gfx801.
8182
8183 2020-02-03 Julian Brown <julian (a] codesourcery.com>
8184 Tobias Burnus <tobias (a] codesourcery.com>
8185
8186 * libgomp.texi (OpenACC Runtime Library Routines): Document *_async
8187 and *_finalize variants; document acc_attach and acc_detach; update
8188 references from OpenACC 2.0 to 2.6.
8189 * openacc.f90 (openacc_version): Update to 201711.
8190 * openacc_lib.h (openacc_version): Update to 201711.
8191 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Update expected
8192 openacc_version to 201711.
8193 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
8194
8195 2020-01-31 Kwok Cheung Yeung <kcy (a] codesourcery.com>
8196
8197 * plugin/plugin-gcn.c (struct hsa_kernel_description): Add sgpr_count
8198 and vgpr_count fields.
8199 (struct kernel_info): Add a field for a hsa_kernel_description.
8200 (run_kernel): Reduce the number of threads/workers if the requested
8201 number would require too many VGPRs.
8202 (init_basic_kernel_info): Initialize description field with
8203 the hsa_kernel_description entry for the kernel.
8204
8205 2020-01-29 Tobias Burnus <tobias (a] codesourcery.com>
8206
8207 PR bootstrap/93409
8208 * plugin/configfrag.ac (enable_offload_targets): Skip
8209 HSA and GCN plugin besides -m32 also for -mx32.
8210 * configure: Regenerate.
8211
8212 2020-01-29 Frederik Harwath <frederik (a] codesourcery.com>
8213
8214 * oacc-init.c (name_of_acc_device_t): Handle acc_device_radeon.
8215
8216 2020-01-29 Frederik Harwath <frederik (a] codesourcery.com>
8217
8218 * plugin-gcn.c (struct agent_info): Add fields "name" and
8219 "vendor_name" ...
8220 (GOMP_OFFLOAD_init_device): ... and init from here.
8221 (struct hsa_context_info): Add field "driver_version_s" ...
8222 (init_hsa_contest): ... and init from here.
8223 (GOMP_OFFLOAD_openacc_get_property): Replace stub with a proper
8224 implementation.
8225 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
8226 Enable test execution for amdgcn and host offloading targets.
8227 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Likewise.
8228 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
8229 (expect_device_properties): Split function into ...
8230 (expect_device_string_properties): ... this new function ...
8231 (expect_device_memory): ... and this new function.
8232 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c:
8233 Add test.
8234
8235 2020-01-28 Julian Brown <julian (a] codesourcery.com>
8236
8237 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: Remove test from here.
8238 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: Don't use mixed
8239 component/non-component variable refs in a single directive.
8240 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: Likewise.
8241
8242 2020-01-24 Maciej W. Rozycki <macro (a] wdc.com>
8243
8244 * configure.ac: Handle `--with-toolexeclibdir='.
8245 * Makefile.in: Regenerate.
8246 * aclocal.m4: Regenerate.
8247 * configure: Regenerate.
8248 * testsuite/Makefile.in: Regenerate.
8249
8250 2020-01-24 Frederik Harwath <frederik (a] codesourcery.com>
8251
8252 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
8253 (expect_device_properties): Remove "expected_free_mem" argument,
8254 change "expected_total_mem" argument type to size_t;
8255 change types of acc_get_property results to size_t,
8256 adapt format strings.
8257 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
8258 Use %zu instead of %zd to print size_t values.
8259 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: Adapt and
8260 rename to ...
8261 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c: ... this.
8262 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: Adapt and
8263 rename to ...
8264 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-host.c: ... this.
8265
8266 2020-01-23 Andrew Stubbs <ams (a] codesourcery.com>
8267
8268 * plugin/plugin-gcn.c (parse_target_attributes): Use correct mask for
8269 the device id.
8270
8271 2020-01-20 Andrew Stubbs <ams (a] codesourcery.com>
8272
8273 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Skip test on gcn.
8274 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c (main):
8275 Adjust test dimensions for amdgcn.
8276 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c (main): Adjust
8277 gang/worker/vector expectations dynamically.
8278 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c
8279 (main): Likewise.
8280 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c (main): Likewise.
8281 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c (main): Likewise.
8282 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c (main): Likewise.
8283 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c (main): Likewise.
8284 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c (main): Likewise.
8285 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c (main): Likewise.
8286 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c (main): Likewise.
8287 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c (main): Likewise.
8288 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
8289 (acc_gang): Recognise acc_device_radeon.
8290 (acc_worker): Likewise.
8291 (acc_vector): Likewise.
8292 (main): Set expectations for amdgcn.
8293 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c
8294 (main): Adjust gang/worker/vector expectations dynamically.
8295 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c (main): Likewise.
8296 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c (main): Likewise.
8297 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c (main): Likewise.
8298 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Set expectations
8299 for amdgcn.
8300
8301 2020-01-17 Andrew Stubbs <ams (a] codesourcery.com>
8302
8303 * config/accel/openacc.f90 (openacc_kinds): Rename acc_device_gcn to
8304 acc_device_radeon.
8305 (openacc): Likewise.
8306 * openacc.f90 (openacc_kinds): Likewise.
8307 (openacc): Likewise.
8308 * openacc.h (acc_device_t): Likewise.
8309 * openacc_lib.h: Likewise.
8310 * testsuite/lib/libgomp.exp
8311 (check_effective_target_openacc_amdgcn_accel_present): Likewise.
8312 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
8313 (cb_compute_construct_end): Likewise.
8314 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
8315 (cb_enqueue_launch_start): Likewise.
8316 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
8317 (cb_enter_data_end): Likewise.
8318 (cb_exit_data_start): Likewise.
8319 (cb_exit_data_end): Likewise.
8320 (cb_compute_construct_end): Likewise.
8321 (cb_enqueue_launch_start): Likewise.
8322 (cb_enqueue_launch_end): Likewise.
8323 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c
8324 (main): Likewise.
8325
8326 2020-01-10 Thomas Schwinge <thomas (a] codesourcery.com>
8327
8328 * libgomp-plugin.h (enum goacc_property): New. Adjust all users
8329 to use this instead of 'enum gomp_device_property'.
8330 (GOMP_OFFLOAD_get_property): Rename to...
8331 (GOMP_OFFLOAD_openacc_get_property): ... this. Adjust all users.
8332 * libgomp.h (struct gomp_device_descr): Move
8333 'GOMP_OFFLOAD_openacc_get_property'...
8334 (struct acc_dispatch_t): ... here. Adjust all users.
8335 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): Remove.
8336
8337 * target.c (gomp_map_vars_internal)
8338 <GOMP_MAP_USE_DEVICE_PTR_IF_PRESENT>: Clean up/elaborate code
8339 paths.
8340
8341 2020-01-10 Jakub Jelinek <jakub (a] redhat.com>
8342
8343 PR libgomp/93219
8344 * libgomp.h (gomp_print_string): Change return type from void to int.
8345 * affinity-fmt.c (gomp_print_string): Likewise. Return true if
8346 not all characters have been written.
8347
8348 2020-01-08 Tobias Burnus <tobias (a] codesourcery.com>
8349
8350 * libgomp.texi: Fix typos, use https.
8351
8352 2020-01-03 Tobias Burnus <tobias (a] codesourcery.com>
8353
8354 * testsuite/libgomp.fortran/optional-map.f90: Add test for
8355 unallocated/disassociated actual arguments to nonallocatable/nonpointer
8356 dummy arguments; those are/shall be regarded as absent arguments.
8357 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
8358 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: New.
8359
8360 2020-01-01 Jakub Jelinek <jakub (a] redhat.com>
8361
8362 Update copyright years.
8363
8364 * libgomp.texi: Bump @copying's copyright year.
8365
8366 2019-12-31 Ayush Mittal <ayush.m (a] samsung.com>
8367
8368 PR libgomp/93065
8369 * oacc-init.c (goacc_runtime_deinitialize): New function.
8370
8371 2019-12-28 Jakub Jelinek <jakub (a] redhat.com>
8372
8373 PR bootstrap/93074
8374 * plugin/cuda/cuda.h (cuDeviceGetName, cuDriverGetVersion): Declare.
8375 (cuDeviceTotalMem, cuMemGetInfo): Likewise. Define to *_v2.
8376
8377 2019-12-22 Maciej W. Rozycki <macro (a] codesourcery.com>
8378 Frederik Harwath <frederik (a] codesourcery.com>
8379 Thomas Schwinge <tschwinge (a] codesourcery.com>
8380
8381 * libgomp.h (gomp_device_descr): Add `get_property_func' member.
8382 * libgomp-plugin.h (gomp_device_property_value): New union.
8383 (gomp_device_property_value): New prototype.
8384 * openacc.h (acc_device_t): Add `acc_device_current' enumeration
8385 constant.
8386 (acc_device_property_t): New enum.
8387 (acc_get_property, acc_get_property_string): New prototypes.
8388 * oacc-init.c (acc_get_device_type): Also assert that result
8389 is not `acc_device_current'.
8390 (get_property_any, acc_get_property, acc_get_property_string):
8391 New functions.
8392 * openacc.f90 (openacc_kinds): Add `acc_device_current' and
8393 `acc_property_memory', `acc_property_free_memory',
8394 `acc_property_name', `acc_property_vendor' and
8395 `acc_property_driver' constants. Add `acc_device_property' data
8396 type.
8397 (openacc_internal): Add `acc_get_property' and
8398 `acc_get_property_string' interfaces. Add `acc_get_property_h',
8399 `acc_get_property_string_h', `acc_get_property_l' and
8400 `acc_get_property_string_l'.
8401 * oacc-host.c (host_get_property): New function.
8402 (host_dispatch): Wire it.
8403 * target.c (gomp_load_plugin_for_device): Handle `get_property'.
8404 * libgomp.map (OACC_2.6): Add `acc_get_property', `acc_get_property_h_',
8405 `acc_get_property_string' and `acc_get_property_string_h_' symbols.
8406 * libgomp.texi (OpenACC Runtime Library Routines): Add
8407 `acc_get_property'.
8408 (acc_get_property): New node.
8409 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_property): New
8410 function (stub).
8411 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): New function.
8412 * plugin/plugin-nvptx.c (CUDA_CALLS): Add `cuDeviceGetName',
8413 `cuDeviceTotalMem', `cuDriverGetVersion' and `cuMemGetInfo'
8414 calls.
8415 (GOMP_OFFLOAD_get_property): New function.
8416 (struct ptx_device): Add new field "name".
8417 (cuda_driver_version_s): Add new static variable ...
8418 (nvptx_init): ... and init from here.
8419
8420 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c: New test.
8421 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: New test.
8422 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: New test.
8423 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c: New file
8424 with test helper functions.
8425
8426 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: New test.
8427
8428 2019-12-22 Maciej W. Rozycki <macro (a] wdc.com>
8429
8430 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): New
8431 variable.
8432
8433 2019-12-21 Thomas Schwinge <thomas (a] codesourcery.com>
8434
8435 * target.c (gomp_map_vars_internal): Restore 'omp declare target
8436 link' handling.
8437
8438 2019-12-19 Julian Brown <julian (a] codesourcery.com>
8439
8440 * testsuite/libgomp.oacc-fortran/class-ptr-param.f95: New test.
8441 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: New test.
8442 * testsuite/libgomp.oacc-fortran/classtypes-2.f95: New test.
8443
8444 2019-12-19 Julian Brown <julian (a] codesourcery.com>
8445 Cesar Philippidis <cesar (a] codesourcery.com>
8446
8447 * testsuite/libgomp.oacc-fortran/deep-copy-1.f90: New test.
8448 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: New test.
8449 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: New test.
8450 * testsuite/libgomp.oacc-fortran/deep-copy-4.f90: New test.
8451 * testsuite/libgomp.oacc-fortran/deep-copy-5.f90: New test.
8452 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: New test.
8453 * testsuite/libgomp.oacc-fortran/deep-copy-7.f90: New test.
8454 * testsuite/libgomp.oacc-fortran/deep-copy-8.f90: New test.
8455 * testsuite/libgomp.oacc-fortran/derived-type-1.f90: New test.
8456 * testsuite/libgomp.oacc-fortran/derivedtype-1.f95: New test.
8457 * testsuite/libgomp.oacc-fortran/derivedtype-2.f95: New test.
8458 * testsuite/libgomp.oacc-fortran/multidim-slice.f95: New test.
8459 * testsuite/libgomp.oacc-fortran/update-2.f90: New test.
8460
8461 2019-12-19 Julian Brown <julian (a] codesourcery.com>
8462
8463 * testsuite/libgomp.oacc-c-c++-common/deep-copy-1.c: New test.
8464 * testsuite/libgomp.oacc-c-c++-common/deep-copy-2.c: New test.
8465 * testsuite/libgomp.oacc-c-c++-common/deep-copy-4.c: New test.
8466 * testsuite/libgomp.oacc-c-c++-common/deep-copy-6.c: New test.
8467 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: New test.
8468 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: New test.
8469 * testsuite/libgomp.oacc-c-c++-common/deep-copy-9.c: New test.
8470 * testsuite/libgomp.oacc-c-c++-common/deep-copy-10.c: New test.
8471 * testsuite/libgomp.oacc-c-c++-common/deep-copy-11.c: New test.
8472 * testsuite/libgomp.oacc-c-c++-common/deep-copy-14.c: New test.
8473 * testsuite/libgomp.oacc-c++/deep-copy-12.C: New test.
8474 * testsuite/libgomp.oacc-c++/deep-copy-13.C: New test.
8475
8476 2019-12-19 Julian Brown <julian (a] codesourcery.com>
8477
8478 * libgomp.h (struct target_var_desc): Add do_detach flag.
8479 * oacc-init.c (acc_shutdown_1): Free aux block if present.
8480 * oacc-mem.c (find_group_last): Add SIZES parameter. Support
8481 struct components. Tidy up and add some new checks.
8482 (goacc_enter_data_internal): Update call to find_group_last.
8483 (goacc_exit_data_internal): Support detach operations and
8484 GOMP_MAP_STRUCT.
8485 (GOACC_enter_exit_data): Handle initial GOMP_MAP_STRUCT or
8486 GOMP_MAP_FORCE_PRESENT in finalization detection code. Handle
8487 attach/detach in enter/exit data detection code.
8488 * target.c (gomp_map_vars_existing): Initialise do_detach field of
8489 tgt_var_desc.
8490 (gomp_map_vars_internal): Support attach.
8491 (gomp_unmap_vars_internal): Support detach.
8492
8493 2019-12-19 Julian Brown <julian (a] codesourcery.com>
8494 Thomas Schwinge <thomas (a] codesourcery.com>
8495
8496 * libgomp.h (struct splay_tree_aux): Add attach_count field.
8497 (gomp_attach_pointer, gomp_detach_pointer): Add prototypes.
8498 * libgomp.map (OACC_2.6): New section. Add acc_attach,
8499 acc_attach_async, acc_detach, acc_detach_async, acc_detach_finalize,
8500 acc_detach_finalize_async.
8501 * oacc-mem.c (acc_attach_async, acc_attach, goacc_detach_internal,
8502 acc_detach, acc_detach_async, acc_detach_finalize,
8503 acc_detach_finalize_async): New functions.
8504 * openacc.h (acc_attach, acc_attach_async, acc_detach,
8505 (acc_detach_async, acc_detach_finalize, acc_detach_finalize_async): Add
8506 prototypes.
8507 * target.c (gomp_attach_pointer, gomp_detach_pointer): New functions.
8508 (gomp_remove_var_internal): Free attachment counts if present.
8509 * testsuite/libgomp.oacc-c-c++-common/deep-copy-3.c: New test.
8510 * testsuite/libgomp.oacc-c-c++-common/deep-copy-5.c: New test.
8511
8512 2019-12-19 Julian Brown <julian (a] codesourcery.com>
8513 Cesar Philippidis <cesar (a] codesourcery.com>
8514
8515 * libgomp.h (gomp_map_val): Add prototype.
8516 * oacc-parallel.c (GOACC_parallel_keyed): Use gomp_map_val instead of
8517 open-coding device-address calculation.
8518 * target.c (gomp_map_val): Make global. Use OFFSET_POINTER in
8519 non-present case.
8520
8521 2019-12-19 Julian Brown <julian (a] codesourcery.com>
8522
8523 * libgomp.h (struct splay_tree_key_s): Substitute dynamic_refcount
8524 field for virtual_refcount.
8525 (enum gomp_map_vars_kind): Add GOMP_MAP_VARS_OPENACC_ENTER_DATA.
8526 (gomp_free_memmap): Remove prototype.
8527 * oacc-init.c (acc_shutdown_1): Iteratively call gomp_remove_var
8528 instead of calling gomp_free_memmap.
8529 * oacc-mem.c (acc_map_data): Use virtual_refcount instead of
8530 dynamic_refcount.
8531 (acc_unmap_data): Open code instead of forcing target_mem_desc's
8532 to_free field to NULL then calling gomp_unmap_vars. Handle
8533 REFCOUNT_INFINITY on target blocks.
8534 (goacc_enter_data): Rename to...
8535 (goacc_enter_datum): ...this. Remove MAPNUM parameter and special
8536 handling for mapping groups. Use virtual_refcount instead of
8537 dynamic_refcount. Use GOMP_MAP_VARS_OPENACC_ENTER_DATA for
8538 map_map_vars_async call. Re-do lookup for target pointer return value.
8539 (acc_create, acc_create_async, acc_copyin, acc_copyin_async): Call
8540 renamed goacc_enter_datum function.
8541 (goacc_exit_data): Rename to...
8542 (goacc_exit_datum): ...this. Update for virtual_refcount semantics.
8543 (acc_delete, acc_delete_async, acc_delete_finalize,
8544 acc_delete_finalize_async, acc_copyout, acc_copyout_async,
8545 acc_copyout_finalize, acc_copyout_finalize_async): Call renamed
8546 goacc_exit_datum function.
8547 (gomp_acc_remove_pointer, find_pointer): Remove functions.
8548 (find_group_last, goacc_enter_data_internal, goacc_exit_data_internal):
8549 New functions.
8550 (GOACC_enter_exit_data): Use goacc_enter_data_internal and
8551 goacc_exit_data_internal helper functions.
8552 * target.c (gomp_map_vars_internal): Handle
8553 GOMP_MAP_VARS_OPENACC_ENTER_DATA. Update for virtual_refcount
8554 semantics.
8555 (gomp_unmap_vars_internal): Update for virtual_refcount semantics.
8556 (gomp_load_image_to_device, omp_target_associate_ptr): Zero-initialise
8557 virtual_refcount field instead of dynamic_refcount.
8558 (gomp_free_memmap): Remove function.
8559 * testsuite/libgomp.oacc-c-c++-common/unmap-infinity-1.c: New test.
8560 * testsuite/libgomp.c-c++-common/unmap-infinity-2.c: New test.
8561 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Add XFAIL.
8562
8563 2019-12-19 Julian Brown <julian (a] codesourcery.com>
8564 Thomas Schwinge <thomas (a] codesourcery.com>
8565
8566 * libgomp.h (struct splay_tree_aux): New.
8567 (struct splay_tree_key_s): Replace link_key field with aux pointer.
8568 * target.c (gomp_map_vars_internal): Adjust for link_key being moved
8569 to aux struct.
8570 (gomp_remove_var_internal): Free aux block if present.
8571 (gomp_load_image_to_device): Zero-initialise aux field instead of
8572 link_key field.
8573 (omp_target_associate_pointer): Zero-initialise aux field.
8574
8575 2019-12-18 Jakub Jelinek <jakub (a] redhat.com>
8576
8577 PR middle-end/86416
8578 * testsuite/libgomp.c/pr86416-1.c (main): Use L suffixes rather than
8579 q or none.
8580 * testsuite/libgomp.c/pr86416-2.c (main): Use Q suffixes rather than
8581 L or none.
8582
8583 2019-12-19 Julian Brown <julian (a] codesourcery.com>
8584 Maciej W. Rozycki <macro (a] codesourcery.com>
8585 Tobias Burnus <tobias (a] codesourcery.com>
8586 Thomas Schwinge <thomas (a] codesourcery.com>
8587
8588 * target.c (gomp_map_vars_async): Support GOMP_MAP_NO_ALLOC.
8589 * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: New test.
8590 * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: New test.
8591 * testsuite/libgomp.oacc-c-c++-common/no_create-3.c: New test.
8592 * testsuite/libgomp.oacc-c-c++-common/no_create-4.c: New test.
8593 * testsuite/libgomp.oacc-c-c++-common/no_create-5.c: New test.
8594 * testsuite/libgomp.oacc-fortran/no_create-1.f90: New test.
8595 * testsuite/libgomp.oacc-fortran/no_create-2.f90: New test.
8596 * testsuite/libgomp.oacc-fortran/no_create-3.F90: New test.
8597
8598 2019-12-18 Thomas Schwinge <thomas (a] codesourcery.com>
8599
8600 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
8601 called...
8602 (goacc_insert_pointer): ... from here, "present" case.
8603 (goacc_insert_pointer): Inline function into...
8604 (GOACC_enter_exit_data): ... here, and simplify.
8605
8606 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
8607 called...
8608 (goacc_insert_pointer): ... from here, "not present" case.
8609
8610 * oacc-mem.c (goacc_remove_pointer): Refactor interface. Adjust
8611 all users.
8612
8613 * oacc-mem.c (GOACC_enter_exit_data): Refactor code to call
8614 'goacc_enter_data', 'goacc_exit_data'.
8615
8616 * oacc-mem.c (delete_copyout): Refactor into...
8617 (goacc_exit_data): ... this. Adjust all users.
8618
8619 * oacc-mem.c (present_create_copy): Refactor into...
8620 (goacc_enter_data): ... this. Adjust all users.
8621
8622 * target.c (gomp_unmap_vars_internal): Add a safeguard to
8623 'gomp_remove_var'.
8624
8625 * target.c (gomp_to_device_kind_p): Handle 'GOMP_MAP_FORCE_FROM'
8626 like 'GOMP_MAP_FROM'.
8627
8628 PR libgomp/92726
8629 PR libgomp/92970
8630 PR libgomp/92984
8631 * oacc-mem.c (delete_copyout): No-op behavior if 'lookup_host'
8632 fails.
8633 (GOACC_enter_exit_data): Simplify accordingly.
8634 * testsuite/libgomp.oacc-c-c++-common/pr92970-1.c: New file,
8635 subsuming...
8636 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: ... this file...
8637 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: ..., and this
8638 file.
8639 * testsuite/libgomp.oacc-c-c++-common/pr92984-1.c: New file,
8640 subsuming...
8641 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: ... this file...
8642 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: ..., and this
8643 file.
8644 * testsuite/libgomp.oacc-c-c++-common/pr92726-1.c: New file,
8645 subsuming...
8646 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: ... this file.
8647
8648 * oacc-mem.c (GOACC_enter_exit_data): Simplify 'exit data'
8649 'finalize' handling.
8650
8651 PR libgomp/92848
8652 * oacc-mem.c (acc_map_data, present_create_copy)
8653 (goacc_insert_pointer): Use 'GOMP_MAP_VARS_ENTER_DATA'.
8654 (acc_unmap_data, delete_copyout, goacc_remove_pointer): Adjust.
8655 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Remove.
8656 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-a.c: New file
8657 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-p.c: Likewise.
8658 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-a.c: Likewise.
8659 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-p.c: Likewise.
8660 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
8661 Remove "XFAIL"s.
8662
8663 * target.c (gomp_unmap_tgt): Make it 'static'.
8664 * libgomp.h (gomp_unmap_tgt): Remove.
8665
8666 2019-12-18 Tobias Burnus <tobias (a] codesourcery.com>
8667
8668 PR middle-end/86416
8669 * testsuite/libgomp.c/pr86416-1.c: New.
8670 * testsuite/libgomp.c/pr86416-2.c: New.
8671
8672 2019-12-17 Tobias Burnus <tobias (a] codesourcery.com>
8673
8674 * config/accel/openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark
8675 all symbols as public except for the 'use , only' imported symbol,
8676 which is private.
8677 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
8678 all symbols from module openacc_kinds as PUBLIC
8679 * openacc.f90: Add comment with crossref to that file and openmp_lib.h;
8680 fix comment typo.
8681 * openacc_lib.h (acc_device_gcn): Add this PARAMETER.
8682
8683 2019-12-13 Julian Brown <julian (a] codesourcery.com>
8684
8685 PR libgomp/92881
8686
8687 * libgomp.h (gomp_remove_var_async): Add prototype.
8688 * oacc-mem.c (delete_copyout): Call gomp_remove_var_async instead of
8689 gomp_remove_var.
8690 * target.c (gomp_unref_tgt): Change return type to bool, indicating
8691 whether target_mem_desc was unmapped.
8692 (gomp_unref_tgt_void): New.
8693 (gomp_remove_var): Reimplement in terms of...
8694 (gomp_remove_var_internal): ...this new helper function.
8695 (gomp_remove_var_async): New, implemented using above helper function.
8696 (gomp_unmap_vars_internal): Use gomp_unref_tgt_void instead of
8697 gomp_unref_tgt.
8698
8699 2019-12-13 Andrew Stubbs <ams (a] codesourcery.com>
8700
8701 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Handle gcn.
8702 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
8703 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c: Likewise.
8704 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Likewise.
8705 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c:
8706 Likewise.
8707 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Disable on GCN.
8708 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Likewise.
8709
8710 2019-12-13 Tobias Burnus <tobias (a] codesourcery.com>
8711
8712 * openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark all symbols
8713 as public except for the 'use , only' imported symbol, which is
8714 private.
8715 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
8716 all symbols from module openacc_kinds as PUBLIC; add missing PUBLIC
8717 attributes for acc_copyout_finalize and acc_delete_finalize.
8718
8719 2019-12-11 Jakub Jelinek <jakub (a] redhat.com>
8720
8721 PR fortran/92899
8722 * testsuite/libgomp.fortran/atomic1.f90: New test.
8723
8724 2019-12-11 Thomas Schwinge <thomas (a] codesourcery.com>
8725
8726 PR libgomp/92843
8727 * oacc-mem.c (present_create_copy, delete_copyout): Fix dynamic
8728 reference counting for structured 'REFCOUNT_INFINITY'. Add some
8729 assertions.
8730 (goacc_insert_pointer, goacc_remove_pointer): Adjust accordingly.
8731 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: New file.
8732 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Fix OpenACC.
8733 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
8734 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
8735
8736 * oacc-parallel.c (find_pointer, GOACC_enter_exit_data): Move...
8737 * oacc-mem.c: ... here.
8738 (gomp_acc_insert_pointer, gomp_acc_remove_pointer): Rename to
8739 'goacc_insert_pointer', 'goacc_remove_pointer', and make 'static'.
8740 * libgomp.h (gomp_acc_insert_pointer, gomp_acc_remove_pointer):
8741 Remove.
8742 * libgomp_g.h: Update.
8743
8744 * oacc-parallel.c (GOACC_wait, goacc_wait): Move...
8745 * oacc-async.c: ... here.
8746 * oacc-int.h (goacc_wait): Declare.
8747 * libgomp_g.h: Update
8748
8749 PR libgomp/92854
8750 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-1.c:
8751 New file.
8752 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-2.c:
8753 Likewise.
8754 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-3.c:
8755 Likewise.
8756 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-1.c:
8757 Likewise.
8758 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-2.c:
8759 Likewise.
8760 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-3.c:
8761 Likewise.
8762
8763 2019-12-11 Thomas Schwinge <thomas (a] codesourcery.com>
8764 Julian Brown <julian (a] codesourcery.com>
8765
8766 * target.c (gomp_load_image_to_device, omp_target_associate_ptr):
8767 Initialize 'dynamic_refcount' whenever we initialize 'refcount'.
8768
8769 2019-12-11 Tobias Burnus <tobias (a] codesourcery.com>
8770
8771 * omp_lib.h.in: Fix spelling of function declaration
8772 omp_get_cancell(l)ation.
8773 * libgomp.texi (acc_is_present, acc_async_test, acc_async_test_all):
8774 Fix typos.
8775 * env.c: Fix comment typos.
8776 * oacc-host.c: Likewise.
8777 * ordered.c: Likewise.
8778 * task.c: Likewise.
8779 * team.c: Likewise.
8780 * config/gcn/task.c: Likewise.
8781 * config/gcn/team.c: Likewise.
8782 * config/nvptx/task.c: Likewise.
8783 * config/nvptx/team.c: Likewise.
8784 * plugin/plugin-gcn.c: Likewise.
8785 * testsuite/libgomp.fortran/jacobi.f: Likewise.
8786 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
8787 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: Likewise.
8788
8789 2019-12-11 Tobias Burnus <tobias (a] codesourcery.com>
8790
8791 * testsuite/libgomp.oacc-fortran/optional-cache.f95: Add 'dg-do run'.
8792 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Remove
8793 unnecessary 'dg-additional-options "-w"'.
8794
8795 2019-12-09 Thomas Schwinge <thomas (a] codesourcery.com>
8796 Julian Brown <julian (a] codesourcery.com>
8797
8798 PR libgomp/92116
8799 PR libgomp/92877
8800
8801 * oacc-mem.c (lookup_dev): Reimplement. Adjust all users.
8802 * libgomp.h (struct acc_dispatch_t): Remove 'data_environ' member.
8803 Adjust all users.
8804 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
8805 Remove XFAIL.
8806 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
8807 Likewise.
8808 * testsuite/libgomp.oacc-c-c++-common/pr92877-1.c: New file.
8809
8810 2019-12-09 Thomas Schwinge <thomas (a] codesourcery.com>
8811
8812 PR libgomp/92503
8813 * oacc-mem.c (acc_free): Error out instead of 'acc_unmap_data'.
8814 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-1.c: New
8815 file.
8816 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-2.c:
8817 Likewise.
8818 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3-2.c:
8819 Likewise.
8820 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3.c:
8821 Likewise.
8822 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
8823 Likewise.
8824 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
8825 Likewise.
8826 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
8827 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
8828 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
8829 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
8830 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
8831 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
8832 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
8833 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
8834 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
8835 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
8836
8837 PR libgomp/92840
8838 * oacc-mem.c (acc_map_data): Clarify reference counting behavior.
8839 (acc_unmap_data): Add error case for 'REFCOUNT_INFINITY'.
8840 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-1.c:
8841 New file.
8842 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-2.c:
8843 Likewise.
8844 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-3.c:
8845 Likewise.
8846 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
8847 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Adjust.
8848
8849 PR libgomp/92511
8850 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: Remove
8851 this file...
8852 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: ..., and
8853 this file...
8854 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: ..., and this
8855 file...
8856 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: ..., and this
8857 file...
8858 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
8859 ... with their content moved into, and extended in this new file.
8860 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-a.c:
8861 New file.
8862 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-p.c:
8863 Likewise.
8864 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-a.c:
8865 Likewise.
8866 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-2.c:
8867 Likewise.
8868
8869 * testsuite/libgomp.oacc-c-c++-common/map-data-1.c: New file.
8870
8871 PR libgomp/92854
8872 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: New file.
8873
8874 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New file.
8875
8876 * target.c (gomp_exit_data): Use 'gomp_remove_var'.
8877
8878 2019-12-09 Tobias Burnus <tobias (a] codesourcery.com>
8879
8880 * testsuite/libgomp.fortran/use_device_addr-3.f90: Make 'stop' codes
8881 unique.
8882 * testsuite/libgomp.fortran/use_device_addr-4.f90: Ditto.
8883 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
8884 * testsuite/libgomp.oacc-fortran/declare-5.f90: Ditto.
8885 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90:
8886 Ditto.
8887 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: Ditto.
8888 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: Ditto.
8889
8890 2019-12-06 Kwok Cheung Yeung <kcy (a] codesourcery.com>
8891
8892 * config/accel/proc.c (omp_get_num_procs): Apply ialias macro.
8893
8894 2019-12-06 Tobias Burnus <tobias (a] codesourcery.com>
8895 Kwok Cheung Yeung <kcy (a] codesourcery.com>
8896
8897 * oacc-mem.c (update_dev_host, gomp_acc_insert_pointer): Just return
8898 if input it a NULL pointer.
8899 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Remove; dependent on
8900 diagnostic of NULL pointer.
8901 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Ditto.
8902 * testsuite/libgomp.fortran/optional-map.f90: New.
8903 * testsuite/libgomp.fortran/use_device_addr-1.f90
8904 (test_dummy_opt_callee_1_absent): New.
8905 (test_dummy_opt_call_1): Call it.
8906 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
8907 * testsuite/libgomp.fortran/use_device_addr-3.f90: Likewise.
8908 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
8909 * testsuite/libgomp.oacc-fortran/optional-cache.f95: New.
8910 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90: New.
8911 * testsuite/libgomp.oacc-fortran/optional-data-copyin.f90: New.
8912 * testsuite/libgomp.oacc-fortran/optional-data-copyout.f90: New.
8913 * testsuite/libgomp.oacc-fortran/optional-data-enter-exit.f90: New.
8914 * testsuite/libgomp.oacc-fortran/optional-declare.f90: New.
8915 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: New.
8916 * testsuite/libgomp.oacc-fortran/optional-host_data.f90: New.
8917 * testsuite/libgomp.oacc-fortran/optional-nested-calls.f90: New.
8918 * testsuite/libgomp.oacc-fortran/optional-private.f90: New.
8919 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: New.
8920 * testsuite/libgomp.oacc-fortran/optional-update-device.f90: New.
8921 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: New.
8922
8923 2019-12-05 Tobias Burnus <tobias (a] codesourcery.com>
8924
8925 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Also don't
8926 expect dg-output of 'Error termination.' for GCN.
8927 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
8928 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
8929
8930 2019-12-04 Jakub Jelinek <jakub (a] redhat.com>
8931
8932 PR fortran/92756
8933 * testsuite/libgomp.fortran/teams1.f90: New test.
8934 * testsuite/libgomp.fortran/teams2.f90: New test.
8935
8936 2019-12-03 Frederik Harwath <frederik (a] codesourcery.com>
8937
8938 * oacc-init.c (acc_known_device_type): Add function.
8939 (unknown_device_type_error): Add function.
8940 (name_of_acc_device_t): Change to call unknown_device_type_error
8941 on unknown type.
8942 (resolve_device): Use acc_known_device_type.
8943 (acc_init): Fail if acc_device_t argument is not valid.
8944 (acc_shutdown): Likewise.
8945 (acc_get_num_devices): Likewise.
8946 (acc_set_device_type): Likewise.
8947 (acc_get_device_num): Likewise.
8948 (acc_set_device_num): Likewise.
8949 (acc_on_device): Add comment that argument validity is not checked.
8950
8951 2019-12-03 Andrew Stubbs <ams (a] codesourcery.com>
8952
8953 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
8954 Recognize amdgcn.
8955 (check_effective_target_openacc_amdgcn_accel_present): New proc.
8956 (check_effective_target_openacc_amdgcn_accel_selected): New proc.
8957 * testsuite/libgomp.oacc-c++/c++.exp: Add support for amdgcn.
8958 * testsuite/libgomp.oacc-c/c.exp: Likewise.
8959 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
8960
8961 2019-12-03 Szabolcs Nagy <szabolcs.nagy (a] arm.com>
8962
8963 PR libgomp/91938
8964 * configure.tgt: Avoid IE tls on *-*-musl*.
8965
8966 2019-11-29 Tobias Burnus <tobias (a] codesourcery.com>
8967
8968 * testsuite/libgomp.oacc-fortran/declare-5.f90: Extend by
8969 adding a common-block test case.
8970
8971 2019-11-29 Jakub Jelinek <jakub (a] redhat.com>
8972
8973 PR c++/60228
8974 * testsuite/libgomp.c++/udr-20.C: New test.
8975 * testsuite/libgomp.c++/udr-21.C: New test.
8976
8977 2019-11-27 Thomas Schwinge <thomas (a] codesourcery.com>
8978
8979 * testsuite/lib/libgomp.exp
8980 (check_effective_target_offload_target_nvptx): New proc.
8981 * testsuite/libgomp.fortran/target-print-1.f90: Use it with
8982 'dg-skip-if'.
8983 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
8984 * testsuite/libgomp.fortran/target-print-1-nvptx.f90: New file.
8985 * testsuite/libgomp.oacc-fortran/print-1-nvptx.f90: Likewise.
8986
8987 2019-11-21 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
8988
8989 * testsuite/libgomp.c/pr39591-1.c: Rename err to e.
8990 * testsuite/libgomp.c/pr39591-2.c: Likewise.
8991 * testsuite/libgomp.c/pr39591-3.c: Likewise.
8992 * testsuite/libgomp.c/private-1.c: Likewise.
8993 * testsuite/libgomp.c/task-1.c: Likewise.
8994 * testsuite/libgomp.c/task-5.c: Renamed err to serr.
8995
8996 2019-11-20 Julian Brown <julian (a] codesourcery.com>
8997
8998 * plugin/plugin-gcn.c (wait_for_queue_nonfull): Don't lock/unlock
8999 aq->mutex here.
9000 (queue_push_launch): Lock aq->mutex before calling
9001 wait_for_queue_nonfull.
9002 (queue_push_callback): Likewise.
9003 (queue_push_asyncwait): Likewise.
9004 (queue_push_placeholder): Likewise.
9005
9006 2019-11-20 Julian Brown <julian (a] codesourcery.com>
9007
9008 * plugin/plugin-gcn.c (hsa_memory_copy_wrapper): New.
9009 (copy_data, GOMP_OFFLOAD_host2dev): Use above function.
9010 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_dev2dev): Check hsa_memory_copy
9011 return code.
9012
9013 2019-11-20 Julian Brown <julian (a] codesourcery.com>
9014
9015 PR libgomp/92511
9016
9017 * oacc-mem.c (present_create_copy): Fix device pointer return value in
9018 case of "present" subarray. Use tgt->tgt_start instead of tgt->to_free
9019 in non-present/create case.
9020 (delete_copyout): Change error condition to fail only on copies outside
9021 of mapped block. Adjust error message accordingly.
9022 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: New test.
9023 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: New test.
9024 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Adjust expected error
9025 message.
9026 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
9027 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Allow test to pass now.
9028 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
9029
9030 2019-11-20 Maciej W. Rozycki <macro (a] wdc.com>
9031
9032 * testsuite/lib/libgomp.exp (libgomp_init): Add flags to find
9033 libatomic in build-tree testing.
9034
9035 2019-11-18 Maciej W. Rozycki <macro (a] wdc.com>
9036
9037 * testsuite/Makefile.in: Regenerate.
9038
9039 2019-11-15 Andrew Stubbs <ams (a] codesourcery.com>
9040
9041 * testsuite/libgomp.c/target-print-1.c: New file.
9042 * testsuite/libgomp.fortran/target-print-1.f90: New file.
9043 * testsuite/libgomp.oacc-c/print-1.c: New file.
9044 * testsuite/libgomp.oacc-fortran/print-1.f90: New file.
9045
9046 2019-11-13 Andrew Stubbs <ams (a] codesourcery.com>
9047 Kwok Cheung Yeung <kcy (a] codesourcery.com>
9048 Julian Brown <julian (a] codesourcery.com>
9049 Tom de Vries <tom (a] codesourcery.com>
9050
9051 * plugin/Makefrag.am: Add amdgcn plugin support.
9052 * plugin/configfrag.ac: Likewise.
9053 * plugin/plugin-gcn.c: New file.
9054 * configure: Regenerate.
9055 * Makefile.in: Regenerate.
9056 * testsuite/Makefile.in: Regenerate.
9057
9058 2019-11-13 Andrew Stubbs <ams (a] codesourcery.com>
9059
9060 * config/gcn/team.c (gomp_gcn_enter_kernel): Set up the team arena
9061 and use team_malloc variants.
9062 (gomp_gcn_exit_kernel): Use team_free.
9063 * libgomp.h (TEAM_ARENA_SIZE): Define.
9064 (TEAM_ARENA_START): Define.
9065 (TEAM_ARENA_FREE): Define.
9066 (TEAM_ARENA_END): Define.
9067 (team_malloc): New function.
9068 (team_malloc_cleared): New function.
9069 (team_free): New function.
9070 * team.c (gomp_new_team): Initialize and use team_malloc.
9071 (free_team): Use team_free.
9072 (gomp_free_thread): Use team_free.
9073 (gomp_pause_host): Use team_free.
9074 * work.c (gomp_init_work_share): Use team_malloc.
9075 (gomp_fini_work_share): Use team_free.
9076
9077 2019-11-13 Andrew Stubbs <ams (a] codesourcery.com>
9078 Kwok Cheung Yeung <kcy (a] codesourcery.com>
9079 Julian Brown <julian (a] codesourcery.com>
9080 Tom de Vries <tom (a] codesourcery.com>
9081
9082 * Makefile.am (libgomp_la_SOURCES): Add oacc-target.c.
9083 * Makefile.in: Regenerate.
9084 * config.h.in (PLUGIN_GCN): Add new undef.
9085 * config/accel/openacc.f90 (acc_device_gcn): New parameter.
9086 * config/gcn/affinity-fmt.c: New file.
9087 * config/gcn/bar.c: New file.
9088 * config/gcn/bar.h: New file.
9089 * config/gcn/doacross.h: New file.
9090 * config/gcn/icv-device.c: New file.
9091 * config/gcn/oacc-target.c: New file.
9092 * config/gcn/simple-bar.h: New file.
9093 * config/gcn/target.c: New file.
9094 * config/gcn/task.c: New file.
9095 * config/gcn/team.c: New file.
9096 * config/gcn/time.c: New file.
9097 * configure.ac: Add amdgcn*-*-*.
9098 * configure: Regenerate.
9099 * configure.tgt: Add amdgcn*-*-*.
9100 * libgomp-plugin.h (offload_target_type): Add OFFLOAD_TARGET_TYPE_GCN.
9101 * libgomp.h (gcn_thrs): Add amdgcn variant.
9102 (set_gcn_thrs): Likewise.
9103 (gomp_thread): Likewise.
9104 * oacc-int.h (goacc_thread): Likewise.
9105 * oacc-target.c: New file.
9106 * openacc.f90 (acc_device_gcn): New parameter.
9107 * openacc.h (acc_device_t): Add acc_device_gcn.
9108 * team.c (gomp_free_pool_helper): Add amdgcn support.
9109
9110 2019-11-13 Andrew Stubbs <ams (a] codesourcery.com>
9111 Julian Brown <julian (a] codesourcery.com>
9112
9113 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_async_construct): Add int
9114 parameter.
9115 * oacc-async.c (lookup_goacc_asyncqueue): Pass device number to the
9116 queue constructor.
9117 * oacc-host.c (host_openacc_async_construct): Add device parameter.
9118 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_openacc_async_construct): Add
9119 device parameter.
9120
9121 2019-11-13 Andrew Stubbs <ams (a] codesourcery.com>
9122
9123 * configure.tgt (nvptx*-*-*): Add "accel" directory.
9124 * config/nvptx/libgomp-plugin.c: Move ...
9125 * config/accel/libgomp-plugin.c: ... to here.
9126 * config/nvptx/lock.c: Move ...
9127 * config/accel/lock.c: ... to here.
9128 * config/nvptx/mutex.c: Move ...
9129 * config/accel/mutex.c: ... to here.
9130 * config/nvptx/mutex.h: Move ...
9131 * config/accel/mutex.h: ... to here.
9132 * config/nvptx/oacc-async.c: Move ...
9133 * config/accel/oacc-async.c: ... to here.
9134 * config/nvptx/oacc-cuda.c: Move ...
9135 * config/accel/oacc-cuda.c: ... to here.
9136 * config/nvptx/oacc-host.c: Move ...
9137 * config/accel/oacc-host.c: ... to here.
9138 * config/nvptx/oacc-init.c: Move ...
9139 * config/accel/oacc-init.c: ... to here.
9140 * config/nvptx/oacc-mem.c: Move ...
9141 * config/accel/oacc-mem.c: ... to here.
9142 * config/nvptx/oacc-plugin.c: Move ...
9143 * config/accel/oacc-plugin.c: ... to here.
9144 * config/nvptx/omp-lock.h: Move ...
9145 * config/accel/omp-lock.h: ... to here.
9146 * config/nvptx/openacc.f90: Move ...
9147 * config/accel/openacc.f90: ... to here.
9148 * config/nvptx/pool.h: Move ...
9149 * config/accel/pool.h: ... to here.
9150 * config/nvptx/proc.c: Move ...
9151 * config/accel/proc.c: ... to here.
9152 * config/nvptx/ptrlock.c: Move ...
9153 * config/accel/ptrlock.c: ... to here.
9154 * config/nvptx/ptrlock.h: Move ...
9155 * config/accel/ptrlock.h: ... to here.
9156 * config/nvptx/sem.c: Move ...
9157 * config/accel/sem.c: ... to here.
9158 * config/nvptx/sem.h: Move ...
9159 * config/accel/sem.h: ... to here.
9160 * config/nvptx/thread-stacksize.h: Move ...
9161 * config/accel/thread-stacksize.h: ... to here.
9162
9163 2019-11-12 Maciej W. Rozycki <macro (a] codesourcery.com>
9164 Tobias Burnus <tobias (a] codesourcery.com>
9165 Frederik Harwath <frederik (a] codesourcery.com>
9166 Thomas Schwinge <thomas (a] codesourcery.com>
9167
9168 libgomp/
9169 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New test.
9170 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: New test.
9171 * testsuite/libgomp.oacc-fortran/parallel-dims.f89: New test.
9172
9173 2019-11-11 Tobias Burnus <tobias (a] codesourcery.com>
9174 Kwok Cheung Yeung <kcy (a] codesourcery.com>
9175
9176 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90: Extend.
9177 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: New.
9178
9179 2019-11-11 Thomas Schwinge <thomas (a] codesourcery.com>
9180
9181 * testsuite/libgomp.fortran/target9.f90: Specify 'dg-do run'.
9182
9183 * testsuite/libgomp.fortran/use_device_addr-3.f90: Specify 'dg-do
9184 run'.
9185 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
9186 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Likewise.
9187
9188 2019-11-06 Thomas Schwinge <thomas (a] codesourcery.com>
9189
9190 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c:
9191 Add expected warnings about missing reduction clauses.
9192 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
9193 Likewise.
9194 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c:
9195 Likewise.
9196 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
9197 Likewise.
9198
9199 2019-11-04 Tobias Burnus <tobias (a] codesourcery.com>
9200
9201 * testsuite/libgomp.fortran/pr66199-1.f90: Remove
9202 'dg-do run' (implies torture test) as 'dg-options "O2"' is used.
9203 * testsuite/libgomp.fortran/pr66199-2.f90: Ditto.
9204 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
9205 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
9206 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
9207
9208 2019-11-04 Tobias Burnus <tobias (a] codesourcery.com>
9209
9210 PR fortran/92305
9211 * testsuite/libgomp.fortran/allocatable2.f90: Use
9212 unique numbers with 'stop'.
9213 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
9214 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
9215 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Ditto.
9216 * testsuite/libgomp.oacc-fortran/lib-15.f90: Ditto.
9217 * testsuite/libgomp.oacc-fortran/pset-1.f90: Ditto.
9218
9219 2019-11-01 Tobias Burnus <tobias (a] codesourcery.com>
9220
9221 * testsuite/libgomp.fortran/use_device_addr-1.f90 (test_nullptr_1,
9222 test_dummy_opt_nullptr_callee_1): Add present but unallocated test.
9223 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
9224 * testsuite/libgomp.fortran/use_device_addr-3.f90: New.
9225 * testsuite/libgomp.fortran/use_device_addr-4.f90: New.
9226 * testsuite/testsuite/libgomp.fortran/use_device_ptr-1.f90: New.
9227
9228 2019-10-30 Tobias Burnus <tobias (a] codesourcery.com>
9229
9230 * testsuite/libgomp.fortran/target9.f90: New.
9231
9232 2019-10-30 Tobias Burnus <tobias (a] codesourcery.com>
9233
9234 * testsuite/libgomp.fortran/aligned1.f03: Replace 'STOP' by 'stop'.
9235 * testsuite/libgomp.fortran/alloc-comp-1.f90: Ditto.
9236 * testsuite/libgomp.fortran/alloc-comp-2.f90: Ditto.
9237 * testsuite/libgomp.fortran/alloc-comp-3.f90: Ditto.
9238 * testsuite/libgomp.fortran/allocatable1.f90: Ditto.
9239 * testsuite/libgomp.fortran/allocatable10.f90: Ditto.
9240 * testsuite/libgomp.fortran/allocatable11.f90: Ditto.
9241 * testsuite/libgomp.fortran/allocatable12.f90: Ditto.
9242 * testsuite/libgomp.fortran/allocatable2.f90: Ditto.
9243 * testsuite/libgomp.fortran/allocatable3.f90: Ditto.
9244 * testsuite/libgomp.fortran/allocatable4.f90: Ditto.
9245 * testsuite/libgomp.fortran/allocatable5.f90: Ditto.
9246 * testsuite/libgomp.fortran/allocatable6.f90: Ditto.
9247 * testsuite/libgomp.fortran/allocatable7.f90: Ditto.
9248 * testsuite/libgomp.fortran/allocatable8.f90: Ditto.
9249 * testsuite/libgomp.fortran/allocatable9.f90: Ditto.
9250 * testsuite/libgomp.fortran/associate1.f90: Ditto.
9251 * testsuite/libgomp.fortran/associate2.f90: Ditto.
9252 * testsuite/libgomp.fortran/associate3.f90: Ditto.
9253 * testsuite/libgomp.fortran/async_io_4.f90: Ditto.
9254 * testsuite/libgomp.fortran/async_io_5.f90: Ditto.
9255 * testsuite/libgomp.fortran/async_io_6.f90: Ditto.
9256 * testsuite/libgomp.fortran/async_io_7.f90: Ditto.
9257 * testsuite/libgomp.fortran/cancel-do-1.f90: Ditto.
9258 * testsuite/libgomp.fortran/cancel-do-2.f90: Ditto.
9259 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Ditto.
9260 * testsuite/libgomp.fortran/cancel-sections-1.f90: Ditto.
9261 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Ditto.
9262 * testsuite/libgomp.fortran/character1.f90: Ditto.
9263 * testsuite/libgomp.fortran/character2.f90: Ditto.
9264 * testsuite/libgomp.fortran/collapse1.f90: Ditto.
9265 * testsuite/libgomp.fortran/collapse2.f90: Ditto.
9266 * testsuite/libgomp.fortran/collapse3.f90: Ditto.
9267 * testsuite/libgomp.fortran/collapse4.f90: Ditto.
9268 * testsuite/libgomp.fortran/crayptr1.f90: Ditto.
9269 * testsuite/libgomp.fortran/crayptr2.f90: Ditto.
9270 * testsuite/libgomp.fortran/crayptr3.f90: Ditto.
9271 * testsuite/libgomp.fortran/declare-simd-1.f90: Ditto.
9272 * testsuite/libgomp.fortran/declare-simd-3.f90: Ditto.
9273 * testsuite/libgomp.fortran/declare-target-2.f90: Ditto.
9274 * testsuite/libgomp.fortran/depend-1.f90: Ditto.
9275 * testsuite/libgomp.fortran/depend-2.f90: Ditto.
9276 * testsuite/libgomp.fortran/depend-3.f90: Ditto.
9277 * testsuite/libgomp.fortran/do1.f90: Ditto.
9278 * testsuite/libgomp.fortran/do2.f90: Ditto.
9279 * testsuite/libgomp.fortran/do_concurrent_5.f90: Ditto.
9280 * testsuite/libgomp.fortran/doacross1.f90: Ditto.
9281 * testsuite/libgomp.fortran/doacross2.f90: Ditto.
9282 * testsuite/libgomp.fortran/doacross3.f90: Ditto.
9283 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Ditto.
9284 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Ditto.
9285 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Ditto.
9286 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Ditto.
9287 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Ditto.
9288 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Ditto.
9289 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Ditto.
9290 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Ditto.
9291 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Ditto.
9292 * testsuite/libgomp.fortran/examples-4/device-1.f90: Ditto.
9293 * testsuite/libgomp.fortran/examples-4/device-2.f90: Ditto.
9294 * testsuite/libgomp.fortran/examples-4/device-3.f90: Ditto.
9295 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Ditto.
9296 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Ditto.
9297 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Ditto.
9298 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Ditto.
9299 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Ditto.
9300 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Ditto.
9301 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Ditto.
9302 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Ditto.
9303 * testsuite/libgomp.fortran/examples-4/target-1.f90: Ditto.
9304 * testsuite/libgomp.fortran/examples-4/target-2.f90: Ditto.
9305 * testsuite/libgomp.fortran/examples-4/target-3.f90: Ditto.
9306 * testsuite/libgomp.fortran/examples-4/target-4.f90: Ditto.
9307 * testsuite/libgomp.fortran/examples-4/target-5.f90: Ditto.
9308 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Ditto.
9309 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Ditto.
9310 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Ditto.
9311 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Ditto.
9312 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Ditto.
9313 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Ditto.
9314 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Ditto.
9315 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Ditto.
9316 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Ditto.
9317 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Ditto.
9318 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Ditto.
9319 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Ditto.
9320 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Ditto.
9321 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Ditto.
9322 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Ditto.
9323 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Ditto.
9324 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Ditto.
9325 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Ditto.
9326 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Ditto.
9327 * testsuite/libgomp.fortran/lastprivate1.f90: Ditto.
9328 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
9329 * testsuite/libgomp.fortran/lib1.f90: Ditto.
9330 * testsuite/libgomp.fortran/lib4.f90: Ditto.
9331 * testsuite/libgomp.fortran/lock-1.f90: Ditto.
9332 * testsuite/libgomp.fortran/lock-2.f90: Ditto.
9333 * testsuite/libgomp.fortran/nested1.f90: Ditto.
9334 * testsuite/libgomp.fortran/nestedfn1.f90: Ditto.
9335 * testsuite/libgomp.fortran/nestedfn2.f90: Ditto.
9336 * testsuite/libgomp.fortran/nestedfn3.f90: Ditto.
9337 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
9338 * testsuite/libgomp.fortran/nestedfn5.f90: Ditto.
9339 * testsuite/libgomp.fortran/omp_atomic1.f90: Ditto.
9340 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
9341 * testsuite/libgomp.fortran/omp_atomic3.f90: Ditto.
9342 * testsuite/libgomp.fortran/omp_atomic4.f90: Ditto.
9343 * testsuite/libgomp.fortran/omp_atomic5.f90: Ditto.
9344 * testsuite/libgomp.fortran/omp_cond1.f: Ditto.
9345 * testsuite/libgomp.fortran/omp_cond2.f: Ditto.
9346 * testsuite/libgomp.fortran/omp_cond3.F90: Ditto.
9347 * testsuite/libgomp.fortran/omp_cond4.F90: Ditto.
9348 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
9349 * testsuite/libgomp.fortran/omp_parse2.f90: Ditto.
9350 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
9351 * testsuite/libgomp.fortran/omp_parse4.f90: Ditto.
9352 * testsuite/libgomp.fortran/openmp_version-1.f: Ditto.
9353 * testsuite/libgomp.fortran/openmp_version-2.f90: Ditto.
9354 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Ditto.
9355 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Ditto.
9356 * testsuite/libgomp.fortran/pointer1.f90: Ditto.
9357 * testsuite/libgomp.fortran/pointer2.f90: Ditto.
9358 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
9359 * testsuite/libgomp.fortran/pr27395-1.f90: Ditto.
9360 * testsuite/libgomp.fortran/pr27395-2.f90: Ditto.
9361 * testsuite/libgomp.fortran/pr27416-1.f90: Ditto.
9362 * testsuite/libgomp.fortran/pr27916-1.f90: Ditto.
9363 * testsuite/libgomp.fortran/pr27916-2.f90: Ditto.
9364 * testsuite/libgomp.fortran/pr28390.f: Ditto.
9365 * testsuite/libgomp.fortran/pr29629.f90: Ditto.
9366 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
9367 * testsuite/libgomp.fortran/pr33880.f90: Ditto.
9368 * testsuite/libgomp.fortran/pr34020.f90: Ditto.
9369 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
9370 * testsuite/libgomp.fortran/pr42162.f90: Ditto.
9371 * testsuite/libgomp.fortran/pr46753.f90: Ditto.
9372 * testsuite/libgomp.fortran/pr48894.f90: Ditto.
9373 * testsuite/libgomp.fortran/pr49792-1.f90: Ditto.
9374 * testsuite/libgomp.fortran/pr49792-2.f90: Ditto.
9375 * testsuite/libgomp.fortran/pr63938-1.f90: Ditto.
9376 * testsuite/libgomp.fortran/pr63938-2.f90: Ditto.
9377 * testsuite/libgomp.fortran/pr65597.f90: Ditto.
9378 * testsuite/libgomp.fortran/pr66199-1.f90: Ditto.
9379 * testsuite/libgomp.fortran/pr71014.f90: Ditto.
9380 * testsuite/libgomp.fortran/pr81304.f90: Ditto.
9381 * testsuite/libgomp.fortran/pr81841.f90: Ditto.
9382 * testsuite/libgomp.fortran/pr84418-1.f90: Ditto.
9383 * testsuite/libgomp.fortran/pr84418-2.f90: Ditto.
9384 * testsuite/libgomp.fortran/procptr1.f90: Ditto.
9385 * testsuite/libgomp.fortran/recursion1.f90: Ditto.
9386 * testsuite/libgomp.fortran/reduction1.f90: Ditto.
9387 * testsuite/libgomp.fortran/reduction2.f90: Ditto.
9388 * testsuite/libgomp.fortran/reduction3.f90: Ditto.
9389 * testsuite/libgomp.fortran/reduction4.f90: Ditto.
9390 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
9391 * testsuite/libgomp.fortran/reduction6.f90: Ditto.
9392 * testsuite/libgomp.fortran/reference1.f90: Ditto.
9393 * testsuite/libgomp.fortran/reference2.f90: Ditto.
9394 * testsuite/libgomp.fortran/retval1.f90: Ditto.
9395 * testsuite/libgomp.fortran/retval2.f90: Ditto.
9396 * testsuite/libgomp.fortran/sharing1.f90: Ditto.
9397 * testsuite/libgomp.fortran/sharing2.f90: Ditto.
9398 * testsuite/libgomp.fortran/simd1.f90: Ditto.
9399 * testsuite/libgomp.fortran/simd2.f90: Ditto.
9400 * testsuite/libgomp.fortran/simd3.f90: Ditto.
9401 * testsuite/libgomp.fortran/simd4.f90: Ditto.
9402 * testsuite/libgomp.fortran/simd5.f90: Ditto.
9403 * testsuite/libgomp.fortran/simd6.f90: Ditto.
9404 * testsuite/libgomp.fortran/simd7.f90: Ditto.
9405 * testsuite/libgomp.fortran/stack.f90: Ditto.
9406 * testsuite/libgomp.fortran/strassen.f90: Ditto.
9407 * testsuite/libgomp.fortran/tabs1.f90: Ditto.
9408 * testsuite/libgomp.fortran/tabs2.f: Ditto.
9409 * testsuite/libgomp.fortran/target1.f90: Ditto.
9410 * testsuite/libgomp.fortran/target2.f90: Ditto.
9411 * testsuite/libgomp.fortran/target3.f90: Ditto.
9412 * testsuite/libgomp.fortran/target4.f90: Ditto.
9413 * testsuite/libgomp.fortran/target5.f90: Ditto.
9414 * testsuite/libgomp.fortran/target6.f90: Ditto.
9415 * testsuite/libgomp.fortran/target7.f90: Ditto.
9416 * testsuite/libgomp.fortran/target8.f90: Ditto.
9417 * testsuite/libgomp.fortran/task1.f90: Ditto.
9418 * testsuite/libgomp.fortran/task2.f90: Ditto.
9419 * testsuite/libgomp.fortran/task3.f90: Ditto.
9420 * testsuite/libgomp.fortran/task4.f90: Ditto.
9421 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
9422 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
9423 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
9424 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
9425 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
9426 * testsuite/libgomp.fortran/threadprivate1.f90: Ditto.
9427 * testsuite/libgomp.fortran/threadprivate2.f90: Ditto.
9428 * testsuite/libgomp.fortran/threadprivate3.f90: Ditto.
9429 * testsuite/libgomp.fortran/threadprivate4.f90: Ditto.
9430 * testsuite/libgomp.fortran/udr1.f90: Ditto.
9431 * testsuite/libgomp.fortran/udr10.f90: Ditto.
9432 * testsuite/libgomp.fortran/udr11.f90: Ditto.
9433 * testsuite/libgomp.fortran/udr12.f90: Ditto.
9434 * testsuite/libgomp.fortran/udr13.f90: Ditto.
9435 * testsuite/libgomp.fortran/udr14.f90: Ditto.
9436 * testsuite/libgomp.fortran/udr15.f90: Ditto.
9437 * testsuite/libgomp.fortran/udr2.f90: Ditto.
9438 * testsuite/libgomp.fortran/udr3.f90: Ditto.
9439 * testsuite/libgomp.fortran/udr4.f90: Ditto.
9440 * testsuite/libgomp.fortran/udr5.f90: Ditto.
9441 * testsuite/libgomp.fortran/udr6.f90: Ditto.
9442 * testsuite/libgomp.fortran/udr7.f90: Ditto.
9443 * testsuite/libgomp.fortran/udr8.f90: Ditto.
9444 * testsuite/libgomp.fortran/udr9.f90: Ditto.
9445 * testsuite/libgomp.fortran/vla1.f90: Ditto.
9446 * testsuite/libgomp.fortran/vla2.f90: Ditto.
9447 * testsuite/libgomp.fortran/vla3.f90: Ditto.
9448 * testsuite/libgomp.fortran/vla4.f90: Ditto.
9449 * testsuite/libgomp.fortran/vla5.f90: Ditto.
9450 * testsuite/libgomp.fortran/vla6.f90: Ditto.
9451 * testsuite/libgomp.fortran/vla7.f90: Ditto.
9452 * testsuite/libgomp.fortran/vla8.f90: Ditto.
9453 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
9454 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
9455
9456 2019-10-30 Tobias Burnus <tobias (a] codesourcery.com>
9457
9458 * testsuite/libgomp.fortran/target-simd.f90: Use stop not abort.
9459 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90:
9460 Ditto; add 'dg-do run' for torture testing.
9461 * testsuite/libgomp.fortran/lastprivate1.f90: Add 'dg-do run'.
9462 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
9463 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
9464 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
9465 * testsuite/libgomp.fortran/pr28390.f: Ditto.
9466 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
9467 * testsuite/libgomp.fortran/pr90779.f90: Ditto.
9468 * testsuite/libgomp.fortran/task2.f90: Ditto.
9469 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
9470 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
9471 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
9472 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
9473 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
9474 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
9475
9476 2019-10-28 Tobias Burnus <tobias (a] codesourcery.com>
9477
9478 * testsuite/libgomp.oacc-fortran/abort-1.f90: Add 'dg-do run'.
9479 * testsuite/libgomp.oacc-fortran/abort-2.f90: Ditto.
9480 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Ditto.
9481 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f90: Ditto.
9482 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f90: Ditto.
9483 * testsuite/libgomp.oacc-fortran/lib-1.f90: Ditto.
9484 * testsuite/libgomp.oacc-fortran/common-block-1.f90:
9485 Use 'stop' not abort().
9486 * testsuite/libgomp.oacc-fortran/common-block-2.f90: Ditto.
9487 * testsuite/libgomp.oacc-fortran/common-block-3.f90: Ditto.
9488 * testsuite/libgomp.oacc-fortran/data-1.f90: Ditto.
9489 * testsuite/libgomp.oacc-fortran/data-2.f90: Ditto.
9490 * testsuite/libgomp.oacc-fortran/data-5.f90: Ditto.
9491 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Ditto.
9492 * testsuite/libgomp.oacc-fortran/gemm-2.f90: Ditto.
9493 * testsuite/libgomp.oacc-fortran/gemm.f90: Ditto.
9494 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Ditto.
9495 * testsuite/libgomp.oacc-fortran/host_data-3.f90: Ditto.
9496 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Ditto.
9497 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Ditto.
9498 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Ditto.
9499 * testsuite/libgomp.oacc-fortran/kernels-independent.f90: Ditto.
9500 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Ditto.
9501 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Ditto.
9502 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
9503 Ditto.
9504 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
9505 Ditto.
9506 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
9507 Ditto.
9508 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
9509 Ditto.
9510 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
9511 Ditto.
9512 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-1.f90:
9513 Ditto.
9514 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-2.f90:
9515 Ditto.
9516 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-1.f90:
9517 Ditto.
9518 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-2.f90:
9519 Ditto.
9520 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-3.f90:
9521 Ditto.
9522 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-4.f90:
9523 Ditto.
9524 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-5.f90:
9525 Ditto.
9526 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-6.f90:
9527 Ditto.
9528 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-7.f90:
9529 Ditto.
9530 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Ditto.
9531 * testsuite/libgomp.oacc-fortran/lib-12.f90: Ditto.
9532 * testsuite/libgomp.oacc-fortran/lib-13.f90: Ditto.
9533 * testsuite/libgomp.oacc-fortran/lib-14.f90: Ditto.
9534 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
9535 Likewise and also add 'dg-do run'.
9536 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
9537 Ditto.
9538
9539 2019-10-25 Cesar Philippidis <cesar (a] codesourcery.com>
9540 Tobias Burnus <tobias (a] codesourcery.com>
9541
9542 * testsuite/libgomp.oacc-fortran/common-block-1.f90: New test.
9543 * testsuite/libgomp.oacc-fortran/common-block-2.f90: New test.
9544 * testsuite/libgomp.oacc-fortran/common-block-3.f90: New test.
9545
9546 2019-10-14 Jakub Jelinek <jakub (a] redhat.com>
9547
9548 PR libgomp/92081
9549 * testsuite/libgomp.fortran/target-simd.f90: Iterate from 1 rather
9550 than 0.
9551
9552 2019-10-11 Tobias Burnus <tobias (a] codesourcery.com>
9553
9554 * testsuite/libgomp.fortran/use_device_addr-1.f90: New.
9555 * testsuite/libgomp.fortran/use_device_addr-2.f90: New.
9556
9557 2019-10-09 Thomas Schwinge <thomas (a] codesourcery.com>
9558
9559 PR middle-end/92036
9560 * testsuite/libgomp.oacc-c-c++-common/data-firstprivate-1.c: New
9561 file.
9562
9563 2019-10-09 Tobias Burnus <tobias (a] codesourcery.com>
9564
9565 PR testsuite/91884
9566 * testsuite/libgomp.fortran/fortran.exp: Conditionally
9567 add -lquadmath.
9568 * testsuite/libgomp.oacc-fortran/fortran.exp: Ditto.
9569
9570 2019-10-09 Jakub Jelinek <jakub (a] redhat.com>
9571
9572 PR libgomp/92028
9573 * target.c (gomp_map_vars_internal): Readd the previous
9574 GOMP_MAP_USE_DEVICE_PTR handling code in the first loop,
9575 though do that just in the !not_found_cnt case.
9576
9577 2019-10-08 Tobias Burnus <tobias (a] codesourcery.com>
9578
9579 * gfortran.dg/gomp/target-simd.f90: New.
9580
9581 2019-10-02 Julian Brown <julian (a] codesourcery.com>
9582 Cesar Philippidis <cesar (a] codesourcery.com>
9583
9584 * libgomp.h (OFFSET_INLINED, OFFSET_POINTER, OFFSET_STRUCT): Define.
9585 * target.c (FIELD_TGT_EMPTY): Define.
9586 (gomp_map_val): Use OFFSET_* macros instead of magic constants. Write
9587 as switch instead of list of ifs.
9588 (gomp_map_vars_internal): Use OFFSET_* and FIELD_TGT_EMPTY macros.
9589
9590 2019-10-02 Andreas Tobler <andreast (a] gcc.gnu.org>
9591
9592 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: Remove alloca.h
9593 include. Replace alloca () with __builtin_alloca ().
9594 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Likewise.
9595
9596 2019-10-01 Jakub Jelinek <jakub (a] redhat.com>
9597
9598 * configure.ac: Remove GCC_HEADER_STDINT(gstdint.h).
9599 * libgomp.h: Include <stdint.h> instead of "gstdint.h".
9600 * oacc-parallel.c: Don't include "libgomp_g.h".
9601 * plugin/plugin-hsa.c: Include <stdint.h> instead of "gstdint.h".
9602 * plugin/plugin-nvptx.c: Don't include "gstdint.h".
9603 * aclocal.m4: Regenerated.
9604 * config.h.in: Regenerated.
9605 * configure: Regenerated.
9606 * Makefile.in: Regenerated.
9607
9608 2019-09-30 Kwok Cheung Yeung <kcy (a] codesourcery.com>
9609
9610 * libgomp_g.h: Include stdint.h instead of gstdint.h.
9611
9612 2019-09-27 Maciej W. Rozycki <macro (a] wdc.com>
9613
9614 * configure: Regenerate.
9615
9616 2019-09-13 Tobias Burnus <tobias (a] codesourcery.com>
9617
9618 * plugin/plugin-hsa.c (hsa_warn, hsa_fatal, hsa_error): Ensure
9619 string is initialized.
9620
9621 2019-09-06 Florian Weimer <fweimer (a] redhat.com>
9622
9623 * configure: Regenerate.
9624
9625 2019-09-03 Chung-Lin Tang <cltang (a] codesourcery.com>
9626
9627 PR other/79543
9628 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Fix GNU ld --version
9629 scanning to conform to the GNU Coding Standards.
9630 * configure: Regenerate.
9631
9632 2019-08-28 Jakub Jelinek <jakub (a] redhat.com>
9633
9634 PR libgomp/91530
9635 * testsuite/libgomp.c/scan-21.c: New test.
9636 * testsuite/libgomp.c/scan-22.c: New test.
9637
9638 2019-08-27 Jakub Jelinek <jakub (a] redhat.com>
9639
9640 PR libgomp/91530
9641 * testsuite/libgomp.c/scan-11.c: Add -msse2 option for sse2_runtime
9642 targets.
9643 * testsuite/libgomp.c/scan-12.c: Likewise.
9644 * testsuite/libgomp.c/scan-13.c: Likewise.
9645 * testsuite/libgomp.c/scan-14.c: Likewise.
9646 * testsuite/libgomp.c/scan-15.c: Likewise.
9647 * testsuite/libgomp.c/scan-16.c: Likewise.
9648 * testsuite/libgomp.c/scan-17.c: Likewise.
9649 * testsuite/libgomp.c/scan-18.c: Likewise.
9650 * testsuite/libgomp.c/scan-19.c: Likewise.
9651 * testsuite/libgomp.c/scan-20.c: Likewise.
9652 * testsuite/libgomp.c++/scan-9.C: Likewise.
9653 * testsuite/libgomp.c++/scan-10.C: Likewise.
9654 * testsuite/libgomp.c++/scan-11.C: Likewise.
9655 * testsuite/libgomp.c++/scan-12.C: Likewise.
9656 * testsuite/libgomp.c++/scan-14.C: Likewise.
9657 * testsuite/libgomp.c++/scan-15.C: Likewise.
9658 * testsuite/libgomp.c++/scan-13.C: Likewise. Use sse2_runtime
9659 instead of i?86-*-* x86_64-*-* as target for scan-tree-dump-times.
9660 * testsuite/libgomp.c++/scan-16.C: Likewise.
9661
9662 2019-08-17 Thomas Koenig <tkoenig (a] gcc.gnu.org>
9663
9664 PR fortran/91473
9665 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add
9666 -std=legacy so invalid code in the test case is accepted.
9667
9668 2019-08-12 Thomas Koenig <tkoenig (a] gcc.gnu.org>
9669
9670 PR fortran/91422
9671 * testsuite/libgomp.oacc-fortran/routine-7.f90: Correct array
9672 dimension.
9673
9674 2019-08-08 Jakub Jelinek <jakub (a] redhat.com>
9675
9676 * target.c (gomp_map_vars_internal): For GOMP_MAP_USE_DEVICE_PTR
9677 perform the lookup in the first loop only if !not_found_cnt, otherwise
9678 perform lookups for it in the second loop guarded with
9679 if (not_found_cnt || has_firstprivate).
9680 * testsuite/libgomp.c/target-37.c: New test.
9681 * testsuite/libgomp.c++/target-22.C: New test.
9682
9683 2019-08-07 Jakub Jelinek <jakub (a] redhat.com>
9684
9685 * testsuite/libgomp.c/target-18.c (struct S): New type.
9686 (foo): Use use_device_addr clause instead of use_device_ptr clause
9687 where required by OpenMP 5.0, add further tests for both use_device_ptr
9688 and use_device_addr clauses.
9689 * testsuite/libgomp.c++/target-9.C (struct S): New type.
9690 (foo): Use use_device_addr clause instead of use_device_ptr clause
9691 where required by OpenMP 5.0, add further tests for both use_device_ptr
9692 and use_device_addr clauses. Add t and u arguments.
9693 (main): Adjust caller.
9694
9695 2019-08-06 Jakub Jelinek <jakub (a] redhat.com>
9696
9697 * testsuite/libgomp.c++/loop-13.C: New test.
9698 * testsuite/libgomp.c++/loop-14.C: New test.
9699 * testsuite/libgomp.c++/loop-15.C: New test.
9700
9701 2019-07-31 Jakub Jelinek <jakub (a] redhat.com>
9702
9703 PR middle-end/91301
9704 * testsuite/libgomp.c++/for-27.C: New test.
9705
9706 2019-07-23 Steven G. Kargl <kargl (a] gcc.gnu.org>
9707
9708 * testsuite/libgomp.fortran/reduction4.f90: Update BOZ usage.
9709 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
9710
9711 2019-07-20 Jakub Jelinek <jakub (a] redhat.com>
9712
9713 * testsuite/libgomp.c-c++-common/loop-1.c: New test.
9714
9715 2019-07-08 Jakub Jelinek <jakub (a] redhat.com>
9716
9717 * testsuite/libgomp.c++/scan-13.C: Replace xfail with target x86.
9718 * testsuite/libgomp.c++/scan-16.C: Likewise.
9719
9720 2019-07-06 Jakub Jelinek <jakub (a] redhat.com>
9721
9722 * testsuite/libgomp.c/scan-19.c: New test.
9723 * testsuite/libgomp.c/scan-20.c: New test.
9724
9725 * testsuite/libgomp.c/scan-11.c: New test.
9726 * testsuite/libgomp.c/scan-12.c: New test.
9727 * testsuite/libgomp.c/scan-13.c: New test.
9728 * testsuite/libgomp.c/scan-14.c: New test.
9729 * testsuite/libgomp.c/scan-15.c: New test.
9730 * testsuite/libgomp.c/scan-16.c: New test.
9731 * testsuite/libgomp.c/scan-17.c: New test.
9732 * testsuite/libgomp.c/scan-18.c: New test.
9733 * testsuite/libgomp.c++/scan-9.C: New test.
9734 * testsuite/libgomp.c++/scan-10.C: New test.
9735 * testsuite/libgomp.c++/scan-11.C: New test.
9736 * testsuite/libgomp.c++/scan-12.C: New test.
9737 * testsuite/libgomp.c++/scan-13.C: New test.
9738 * testsuite/libgomp.c++/scan-14.C: New test.
9739 * testsuite/libgomp.c++/scan-15.C: New test.
9740 * testsuite/libgomp.c++/scan-16.C: New test.
9741
9742 2019-07-04 Jakub Jelinek <jakub (a] redhat.com>
9743
9744 * testsuite/libgomp.c/scan-9.c: New test.
9745 * testsuite/libgomp.c/scan-10.c: New test.
9746
9747 2019-07-03 Jakub Jelinek <jakub (a] redhat.com>
9748
9749 * testsuite/libgomp.c++/scan-1.C: New test.
9750 * testsuite/libgomp.c++/scan-2.C: New test.
9751 * testsuite/libgomp.c++/scan-3.C: New test.
9752 * testsuite/libgomp.c++/scan-4.C: New test.
9753 * testsuite/libgomp.c++/scan-5.C: New test.
9754 * testsuite/libgomp.c++/scan-6.C: New test.
9755 * testsuite/libgomp.c++/scan-7.C: New test.
9756 * testsuite/libgomp.c++/scan-8.C: New test.
9757 * testsuite/libgomp.c/scan-1.c: New test.
9758 * testsuite/libgomp.c/scan-2.c: New test.
9759 * testsuite/libgomp.c/scan-3.c: New test.
9760 * testsuite/libgomp.c/scan-4.c: New test.
9761 * testsuite/libgomp.c/scan-5.c: New test.
9762 * testsuite/libgomp.c/scan-6.c: New test.
9763 * testsuite/libgomp.c/scan-7.c: New test.
9764 * testsuite/libgomp.c/scan-8.c: New test.
9765
9766 2019-06-18 Thomas Schwinge <thomas (a] codesourcery.com>
9767
9768 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: New file.
9769 * testsuite/libgomp.oacc-c-c++-common/firstprivate-mappings-1.c:
9770 Likewise.
9771
9772 * testsuite/libgomp.fortran/allocatable3.f90: Add missing results
9773 check.
9774
9775 2019-06-18 Cesar Philippidis <cesar (a] codesourcery.com>
9776
9777 * testsuite/libgomp.oacc-fortran/allocatable-array-1.f90: New
9778 file.
9779
9780 2019-06-18 Thomas Schwinge <thomas (a] codesourcery.com>
9781
9782 PR fortran/90743
9783 * oacc-parallel.c (GOACC_parallel_keyed): Handle NULL mapping
9784 case.
9785 * testsuite/libgomp.fortran/target-allocatable-1-1.f90: New file.
9786 * testsuite/libgomp.fortran/target-allocatable-1-2.f90: Likewise.
9787 * testsuite/libgomp.oacc-fortran/allocatable-1-1.f90: Likewise.
9788 * testsuite/libgomp.oacc-fortran/allocatable-1-2.f90: Likewise.
9789
9790 PR testsuite/90861
9791 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Update.
9792
9793 PR middle-end/90862
9794 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Update.
9795
9796 2019-06-16 Tom de Vries <tdevries (a] suse.de>
9797
9798 PR tree-optimization/89376
9799 * testsuite/libgomp.oacc-c-c++-common/pr89376.c: New test.
9800
9801 2019-06-15 Tom de Vries <tdevries (a] suse.de>
9802
9803 PR tree-optimization/89713
9804 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Expect no bar.sync.
9805 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Same.
9806
9807 2019-06-15 Jakub Jelinek <jakub (a] redhat.com>
9808
9809 PR middle-end/90779
9810 * testsuite/libgomp.c/pr90779.c: New test.
9811 * testsuite/libgomp.fortran/pr90779.f90: New test.
9812
9813 2019-06-15 Tom de Vries <tdevries (a] suse.de>
9814
9815 PR tree-optimization/90009
9816 * testsuite/libgomp.oacc-c-c++-common/pr90009.c: New test.
9817
9818 2019-06-13 Feng Xue <fxue (a] os.amperecomputing.com>
9819
9820 PR tree-optimization/89713
9821 * testsuite/libgomp.oacc-c-c++-common/pr84955-1.c: New test.
9822
9823 2019-06-11 Jakub Jelinek <jakub (a] redhat.com>
9824
9825 PR target/90811
9826 * testsuite/libgomp.c/pr90811.c: New test.
9827
9828 2019-06-05 Jakub Jelinek <jakub (a] redhat.com>
9829
9830 * testsuite/libgomp.c++/lastprivate-conditional-1.C: New test.
9831 * testsuite/libgomp.c++/lastprivate-conditional-2.C: New test.
9832
9833 2019-06-04 Jakub Jelinek <jakub (a] redhat.com>
9834
9835 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: New test.
9836 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: New test.
9837 * testsuite/libgomp.c-c++-common/lastprivate-conditional-9.c: New test.
9838 * testsuite/libgomp.c-c++-common/lastprivate-conditional-10.c: New test.
9839
9840 2019-05-30 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
9841
9842 * configure.ac: Call AX_COUNT_CPUS.
9843 Substitute CPU_COUNT.
9844 * testsuite/Makefile.am (check-am): Use CPU_COUNT as processor
9845 count fallback.
9846 * aclocal.m4: Regenerate.
9847 * configure: Regenerate.
9848 * Makefile.in, testsuite/Makefile.in: Regenerate.
9849
9850 2019-05-29 Jakub Jelinek <jakub (a] redhat.com>
9851
9852 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: Rename
9853 to ...
9854 * testsuite/libgomp.c-c++-common/lastprivate-conditional-4.c: ... this.
9855 * testsuite/libgomp.c-c++-common/lastprivate-conditional-5.c: New test.
9856 * testsuite/libgomp.c-c++-common/lastprivate-conditional-6.c: New test.
9857
9858 2019-05-27 Jakub Jelinek <jakub (a] redhat.com>
9859
9860 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: New test.
9861
9862 * testsuite/libgomp.c-c++-common/lastprivate-conditional-3.c: New test.
9863
9864 PR libgomp/90641
9865 * work.c (gomp_init_work_share): Instead of aligning final ordered
9866 value to multiples of long long alignment, align to that the
9867 first part (ordered team ids) and if inline_ordered_team_ids
9868 is not on a long long alignment boundary within the structure,
9869 use __alignof__ (long long) - 1 pad size always.
9870 * loop.c (GOMP_loop_start): Fix *mem computation if
9871 inline_ordered_team_ids is not aligned on long long alignment boundary
9872 within the structure.
9873 * loop-ull.c (GOMP_loop_ull_start): Likewise.
9874 * sections.c (GOMP_sections2_start): Likewise.
9875
9876 2019-05-24 Jakub Jelinek <jakub (a] redhat.com>
9877
9878 * testsuite/libgomp.c-c++-common/lastprivate-conditional-1.c: New test.
9879 * testsuite/libgomp.c-c++-common/lastprivate-conditional-2.c: New test.
9880
9881 PR libgomp/90585
9882 * plugin/plugin-hsa.c: Include gstdint.h. Include inttypes.h only if
9883 HAVE_INTTYPES_H is defined.
9884 (print_uint64_t): New typedef.
9885 (PRIu64): Define if HAVE_INTTYPES_H is not defined.
9886 (print_kernel_dispatch, run_kernel): Use PRIu64 macro instead of
9887 "lu", cast uint64_t HSA_DEBUG and fprintf arguments to print_uint64_t.
9888 (release_kernel_dispatch): Likewise. Cast shadow->debug to uintptr_t
9889 before casting to void *.
9890 * plugin/plugin-nvptx.c: Include gstdint.h instead of stdint.h.
9891 * oacc-mem.c: Don't include config.h nor stdint.h.
9892 * target.c: Don't include config.h.
9893 * oacc-cuda.c: Likewise.
9894 * oacc-host.c: Don't include stdint.h.
9895
9896 2019-05-20 Jakub Jelinek <jakub (a] redhat.com>
9897
9898 PR libgomp/90527
9899 * alloc.c (_GNU_SOURCE): Define.
9900
9901 2019-05-17 Thomas Schwinge <thomas (a] codesourcery.com>
9902
9903 * acc_prof.h: New file.
9904 * oacc-profiling.c: Likewise.
9905 * Makefile.am (nodist_libsubinclude_HEADERS, libgomp_la_SOURCES):
9906 Add these, respectively.
9907 * Makefile.in: Regenerate.
9908 * env.c (initialize_env): Call goacc_profiling_initialize.
9909 * oacc-plugin.c (GOMP_PLUGIN_goacc_thread)
9910 (GOMP_PLUGIN_goacc_profiling_dispatch): New functions.
9911 * oacc-plugin.h (GOMP_PLUGIN_goacc_thread)
9912 (GOMP_PLUGIN_goacc_profiling_dispatch): Declare.
9913 * libgomp.map (OACC_2.5.1): Add acc_prof_lookup,
9914 acc_prof_register, acc_prof_unregister, and acc_register_library.
9915 (GOMP_PLUGIN_1.3): Add GOMP_PLUGIN_goacc_profiling_dispatch, and
9916 GOMP_PLUGIN_goacc_thread.
9917 * oacc-int.h (struct goacc_thread): Add prof_info, api_info,
9918 prof_callbacks_enabled members.
9919 (goacc_prof_enabled, goacc_profiling_initialize)
9920 (_goacc_profiling_dispatch_p, _goacc_profiling_setup_p)
9921 (goacc_profiling_dispatch): Declare.
9922 (GOACC_PROF_ENABLED, GOACC_PROFILING_DISPATCH_P)
9923 (GOACC_PROFILING_SETUP_P): Define.
9924 * oacc-async.c (acc_async_test, acc_async_test_all, acc_wait)
9925 (acc_wait_async, acc_wait_all, acc_wait_all_async): Update for
9926 OpenACC Profiling Interface.
9927 * oacc-cuda.c (acc_get_current_cuda_device)
9928 (acc_get_current_cuda_context, acc_get_cuda_stream)
9929 (acc_set_cuda_stream): Likewise.
9930 * oacc-init.c (acc_init_1, goacc_attach_host_thread_to_device)
9931 (acc_init, acc_set_device_type, acc_get_device_type)
9932 (acc_get_device_num, goacc_lazy_initialize): Likewise.
9933 * oacc-mem.c (acc_malloc, acc_free, memcpy_tofrom_device)
9934 (acc_deviceptr, acc_hostptr, acc_is_present, acc_map_data)
9935 (acc_unmap_data, present_create_copy, delete_copyout)
9936 (update_dev_host): Likewise.
9937 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_data_start)
9938 (GOACC_data_end, GOACC_enter_exit_data, GOACC_update, GOACC_wait):
9939 Likewise.
9940 * plugin/plugin-nvptx.c (nvptx_exec, nvptx_alloc, nvptx_free)
9941 (GOMP_OFFLOAD_openacc_exec, GOMP_OFFLOAD_openacc_async_exec):
9942 Likewise.
9943 * libgomp.texi: Update.
9944 * testsuite/libgomp.oacc-c-c++-common/acc_prof-dispatch-1.c: New
9945 file.
9946 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Likewise.
9947 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
9948 Likewise.
9949 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
9950 Likewise.
9951 * testsuite/libgomp.oacc-c-c++-common/acc_prof-valid_bytes-1.c:
9952 Likewise.
9953 * testsuite/libgomp.oacc-c-c++-common/acc_prof-version-1.c:
9954 Likewise.
9955
9956 2019-05-13 Chung-Lin Tang <cltang (a] codesourcery.com>
9957
9958 * libgomp-plugin.h (struct goacc_asyncqueue): Declare.
9959 (struct goacc_asyncqueue_list): Likewise.
9960 (goacc_aq): Likewise.
9961 (goacc_aq_list): Likewise.
9962 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
9963 (GOMP_OFFLOAD_openacc_async_test): Remove.
9964 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
9965 (GOMP_OFFLOAD_openacc_async_wait): Remove.
9966 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
9967 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
9968 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
9969 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
9970 (GOMP_OFFLOAD_openacc_exec): Adjust declaration.
9971 (GOMP_OFFLOAD_openacc_cuda_get_stream): Likewise.
9972 (GOMP_OFFLOAD_openacc_cuda_set_stream): Likewise.
9973 (GOMP_OFFLOAD_openacc_async_exec): Declare.
9974 (GOMP_OFFLOAD_openacc_async_construct): Declare.
9975 (GOMP_OFFLOAD_openacc_async_destruct): Declare.
9976 (GOMP_OFFLOAD_openacc_async_test): Declare.
9977 (GOMP_OFFLOAD_openacc_async_synchronize): Declare.
9978 (GOMP_OFFLOAD_openacc_async_serialize): Declare.
9979 (GOMP_OFFLOAD_openacc_async_queue_callback): Declare.
9980 (GOMP_OFFLOAD_openacc_async_host2dev): Declare.
9981 (GOMP_OFFLOAD_openacc_async_dev2host): Declare.
9982
9983 * libgomp.h (struct acc_dispatch_t): Define 'async' sub-struct.
9984 (gomp_acc_insert_pointer): Adjust declaration.
9985 (gomp_copy_host2dev): New declaration.
9986 (gomp_copy_dev2host): Likewise.
9987 (gomp_map_vars_async): Likewise.
9988 (gomp_unmap_tgt): Likewise.
9989 (gomp_unmap_vars_async): Likewise.
9990 (gomp_fini_device): Likewise.
9991
9992 * oacc-async.c (get_goacc_thread): New function.
9993 (get_goacc_thread_device): New function.
9994 (lookup_goacc_asyncqueue): New function.
9995 (get_goacc_asyncqueue): New function.
9996 (acc_async_test): Adjust code to use new async design.
9997 (acc_async_test_all): Likewise.
9998 (acc_wait): Likewise.
9999 (acc_wait_async): Likewise.
10000 (acc_wait_all): Likewise.
10001 (acc_wait_all_async): Likewise.
10002 (goacc_async_free): New function.
10003 (goacc_init_asyncqueues): Likewise.
10004 (goacc_fini_asyncqueues): Likewise.
10005 * oacc-cuda.c (acc_get_cuda_stream): Adjust code to use new async
10006 design.
10007 (acc_set_cuda_stream): Likewise.
10008 * oacc-host.c (host_openacc_exec): Adjust parameters, remove 'async'.
10009 (host_openacc_register_async_cleanup): Remove.
10010 (host_openacc_async_exec): New function.
10011 (host_openacc_async_test): Adjust parameters.
10012 (host_openacc_async_test_all): Remove.
10013 (host_openacc_async_wait): Remove.
10014 (host_openacc_async_wait_async): Remove.
10015 (host_openacc_async_wait_all): Remove.
10016 (host_openacc_async_wait_all_async): Remove.
10017 (host_openacc_async_set_async): Remove.
10018 (host_openacc_async_synchronize): New function.
10019 (host_openacc_async_serialize): New function.
10020 (host_openacc_async_host2dev): New function.
10021 (host_openacc_async_dev2host): New function.
10022 (host_openacc_async_queue_callback): New function.
10023 (host_openacc_async_construct): New function.
10024 (host_openacc_async_destruct): New function.
10025 (struct gomp_device_descr host_dispatch): Remove initialization of old
10026 interface, add initialization of new async sub-struct.
10027 * oacc-init.c (acc_shutdown_1): Adjust to use gomp_fini_device.
10028 (goacc_attach_host_thread_to_device): Remove old async code usage.
10029 * oacc-int.h (goacc_init_asyncqueues): New declaration.
10030 (goacc_fini_asyncqueues): Likewise.
10031 (goacc_async_copyout_unmap_vars): Likewise.
10032 (goacc_async_free): Likewise.
10033 (get_goacc_asyncqueue): Likewise.
10034 (lookup_goacc_asyncqueue): Likewise.
10035 * oacc-mem.c (memcpy_tofrom_device): Adjust code to use new async
10036 design.
10037 (present_create_copy): Adjust code to use new async design.
10038 (delete_copyout): Likewise.
10039 (update_dev_host): Likewise.
10040 (gomp_acc_insert_pointer): Add async parameter, adjust code to use new
10041 async design.
10042 (gomp_acc_remove_pointer): Adjust code to use new async design.
10043 * oacc-parallel.c (GOACC_parallel_keyed): Adjust code to use new async
10044 design.
10045 (GOACC_enter_exit_data): Likewise.
10046 (goacc_wait): Likewise.
10047 (GOACC_update): Likewise.
10048 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Change to assert fail
10049 when called, warn as obsolete in comment.
10050 * target.c (goacc_device_copy_async): New function.
10051 (gomp_copy_host2dev): Remove 'static', add goacc_asyncqueue parameter,
10052 add goacc_device_copy_async case.
10053 (gomp_copy_dev2host): Likewise.
10054 (gomp_map_vars_existing): Add goacc_asyncqueue parameter, adjust code.
10055 (gomp_map_pointer): Likewise.
10056 (gomp_map_fields_existing): Likewise.
10057 (gomp_map_vars_internal): New always_inline function, renamed from
10058 gomp_map_vars.
10059 (gomp_map_vars): Implement by calling gomp_map_vars_internal.
10060 (gomp_map_vars_async): Implement by calling gomp_map_vars_internal,
10061 passing goacc_asyncqueue argument.
10062 (gomp_unmap_tgt): Remove static, add attribute_hidden.
10063 (gomp_unref_tgt): New function.
10064 (gomp_unmap_vars_internal): New always_inline function, renamed from
10065 gomp_unmap_vars.
10066 (gomp_unmap_vars): Implement by calling gomp_unmap_vars_internal.
10067 (gomp_unmap_vars_async): Implement by calling
10068 gomp_unmap_vars_internal, passing goacc_asyncqueue argument.
10069 (gomp_fini_device): New function.
10070 (gomp_exit_data): Adjust gomp_copy_dev2host call.
10071 (gomp_load_plugin_for_device): Remove old interface, adjust to load
10072 new async interface.
10073 (gomp_target_fini): Adjust code to call gomp_fini_device.
10074
10075 * plugin/plugin-nvptx.c (struct cuda_map): Remove.
10076 (struct ptx_stream): Remove.
10077 (struct nvptx_thread): Remove current_stream field.
10078 (cuda_map_create): Remove.
10079 (cuda_map_destroy): Remove.
10080 (map_init): Remove.
10081 (map_fini): Remove.
10082 (map_pop): Remove.
10083 (map_push): Remove.
10084 (struct goacc_asyncqueue): Define.
10085 (struct nvptx_callback): Define.
10086 (struct ptx_free_block): Define.
10087 (struct ptx_device): Remove null_stream, active_streams, async_streams,
10088 stream_lock, and next fields.
10089 (enum ptx_event_type): Remove.
10090 (struct ptx_event): Remove.
10091 (ptx_event_lock): Remove.
10092 (ptx_events): Remove.
10093 (init_streams_for_device): Remove.
10094 (fini_streams_for_device): Remove.
10095 (select_stream_for_async): Remove.
10096 (nvptx_init): Remove ptx_events and ptx_event_lock references.
10097 (nvptx_attach_host_thread_to_device): Remove CUDA_ERROR_NOT_PERMITTED
10098 case.
10099 (nvptx_open_device): Add free_blocks initialization, remove
10100 init_streams_for_device call.
10101 (nvptx_close_device): Remove fini_streams_for_device call, add
10102 free_blocks destruct code.
10103 (event_gc): Remove.
10104 (event_add): Remove.
10105 (nvptx_exec): Adjust parameters and code.
10106 (nvptx_free): Likewise.
10107 (nvptx_host2dev): Remove.
10108 (nvptx_dev2host): Remove.
10109 (nvptx_set_async): Remove.
10110 (nvptx_async_test): Remove.
10111 (nvptx_async_test_all): Remove.
10112 (nvptx_wait): Remove.
10113 (nvptx_wait_async): Remove.
10114 (nvptx_wait_all): Remove.
10115 (nvptx_wait_all_async): Remove.
10116 (nvptx_get_cuda_stream): Remove.
10117 (nvptx_set_cuda_stream): Remove.
10118 (GOMP_OFFLOAD_alloc): Adjust code.
10119 (GOMP_OFFLOAD_free): Likewise.
10120 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
10121 (GOMP_OFFLOAD_openacc_exec): Adjust parameters and code.
10122 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
10123 (GOMP_OFFLOAD_openacc_async_wait): Remove.
10124 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
10125 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
10126 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
10127 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
10128 (cuda_free_argmem): New function.
10129 (GOMP_OFFLOAD_openacc_async_exec): New plugin hook function.
10130 (GOMP_OFFLOAD_openacc_create_thread_data): Adjust code.
10131 (GOMP_OFFLOAD_openacc_cuda_get_stream): Adjust code.
10132 (GOMP_OFFLOAD_openacc_cuda_set_stream): Adjust code.
10133 (GOMP_OFFLOAD_openacc_async_construct): New plugin hook function.
10134 (GOMP_OFFLOAD_openacc_async_destruct): New plugin hook function.
10135 (GOMP_OFFLOAD_openacc_async_test): Remove and re-implement.
10136 (GOMP_OFFLOAD_openacc_async_synchronize): New plugin hook function.
10137 (GOMP_OFFLOAD_openacc_async_serialize): New plugin hook function.
10138 (GOMP_OFFLOAD_openacc_async_queue_callback): New plugin hook function.
10139 (cuda_callback_wrapper): New function.
10140 (cuda_memcpy_sanity_check): New function.
10141 (GOMP_OFFLOAD_host2dev): Remove and re-implement.
10142 (GOMP_OFFLOAD_dev2host): Remove and re-implement.
10143 (GOMP_OFFLOAD_openacc_async_host2dev): New plugin hook function.
10144 (GOMP_OFFLOAD_openacc_async_dev2host): New plugin hook function.
10145
10146 2019-05-07 Thomas Schwinge <thomas (a] codesourcery.com>
10147
10148 PR target/87835
10149 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Update.
10150
10151 2019-05-06 Thomas Schwinge <thomas (a] codesourcery.com>
10152
10153 * oacc-parallel.c: Add comments to legacy entry points (GCC 5).
10154
10155 2019-03-27 Kevin Buettner <kevinb (a] redhat.com>
10156
10157 * team.c (gomp_team_start): Initialize pool->threads[0].
10158
10159 2019-02-22 Thomas Schwinge <thomas (a] codesourcery.com>
10160
10161 * testsuite/libgomp.oacc-c++/c++.exp: Specify
10162 "-foffload=$offload_target".
10163 * testsuite/libgomp.oacc-c/c.exp: Likewise.
10164 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
10165 * testsuite/lib/libgomp.exp
10166 (check_effective_target_openacc_nvidia_accel_configured): Remove,
10167 as (conceptually) merged into
10168 check_effective_target_openacc_nvidia_accel_selected. Adjust all
10169 users.
10170
10171 * plugin/configfrag.ac: Populate and AC_SUBST offload_targets.
10172 * testsuite/libgomp-test-support.exp.in: Adjust.
10173 * testsuite/lib/libgomp.exp: Likewise. Don't populate
10174 openacc_device_types_s.
10175 (offload_target_to_openacc_device_type): New proc.
10176 * testsuite/libgomp.oacc-c++/c++.exp: Adjust.
10177 * testsuite/libgomp.oacc-c/c.exp: Likewise.
10178 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
10179 * Makefile.in: Regenerate.
10180 * configure: Likewise.
10181 * testsuite/Makefile.in: Likewise.
10182
10183 * plugin/configfrag.ac: Populate and AC_SUBST offload_plugins
10184 instead of offload_targets, and AC_DEFINE_UNQUOTED OFFLOAD_PLUGINS
10185 instead of OFFLOAD_TARGETS.
10186 * target.c (gomp_target_init): Adjust.
10187 * testsuite/libgomp-test-support.exp.in: Likewise.
10188 * testsuite/lib/libgomp.exp: Likewise. Populate
10189 openacc_device_types_s instead of offload_targets_s_openacc.
10190 (check_effective_target_openacc_nvidia_accel_selected)
10191 (check_effective_target_openacc_host_selected): Adjust.
10192 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
10193 * testsuite/libgomp.oacc-c/c.exp: Likewise.
10194 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
10195 * Makefile.in: Regenerate.
10196 * config.h.in: Likewise.
10197 * configure: Likewise.
10198 * testsuite/Makefile.in: Likewise.
10199
10200 * testsuite/lib/libgomp.exp: Error out for unknown offload target.
10201 * testsuite/libgomp.oacc-c++/c++.exp: Likewise. Report if
10202 "offloading: supported, but hardware not accessible".
10203 * testsuite/libgomp.oacc-c/c.exp: Likewise.
10204 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
10205
10206 2019-02-19 Chung-Lin Tang <cltang (a] codesourcery.com>
10207
10208 PR c/87924
10209 * oacc-parallel.c (GOACC_parallel_keyed): Remove condition on call to
10210 goacc_wait().
10211 (goacc_wait): Handle ACC_ASYNC_NOVAL case, remove goacc_thread() call
10212 and related adjustment.
10213
10214 2019-01-30 Jakub Jelinek <jakub (a] redhat.com>
10215
10216 PR c++/88988
10217 * testsuite/libgomp.c++/pr88988.C: New test.
10218
10219 2019-01-28 Jakub Jelinek <jakub (a] redhat.com>
10220
10221 PR middle-end/89002
10222 * testsuite/libgomp.c/pr89002.c: New test.
10223
10224 2019-01-28 Richard Biener <rguenther (a] suse.de>
10225
10226 PR testsuite/89064
10227 PR tree-optimization/86865
10228 * testsuite/libgomp.graphite/force-parallel-5.c: XFAIL.
10229
10230 2019-01-24 Tom de Vries <tdevries (a] suse.de>
10231
10232 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_fini_device): Free ptx_devices
10233 once instantiated_devices drops to 0.
10234
10235 2019-01-23 Tom de Vries <tdevries (a] suse.de>
10236
10237 PR target/PR88946
10238 * plugin/plugin-nvptx.c (cuda_map_destroy): Use CUDA_CALL_NOCHECK for
10239 cuMemFree.
10240 (nvptx_exec): Don't call map_push if mapnum == 0.
10241 * testsuite/libgomp.oacc-c-c++-common/pr88946.c: New test.
10242
10243 2019-01-23 Tom de Vries <tdevries (a] suse.de>
10244
10245 PR target/88941
10246 PR target/88939
10247 * plugin/plugin-nvptx.c (cuda_map_destroy): Handle map->active case.
10248 (map_fini): Remove "assert (!s->map->active)".
10249 * testsuite/libgomp.oacc-c-c++-common/pr88941.c: New test.
10250
10251 2019-01-23 Tom de Vries <tdevries (a] suse.de>
10252
10253 PR target/87835
10254 * plugin/plugin-nvptx.c (map_push): Fix adding of allocated element.
10255 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: New test.
10256
10257 2019-01-15 Tom de Vries <tdevries (a] suse.de>
10258
10259 PR target/80547
10260 * testsuite/libgomp.oacc-c-c++-common/gang-reduction-var-assignment.c:
10261 New test.
10262
10263 2019-01-12 Tom de Vries <tdevries (a] suse.de>
10264
10265 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: New test.
10266 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c: New test.
10267 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c: New test.
10268 * testsuite/libgomp.oacc-fortran/gemm-2.f90: New test.
10269
10270 2019-01-12 Tom de Vries <tdevries (a] suse.de>
10271
10272 * plugin/plugin-nvptx.c (nvptx_exec): Update error message.
10273
10274 2019-01-12 Tom de Vries <tdevries (a] suse.de>
10275
10276 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: New test.
10277 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c: New test.
10278 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c: New test.
10279
10280 2019-01-12 Tom de Vries <tdevries (a] suse.de>
10281
10282 PR target/85486
10283 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: New test.
10284 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: New test.
10285
10286 2019-01-12 Tom de Vries <tdevries (a] suse.de>
10287
10288 PR target/85381
10289 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: New test.
10290 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: New test.
10291
10292 2019-01-12 Tom de Vries <tdevries (a] suse.de>
10293
10294 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: New test.
10295 * testsuite/libgomp.oacc-fortran/gemm.f90: New test.
10296 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-10.c: New test.
10297
10298 2019-01-12 Tom de Vries <tdevries (a] suse.de>
10299
10300 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: New test.
10301 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c: New test.
10302 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c: New test.
10303
10304 2019-01-12 Tom de Vries <tdevries (a] suse.de>
10305
10306 * plugin/plugin-nvptx.c (nvptx_exec): Update insufficient hardware
10307 resources diagnostic.
10308
10309 2019-01-12 Tom de Vries <tdevries (a] suse.de>
10310
10311 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: Expect
10312 vector length to be 128.
10313 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Expect vector
10314 length 2097152 to be reduced to 1024 instead of 32.
10315
10316 2019-01-11 Thomas Schwinge <thomas (a] codesourcery.com>
10317 James Norris <jnorris (a] codesourcery.com>
10318
10319 * libgomp.texi: Better distinguish OpenACC and OpenMP "Runtime
10320 Library Routines", and "Environment Variables".
10321
10322 2019-01-11 Tom de Vries <tdevries (a] suse.de>
10323
10324 * plugin/plugin-nvptx.c (nvptx_exec): Prevent vector_length 64 and
10325 num_workers 16.
10326
10327 2019-01-11 Tom de Vries <tdevries (a] suse.de>
10328
10329 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Remove
10330 -foffload=-w.
10331 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Same.
10332 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Same.
10333 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Same.
10334 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Same.
10335
10336 2019-01-11 Tom de Vries <tdevries (a] suse.de>
10337
10338 * testsuite/libgomp.oacc-c-c++-common/insufficient-resources.c: New
10339 test.
10340
10341 2019-01-10 Nathan Sidwell <nathan (a] acm.org>
10342 Julian Brown <julian (a] codesourcery.com>
10343
10344 PR lto/71959
10345 * testsuite/libgomp.oacc-c++/pr71959-aux.cc: New.
10346 * testsuite/libgomp.oacc-c++/pr71959.C: New.
10347
10348 2019-01-09 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
10349
10350 * config/rtems/bar.c: Include "../linux/bar.c" and delete copy
10351 and paste code.
10352
10353 2019-01-09 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
10354
10355 * config/rtems/affinity-fmt.c: New file. Include affinity-fmt.c,
10356 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
10357 write.
10358
10359 2019-01-09 Tom de Vries <tdevries (a] suse.de>
10360
10361 PR target/88756
10362 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (ng, nw, vl): Use
10363 #define instead of "const int".
10364 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c (ng, nw, vl): Same.
10365 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c (ng, nw, vl): Same.
10366 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (ng, nw, vl): Same.
10367 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c (ng, nw, vl): Same.
10368
10369 2019-01-09 Tom de Vries <tdevries (a] suse.de>
10370
10371 * plugin/plugin-nvptx.c (nvptx_exec): Make sure to launch with at least
10372 one worker.
10373
10374 2019-01-07 Tom de Vries <tdevries (a] suse.de>
10375
10376 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: Fix
10377 GOMP_OPENACC_DIM argument.
10378
10379 2019-01-03 Tom de Vries <tdevries (a] suse.de>
10380
10381 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: New test.
10382 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: New test.
10383
10384 2019-01-01 Jakub Jelinek <jakub (a] redhat.com>
10385
10386 Update copyright years.
10387
10388 2019-01-01 Jakub Jelinek <jakub (a] redhat.com>
10389
10390 * libgomp.texi: Bump @copying's copyright year.
10391
10392 2018-12-28 Thomas Schwinge <thomas (a] codesourcery.com>
10393
10394 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_parallel)
10395 (GOACC_data_start, GOACC_enter_exit_data, GOACC_update)
10396 (GOACC_declare): Redefine the "device" argument to "flags".
10397
10398 2018-12-28 Thomas Schwinge <thomas (a] codesourcery.com>
10399 Cesar Philippidis <cesar (a] codesourcery.com>
10400
10401 * target.c (struct gomp_coalesce_chunk): New structure.
10402 (struct gomp_coalesce_buf): Update the chunks member to use that
10403 type. Adjust all users.
10404
10405 2018-12-19 Tom de Vries <tdevries (a] suse.de>
10406
10407 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: New test.
10408 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: New test.
10409 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: New test.
10410
10411 2018-12-19 Tom de Vries <tdevries (a] suse.de>
10412
10413 * testsuite/lib/libgomp.exp: Add load_lib of scanoffloadrtl.exp.
10414 * testsuite/libgomp.oacc-c-c++-common/nvptx-merged-loop.c: Move from
10415 gcc/testsuite/gcc.dg/goacc.
10416 * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Same.
10417
10418 2018-12-14 Thomas Schwinge <thomas (a] codesourcery.com>
10419 Chung-Lin Tang <cltang (a] codesourcery.com>
10420
10421 * oacc-mem.c (acc_present_or_create): Remove definition and change
10422 to alias of acc_create.
10423 (acc_present_or_copyin): Remove definition and change to alias of
10424 acc_copyin.
10425 * oacc-parallel.c (GOACC_enter_exit_data): Call acc_create instead
10426 of acc_present_or_create.
10427 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Remove.
10428 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
10429 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
10430 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
10431 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
10432 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
10433 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
10434 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
10435 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
10436 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
10437 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
10438 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
10439 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
10440 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
10441 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
10442 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
10443
10444 2018-12-14 Thomas Schwinge <thomas (a] codesourcery.com>
10445
10446 PR libgomp/88495
10447 * plugin/plugin-nvptx.c (nvptx_wait_async): Don't refuse
10448 "identical parameters".
10449 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Update.
10450 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Remove.
10451
10452 PR libgomp/88484
10453 * oacc-parallel.c (GOACC_wait): Correct handling for "async >= 0".
10454 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: New file.
10455
10456 PR libgomp/88407
10457 * plugin/plugin-nvptx.c (nvptx_async_test, nvptx_wait)
10458 (nvptx_wait_async): Unseen async-argument is a no-op.
10459 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Update.
10460 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Likewise.
10461 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
10462 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
10463 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
10464 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Merge into...
10465 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: ... this. Update.
10466 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Merge into...
10467 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: ... this. Update
10468
10469 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Revise.
10470 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
10471
10472 2018-12-14 Chung-Lin Tang <cltang (a] codesourcery.com>
10473
10474 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Adjust.
10475 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
10476 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
10477
10478 2018-12-14 Thomas Schwinge <thomas (a] codesourcery.com>
10479
10480 PR libgomp/88370
10481 * libgomp.texi (acc_get_current_cuda_context, acc_get_cuda_stream)
10482 (acc_set_cuda_stream): Clarify.
10483 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
10484 "async_valid_p".
10485 * plugin/plugin-nvptx.c (nvptx_set_cuda_stream): Refuse "async ==
10486 acc_async_sync".
10487 * testsuite/libgomp.oacc-c-c++-common/acc_set_cuda_stream-1.c: New file.
10488 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Likewise.
10489 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Update.
10490 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
10491
10492 2018-12-14 Tom de Vries <tdevries (a] suse.de>
10493
10494 * testsuite/libgomp.c-c++-common/function-not-offloaded-aux.c: New test.
10495 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: New test.
10496 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: New test.
10497 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c: New test.
10498 * testsuite/libgomp.oacc-c-c++-common/variable-not-offloaded.c: New test.
10499
10500 2018-12-13 Tom de Vries <tdevries (a] suse.de>
10501
10502 * affinity-fmt.c (gomp_print_string): New function, factored out of ...
10503 (omp_display_affinity, gomp_display_affinity_thread): ... here, and ...
10504 * fortran.c (omp_display_affinity_): ... here.
10505 * libgomp.h (gomp_print_string): Declare.
10506 * config/nvptx/affinity-fmt.c: New file. Include affinity-fmt.c,
10507 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
10508 write.
10509
10510 2018-12-13 Jakub Jelinek <jakub (a] redhat.com>
10511
10512 PR libgomp/88460
10513 * testsuite/libgomp.c++/for-24.C (results): Include it in
10514 omp declare target region.
10515 (main): Use map (always, tofrom: results) instead of
10516 map (tofrom: results).
10517
10518 2018-12-12 Jakub Jelinek <jakub (a] redhat.com>
10519
10520 PR fortran/88463
10521 * testsuite/libgomp.fortran/pr88463-1.f90: New test.
10522 * testsuite/libgomp.fortran/pr88463-2.f90: New test.
10523
10524 * testsuite/libgomp.c-c++-common/for-16.c: New test.
10525
10526 2018-12-12 Andreas Schwab <schwab (a] suse.de>
10527
10528 * config/linux/ia64/futex.h (sys_futex0): Don't mark r12 as
10529 clobbered.
10530
10531 2018-12-09 Thomas Koenig <tkoenig (a] gcc.gnu.org>
10532
10533 PR fortran/88411
10534 * testsuite/libgomp.fortran/async_io_8.f90: New test.
10535
10536 2018-12-09 Thomas Schwinge <thomas (a] codesourcery.com>
10537 Jakub Jelinek <jakub (a] redhat.com>
10538
10539 * target.c (gomp_map_vars): Call gomp_copy_host2dev instead of
10540 devicep->host2dev_func.
10541
10542 2018-12-08 Jakub Jelinek <jakub (a] redhat.com>
10543
10544 PR libgomp/87995
10545 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: Require
10546 tls_runtime effective target.
10547 (t): New threadprivate variable.
10548 (main): Set t in threads which execute iterations of the worksharing
10549 loop. Propagate that to the task after the loop and don't abort
10550 if the current taskgroup hasn't been cancelled.
10551
10552 2018-12-02 Jakub Jelinek <jakub (a] redhat.com>
10553
10554 * testsuite/libgomp.c/task-reduction-3.c: New test.
10555
10556 * testsuite/libgomp.c-c++-common/cancel-taskgroup-4.c: New test.
10557
10558 2018-11-30 Cesar Philippidis <cesar (a] codesourcery.com>
10559
10560 PR libgomp/88288
10561 * oacc-parallel.c (GOACC_parallel_keyed): Add offset to devaddrs.
10562 * testsuite/libgomp.oacc-c-c++-common/pr88288.c: New test.
10563
10564 2018-11-30 Thomas Schwinge <thomas (a] codesourcery.com>
10565
10566 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: New file.
10567
10568 2018-10-19 Richard Biener <rguenther (a] suse.de>
10569
10570 PR tree-optimization/88182
10571 * testsuite/libgomp.c++/pr88182.C: Move to g++.dg/gomp.
10572
10573 2018-11-26 Jakub Jelinek <jakub (a] redhat.com>
10574
10575 * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Drop dejagnu.
10576 (RUNTEST): Don't define.
10577 (RUNTESTDEFAULTFLAGS): Add.
10578 (check-DEJAGNU, site.exp, distclean-DEJAGNU): New goals.
10579 (distclean-am): Depend on distclean-DEJAGNU.
10580 (check-am): If -j% option is present in MFLAGS and if
10581 `getconf _NPROCESSORS_ONLN` is more than 8, export OMP_NUM_THREADS=8.
10582 (.PHONY): Add check-DEJAGNU and distclean-DEJAGNU.
10583 * testsuite/Makefile.in: Regenerated.
10584
10585 2018-11-26 Richard Biener <rguenther (a] suse.de>
10586
10587 PR tree-optimization/88182
10588 * testsuite/libgomp.c++/pr88182.C: New testcase.
10589
10590 2018-11-20 Jakub Jelinek <jakub (a] redhat.com>
10591
10592 PR bootstrap/88106
10593 * config/mingw32/affinity-fmt.c: New file.
10594
10595 2018-11-09 Jakub Jelinek <jakub (a] redhat.com>
10596
10597 * affinity-fmt.c: Include inttypes.h if HAVE_INTTYPES_H.
10598 (gomp_display_affinity): Use __builtin_choose_expr to handle
10599 properly handle argument having integral, or pointer or some other
10600 type. If inttypes.h is available and PRIx64 is defined, use PRIx64
10601 with uint64_t type instead of %llx and unsigned long long.
10602
10603 * testsuite/libgomp.c-c++-common/task-reduction-13.c: New test.
10604 * testsuite/libgomp.c-c++-common/task-reduction-14.c: New test.
10605
10606 2018-11-08 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
10607
10608 * affinity.c: Include <string.h>, <stdio.h>.
10609 (gomp_display_affinity_place): Remove cpusetp.
10610 * teams.c: Include <limits.h>.
10611
10612 2018-11-08 Jakub Jelinek <jakub (a] redhat.com>
10613
10614 * testsuite/libgomp.c-c++-common/task-reduction-8.c (bar): Add
10615 in_reduction clause for s[0].
10616
10617 * affinity.c (gomp_display_affinity_place): New function.
10618 * affinity-fmt.c: New file.
10619 * alloc.c (gomp_aligned_alloc, gomp_aligned_free): New functions.
10620 * config/linux/affinity.c (gomp_display_affinity_place): New function.
10621 * config/nvptx/icv-device.c (omp_get_num_teams, omp_get_team_num):
10622 Move these functions to ...
10623 * config/nvptx/teams.c: ... here. New file.
10624 * config/nvptx/target.c (omp_pause_resource, omp_pause_resource_all):
10625 New functions.
10626 * config/nvptx/team.c (gomp_team_start, gomp_pause_host): New
10627 functions.
10628 * configure.ac: Check for aligned_alloc, posix_memalign, memalign
10629 and _aligned_malloc.
10630 (HAVE_UNAME, HAVE_GETHOSTNAME, HAVE_GETPID): Add new tests.
10631 * configure.tgt: Add -DUSING_INITIAL_EXEC_TLS to XCFLAGS for Linux.
10632 * env.c (gomp_display_affinity_var, gomp_affinity_format_var,
10633 gomp_affinity_format_len): New variables.
10634 (parse_schedule): Parse monotonic and nonmonotonic modifiers in
10635 OMP_SCHEDULE variable. Set GFS_MONOTONIC for monotonic schedules.
10636 (handle_omp_display_env): Display monotonic/nonmonotonic schedule
10637 modifiers. Display (non-default) chunk sizes. Print
10638 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT.
10639 (initialize_env): Don't call pthread_attr_setdetachstate. Handle
10640 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT env vars.
10641 * fortran.c: Include stdio.h and string.h.
10642 (omp_pause_resource, omp_pause_resource_all): Add ialias_redirect.
10643 (omp_get_schedule_, omp_get_schedule_8_): Mask off GFS_MONOTONIC bit.
10644 (omp_set_affinity_format_, omp_get_affinity_format_,
10645 omp_display_affinity_, omp_capture_affinity_, omp_pause_resource_,
10646 omp_pause_resource_all_): New functions.
10647 * icv.c (omp_set_schedule): Mask off omp_sched_monotonic bit in
10648 switch.
10649 * icv-device.c (omp_get_num_teams, omp_get_team_num): Move these
10650 functions to ...
10651 * teams.c: ... here. New file.
10652 * libgomp_g.h: Include gstdint.h.
10653 (GOMP_loop_nonmonotonic_runtime_start,
10654 GOMP_loop_maybe_nonmonotonic_runtime_start, GOMP_loop_start,
10655 GOMP_loop_ordered_start, GOMP_loop_nonmonotonic_runtime_next,
10656 GOMP_loop_maybe_nonmonotonic_runtime_next, GOMP_loop_doacross_start,
10657 GOMP_parallel_loop_nonmonotonic_runtime,
10658 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
10659 GOMP_loop_ull_nonmonotonic_runtime_start,
10660 GOMP_loop_ull_maybe_nonmonotonic_runtime_start, GOMP_loop_ull_start,
10661 GOMP_loop_ull_ordered_start, GOMP_loop_ull_nonmonotonic_runtime_next,
10662 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
10663 GOMP_loop_ull_doacross_start, GOMP_parallel_reductions,
10664 GOMP_taskwait_depend, GOMP_taskgroup_reduction_register,
10665 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
10666 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
10667 GOMP_teams_reg): Declare.
10668 * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Define unless
10669 gomp_aligned_alloc uses fallback implementation.
10670 (gomp_aligned_alloc, gomp_aligned_free): Declare.
10671 (enum gomp_schedule_type): Add GFS_MONOTONIC.
10672 (struct gomp_doacross_work_share): Add extra field.
10673 (struct gomp_work_share): Add task_reductions field.
10674 (struct gomp_taskgroup): Add workshare and reductions fields.
10675 (GOMP_NEEDS_THREAD_HANDLE): Define if needed.
10676 (gomp_thread_handle): New typedef.
10677 (gomp_display_affinity_place, gomp_set_affinity_format,
10678 gomp_display_string, gomp_display_affinity,
10679 gomp_display_affinity_thread): Declare.
10680 (gomp_doacross_init, gomp_doacross_ull_init): Add size_t argument.
10681 (gomp_parallel_reduction_register, gomp_workshare_taskgroup_start,
10682 gomp_workshare_task_reduction_register): Declare.
10683 (gomp_team_start): Add taskgroup argument.
10684 (gomp_pause_host): Declare.
10685 (gomp_init_work_share, gomp_work_share_start): Change bool argument
10686 to size_t.
10687 (gomp_thread_self, gomp_thread_to_pthread_t): New inline functions.
10688 * libgomp.map (GOMP_5.0): Export GOMP_loop_start,
10689 GOMP_loop_ordered_start, GOMP_loop_doacross_start,
10690 GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
10691 GOMP_loop_ull_doacross_start,
10692 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
10693 GOMP_loop_maybe_nonmonotonic_runtime_next,
10694 GOMP_loop_maybe_nonmonotonic_runtime_start,
10695 GOMP_loop_nonmonotonic_runtime_next,
10696 GOMP_loop_nonmonotonic_runtime_start,
10697 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
10698 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
10699 GOMP_loop_ull_nonmonotonic_runtime_next,
10700 GOMP_loop_ull_nonmonotonic_runtime_start,
10701 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
10702 GOMP_parallel_loop_nonmonotonic_runtime, GOMP_parallel_reductions,
10703 GOMP_taskgroup_reduction_register,
10704 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
10705 GOMP_teams_reg and GOMP_taskwait_depend.
10706 (OMP_5.0): Export omp_pause_resource{,_all}{,_},
10707 omp_{capture,display}_affinity{,_}, and
10708 omp_[gs]et_affinity_format{,_}.
10709 * loop.c: Include string.h.
10710 (GOMP_loop_runtime_next): Add ialias.
10711 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
10712 (gomp_loop_static_start, gomp_loop_dynamic_start,
10713 gomp_loop_guided_start, gomp_loop_ordered_static_start,
10714 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
10715 gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
10716 gomp_loop_doacross_guided_start): Adjust gomp_work_share_start
10717 or gomp_doacross_init callers.
10718 (gomp_adjust_sched, GOMP_loop_start, GOMP_loop_ordered_start,
10719 GOMP_loop_doacross_start): New functions.
10720 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
10721 GOMP_loop_doacross_runtime_start, GOMP_parallel_loop_runtime_start):
10722 Mask off GFS_MONOTONIC bit.
10723 (GOMP_loop_maybe_nonmonotonic_runtime_next,
10724 GOMP_loop_maybe_nonmonotonic_runtime_start,
10725 GOMP_loop_nonmonotonic_runtime_next,
10726 GOMP_loop_nonmonotonic_runtime_start,
10727 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
10728 GOMP_parallel_loop_nonmonotonic_runtime): New aliases or wrapper
10729 functions.
10730 (gomp_parallel_loop_start): Pass NULL as taskgroup to
10731 gomp_team_start.
10732 * loop_ull.c: Include string.h.
10733 (GOMP_loop_ull_runtime_next): Add ialias.
10734 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
10735 (gomp_loop_ull_static_start, gomp_loop_ull_dynamic_start,
10736 gomp_loop_ull_guided_start, gomp_loop_ull_ordered_static_start,
10737 gomp_loop_ull_ordered_dynamic_start,
10738 gomp_loop_ull_ordered_guided_start,
10739 gomp_loop_ull_doacross_static_start,
10740 gomp_loop_ull_doacross_dynamic_start,
10741 gomp_loop_ull_doacross_guided_start): Adjust gomp_work_share_start
10742 and gomp_doacross_ull_init callers.
10743 (gomp_adjust_sched, GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
10744 GOMP_loop_ull_doacross_start): New functions.
10745 (GOMP_loop_ull_runtime_start,
10746 GOMP_loop_ull_ordered_runtime_start,
10747 GOMP_loop_ull_doacross_runtime_start): Mask off GFS_MONOTONIC bit.
10748 (GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
10749 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
10750 GOMP_loop_ull_nonmonotonic_runtime_next,
10751 GOMP_loop_ull_nonmonotonic_runtime_start): Likewise.
10752 * Makefile.am (libgomp_la_SOURCES): Add teams.c and affinity-fmt.c.
10753 * omp.h.in (enum omp_sched_t): Add omp_sched_monotonic.
10754 (omp_pause_resource_t, omp_depend_t): New typedefs.
10755 (enum omp_lock_hint_t): Renamed to ...
10756 (enum omp_sync_hint_t): ... this. Define omp_sync_hint_*
10757 enumerators using numbers and omp_lock_hint_* as their aliases.
10758 (omp_lock_hint_t): New typedef. Rename to ...
10759 (omp_sync_hint_t): ... this.
10760 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint): Use
10761 omp_sync_hint_t instead of omp_lock_hint_t.
10762 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
10763 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
10764 Declare.
10765 (omp_target_is_present, omp_target_disassociate_ptr):
10766 Change first argument from void * to const void *.
10767 (omp_target_memcpy, omp_target_memcpy_rect): Change second argument
10768 from void * to const void *.
10769 (omp_target_associate_ptr): Change first and second arguments from
10770 void * to const void *.
10771 * omp_lib.f90.in (omp_pause_resource_kind, omp_pause_soft,
10772 omp_pause_hard): New parameters.
10773 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
10774 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
10775 New interfaces.
10776 * omp_lib.h.in (omp_pause_resource_kind, omp_pause_soft,
10777 omp_pause_hard): New parameters.
10778 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
10779 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
10780 New externals.
10781 * ordered.c (gomp_doacross_init, gomp_doacross_ull_init): Add
10782 EXTRA argument. If not needed to prepare array, if extra is 0,
10783 clear ws->doacross, otherwise allocate just doacross structure and
10784 extra payload. If array is needed, allocate also extra payload.
10785 (GOMP_doacross_post, GOMP_doacross_wait, GOMP_doacross_ull_post,
10786 GOMP_doacross_ull_wait): Handle doacross->array == NULL like
10787 doacross == NULL.
10788 * parallel.c (GOMP_parallel_start): Pass NULL as taskgroup to
10789 gomp_team_start.
10790 (GOMP_parallel): Likewise. Formatting fix.
10791 (GOMP_parallel_reductions): New function.
10792 (GOMP_cancellation_point): If taskgroup has workshare
10793 flag set, check cancelled of prev taskgroup if any.
10794 (GOMP_cancel): If taskgroup has workshare flag set, set cancelled
10795 on prev taskgroup if any.
10796 * sections.c: Include string.h.
10797 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
10798 (GOMP_sections_start): Adjust gomp_work_share_start caller.
10799 (GOMP_sections2_start): New function.
10800 (GOMP_parallel_sections_start, GOMP_parallel_sections):
10801 Pass NULL as taskgroup to gomp_team_start.
10802 * single.c (GOMP_single_start, GOMP_single_copy_start): Adjust
10803 gomp_work_share_start callers.
10804 * target.c (GOMP_target_update_ext, GOMP_target_enter_exit_data):
10805 If taskgroup has workshare flag set, check cancelled on prev
10806 taskgroup if any. Guard all cancellation tests with
10807 gomp_cancel_var test.
10808 (omp_target_is_present, omp_target_disassociate_ptr):
10809 Change ptr argument from void * to const void *.
10810 (omp_target_memcpy): Change src argument from void * to const void *.
10811 (omp_target_memcpy_rect): Likewise.
10812 (omp_target_memcpy_rect_worker): Likewise. Use const char * casts
10813 instead of char * where needed.
10814 (omp_target_associate_ptr): Change host_ptr and device_ptr arguments
10815 from void * to const void *.
10816 (omp_pause_resource, omp_pause_resource_all): New functions.
10817 * task.c (gomp_task_handle_depend): Handle new depend array format
10818 in addition to the old. Handle mutexinoutset kinds the same as
10819 inout for now, handle unspecified kinds.
10820 (gomp_create_target_task): If taskgroup has workshare flag set, check
10821 cancelled on prev taskgroup if any. Guard all cancellation tests with
10822 gomp_cancel_var test. Handle new depend array format count in
10823 addition to the old.
10824 (GOMP_task): Likewise. Adjust function comment.
10825 (gomp_task_run_pre): If taskgroup has workshare flag set, check
10826 cancelled on prev taskgroup if any. Guard all cancellation tests with
10827 gomp_cancel_var test.
10828 (GOMP_taskwait_depend): New function.
10829 (gomp_task_maybe_wait_for_dependencies): Handle new depend array
10830 format in addition to the old. Handle mutexinoutset kinds the same as
10831 inout for now, handle unspecified kinds. Fix a function comment typo.
10832 (gomp_taskgroup_init): New function.
10833 (GOMP_taskgroup_start): Use it.
10834 (gomp_reduction_register, gomp_create_artificial_team,
10835 GOMP_taskgroup_reduction_register,
10836 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
10837 gomp_parallel_reduction_register,
10838 gomp_workshare_task_reduction_register,
10839 gomp_workshare_taskgroup_start,
10840 GOMP_workshare_task_reduction_unregister): New functions.
10841 * taskloop.c (GOMP_taskloop): If taskgroup has workshare flag set,
10842 check cancelled on prev taskgroup if any. Guard all cancellation
10843 tests with gomp_cancel_var test. Handle GOMP_TASK_FLAG_REDUCTION flag
10844 by calling GOMP_taskgroup_reduction_register.
10845 * team.c (gomp_thread_attr): Remove comment.
10846 (struct gomp_thread_start_data): Add handle field.
10847 (gomp_thread_start): Call pthread_detach.
10848 (gomp_new_team): Adjust gomp_init_work_share caller.
10849 (gomp_free_pool_helper): Call pthread_detach.
10850 (gomp_team_start): Add taskgroup argument, initialize implicit
10851 tasks' taskgroup field to that. Don't call
10852 pthread_attr_setdetachstate. Handle OMP_DISPLAY_AFFINITY env var.
10853 (gomp_team_end): Determine nesting by thr->ts.level != 0
10854 rather than thr->ts.team != NULL.
10855 (gomp_pause_pool_helper, gomp_pause_host): New functions.
10856 * work.c (alloc_work_share): Use gomp_aligned_alloc instead of
10857 gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined.
10858 (gomp_init_work_share): Change ORDERED argument from bool to size_t,
10859 if more than 1 allocate also extra payload at the end of array. Never
10860 keep ordered_team_ids NULL, set it to inline_ordered_team_ids instead.
10861 (gomp_work_share_start): Change ORDERED argument from bool to size_t,
10862 return true instead of ws.
10863 * Makefile.in: Regenerated.
10864 * configure: Regenerated.
10865 * config.h.in: Regenerated.
10866 * testsuite/libgomp.c/cancel-for-2.c (foo): Use cancel modifier
10867 in some cases.
10868 * testsuite/libgomp.c-c++-common/cancel-parallel-1.c: New test.
10869 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: New test.
10870 * testsuite/libgomp.c-c++-common/depend-iterator-1.c: New test.
10871 * testsuite/libgomp.c-c++-common/depend-iterator-2.c: New test.
10872 * testsuite/libgomp.c-c++-common/depend-mutexinout-1.c: New test.
10873 * testsuite/libgomp.c-c++-common/depend-mutexinout-2.c: New test.
10874 * testsuite/libgomp.c-c++-common/depobj-1.c: New test.
10875 * testsuite/libgomp.c-c++-common/display-affinity-1.c: New test.
10876 * testsuite/libgomp.c-c++-common/for-10.c: New test.
10877 * testsuite/libgomp.c-c++-common/for-11.c: New test.
10878 * testsuite/libgomp.c-c++-common/for-12.c: New test.
10879 * testsuite/libgomp.c-c++-common/for-13.c: New test.
10880 * testsuite/libgomp.c-c++-common/for-14.c: New test.
10881 * testsuite/libgomp.c-c++-common/for-15.c: New test.
10882 * testsuite/libgomp.c-c++-common/for-2.h: If CONDNE macro is defined,
10883 define a different N(test), don't define N(f0) to N(f14), but instead
10884 define N(f20) to N(f34) using != comparisons.
10885 * testsuite/libgomp.c-c++-common/for-7.c: New test.
10886 * testsuite/libgomp.c-c++-common/for-8.c: New test.
10887 * testsuite/libgomp.c-c++-common/for-9.c: New test.
10888 * testsuite/libgomp.c-c++-common/master-combined-1.c: New test.
10889 * testsuite/libgomp.c-c++-common/pause-1.c: New test.
10890 * testsuite/libgomp.c-c++-common/pause-2.c: New test.
10891 * testsuite/libgomp.c-c++-common/pr66199-10.c: New test.
10892 * testsuite/libgomp.c-c++-common/pr66199-11.c: New test.
10893 * testsuite/libgomp.c-c++-common/pr66199-12.c: New test.
10894 * testsuite/libgomp.c-c++-common/pr66199-13.c: New test.
10895 * testsuite/libgomp.c-c++-common/pr66199-14.c: New test.
10896 * testsuite/libgomp.c-c++-common/simd-1.c: New test.
10897 * testsuite/libgomp.c-c++-common/taskloop-reduction-1.c: New test.
10898 * testsuite/libgomp.c-c++-common/taskloop-reduction-2.c: New test.
10899 * testsuite/libgomp.c-c++-common/taskloop-reduction-3.c: New test.
10900 * testsuite/libgomp.c-c++-common/taskloop-reduction-4.c: New test.
10901 * testsuite/libgomp.c-c++-common/task-reduction-11.c: New test.
10902 * testsuite/libgomp.c-c++-common/task-reduction-12.c: New test.
10903 * testsuite/libgomp.c-c++-common/task-reduction-1.c: New test.
10904 * testsuite/libgomp.c-c++-common/task-reduction-2.c: New test.
10905 * testsuite/libgomp.c-c++-common/task-reduction-3.c: New test.
10906 * testsuite/libgomp.c-c++-common/task-reduction-4.c: New test.
10907 * testsuite/libgomp.c-c++-common/task-reduction-5.c: New test.
10908 * testsuite/libgomp.c-c++-common/task-reduction-6.c: New test.
10909 * testsuite/libgomp.c-c++-common/task-reduction-7.c: New test.
10910 * testsuite/libgomp.c-c++-common/task-reduction-8.c: New test.
10911 * testsuite/libgomp.c-c++-common/task-reduction-9.c: New test.
10912 * testsuite/libgomp.c-c++-common/taskwait-depend-1.c: New test.
10913 * testsuite/libgomp.c++/depend-1.C: New test.
10914 * testsuite/libgomp.c++/depend-iterator-1.C: New test.
10915 * testsuite/libgomp.c++/depobj-1.C: New test.
10916 * testsuite/libgomp.c++/for-16.C: New test.
10917 * testsuite/libgomp.c++/for-21.C: New test.
10918 * testsuite/libgomp.c++/for-22.C: New test.
10919 * testsuite/libgomp.c++/for-23.C: New test.
10920 * testsuite/libgomp.c++/for-24.C: New test.
10921 * testsuite/libgomp.c++/for-25.C: New test.
10922 * testsuite/libgomp.c++/for-26.C: New test.
10923 * testsuite/libgomp.c++/taskloop-reduction-1.C: New test.
10924 * testsuite/libgomp.c++/taskloop-reduction-2.C: New test.
10925 * testsuite/libgomp.c++/taskloop-reduction-3.C: New test.
10926 * testsuite/libgomp.c++/taskloop-reduction-4.C: New test.
10927 * testsuite/libgomp.c++/task-reduction-10.C: New test.
10928 * testsuite/libgomp.c++/task-reduction-11.C: New test.
10929 * testsuite/libgomp.c++/task-reduction-12.C: New test.
10930 * testsuite/libgomp.c++/task-reduction-13.C: New test.
10931 * testsuite/libgomp.c++/task-reduction-14.C: New test.
10932 * testsuite/libgomp.c++/task-reduction-15.C: New test.
10933 * testsuite/libgomp.c++/task-reduction-16.C: New test.
10934 * testsuite/libgomp.c++/task-reduction-17.C: New test.
10935 * testsuite/libgomp.c++/task-reduction-18.C: New test.
10936 * testsuite/libgomp.c++/task-reduction-19.C: New test.
10937 * testsuite/libgomp.c/task-reduction-1.c: New test.
10938 * testsuite/libgomp.c++/task-reduction-1.C: New test.
10939 * testsuite/libgomp.c/task-reduction-2.c: New test.
10940 * testsuite/libgomp.c++/task-reduction-2.C: New test.
10941 * testsuite/libgomp.c++/task-reduction-3.C: New test.
10942 * testsuite/libgomp.c++/task-reduction-4.C: New test.
10943 * testsuite/libgomp.c++/task-reduction-5.C: New test.
10944 * testsuite/libgomp.c++/task-reduction-6.C: New test.
10945 * testsuite/libgomp.c++/task-reduction-7.C: New test.
10946 * testsuite/libgomp.c++/task-reduction-8.C: New test.
10947 * testsuite/libgomp.c++/task-reduction-9.C: New test.
10948 * testsuite/libgomp.c/teams-1.c: New test.
10949 * testsuite/libgomp.c/teams-2.c: New test.
10950 * testsuite/libgomp.c/thread-limit-4.c: New test.
10951 * testsuite/libgomp.c/thread-limit-5.c: New test.
10952 * testsuite/libgomp.fortran/display-affinity-1.f90: New test.
10953
10954 2018-11-06 Chung-Lin Tang <cltang (a] codesourcery.com>
10955
10956 * oacc-mem.c (memcpy_tofrom_device): New function, combined from
10957 acc_memcpy_to/from_device functions, now with async parameter.
10958 (acc_memcpy_to_device): Modify to use memcpy_tofrom_device.
10959 (acc_memcpy_from_device): Likewise.
10960 (acc_memcpy_to_device_async): New API function.
10961 (acc_memcpy_from_device_async): Likewise.
10962 (present_create_copy): Add async parameter and async setting/unsetting.
10963 (acc_create): Adjust present_create_copy call.
10964 (acc_copyin): Likewise.
10965 (acc_present_or_create): Likewise.
10966 (acc_present_or_copyin): Likewise.
10967 (acc_create_async): New API function.
10968 (acc_copyin_async): New API function.
10969 (delete_copyout): Add async parameter and async setting/unsetting.
10970 (acc_delete): Adjust delete_copyout call.
10971 (acc_copyout): Likewise.
10972 (acc_delete_async): New API function.
10973 (acc_copyout_async): Likewise.
10974 (update_dev_host): Add async parameter and async setting/unsetting.
10975 (acc_update_device): Adjust update_dev_host call.
10976 (acc_update_self): Likewise.
10977 (acc_update_device_async): New API function.
10978 (acc_update_self_async): Likewise.
10979 * openacc.h (acc_copyin_async): Declare new API function.
10980 (acc_create_async): Likewise.
10981 (acc_copyout_async): Likewise.
10982 (acc_delete_async): Likewise.
10983 (acc_update_device_async): Likewise.
10984 (acc_update_self_async): Likewise.
10985 (acc_memcpy_to_device_async): Likewise.
10986 (acc_memcpy_from_device_async): Likewise.
10987 * openacc_lib.h (acc_copyin_async_32_h): New subroutine.
10988 (acc_copyin_async_64_h): New subroutine.
10989 (acc_copyin_async_array_h): New subroutine.
10990 (acc_create_async_32_h): New subroutine.
10991 (acc_create_async_64_h): New subroutine.
10992 (acc_create_async_array_h): New subroutine.
10993 (acc_copyout_async_32_h): New subroutine.
10994 (acc_copyout_async_64_h): New subroutine.
10995 (acc_copyout_async_array_h): New subroutine.
10996 (acc_delete_async_32_h): New subroutine.
10997 (acc_delete_async_64_h): New subroutine.
10998 (acc_delete_async_array_h): New subroutine.
10999 (acc_update_device_async_32_h): New subroutine.
11000 (acc_update_device_async_64_h): New subroutine.
11001 (acc_update_device_async_array_h): New subroutine.
11002 (acc_update_self_async_32_h): New subroutine.
11003 (acc_update_self_async_64_h): New subroutine.
11004 (acc_update_self_async_array_h): New subroutine.
11005 * openacc.f90 (acc_copyin_async_32_h): New subroutine.
11006 (acc_copyin_async_64_h): New subroutine.
11007 (acc_copyin_async_array_h): New subroutine.
11008 (acc_create_async_32_h): New subroutine.
11009 (acc_create_async_64_h): New subroutine.
11010 (acc_create_async_array_h): New subroutine.
11011 (acc_copyout_async_32_h): New subroutine.
11012 (acc_copyout_async_64_h): New subroutine.
11013 (acc_copyout_async_array_h): New subroutine.
11014 (acc_delete_async_32_h): New subroutine.
11015 (acc_delete_async_64_h): New subroutine.
11016 (acc_delete_async_array_h): New subroutine.
11017 (acc_update_device_async_32_h): New subroutine.
11018 (acc_update_device_async_64_h): New subroutine.
11019 (acc_update_device_async_array_h): New subroutine.
11020 (acc_update_self_async_32_h): New subroutine.
11021 (acc_update_self_async_64_h): New subroutine.
11022 (acc_update_self_async_array_h): New subroutine.
11023 * libgomp.map (OACC_2.5): Add acc_copyin_async*, acc_copyout_async*,
11024 acc_copyout_finalize_async*, acc_create_async*, acc_delete_async*,
11025 acc_delete_finalize_async*, acc_memcpy_from_device_async*,
11026 acc_memcpy_to_device_async*, acc_update_device_async*, and
11027 acc_update_self_async* entries.
11028 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: New test.
11029 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: New test.
11030 * testsuite/libgomp.oacc-fortran/lib-16.f90: New test.
11031
11032 2018-10-31 Joseph Myers <joseph (a] codesourcery.com>
11033
11034 PR bootstrap/82856
11035 * Makefile.am: Include multilib.am
11036 (AUTOMAKE_OPTIONS): Add info-in-builddir.
11037 (CLEANFILES): Remove libgomp.info.
11038 * configure.ac: Remove AC_PREREQ.
11039 * testsuite/Makefile.am (RUNTEST): Remove quotes.
11040 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
11041 Regenerate.
11042
11043 2018-10-29 Joseph Myers <joseph (a] codesourcery.com>
11044 Julian Brown <julian (a] codesourcery.com>
11045
11046 * testsuite/libgomp.oacc-c++/this.C: New.
11047
11048 2018-09-18 Cesar Philippidis <cesar (a] codesourcery.com>
11049
11050 * plugin/plugin-nvptx.c (struct cuda_map): New.
11051 (struct ptx_stream): Replace d, h, h_begin, h_end, h_next, h_prev,
11052 h_tail with (cuda_map *) map.
11053 (cuda_map_create): New function.
11054 (cuda_map_destroy): New function.
11055 (map_init): Update to use a linked list of cuda_map objects.
11056 (map_fini): Likewise.
11057 (map_pop): Likewise.
11058 (map_push): Likewise. Return CUdeviceptr instead of void.
11059 (init_streams_for_device): Remove stales references to ptx_stream
11060 members.
11061 (select_stream_for_async): Likewise.
11062 (nvptx_exec): Update call to map_init.
11063
11064 2018-09-09 Cesar Philippidis <cesar (a] codesourcery.com>
11065 Julian Brown <julian (a] codesourcery.com>
11066
11067 PR middle-end/86336
11068 * testsuite/libgomp.oacc-c++/non-scalar-data.C: Remove XFAIL.
11069
11070 2018-08-21 Nicolas Koenig <koenigni (a] gcc.gnu.org>
11071 Thomas Koenig <tkoenig (a] gcc.gnu.org>
11072
11073 PR fortran/25829
11074 * testsuite/libgomp.fortran/async_io_1.f90: New test.
11075 * testsuite/libgomp.fortran/async_io_2.f90: New test.
11076 * testsuite/libgomp.fortran/async_io_3.f90: New test.
11077 * testsuite/libgomp.fortran/async_io_4.f90: New test.
11078 * testsuite/libgomp.fortran/async_io_5.f90: New test.
11079 * testsuite/libgomp.fortran/async_io_6.f90: New test.
11080 * testsuite/libgomp.fortran/async_io_7.f90: New test.
11081
11082 2018-08-13 Cesar Philippidis <cesar (a] codesourcery.com>
11083 Tom de Vries <tdevries (a] suse.de>
11084
11085 PR target/85590
11086 * plugin/cuda/cuda.h (CUoccupancyB2DSize): New typedef.
11087 (cuOccupancyMaxPotentialBlockSize): Declare.
11088 * plugin/cuda-lib.def (cuOccupancyMaxPotentialBlockSize): New
11089 CUDA_ONE_CALL_MAYBE_NULL.
11090 * plugin/plugin-nvptx.c (CUDA_VERSION < 6050): Define
11091 CUoccupancyB2DSize and declare
11092 cuOccupancyMaxPotentialBlockSize.
11093 (nvptx_exec): Use cuOccupancyMaxPotentialBlockSize to set the
11094 default num_gangs and num_workers when the driver supports it.
11095
11096 2018-08-08 Tom de Vries <tdevries (a] suse.de>
11097
11098 * plugin/cuda-lib.def (cuLinkAddData_v2, cuLinkCreate_v2): Declare using
11099 CUDA_ONE_CALL_MAYBE_NULL.
11100 * plugin/plugin-nvptx.c (cuLinkAddData, cuLinkCreate): Undef and declare.
11101 (cuLinkAddData_v2, cuLinkCreate_v2): Declare.
11102 (link_ptx): Fall back to cuLinkAddData/cuLinkCreate if the _v2 versions
11103 are not found.
11104
11105 2018-08-08 Tom de Vries <tdevries (a] suse.de>
11106
11107 * plugin/cuda-lib.def (cuGetErrorString): Use CUDA_ONE_CALL_MAYBE_NULL.
11108 * plugin/plugin-nvptx.c (cuda_error): Handle if cuGetErrorString is not
11109 present.
11110
11111 2018-08-08 Tom de Vries <tdevries (a] suse.de>
11112
11113 * plugin/plugin-nvptx.c
11114 (CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR): Define.
11115 (nvptx_open_device): Use
11116 CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR.
11117
11118 2018-08-08 Tom de Vries <tdevries (a] suse.de>
11119
11120 * plugin/plugin-nvptx.c (cuda_error): Move declaration of cuGetErrorString ...
11121 (cuGetErrorString): ... here. Guard with CUDA_VERSION < 6000.
11122
11123 2018-08-07 Tom de Vries <tdevries (a] suse.de>
11124
11125 * plugin/plugin-nvptx.c (DO_PRAGMA): Define.
11126 (struct cuda_lib_s): Add def/undef of CUDA_ONE_CALL_MAYBE_NULL.
11127 (init_cuda_lib): Add new param to CUDA_ONE_CALL_1. Add arg to
11128 corresponding call in CUDA_ONE_CALL. Add def/undef of
11129 CUDA_ONE_CALL_MAYBE_NULL.
11130 (CUDA_CALL_EXISTS): Define.
11131
11132 2018-08-07 Tom de Vries <tdevries (a] suse.de>
11133
11134 * plugin/plugin-nvptx.c (struct cuda_lib_s, init_cuda_lib): Put
11135 CUDA_ONE_CALL defines right before the cuda-lib.def include, and the
11136 corresponding undefs right after.
11137
11138 2018-08-04 Tom de Vries <tdevries (a] suse.de>
11139
11140 * plugin/configfrag.ac: For --without-cuda-driver, set
11141 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB to no. Handle
11142 CUDA_DRIVER_INCLUDE == no and CUDA_DRIVER_LIB == no.
11143 * configure: Regenerate.
11144
11145 2018-08-02 Tom de Vries <tdevries (a] suse.de>
11146
11147 PR target/86660
11148 * testsuite/libgomp.oacc-c++/routine-1-auto.C: Remove -fno-exceptions.
11149 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Same.
11150 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
11151 Same.
11152 * testsuite/libgomp.oacc-c++/routine-1-template.C: Same.
11153 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C: Same.
11154 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Same.
11155
11156 2018-08-01 Cesar Philippidis <cesar (a] codesourcery.com>
11157 Thomas Schwinge <thomas (a] codesourcery.com>
11158
11159 * config/nvptx/oacc-parallel.c: Truncate.
11160
11161 2018-08-01 Cesar Philippidis <cesar (a] codesourcery.com>
11162 James Norris <jnorris (a] codesourcery.com>
11163
11164 * plugin/plugin-nvptx.c (struct map): Removed.
11165 (map_init, map_pop): Remove use of struct map.
11166 (map_push): Likewise and change argument list.
11167 * testsuite/libgomp.oacc-c-c++-common/mapping-1.c: New
11168
11169 2018-08-01 Tom de Vries <tdevries (a] suse.de>
11170
11171 * plugin/cuda-lib.def: New file. Factor out of ...
11172 * plugin/plugin-nvptx.c (CUDA_CALLS): ... here.
11173 (struct cuda_lib_s, init_cuda_lib): Include cuda-lib.def instead of
11174 using CUDA_CALLS.
11175
11176 2018-07-31 Andre Vieira <andre.simoesdiasvieira (a] arm.com>
11177
11178 Revert 'AsyncI/O patch committed'.
11179 2018-07-25 Nicolas Koenig <koenigni (a] gcc.gnu.org>
11180 Thomas Koenig <tkoenig (a] gcc.gnu.org>
11181
11182 PR fortran/25829
11183 * testsuite/libgomp.fortran/async_io_1.f90: New test.
11184 * testsuite/libgomp.fortran/async_io_2.f90: New test.
11185 * testsuite/libgomp.fortran/async_io_3.f90: New test.
11186 * testsuite/libgomp.fortran/async_io_4.f90: New test.
11187 * testsuite/libgomp.fortran/async_io_5.f90: New test.
11188 * testsuite/libgomp.fortran/async_io_6.f90: New test.
11189 * testsuite/libgomp.fortran/async_io_7.f90: New test.
11190
11191 2018-07-30 Tom de Vries <tdevries (a] suse.de>
11192
11193 * plugin/plugin-nvptx.c (MIN, MAX): Redefine.
11194 (nvptx_exec): Ensure worker and vector default dims don't exceed
11195 targ_fn->max_threads_per_block.
11196
11197 2018-07-30 Tom de Vries <tdevries (a] suse.de>
11198
11199 * plugin/plugin-nvptx.c (struct ptx_device): Add default_dims field.
11200 (nvptx_open_device): Init default_dims for device.
11201 (nvptx_exec): Use default_dims from device.
11202
11203 2018-07-26 Jakub Jelinek <jakub (a] redhat.com>
11204
11205 PR testsuite/86660
11206 * testsuite/libgomp.c++/for-15.C (results): Include it in
11207 omp declare target region.
11208 (main): Use map (always, tofrom: results) instead of
11209 map (tofrom: results).
11210
11211 PR middle-end/86660
11212 * testsuite/libgomp.c/pr86660.c: New test.
11213
11214 2018-07-26 Cesar Philippidis <cesar (a] codesourcery.com>
11215 Tom de Vries <tdevries (a] suse.de>
11216
11217 * plugin/plugin-nvptx.c (nvptx_exec): Error if the hardware doesn't have
11218 sufficient resources to launch a kernel, and give a hint on how to fix
11219 it.
11220
11221 2018-07-26 Cesar Philippidis <cesar (a] codesourcery.com>
11222 Tom de Vries <tdevries (a] suse.de>
11223
11224 * plugin/plugin-nvptx.c (struct ptx_device): Add warp_size,
11225 max_threads_per_block and max_threads_per_multiprocessor fields.
11226 (nvptx_open_device): Initialize new fields.
11227 (nvptx_exec): Use num_sms, and new fields.
11228
11229 2018-07-26 Tom de Vries <tdevries (a] suse.de>
11230
11231 * testsuite/libgomp.oacc-fortran/lib-12.f90: Move acc_async_test calls
11232 to correct locations. Remove xfail.
11233
11234 2018-07-26 Tom de Vries <tdevries (a] suse.de>
11235
11236 * testsuite/libgomp.oacc-fortran/lib-13.f90: Replace acc_wait_all with
11237 acc_wait. Move acc_async_test calls to correct locations. Remove
11238 xfail.
11239
11240 2018-07-25 Nicolas Koenig <koenigni (a] gcc.gnu.org>
11241 Thomas Koenig <tkoenig (a] gcc.gnu.org>
11242
11243 PR fortran/25829
11244 * testsuite/libgomp.fortran/async_io_1.f90: New test.
11245 * testsuite/libgomp.fortran/async_io_2.f90: New test.
11246 * testsuite/libgomp.fortran/async_io_3.f90: New test.
11247 * testsuite/libgomp.fortran/async_io_4.f90: New test.
11248 * testsuite/libgomp.fortran/async_io_5.f90: New test.
11249 * testsuite/libgomp.fortran/async_io_6.f90: New test.
11250 * testsuite/libgomp.fortran/async_io_7.f90: New test.
11251
11252 2018-07-17 Jakub Jelinek <jakub (a] redhat.com>
11253
11254 PR middle-end/86542
11255 * testsuite/libgomp.c++/pr86542.C: New test.
11256
11257 PR middle-end/86539
11258 * testsuite/libgomp.c++/pr86539.C: New test.
11259
11260 2018-07-11 Jakub Jelinek <jakub (a] redhat.com>
11261
11262 PR c++/86443
11263 * testsuite/libgomp.c++/for-15.C (a): Remove unused variable.
11264 (results): Make sure the variable is not inside declare target region.
11265 (qux): Remove unused function.
11266
11267 2018-07-10 Jakub Jelinek <jakub (a] redhat.com>
11268
11269 PR c++/86443
11270 * testsuite/libgomp.c++/for-15.C: New test.
11271
11272 2018-06-26 Jakub Jelinek <jakub (a] redhat.com>
11273
11274 PR c++/86291
11275 * testsuite/libgomp.c++/pr86291.C: New test.
11276
11277 2018-06-24 Gerald Pfeifer <gerald (a] pfeifer.com>
11278
11279 * libgomp.texi (Top): Move www.openmp.org to https.
11280 (Enabling OpenMP): Ditto.
11281 (omp_get_active_level): Ditto.
11282 (omp_get_ancestor_thread_num): Ditto.
11283 (omp_get_cancellation): Ditto.
11284 (omp_get_default_device): Ditto.
11285 (omp_get_dynamic): Ditto.
11286 (omp_get_level): Ditto.
11287 (omp_get_max_active_levels): Ditto.
11288 (omp_get_max_task_priority): Ditto.
11289 (omp_get_max_threads): Ditto.
11290 (omp_get_nested): Ditto.
11291 (omp_get_num_devices): Ditto.
11292 (omp_get_num_procs): Ditto.
11293 (omp_get_num_teams): Ditto.
11294 (omp_get_num_threads): Ditto.
11295 (omp_get_proc_bind): Ditto.
11296 (omp_get_schedule): Ditto.
11297 (omp_get_team_num): Ditto.
11298 (omp_get_team_size): Ditto.
11299 (omp_get_thread_limit): Ditto.
11300 (omp_get_thread_num): Ditto.
11301 (omp_in_parallel): Ditto.
11302 (omp_in_final): Ditto.
11303 (omp_is_initial_device): Ditto.
11304 (omp_set_default_device): Ditto.
11305 (omp_set_dynamic): Ditto.
11306 (omp_set_max_active_levels): Ditto.
11307 (omp_set_nested): Ditto.
11308 (omp_set_num_threads): Ditto.
11309 (omp_set_schedule): Ditto.
11310 (omp_init_lock): Ditto.
11311 (omp_set_lock): Ditto.
11312 (omp_test_lock): Ditto.
11313 (omp_unset_lock): Ditto.
11314 (omp_destroy_lock): Ditto.
11315 (omp_init_nest_lock): Ditto.
11316 (omp_set_nest_lock): Ditto.
11317 (omp_test_nest_lock): Ditto.
11318 (omp_unset_nest_lock): Ditto.
11319 (omp_destroy_nest_lock): Ditto.
11320 (omp_get_wtick): Ditto.
11321 (omp_get_wtime): Ditto.
11322 (OMP_CANCELLATION): Ditto.
11323 (OMP_DISPLAY_ENV): Ditto.
11324 (OMP_DEFAULT_DEVICE): Ditto.
11325 (OMP_DYNAMIC): Ditto.
11326 (OMP_MAX_ACTIVE_LEVELS): Ditto.
11327 (OMP_MAX_TASK_PRIORITY): Ditto.
11328 (OMP_NESTED): Ditto.
11329 (OMP_NUM_THREADS): Ditto.
11330 (OMP_PROC_BIND): Ditto.
11331 (OMP_PLACES): Ditto.
11332 (OMP_STACKSIZE): Ditto.
11333 (OMP_SCHEDULE): Ditto.
11334 (OMP_THREAD_LIMIT): Ditto.
11335 (OMP_WAIT_POLICY): Ditto.
11336
11337 2018-06-22 Cesar Philippidis <cesar (a] codesourcery.com>
11338 James Norris <jnorris (a] codesourcery.com>
11339 Julian Brown <julian (a] codesourcery.com>
11340 Thomas Schwinge <thomas (a] codesourcery.com>
11341 Tom de Vries <tom (a] codesourcery.com>
11342
11343 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Don't force "-O2".
11344 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Update.
11345 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Likewise.
11346 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Likewise.
11347 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
11348 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
11349 * testsuite/libgomp.oacc-c++/non-scalar-data.C: New file.
11350 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
11351 * testsuite/libgomp.oacc-c-c++-common/enter-data.c: Likewise.
11352 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c:
11353 Likewise.
11354 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
11355 Likewise.
11356 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
11357 Likewise.
11358 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c:
11359 Likewise.
11360 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c:
11361 Likewise.
11362 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
11363 Likewise.
11364 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
11365 Likewise.
11366 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
11367 Likewise.
11368 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
11369 Likewise.
11370 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
11371 Likewise.
11372 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
11373 Likewise.
11374 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
11375 Likewise.
11376 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
11377 Likewise.
11378 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
11379 Likewise.
11380 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
11381 Likewise.
11382 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
11383 Likewise.
11384 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
11385 Likewise.
11386 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
11387 Likewise.
11388 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
11389 Likewise.
11390 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
11391 Likewise.
11392 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
11393 Likewise.
11394 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
11395 Likewise.
11396 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
11397 Likewise.
11398 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
11399 Likewise.
11400 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
11401 Likewise.
11402 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
11403 Likewise.
11404 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
11405 Likewise.
11406 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.c: Likewise.
11407 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.h: Likewise.
11408 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-2.h: Likewise.
11409 * testsuite/libgomp.oacc-fortran/cublas-fixed.h: Likewise.
11410 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Likewise.
11411 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
11412 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
11413 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Likewise.
11414 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
11415 Likewise.
11416 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
11417 Likewise.
11418 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Likewise.
11419 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Likewise.
11420 * testsuite/libgomp.oacc-fortran/kernels-independent.f90:
11421 Likewise.
11422 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Likewise.
11423 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Likewise.
11424 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
11425 Likewise.
11426 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
11427 Likewise.
11428 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
11429 Likewise.
11430 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
11431 Likewise.
11432 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
11433 Likewise.
11434 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
11435 Likewise.
11436 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
11437 Likewise.
11438 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
11439 Likewise.
11440 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
11441 Likewise.
11442 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
11443 Likewise.
11444 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
11445 Likewise.
11446 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
11447 Likewise.
11448 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
11449 Likewise.
11450 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
11451 Likewise.
11452 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
11453 Likewise.
11454 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
11455 * testsuite/libgomp.oacc-fortran/lib-13.f90: Likewise.
11456 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
11457 * testsuite/libgomp.oacc-fortran/lib-15.f90: Likewise.
11458 * testsuite/libgomp.oacc-fortran/parallel-loop-1.f90: Likewise.
11459 * testsuite/libgomp.oacc-fortran/reference-reductions.f90: Likewise.
11460 * testsuite/libgomp.oacc-fortran/vector-routine.f90: Likewise.
11461
11462 2018-06-20 Chung-Lin Tang <cltang (a] codesourcery.com>
11463 Thomas Schwinge <thomas (a] codesourcery.com>
11464 Cesar Philippidis <cesar (a] codesourcery.com>
11465
11466 * libgomp.h (struct splay_tree_key_s): Add dynamic_refcount member.
11467 (gomp_acc_remove_pointer): Update declaration.
11468 (gomp_acc_declare_allocate): Declare.
11469 (gomp_remove_var): Declare.
11470 * libgomp.map (OACC_2.5): Define.
11471 * oacc-mem.c (acc_map_data): Update refcount.
11472 (acc_unmap_data): Likewise.
11473 (present_create_copy): Likewise.
11474 (acc_create): Add FLAG_PRESENT when calling present_create_copy.
11475 (acc_copyin): Likewise.
11476 (FLAG_FINALIZE): Define.
11477 (delete_copyout): Update dynamic refcounts, add support for FINALIZE.
11478 (acc_delete_finalize): New function.
11479 (acc_delete_finalize_async): New function.
11480 (acc_copyout_finalize): New function.
11481 (acc_copyout_finalize_async): New function.
11482 (gomp_acc_insert_pointer): Update refcounts.
11483 (gomp_acc_remove_pointer): Return if data is not present on the
11484 accelerator.
11485 * oacc-parallel.c (find_pset): Rename to find_pointer.
11486 (find_pointer): Add support for GOMP_MAP_POINTER.
11487 (handle_ftn_pointers): New function.
11488 (GOACC_parallel_keyed): Update refcounts of variables.
11489 (GOACC_enter_exit_data): Add support for finalized data mappings.
11490 Add support for GOMP_MAP_{TO,ALLOC,RELESE,FROM}. Update handling
11491 of fortran arrays.
11492 (GOACC_update): Add support for GOMP_MAP_{ALWAYS_POINTER,TO,FROM}.
11493 (GOACC_declare): Add support for GOMP_MAP_RELEASE, remove support
11494 for GOMP_MAP_FORCE_FROM.
11495 * openacc.f90 (module openacc_internal): Add
11496 acc_copyout_finalize_{32_h,64_h,array_h,_l}, and
11497 acc_delete_finalize_{32_h,64_h,array_h,_l}. Add interfaces for
11498 acc_copyout_finalize and acc_delete_finalize.
11499 (acc_copyout_finalize_32_h): New subroutine.
11500 (acc_copyout_finalize_64_h): New subroutine.
11501 (acc_copyout_finalize_array_h): New subroutine.
11502 (acc_delete_finalize_32_h): New subroutine.
11503 (acc_delete_finalize_64_h): New subroutine.
11504 (acc_delete_finalize_array_h): New subroutine.
11505 * openacc.h (acc_copyout_finalize): Declare.
11506 (acc_copyout_finalize_async): Declare.
11507 (acc_delete_finalize): Declare.
11508 (acc_delete_finalize_async): Declare.
11509 * openacc_lib.h (acc_copyout_finalize): New interface.
11510 (acc_delete_finalize): New interface.
11511 * target.c (gomp_map_vars): Update dynamic_refcount.
11512 (gomp_remove_var): New function.
11513 (gomp_unmap_vars): Use it.
11514 (gomp_unload_image_from_device): Likewise.
11515 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Update test
11516 case to utilize OpenACC 2.5 data clause semantics.
11517 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
11518 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
11519 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
11520 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
11521 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
11522 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
11523 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
11524 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
11525 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
11526 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
11527 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
11528 * testsuite/libgomp.oacc-fortran/data-5.f90: New test.
11529 * testsuite/libgomp.oacc-fortran/data-already-1.f: Update test case to
11530 utilize OpenACC 2.5 data clause semantics.
11531 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
11532 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
11533 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
11534 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
11535 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
11536 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
11537 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
11538 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
11539 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
11540
11541 2018-05-21 Janus Weil <janus (a] gcc.gnu.org>
11542
11543 PR fortran/85841
11544 PR testsuite/85865
11545 * testsuite/libgomp.fortran/collapse2.f90: Add option "-std=legacy".
11546 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
11547 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
11548 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
11549 * testsuite/libgomp.fortran/task2.f90: Ditto.
11550 * testsuite/libgomp.fortran/vla1.f90: Ditto.
11551 * testsuite/libgomp.fortran/vla2.f90: Ditto.
11552 * testsuite/libgomp.fortran/vla3.f90: Ditto.
11553 * testsuite/libgomp.fortran/vla4.f90: Ditto.
11554 * testsuite/libgomp.fortran/vla5.f90: Ditto.
11555 * testsuite/libgomp.fortran/vla6.f90: Ditto.
11556 * testsuite/libgomp.fortran/vla8.f90: Ditto.
11557 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Ditto.
11558 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Ditto.
11559
11560 2018-05-18 Cesar Philippidis <cesar (a] codesourcery.com>
11561
11562 PR c++/85782
11563 * testsuite/libgomp.oacc-c-c++-common/pr85782.c: New test.
11564
11565 2018-05-09 Tom de Vries <tom (a] codesourcery.com>
11566
11567 PR libgomp/82901
11568 * oacc-parallel.c (GOACC_declare): Use GOMP_ASYNC_SYNC as async argument
11569 to GOACC_enter_exit_data.
11570
11571 2018-05-09 Tom de Vries <tom (a] codesourcery.com>
11572
11573 PR libgomp/83792
11574 * oacc-int.h (async_valid_stream_id_p, async_valid_p)
11575 (async_synchronous_p): New function.
11576 * oacc-async.c (acc_async_test, acc_wait, acc_wait_all_async): Use
11577 async_valid_p.
11578 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
11579 async_valid_stream_id_p.
11580 * oacc-mem.c (gomp_acc_remove_pointer): Use async_synchronous_p.
11581 * oacc-parallel.c (GOACC_parallel_keyed): Same.
11582
11583 2018-05-07 Tom de Vries <tom (a] codesourcery.com>
11584
11585 PR testsuite/85677
11586 * testsuite/lib/libgomp.exp (libgomp_init): Move inclusion of top-level
11587 include directory in ALWAYS_CFLAGS out of $blddir != "" condition.
11588
11589 2018-05-03 Tom de Vries <tom (a] codesourcery.com>
11590
11591 PR testsuite/85106
11592 * testsuite/lib/libgomp-dg.exp (libgomp-dg-test): Add save-temps to
11593 extra_tool_flags if it contains an -foffload=-fdump-* flag.
11594 * testsuite/lib/libgomp.exp: Include scanoffloadtree.exp.
11595 * testsuite/libgomp.oacc-c/vec.c: Use scan-offload-tree-dump.
11596
11597 2018-05-02 Tom de Vries <tom (a] codesourcery.com>
11598
11599 PR libgomp/85411
11600 * plugin/plugin-nvptx.c (nvptx_exec): Move parsing of
11601 GOMP_OPENACC_DIM ...
11602 * env.c (parse_gomp_openacc_dim): ... here. New function.
11603 (initialize_env): Call parse_gomp_openacc_dim.
11604 (goacc_default_dims): Define.
11605 * libgomp.h (goacc_default_dims): Declare.
11606 * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): New function.
11607 * oacc-plugin.h (GOMP_PLUGIN_acc_default_dim): Declare.
11608 * libgomp.map: New version "GOMP_PLUGIN_1.2". Add
11609 GOMP_PLUGIN_acc_default_dim.
11610 * testsuite/libgomp.oacc-c-c++-common/loop-default-runtime.c: New test.
11611 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: New test.
11612
11613 2018-05-02 Tom de Vries <tom (a] codesourcery.com>
11614
11615 PR testsuite/83791
11616 * testsuite/libgomp.c++/udr-9.C: Update.
11617 * testsuite/libgomp.c++/atomic-16.C: Remove.
11618 * testsuite/libgomp.c++/cancel-taskgroup-2.C: Remove.
11619 * testsuite/libgomp.c++/loop-13.C: Remove.
11620 * testsuite/libgomp.c++/loop-14.C: Remove.
11621 * testsuite/libgomp.c++/loop-15.C: Remove.
11622 * testsuite/libgomp.c++/monotonic-1.C: Remove.
11623 * testsuite/libgomp.c++/monotonic-2.C: Remove.
11624 * testsuite/libgomp.c++/nonmonotonic-1.C: Remove.
11625 * testsuite/libgomp.c++/nonmonotonic-2.C: Remove.
11626 * testsuite/libgomp.c++/ordered-1.C: Remove.
11627 * testsuite/libgomp.c++/pr45784.C: Remove.
11628 * testsuite/libgomp.c++/pr64824.C: Remove.
11629 * testsuite/libgomp.c++/pr64868.C: Remove.
11630 * testsuite/libgomp.c++/pr66199-1.C: Remove.
11631 * testsuite/libgomp.c++/pr66199-2.C: Remove.
11632 * testsuite/libgomp.c++/pr66199-3.C: Remove.
11633 * testsuite/libgomp.c++/pr66199-4.C: Remove.
11634 * testsuite/libgomp.c++/pr66199-5.C: Remove.
11635 * testsuite/libgomp.c++/pr66199-6.C: Remove.
11636 * testsuite/libgomp.c++/pr66199-7.C: Remove.
11637 * testsuite/libgomp.c++/pr66199-8.C: Remove.
11638 * testsuite/libgomp.c++/pr66199-9.C: Remove.
11639 * testsuite/libgomp.c++/pr69389.C: Remove.
11640 * testsuite/libgomp.c++/simd10.C: Remove.
11641 * testsuite/libgomp.c++/simd11.C: Remove.
11642 * testsuite/libgomp.c++/simd12.C: Remove.
11643 * testsuite/libgomp.c++/simd13.C: Remove.
11644 * testsuite/libgomp.c++/target-1.C: Remove.
11645 * testsuite/libgomp.c++/target-3.C: Remove.
11646 * testsuite/libgomp.c++/target-4.C: Remove.
11647 * testsuite/libgomp.c++/target-5.C: Remove.
11648 * testsuite/libgomp.c++/taskgroup-1.C: Remove.
11649 * testsuite/libgomp.c++/taskloop-1.C: Remove.
11650 * testsuite/libgomp.c++/taskloop-2.C: Remove.
11651 * testsuite/libgomp.c++/taskloop-3.C: Remove.
11652 * testsuite/libgomp.c++/taskloop-4.C: Remove.
11653 * testsuite/libgomp.c++/udr-9.C: Remove.
11654 * testsuite/libgomp.c++/for-10.C: Remove.
11655 * testsuite/libgomp.c++/for-11.C: Remove.
11656 * testsuite/libgomp.c++/for-12.C: Remove.
11657 * testsuite/libgomp.c++/for-13.C: Remove.
11658 * testsuite/libgomp.c++/for-14.C: Remove.
11659 * testsuite/libgomp.c++/for-9.C: Remove.
11660 * testsuite/libgomp.c/atomic-18.c: Move ...
11661 * testsuite/libgomp.c-c++-common/atomic-18.c: ... here.
11662 * testsuite/libgomp.c/cancel-taskgroup-2.c: Move ...
11663 * testsuite/libgomp.c-c++-common/cancel-taskgroup-2.c: here.
11664 * testsuite/libgomp.c/loop-13.c: Move ...
11665 * testsuite/libgomp.c-c++-common/loop-13.c: ... here.
11666 * testsuite/libgomp.c/loop-14.c: Move ...
11667 * testsuite/libgomp.c-c++-common/loop-14.c: ... here.
11668 * testsuite/libgomp.c/loop-15.c: Remove.
11669 * testsuite/libgomp.c-c++-common/loop-15.c: New test.
11670 * testsuite/libgomp.c/monotonic-1.c: Move ...
11671 * testsuite/libgomp.c-c++-common/monotonic-1.c: ... here.
11672 * testsuite/libgomp.c/monotonic-2.c: Move ...
11673 * testsuite/libgomp.c-c++-common/monotonic-2.c: ... here.
11674 * testsuite/libgomp.c/nonmonotonic-1.c: Move ...
11675 * testsuite/libgomp.c-c++-common/nonmonotonic-1.c: ... here.
11676 * testsuite/libgomp.c/nonmonotonic-2.c: Move ...
11677 * testsuite/libgomp.c-c++-common/nonmonotonic-2.c: ... here.
11678 * testsuite/libgomp.c/ordered-4.c: Move ...
11679 * testsuite/libgomp.c-c++-common/ordered-4.c: ... here.
11680 * testsuite/libgomp.c/pr45784.c: Move ...
11681 * testsuite/libgomp.c-c++-common/pr45784.c: ... here.
11682 * testsuite/libgomp.c/pr64824.c: Move ...
11683 * testsuite/libgomp.c-c++-common/pr64824.c: ... here.
11684 * testsuite/libgomp.c/pr64868.c: Move ...
11685 * testsuite/libgomp.c-c++-common/pr64868.c: ... here.
11686 * testsuite/libgomp.c/pr66199-1.c: Move ...
11687 * testsuite/libgomp.c-c++-common/pr66199-1.c: ... here.
11688 * testsuite/libgomp.c/pr66199-2.c: Move ...
11689 * testsuite/libgomp.c-c++-common/pr66199-2.c: ... here.
11690 * testsuite/libgomp.c/pr66199-3.c: Move ...
11691 * testsuite/libgomp.c-c++-common/pr66199-3.c: ... here.
11692 * testsuite/libgomp.c/pr66199-4.c: Move ...
11693 * testsuite/libgomp.c-c++-common/pr66199-4.c: ... here.
11694 * testsuite/libgomp.c/pr66199-5.c: Move ...
11695 * testsuite/libgomp.c-c++-common/pr66199-5.c: ... here.
11696 * testsuite/libgomp.c/pr66199-6.c: Move ...
11697 * testsuite/libgomp.c-c++-common/pr66199-6.c: ... here.
11698 * testsuite/libgomp.c/pr66199-7.c: Move ...
11699 * testsuite/libgomp.c-c++-common/pr66199-7.c: ... here.
11700 * testsuite/libgomp.c/pr66199-8.c: Move ...
11701 * testsuite/libgomp.c-c++-common/pr66199-8.c: ... here.
11702 * testsuite/libgomp.c/pr66199-9.c: Move ...
11703 * testsuite/libgomp.c-c++-common/pr66199-9.c: ... here.
11704 * testsuite/libgomp.c/pr69389.c: Move ...
11705 * testsuite/libgomp.c-c++-common/pr69389.c: ... here.
11706 * testsuite/libgomp.c/simd-14.c: Move ...
11707 * testsuite/libgomp.c-c++-common/simd-14.c: ... here.
11708 * testsuite/libgomp.c/simd-15.c: Move ...
11709 * testsuite/libgomp.c-c++-common/simd-15.c: ... here.
11710 * testsuite/libgomp.c/simd-16.c: Move ...
11711 * testsuite/libgomp.c-c++-common/simd-16.c: ... here.
11712 * testsuite/libgomp.c/simd-17.c: Move ...
11713 * testsuite/libgomp.c-c++-common/simd-17.c: ... here.
11714 * testsuite/libgomp.c/target-1.c: Move ...
11715 * testsuite/libgomp.c-c++-common/target-1.c: ... here.
11716 * testsuite/libgomp.c/target-10.c: Move ...
11717 * testsuite/libgomp.c-c++-common/target-10.c: ... here.
11718 * testsuite/libgomp.c/target-13.c: Move ...
11719 * testsuite/libgomp.c-c++-common/target-13.c: ... here.
11720 * testsuite/libgomp.c/target-2.c: Move ...
11721 * testsuite/libgomp.c-c++-common/target-2.c: ... here.
11722 * testsuite/libgomp.c/taskgroup-1.c: Move ...
11723 * testsuite/libgomp.c-c++-common/taskgroup-1.c: ... here.
11724 * testsuite/libgomp.c/taskloop-1.c: Move ...
11725 * testsuite/libgomp.c-c++-common/taskloop-1.c: ... here.
11726 * testsuite/libgomp.c/taskloop-2.c: Move ...
11727 * testsuite/libgomp.c-c++-common/taskloop-2.c: ... here.
11728 * testsuite/libgomp.c/taskloop-3.c: Move ...
11729 * testsuite/libgomp.c-c++-common/taskloop-3.c: ... here.
11730 * testsuite/libgomp.c/taskloop-4.c: Move ...
11731 * testsuite/libgomp.c-c++-common/taskloop-4.c: ... here.
11732 * testsuite/libgomp.c/udr-1.c: Move ...
11733 * testsuite/libgomp.c-c++-common/udr-1.c: ... here.
11734 * testsuite/libgomp.c/for-1.c: Move ...
11735 * testsuite/libgomp.c-c++-common/for-1.c: ... here.
11736 * testsuite/libgomp.c/for-1.h: Move ...
11737 * testsuite/libgomp.c-c++-common/for-1.h: ... here.
11738 * testsuite/libgomp.c/for-2.c: Move ...
11739 * testsuite/libgomp.c-c++-common/for-2.c: ... here.
11740 * testsuite/libgomp.c/for-2.h: Move ...
11741 * testsuite/libgomp.c-c++-common/for-2.h: ... here.
11742 * testsuite/libgomp.c/for-3.c: Move ...
11743 * testsuite/libgomp.c-c++-common/for-3.c: ... here.
11744 * testsuite/libgomp.c/for-4.c: Move ...
11745 * testsuite/libgomp.c-c++-common/for-4.c: ... here.
11746 * testsuite/libgomp.c/for-5.c: Move ...
11747 * testsuite/libgomp.c-c++-common/for-5.c: ... here.
11748 * testsuite/libgomp.c/for-6.c: Move ...
11749 * testsuite/libgomp.c-c++-common/for-6.c: ... here.
11750
11751 2018-05-02 Tom de Vries <tom (a] codesourcery.com>
11752
11753 PR libgomp/82428
11754 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Use
11755 __builtin_goacc_parlevel_{id,size}.
11756 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Same.
11757 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Same.
11758 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Same.
11759 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Same.
11760 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Same.
11761 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Same.
11762 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Same.
11763 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Same.
11764 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Same.
11765 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Same.
11766 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Same.
11767 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Same.
11768 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Same.
11769 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Same.
11770 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Same.
11771 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Same.
11772 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Same.
11773 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Same.
11774 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Same.
11775 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Same.
11776 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Same.
11777 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Same.
11778 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Same.
11779
11780 2018-05-02 Tom de Vries <tom (a] codesourcery.com>
11781
11782 PR testsuite/85106
11783 * testsuite/lib/libgomp.exp: Include scanltranstree.exp.
11784
11785 2018-05-02 Tom de Vries <tom (a] codesourcery.com>
11786
11787 PR testsuite/85106
11788 * testsuite/lib/libgomp.exp: Include scanwpaipa.exp.
11789
11790 2018-04-29 Julian Brown <julian (a] codesourcery.com>
11791 Tom de Vries <tom (a] codesourcery.com>
11792
11793 PR testsuite/85527
11794 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: Allow
11795 arbitrary order for iterations of atomic subtract check.
11796
11797 2018-04-28 Tom de Vries <tom (a] codesourcery.com>
11798
11799 PR testsuite/85527
11800 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Store
11801 atomic capture results obtained in parallel loop to an array, instead of
11802 to a scalar.
11803
11804 2018-04-26 Tom de Vries <tom (a] codesourcery.com>
11805
11806 PR libgomp/84020
11807 * plugin/cuda/cuda.h (CUjit_option): Add CU_JIT_OPTIMIZATION_LEVEL.
11808 * plugin/plugin-nvptx.c (_GNU_SOURCE): Define.
11809 (process_GOMP_NVPTX_JIT): New function.
11810 (link_ptx): Use process_GOMP_NVPTX_JIT.
11811
11812 2018-04-26 Richard Biener <rguenther (a] suse.de>
11813 Tom de Vries <tom (a] codesourcery.com>
11814
11815 PR lto/85422
11816 * testsuite/libgomp.oacc-c-c++-common/pr85422.c: New test.
11817
11818 2018-04-26 Tom de Vries <tom (a] codesourcery.com>
11819
11820 PR target/85519
11821 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
11822 recursion depth from 25 to 23.
11823 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
11824
11825 2018-04-24 H.J. Lu <hongjiu.lu (a] intel.com>
11826
11827 * configure: Regenerated.
11828
11829 2018-04-20 Nathan Sidwell <nathan (a] codesourcery.com>
11830 Tom de Vries <tom (a] codesourcery.com>
11831
11832 PR target/85445
11833 * testsuite/libgomp.oacc-c++/ref-1.C: New.
11834
11835 2018-04-19 Thomas Schwinge <thomas (a] codesourcery.com>
11836
11837 PR libgomp/85463
11838 * testsuite/libgomp.oacc-fortran/error_stop-1.f: New file.
11839 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
11840 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
11841 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
11842 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
11843 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
11844
11845 PR libfortran/85166
11846 * testsuite/libgomp.oacc-fortran/abort-1.f90: Switch back to "call
11847 abort".
11848 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
11849
11850 2018-04-19 Jakub Jelinek <jakub (a] redhat.com>
11851
11852 * configure: Regenerated.
11853
11854 2018-04-18 David Malcolm <dmalcolm (a] redhat.com>
11855
11856 PR jit/85384
11857 * configure: Regenerate.
11858
11859 2018-04-16 Cesar Philippidis <cesar (a] codesourcery.com>
11860 Tom de Vries <tom (a] codesourcery.com>
11861
11862 PR middle-end/84955
11863 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
11864 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
11865
11866 2018-04-12 Thomas Koenig <tkoenig (a] gcc.gnu.org>
11867
11868 PR fortran/83064
11869 PR testsuite/85346
11870 * testsuite/libgomp.fortran/do_concurrent_5.f90: Move modified
11871 test from gfortran.dg to here.
11872
11873 2018-04-12 Cesar Philippidis <cesar (a] codesourcery.com>
11874
11875 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: Revert 259346.
11876 * testsuite/libgomp.oacc-fortran/pr84955.f90: Likewise.
11877
11878 2018-04-12 Cesar Philippidis <cesar (a] codesourcery.com>
11879
11880 PR middle-end/84955
11881 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
11882 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
11883
11884 2018-04-05 Tom de Vries <tom (a] codesourcery.com>
11885
11886 PR target/85204
11887 * testsuite/libgomp.oacc-c-c++-common/broadcast-1.c: New test.
11888
11889 2018-03-26 Tom de Vries <tom (a] codesourcery.com>
11890
11891 PR tree-optimization/85063
11892 * testsuite/libgomp.c/switch-conversion-2.c: New test.
11893 * testsuite/libgomp.c/switch-conversion.c: New test.
11894 * testsuite/libgomp.oacc-c-c++-common/switch-conversion-2.c: New test.
11895 * testsuite/libgomp.oacc-c-c++-common/switch-conversion.c: New test.
11896
11897 2018-03-25 Thomas Koenig <tkoenig (a] gcc.gnu.org>
11898
11899 PR fortran/84381
11900 * testsuite/libgomp.fortran/aligned1.f03: Replace non-standard
11901 call abort by STOP n.
11902 * testsuite/libgomp.fortran/alloc-comp-1.f90: Likewise.
11903 * testsuite/libgomp.fortran/alloc-comp-2.f90: Likewise.
11904 * testsuite/libgomp.fortran/alloc-comp-3.f90: Likewise.
11905 * testsuite/libgomp.fortran/allocatable1.f90: Likewise.
11906 * testsuite/libgomp.fortran/allocatable10.f90: Likewise.
11907 * testsuite/libgomp.fortran/allocatable11.f90: Likewise.
11908 * testsuite/libgomp.fortran/allocatable12.f90: Likewise.
11909 * testsuite/libgomp.fortran/allocatable2.f90: Likewise.
11910 * testsuite/libgomp.fortran/allocatable3.f90: Likewise.
11911 * testsuite/libgomp.fortran/allocatable4.f90: Likewise.
11912 * testsuite/libgomp.fortran/allocatable5.f90: Likewise.
11913 * testsuite/libgomp.fortran/allocatable6.f90: Likewise.
11914 * testsuite/libgomp.fortran/allocatable7.f90: Likewise.
11915 * testsuite/libgomp.fortran/allocatable8.f90: Likewise.
11916 * testsuite/libgomp.fortran/allocatable9.f90: Likewise.
11917 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise.
11918 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Likewise.
11919 * testsuite/libgomp.fortran/associate1.f90: Likewise.
11920 * testsuite/libgomp.fortran/associate2.f90: Likewise.
11921 * testsuite/libgomp.fortran/associate3.f90: Likewise.
11922 * testsuite/libgomp.fortran/cancel-do-1.f90: Likewise.
11923 * testsuite/libgomp.fortran/cancel-do-2.f90: Likewise.
11924 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Likewise.
11925 * testsuite/libgomp.fortran/cancel-sections-1.f90: Likewise.
11926 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Likewise.
11927 * testsuite/libgomp.fortran/character1.f90: Likewise.
11928 * testsuite/libgomp.fortran/character2.f90: Likewise.
11929 * testsuite/libgomp.fortran/collapse1.f90: Likewise.
11930 * testsuite/libgomp.fortran/collapse2.f90: Likewise.
11931 * testsuite/libgomp.fortran/collapse3.f90: Likewise.
11932 * testsuite/libgomp.fortran/collapse4.f90: Likewise.
11933 * testsuite/libgomp.fortran/crayptr1.f90: Likewise.
11934 * testsuite/libgomp.fortran/crayptr2.f90: Likewise.
11935 * testsuite/libgomp.fortran/crayptr3.f90: Likewise.
11936 * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
11937 * testsuite/libgomp.fortran/declare-simd-3.f90: Likewise.
11938 * testsuite/libgomp.fortran/declare-target-2.f90: Likewise.
11939 * testsuite/libgomp.fortran/depend-1.f90: Likewise.
11940 * testsuite/libgomp.fortran/depend-2.f90: Likewise.
11941 * testsuite/libgomp.fortran/depend-3.f90: Likewise.
11942 * testsuite/libgomp.fortran/do1.f90: Likewise.
11943 * testsuite/libgomp.fortran/do2.f90: Likewise.
11944 * testsuite/libgomp.fortran/doacross1.f90: Likewise.
11945 * testsuite/libgomp.fortran/doacross2.f90: Likewise.
11946 * testsuite/libgomp.fortran/doacross3.f90: Likewise.
11947 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Likewise.
11948 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Likewise.
11949 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Likewise.
11950 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
11951 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Likewise.
11952 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Likewise.
11953 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Likewise.
11954 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Likewise.
11955 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Likewise.
11956 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
11957 * testsuite/libgomp.fortran/examples-4/device-2.f90: Likewise.
11958 * testsuite/libgomp.fortran/examples-4/device-3.f90: Likewise.
11959 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Likewise.
11960 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Likewise.
11961 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Likewise.
11962 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Likewise.
11963 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Likewise.
11964 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Likewise.
11965 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Likewise.
11966 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Likewise.
11967 * testsuite/libgomp.fortran/examples-4/target-1.f90: Likewise.
11968 * testsuite/libgomp.fortran/examples-4/target-2.f90: Likewise.
11969 * testsuite/libgomp.fortran/examples-4/target-3.f90: Likewise.
11970 * testsuite/libgomp.fortran/examples-4/target-4.f90: Likewise.
11971 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
11972 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Likewise.
11973 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Likewise.
11974 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Likewise.
11975 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Likewise.
11976 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Likewise.
11977 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
11978 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
11979 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Likewise.
11980 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Likewise.
11981 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Likewise.
11982 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Likewise.
11983 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Likewise.
11984 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Likewise.
11985 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Likewise.
11986 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Likewise.
11987 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Likewise.
11988 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
11989 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Likewise.
11990 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Likewise.
11991 * testsuite/libgomp.fortran/lastprivate1.f90: Likewise.
11992 * testsuite/libgomp.fortran/lastprivate2.f90: Likewise.
11993 * testsuite/libgomp.fortran/lib1.f90: Likewise.
11994 * testsuite/libgomp.fortran/lib2.f: Likewise.
11995 * testsuite/libgomp.fortran/lib3.f: Likewise.
11996 * testsuite/libgomp.fortran/lib4.f90: Likewise.
11997 * testsuite/libgomp.fortran/lock-1.f90: Likewise.
11998 * testsuite/libgomp.fortran/lock-2.f90: Likewise.
11999 * testsuite/libgomp.fortran/nested1.f90: Likewise.
12000 * testsuite/libgomp.fortran/nestedfn1.f90: Likewise.
12001 * testsuite/libgomp.fortran/nestedfn2.f90: Likewise.
12002 * testsuite/libgomp.fortran/nestedfn3.f90: Likewise.
12003 * testsuite/libgomp.fortran/nestedfn4.f90: Likewise.
12004 * testsuite/libgomp.fortran/nestedfn5.f90: Likewise.
12005 * testsuite/libgomp.fortran/omp_atomic1.f90: Likewise.
12006 * testsuite/libgomp.fortran/omp_atomic2.f90: Likewise.
12007 * testsuite/libgomp.fortran/omp_atomic3.f90: Likewise.
12008 * testsuite/libgomp.fortran/omp_atomic4.f90: Likewise.
12009 * testsuite/libgomp.fortran/omp_atomic5.f90: Likewise.
12010 * testsuite/libgomp.fortran/omp_cond1.f: Likewise.
12011 * testsuite/libgomp.fortran/omp_cond2.f: Likewise.
12012 * testsuite/libgomp.fortran/omp_cond3.F90: Likewise.
12013 * testsuite/libgomp.fortran/omp_cond4.F90: Likewise.
12014 * testsuite/libgomp.fortran/omp_parse1.f90: Likewise.
12015 * testsuite/libgomp.fortran/omp_parse2.f90: Likewise.
12016 * testsuite/libgomp.fortran/omp_parse3.f90: Likewise.
12017 * testsuite/libgomp.fortran/omp_parse4.f90: Likewise.
12018 * testsuite/libgomp.fortran/openmp_version-1.f: Likewise.
12019 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
12020 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Likewise.
12021 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Likewise.
12022 * testsuite/libgomp.fortran/pointer1.f90: Likewise.
12023 * testsuite/libgomp.fortran/pointer2.f90: Likewise.
12024 * testsuite/libgomp.fortran/pr25162.f: Likewise.
12025 * testsuite/libgomp.fortran/pr25219.f90: Likewise.
12026 * testsuite/libgomp.fortran/pr27395-1.f90: Likewise.
12027 * testsuite/libgomp.fortran/pr27395-2.f90: Likewise.
12028 * testsuite/libgomp.fortran/pr27416-1.f90: Likewise.
12029 * testsuite/libgomp.fortran/pr27916-1.f90: Likewise.
12030 * testsuite/libgomp.fortran/pr27916-2.f90: Likewise.
12031 * testsuite/libgomp.fortran/pr28390.f: Likewise.
12032 * testsuite/libgomp.fortran/pr29629.f90: Likewise.
12033 * testsuite/libgomp.fortran/pr32550.f90: Likewise.
12034 * testsuite/libgomp.fortran/pr33880.f90: Likewise.
12035 * testsuite/libgomp.fortran/pr34020.f90: Likewise.
12036 * testsuite/libgomp.fortran/pr35130.f90: Likewise.
12037 * testsuite/libgomp.fortran/pr42162.f90: Likewise.
12038 * testsuite/libgomp.fortran/pr46753.f90: Likewise.
12039 * testsuite/libgomp.fortran/pr48894.f90: Likewise.
12040 * testsuite/libgomp.fortran/pr49792-1.f90: Likewise.
12041 * testsuite/libgomp.fortran/pr49792-2.f90: Likewise.
12042 * testsuite/libgomp.fortran/pr63938-1.f90: Likewise.
12043 * testsuite/libgomp.fortran/pr63938-2.f90: Likewise.
12044 * testsuite/libgomp.fortran/pr65597.f90: Likewise.
12045 * testsuite/libgomp.fortran/pr66199-1.f90: Likewise.
12046 * testsuite/libgomp.fortran/pr71014.f90: Likewise.
12047 * testsuite/libgomp.fortran/pr81304.f90: Likewise.
12048 * testsuite/libgomp.fortran/pr81841.f90: Likewise.
12049 * testsuite/libgomp.fortran/pr84418-1.f90: Likewise.
12050 * testsuite/libgomp.fortran/pr84418-2.f90: Likewise.
12051 * testsuite/libgomp.fortran/procptr1.f90: Likewise.
12052 * testsuite/libgomp.fortran/recursion1.f90: Likewise.
12053 * testsuite/libgomp.fortran/reduction1.f90: Likewise.
12054 * testsuite/libgomp.fortran/reduction2.f90: Likewise.
12055 * testsuite/libgomp.fortran/reduction3.f90: Likewise.
12056 * testsuite/libgomp.fortran/reduction4.f90: Likewise.
12057 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
12058 * testsuite/libgomp.fortran/reduction6.f90: Likewise.
12059 * testsuite/libgomp.fortran/reference1.f90: Likewise.
12060 * testsuite/libgomp.fortran/reference2.f90: Likewise.
12061 * testsuite/libgomp.fortran/retval1.f90: Likewise.
12062 * testsuite/libgomp.fortran/retval2.f90: Likewise.
12063 * testsuite/libgomp.fortran/sharing1.f90: Likewise.
12064 * testsuite/libgomp.fortran/sharing2.f90: Likewise.
12065 * testsuite/libgomp.fortran/simd1.f90: Likewise.
12066 * testsuite/libgomp.fortran/simd2.f90: Likewise.
12067 * testsuite/libgomp.fortran/simd3.f90: Likewise.
12068 * testsuite/libgomp.fortran/simd4.f90: Likewise.
12069 * testsuite/libgomp.fortran/simd5.f90: Likewise.
12070 * testsuite/libgomp.fortran/simd6.f90: Likewise.
12071 * testsuite/libgomp.fortran/simd7.f90: Likewise.
12072 * testsuite/libgomp.fortran/stack.f90: Likewise.
12073 * testsuite/libgomp.fortran/strassen.f90: Likewise.
12074 * testsuite/libgomp.fortran/tabs1.f90: Likewise.
12075 * testsuite/libgomp.fortran/tabs2.f: Likewise.
12076 * testsuite/libgomp.fortran/target1.f90: Likewise.
12077 * testsuite/libgomp.fortran/target2.f90: Likewise.
12078 * testsuite/libgomp.fortran/target3.f90: Likewise.
12079 * testsuite/libgomp.fortran/target4.f90: Likewise.
12080 * testsuite/libgomp.fortran/target5.f90: Likewise.
12081 * testsuite/libgomp.fortran/target6.f90: Likewise.
12082 * testsuite/libgomp.fortran/target7.f90: Likewise.
12083 * testsuite/libgomp.fortran/target8.f90: Likewise.
12084 * testsuite/libgomp.fortran/task1.f90: Likewise.
12085 * testsuite/libgomp.fortran/task2.f90: Likewise.
12086 * testsuite/libgomp.fortran/task3.f90: Likewise.
12087 * testsuite/libgomp.fortran/task4.f90: Likewise.
12088 * testsuite/libgomp.fortran/taskgroup1.f90: Likewise.
12089 * testsuite/libgomp.fortran/taskloop1.f90: Likewise.
12090 * testsuite/libgomp.fortran/taskloop2.f90: Likewise.
12091 * testsuite/libgomp.fortran/taskloop3.f90: Likewise.
12092 * testsuite/libgomp.fortran/taskloop4.f90: Likewise.
12093 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
12094 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
12095 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
12096 * testsuite/libgomp.fortran/threadprivate4.f90: Likewise.
12097 * testsuite/libgomp.fortran/udr1.f90: Likewise.
12098 * testsuite/libgomp.fortran/udr10.f90: Likewise.
12099 * testsuite/libgomp.fortran/udr11.f90: Likewise.
12100 * testsuite/libgomp.fortran/udr12.f90: Likewise.
12101 * testsuite/libgomp.fortran/udr13.f90: Likewise.
12102 * testsuite/libgomp.fortran/udr14.f90: Likewise.
12103 * testsuite/libgomp.fortran/udr15.f90: Likewise.
12104 * testsuite/libgomp.fortran/udr2.f90: Likewise.
12105 * testsuite/libgomp.fortran/udr3.f90: Likewise.
12106 * testsuite/libgomp.fortran/udr4.f90: Likewise.
12107 * testsuite/libgomp.fortran/udr5.f90: Likewise.
12108 * testsuite/libgomp.fortran/udr6.f90: Likewise.
12109 * testsuite/libgomp.fortran/udr7.f90: Likewise.
12110 * testsuite/libgomp.fortran/udr8.f90: Likewise.
12111 * testsuite/libgomp.fortran/udr9.f90: Likewise.
12112 * testsuite/libgomp.fortran/vla1.f90: Likewise.
12113 * testsuite/libgomp.fortran/vla2.f90: Likewise.
12114 * testsuite/libgomp.fortran/vla3.f90: Likewise.
12115 * testsuite/libgomp.fortran/vla4.f90: Likewise.
12116 * testsuite/libgomp.fortran/vla5.f90: Likewise.
12117 * testsuite/libgomp.fortran/vla6.f90: Likewise.
12118 * testsuite/libgomp.fortran/vla7.f90: Likewise.
12119 * testsuite/libgomp.fortran/vla8.f90: Likewise.
12120 * testsuite/libgomp.fortran/workshare1.f90: Likewise.
12121 * testsuite/libgomp.fortran/workshare2.f90: Likewise.
12122 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
12123 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
12124 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
12125 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
12126 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
12127 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
12128 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
12129 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
12130 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
12131 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: Likewise.
12132 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
12133 * testsuite/libgomp.oacc-fortran/c2.pl: Likewise.
12134 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
12135 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
12136 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
12137 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
12138 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
12139 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
12140 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
12141 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
12142 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
12143 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90: Likewise.
12144 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: Likewise.
12145 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
12146 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
12147 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
12148 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
12149 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
12150 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
12151 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
12152 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
12153 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
12154 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
12155 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
12156 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
12157 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
12158 * testsuite/libgomp.oacc-fortran/host_data-1.f90: Likewise.
12159 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
12160 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90: Likewise.
12161 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
12162 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Likewise.
12163 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95: Likewise.
12164 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Likewise.
12165 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Likewise.
12166 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
12167 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
12168 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
12169 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
12170 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
12171 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
12172 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
12173 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
12174 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
12175 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
12176 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
12177 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
12178 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
12179 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
12180 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Likewise.
12181 * testsuite/libgomp.oacc-fortran/nested-function-2.f90: Likewise.
12182 * testsuite/libgomp.oacc-fortran/nested-function-3.f90: Likewise.
12183 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
12184 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
12185 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
12186 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
12187 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
12188 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
12189 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
12190 * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
12191 * testsuite/libgomp.oacc-fortran/pr81352.f90: Likewise.
12192 * testsuite/libgomp.oacc-fortran/pr83920.f90: Likewise.
12193 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
12194 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
12195 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
12196 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
12197 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
12198 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
12199 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
12200 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
12201 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
12202 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
12203 * testsuite/libgomp.oacc-fortran/reduction-8.f90: Likewise.
12204 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
12205 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
12206 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
12207 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
12208 * testsuite/libgomp.oacc-fortran/routine-5.f90: Likewise.
12209 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
12210 * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
12211 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
12212 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
12213 * testsuite/libgomp.oacc-fortran/update-1.f90: Likewise.
12214
12215 2018-03-20 Richard Biener <rguenther (a] suse.de>
12216
12217 * testsuite/libgomp.graphite/force-parallel-4.c: XFAIL one
12218 parallelizable loop.
12219
12220 2018-02-19 Igor Tsimbalist <igor.v.tsimbalist (a] intel.com>
12221
12222 PR target/84148
12223 * configure: Regenerate.
12224
12225 2018-02-16 Jakub Jelinek <jakub (a] redhat.com>
12226
12227 PR fortran/84418
12228 * libgomp.fortran/pr84418-1.f90: New test.
12229 * libgomp.fortran/pr84418-2.f90: New test.
12230
12231 2018-02-14 Jakub Jelinek <jakub (a] redhat.com>
12232
12233 PR fortran/84313
12234 * testsuite/libgomp.fortran/threadprivate4.f90: Add
12235 -std=f2003 -fall-intrinsics into dg-additional-options.
12236
12237 2018-02-08 Martin Jambor <mjambor (a] suse.cz>
12238
12239 * testsuite/libgomp.hsa.c/pr82416.c: Make the function with target
12240 clonable.
12241
12242 2018-02-08 Martin Jambor <mjambor (a] suse.cz>
12243
12244 * testsuite/libgomp.hsa.c/staticvar.c: New test.
12245
12246 2018-02-07 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
12247
12248 * testsuite/libgomp.oacc-c-c++-common/pr84217.c (abort)
12249 [__cplusplus]: Declare extern "C".
12250
12251 2018-02-07 Tom de Vries <tom (a] codesourcery.com>
12252
12253 PR libgomp/84217
12254 * testsuite/libgomp.oacc-c-c++-common/pr84217.c: New test.
12255
12256 2018-01-29 Christoph Spiel <cspiel (a] freenet.de>
12257 Jakub Jelinek <jakub (a] redhat.com>
12258
12259 PR libgomp/84096
12260 * omp.h.in (omp_init_nest_lock_with_hint): Use omp_nest_lock_t
12261 instead of omp_lock_t.
12262
12263 2018-01-25 Tom de Vries <tom (a] codesourcery.com>
12264
12265 PR target/84028
12266 * testsuite/libgomp.oacc-fortran/pr84028.f90: New test.
12267
12268 2018-01-24 Tom de Vries <tom (a] codesourcery.com>
12269
12270 PR target/83589
12271 * testsuite/libgomp.oacc-c-c++-common/pr83589.c: New test.
12272
12273 2018-01-24 Tom de Vries <tom (a] codesourcery.com>
12274
12275 PR target/81352
12276 * testsuite/libgomp.oacc-fortran/pr81352.f90: New test.
12277
12278 2018-01-19 Tom de Vries <tom (a] codesourcery.com>
12279 Cesar Philippidis <cesar (a] codesourcery.com>
12280
12281 PR target/83920
12282 * testsuite/libgomp.oacc-c-c++-common/pr83920.c: New test.
12283 * testsuite/libgomp.oacc-fortran/pr83920.f90: New test.
12284
12285 2018-01-03 Jakub Jelinek <jakub (a] redhat.com>
12286
12287 Update copyright years.
12288
12289 * libgomp.texi: Bump @copying's copyright year.
12290
12291 2017-12-30 Tom de Vries <tom (a] codesourcery.com>
12292
12293 PR libgomp/83046
12294 * testsuite/libgomp.oacc-c-c++-common/pr83046.c: New test.
12295 * testsuite/libgomp.c-c++-common/pr83046.c: New test.
12296
12297 2017-12-27 Tom de Vries <tom (a] codesourcery.com>
12298
12299 PR c++/83046
12300 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c (test_static)
12301 (test_nonstatic): Fix return type to workaround PR83046.
12302
12303 2017-12-05 Jakub Jelinek <jakub (a] redhat.com>
12304
12305 PR testsuite/83281
12306 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c (main): Use
12307 j suffix instead of i.
12308 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c (main):
12309 Likewise.
12310
12311 2017-12-01 Cesar Philippidis <cesar (a] codesourcery.com>
12312
12313 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Add missing
12314 call to acc_wait (1).
12315
12316 2017-11-24 Jakub Jelinek <jakub (a] redhat.com>
12317
12318 PR fortran/81304
12319 * testsuite/libgomp.fortran/pr81304.f90: New test.
12320
12321 2017-11-23 Jakub Jelinek <jakub (a] redhat.com>
12322
12323 PR fortran/81841
12324 * libgomp.fortran/pr81841.f90: New test.
12325
12326 2017-11-22 Jakub Jelinek <jakub (a] redhat.com>
12327
12328 PR libgomp/83106
12329 * target.c (gomp_target_init): Compute lengths just once and
12330 use them in both malloc size and subsequent copying.
12331
12332 2017-11-17 Igor Tsimbalist <igor.v.tsimbalist (a] intel.com>
12333
12334 * configure.ac: Set CET_FLAGS, update XCFLAGS and FCFLAGS.
12335 * acinclude.m4: Add cet.m4.
12336 * configure: Regenerate.
12337 * Makefile.in: Likewise.
12338 * testsuite/Makefile.in: Likewise.
12339
12340 2017-11-15 Tom de Vries <tom (a] codesourcery.com>
12341
12342 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: New test, copied
12343 from asyncwait-1.f90. Rewrite into C. Rewrite from float to int.
12344 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: New test, copied
12345 from asyncwait-2.f90. Rewrite into C. Rewrite from float to int.
12346 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: New test, copied
12347 from asyncwait-3.f90. Rewrite into C. Rewrite from float to int.
12348
12349 2017-11-14 Tom de Vries <tom (a] codesourcery.com>
12350
12351 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Allow to run for
12352 non-nvidia devices.
12353
12354 2017-11-07 Jakub Jelinek <jakub (a] redhat.com>
12355
12356 PR c++/82835
12357 * testsuite/libgomp.c++/pr82835.C: New test.
12358
12359 2017-11-06 Martin Liska <mliska (a] suse.cz>
12360
12361 * testsuite/libgomp.c++/loop-2.C: Return a value
12362 for functions with non-void return type, or change type to void,
12363 or add -Wno-return-type for test.
12364 * testsuite/libgomp.c++/loop-4.C: Likewise.
12365 * testsuite/libgomp.c++/parallel-1.C: Likewise.
12366 * testsuite/libgomp.c++/shared-1.C: Likewise.
12367 * testsuite/libgomp.c++/single-1.C: Likewise.
12368 * testsuite/libgomp.c++/single-2.C: Likewise.
12369
12370 2017-10-31 Tom de Vries <tom (a] codesourcery.com>
12371
12372 * plugin/plugin-hsa.c (HSA_LOG): Remove semicolon after
12373 "do {} while (false)".
12374 (init_single_kernel, GOMP_OFFLOAD_async_run): Add missing semicolon
12375 after HSA_DEBUG call.
12376
12377 2017-10-28 Jakub Jelinek <jakub (a] redhat.com>
12378
12379 * target.c (struct gomp_coalesce_buf): New type.
12380 (MAX_COALESCE_BUF_SIZE, MAX_COALESCE_BUF_GAP): Define.
12381 (gomp_coalesce_buf_add, gomp_to_device_kind_p): New functions.
12382 (gomp_copy_host2dev): Add CBUF argument, if copying into
12383 the cached ranges, memcpy into buffer instead of copying
12384 into device.
12385 (gomp_map_vars_existing, gomp_map_pointer, gomp_map_fields_existing):
12386 Add CBUF argument, pass it through to other calls.
12387 (gomp_map_vars): Aggregate copies from host to device if small enough
12388 and with small enough gaps in between into memcpy into a buffer and
12389 fewer host to device copies from the buffer.
12390 (gomp_update): Adjust gomp_copy_host2dev caller.
12391
12392 2017-10-17 Thomas Schwinge <thomas (a] codesourcery.com>
12393
12394 * testsuite/libgomp.oacc-fortran/declare-1.f90: Restore "dg-do
12395 run" directive.
12396 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
12397 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
12398 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
12399 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
12400
12401 2017-10-16 Tom de Vries <tom (a] codesourcery.com>
12402
12403 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Don't require
12404 openacc_nvidia_accel_selected.
12405 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Same.
12406 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Same.
12407 * testsuite/libgomp.oacc-fortran/declare-2.f90: Same.
12408 * testsuite/libgomp.oacc-fortran/declare-4.f90: Same
12409 * testsuite/libgomp.oacc-fortran/declare-5.f90: Same.
12410 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Don't require
12411 openacc_nvidia_accel_selected. Skip for shared memory device.
12412 * testsuite/libgomp.oacc-fortran/declare-1.f90: Same.
12413 * testsuite/libgomp.oacc-fortran/declare-3.f90: Same.
12414
12415 2017-10-09 Martin Jambor <mjambor (a] suse.cz>
12416
12417 PR hsa/82416
12418 * testsuite/libgomp.hsa.c/pr82416.c: New test.
12419
12420 2017-10-07 Tom de Vries <tom (a] codesourcery.com>
12421
12422 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90 (firstprivate):
12423 Remove acc_device_nvidia references.
12424 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90 (reduction):
12425 Same.
12426
12427 2017-10-05 Tom de Vries <tom (a] codesourcery.com>
12428
12429 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c (main): Remove
12430 vector_length(32) clause from acc parallel directive.
12431 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c (main): Same.
12432
12433 2017-10-04 Tom de Vries <tom (a] codesourcery.com>
12434
12435 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c
12436 (main): Reduce sum of arr elements. Assert that hres is exactly
12437 representable in 32-bit floating point.
12438 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c
12439 (main): Reduce sum of arr elements. Assert that hres and hmres are
12440 exactly representable in 32-bit floating point.
12441 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c (gwv_np_4): Same.
12442
12443 2017-09-28 Tom de Vries <tom (a] codesourcery.com>
12444
12445 * testsuite/libgomp.c++/for-12.C: Remove superfluous -fopenmp option
12446 setting.
12447 * testsuite/libgomp.c++/pr69393.C: Same.
12448 * testsuite/libgomp.c++/taskloop-1.C: Same.
12449 * testsuite/libgomp.c++/taskloop-3.C: Same.
12450 * testsuite/libgomp.c++/taskloop-4.C: Same.
12451 * testsuite/libgomp.c/for-4.c: Same.
12452 * testsuite/libgomp.c/pr66199-3.c: Same.
12453 * testsuite/libgomp.c/pr66199-4.c: Same.
12454 * testsuite/libgomp.c/pr66199-6.c: Same.
12455 * testsuite/libgomp.c/taskloop-1.c: Same.
12456 * testsuite/libgomp.c/taskloop-3.c: Same.
12457 * testsuite/libgomp.c/taskloop-4.c: Same.
12458 * testsuite/libgomp.fortran/aligned1.f03: Same.
12459 * testsuite/libgomp.fortran/condinc1.f: Same.
12460 * testsuite/libgomp.fortran/condinc3.f90: Same.
12461 * testsuite/libgomp.fortran/crayptr1.f90: Same.
12462 * testsuite/libgomp.fortran/crayptr2.f90: Same.
12463 * testsuite/libgomp.fortran/crayptr3.f90: Same.
12464 * testsuite/libgomp.fortran/omp_cond1.f: Same.
12465 * testsuite/libgomp.fortran/omp_cond3.F90: Same.
12466 * testsuite/libgomp.fortran/pr66199-1.f90: Same.
12467 * testsuite/libgomp.fortran/pr66199-2.f90: Same.
12468 * testsuite/libgomp.fortran/recursion1.f90: Same.
12469 * testsuite/libgomp.fortran/target2.f90: Same.
12470 * testsuite/libgomp.fortran/target5.f90: Same.
12471 * testsuite/libgomp.fortran/task3.f90: Same.
12472
12473 2017-09-28 Tom de Vries <tom (a] codesourcery.com>
12474
12475 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c (main): Remove
12476 vector_length(32) clause from acc parallel directive.
12477 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c (main): Same.
12478
12479 2017-09-27 Tom de Vries <tom (a] codesourcery.com>
12480
12481 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c (main):
12482 Remove acc_device_nvidia references.
12483
12484 2017-09-16 Tom de Vries <tom (a] codesourcery.com>
12485
12486 PR c/81875
12487 * testsuite/libgomp.c-c++-common/pr81875.c: New test.
12488
12489 2017-09-14 Tom de Vries <tom (a] codesourcery.com>
12490
12491 * testsuite/libgomp.c++/cancel-taskgroup-1.C: Remove.
12492 * testsuite/libgomp.c/cancel-taskgroup-1.c: Move to ...
12493 * testsuite/libgomp.c-c++-common/cancel-taskgroup-1.c: ... here.
12494 * testsuite/libgomp.c/c.exp: Include test-cases from
12495 libgomp.c-c++-common.
12496 * testsuite/libgomp.c++/c++.exp: Same. Force c++-mode compilation of .c
12497 files.
12498
12499 2017-09-14 Jakub Jelinek <jakub (a] redhat.com>
12500
12501 PR c++/81314
12502 * testsuite/libgomp.c++/pr81314.C: New test.
12503
12504 2017-09-03 Gerald Pfeifer <gerald (a] pfeifer.com>
12505
12506 * libgomp.texi (Top): www.openacc.org now uses https.
12507 (Enabling OpenACC): Ditto.
12508 (acc_get_num_devices): Ditto.
12509 (acc_set_device_type): Ditto.
12510 (acc_get_device_type): Ditto.
12511 (acc_set_device_num): Ditto.
12512 (acc_get_device_num): Ditto.
12513 (acc_async_test): Ditto.
12514 (acc_async_test_all): Ditto.
12515 (acc_wait): Ditto.
12516 (acc_wait_all): Ditto.
12517 (acc_wait_all_async): Ditto.
12518 (acc_wait_async): Ditto.
12519 (acc_init): Ditto.
12520 (acc_shutdown): Ditto.
12521 (acc_on_device): Ditto.
12522 (acc_malloc): Ditto.
12523 (acc_free): Ditto.
12524 (acc_copyin): Ditto.
12525 (acc_present_or_copyin): Ditto.
12526 (acc_create): Ditto.
12527 (acc_present_or_create): Ditto.
12528 (acc_copyout): Ditto.
12529 (acc_delete): Ditto.
12530 (acc_update_device): Ditto.
12531 (acc_update_self): Ditto.
12532 (acc_map_data): Ditto.
12533 (acc_unmap_data): Ditto.
12534 (acc_deviceptr): Ditto.
12535 (acc_hostptr): Ditto.
12536 (acc_is_present): Ditto.
12537 (acc_memcpy_to_device): Ditto.
12538 (acc_memcpy_from_device): Ditto.
12539 (acc_get_current_cuda_device): Ditto.
12540 (acc_get_current_cuda_context): Ditto.
12541 (acc_get_cuda_stream): Ditto.
12542 (acc_set_cuda_stream): Ditto.
12543 (ACC_DEVICE_TYPE): Ditto.
12544 (ACC_DEVICE_NUM): Ditto.
12545 (OpenACC Library Interoperability): Ditto.
12546
12547 2017-08-09 Jakub Jelinek <jakub (a] redhat.com>
12548
12549 PR c/81687
12550 * testsuite/libgomp.c/pr81687-1.c: New test.
12551 * testsuite/libgomp.c/pr81687-2.c: New test.
12552
12553 2017-08-07 Jakub Jelinek <jakub (a] redhat.com>
12554
12555 PR c/69389
12556 * testsuite/libgomp.c/pr69389.c: New test.
12557 * testsuite/libgomp.c++/pr69389.C: New test.
12558
12559 2017-08-07 Tom de Vries <tom (a] codesourcery.com>
12560
12561 PR middle-end/78266
12562 * testsuite/libgomp.oacc-c-c++-common/vprop-2.c: New test.
12563 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove xfail.
12564
12565 2017-07-27 Jakub Jelinek <jakub (a] redhat.com>
12566
12567 PR c/45784
12568 * testsuite/libgomp.c/pr45784.c: New test.
12569 * testsuite/libgomp.c++/pr45784.C: New test.
12570
12571 2017-07-19 Tom de Vries <tom (a] codesourcery.com>
12572
12573 * testsuite/libgomp.oacc-c/vec.c: New test.
12574
12575 2017-07-03 Tom de Vries <tom (a] codesourcery.com>
12576
12577 * plugin/plugin-hsa.c: Fix secure_getenv.h include.
12578
12579 2017-06-27 Tom de Vries <tom (a] codesourcery.com>
12580
12581 * plugin/plugin-nvptx.c (notify_var): New function.
12582 (nvptx_exec): Use notify_var for GOMP_OPENACC_DIM.
12583
12584 2017-06-27 Tom de Vries <tom (a] codesourcery.com>
12585
12586 * env.c (parse_unsigned_long_1): Factor out of ...
12587 (parse_unsigned_long): ... here.
12588 (parse_int_1): Factor out of ...
12589 (parse_int): ... here.
12590 (parse_int_secure): New function.
12591 (initialize_env): Use parse_int_secure for GOMP_DEBUG.
12592 * secure_getenv.h: Factor out of ...
12593 * plugin/plugin-hsa.c: ... here.
12594 * testsuite/libgomp.oacc-c-c++-common/gomp-debug-env.c: New test.
12595
12596 2017-06-21 Jakub Jelinek <jakub (a] redhat.com>
12597
12598 PR c++/81130
12599 * testsuite/libgomp.c++/pr81130.C: New test.
12600
12601 2017-06-17 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
12602
12603 * testsuite/libgomp.fortran/strassen.f90: Remove dg-skip-if
12604 default args.
12605 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove
12606 dg-xfail-run-if default args.
12607
12608 2017-06-02 Bernd Edlinger <bernd.edlinger (a] hotmail.de>
12609
12610 * testsuite/libgomp.c/pr39591-2.c: Fix test case.
12611 * testsuite/libgomp.c/pr39591-3.c: Likewise.
12612
12613 2017-05-30 Jakub Jelinek <jakub (a] redhat.com>
12614
12615 PR libgomp/80822
12616 * config/linux/affinity.c (gomp_affinity_init_level_1): New function.
12617 (gomp_affinity_init_level): Use it. Always analyze the core and thread
12618 sibling lists, depending on level just pick up what CPUs to put
12619 together into a place vs. whether add multiple ordered places.
12620
12621 2017-05-24 Thomas Schwinge <thomas (a] codesourcery.com>
12622
12623 * openacc.h (acc_async_wait, acc_async_wait_all): New prototypes.
12624 * libgomp.map (OACC_2.0.1): Add these.
12625 * oacc-async.c (acc_async_wait, acc_async_wait_all): New aliases
12626 for "acc_wait", and "acc_wait_all", respectively.
12627 * openacc.f90 (acc_async_wait, acc_async_wait_all): New interfaces
12628 for "acc_wait", and "acc_wait_all", respectively.
12629 * openacc_lib.h (acc_async_wait, acc_async_wait_all): Likewise.
12630 * libgomp.texi (acc_wait, acc_wait_all): Update.
12631 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Update.
12632 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: New file.
12633 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
12634
12635 * openacc_lib.h (acc_pcopyin, acc_pcreate): Route to
12636 acc_present_or_copyin and acc_present_or_create procedures,
12637 respectively.
12638 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Exercise these, and
12639 generally different variants of OpenACC Runtime Library functions.
12640 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
12641
12642 * testsuite/libgomp.oacc-fortran/lib-32-1.f: New file.
12643 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
12644
12645 * openacc.h (acc_pcopyin, acc_pcreate): Provide prototypes instead
12646 of preprocessor definitions.
12647 * libgomp.h (strong_alias): Guard by "#ifdef
12648 HAVE_ATTRIBUTE_ALIAS".
12649 * oacc-mem.c: Provide "acc_pcreate" as alias for
12650 "acc_present_or_create", and "acc_pcopyin" as alias for
12651 "acc_present_or_copyin".
12652 * libgomp.map: New version "OACC_2.0.1".
12653 (OACC_2.0.1): Add "acc_pcopyin", and "acc_pcreate".
12654 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Remove, merging
12655 its content into...
12656 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: ... this file.
12657 Extend testing.
12658
12659 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Debugging output
12660 when disabling nvptx offloading.
12661
12662 2017-05-23 Thomas Schwinge <thomas (a] codesourcery.com>
12663
12664 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Update.
12665 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
12666 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
12667
12668 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Rewrite.
12669 * testsuite/lib/libgomp.exp
12670 (check_effective_target_openacc_nvidia_accel_configured): New
12671 proc.
12672 * testsuite/libgomp.oacc-c++/c++.exp (check_effective_target_c)
12673 (check_effective_target_c++): New procs.
12674 * testsuite/libgomp.oacc-c/c.exp (check_effective_target_c)
12675 (check_effective_target_c++): Likewise.
12676
12677 2017-05-22 Jakub Jelinek <jakub (a] redhat.com>
12678
12679 PR middle-end/80809
12680 * testsuite/libgomp.c/pr80809-2.c: New test.
12681 * testsuite/libgomp.c/pr80809-3.c: New test.
12682
12683 PR middle-end/80809
12684 * testsuite/libgomp.c/pr80809-1.c: New test.
12685
12686 PR middle-end/80853
12687 * testsuite/libgomp.c/pr80853.c: New test.
12688
12689 2017-05-19 Thomas Schwinge <thomas (a] codesourcery.com>
12690
12691 * testsuite/libgomp.oacc-c++/template-reduction.C: Update.
12692 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Update.
12693 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
12694 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
12695 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
12696
12697 * plugin/plugin-hsa.c (DLSYM_FN, init_hsa_runtime_functions):
12698 Debug output for failure.
12699
12700 2017-05-12 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
12701
12702 * testsuite/lib/libgomp.exp: Load scanlang.exp.
12703
12704 2017-04-27 Jakub Jelinek <jakub (a] redhat.com>
12705
12706 PR bootstrap/80531
12707 * configure.tgt (*-*-aix*): Add -frandom-seed=$@ to XCFLAGS to avoid
12708 bootstrap compare failures.
12709
12710 2017-04-20 Alexander Monakov <amonakov (a] ispras.ru>
12711
12712 * testsuite/libgomp.c/target-36.c: New testcase.
12713
12714 2017-04-13 Jakub Jelinek <jakub (a] redhat.com>
12715
12716 * plugin/plugin-nvptx.c (cuda_lib_inited): Use signed char type
12717 instead of char.
12718
12719 2017-04-11 Jakub Jelinek <jakub (a] redhat.com>
12720
12721 PR libgomp/80394
12722 * testsuite/libgomp.c/pr80394.c: New test.
12723
12724 2017-04-04 Jakub Jelinek <jakub (a] redhat.com>
12725
12726 PR libgomp/79876
12727 * config/posix/thread-stacksize.h: New file.
12728 * config/darwin/thread-stacksize.h: New file.
12729 * config/nvptx/thread-stacksize.h: New file.
12730 * env.c: Include thread-stacksize.h.
12731 (initialize_env): Initialize stacksize to GOMP_DEFAULT_STACKSIZE
12732 instead of 0. Call pthread_attr_setstacksize even if
12733 GOMP_DEFAULT_STACKSIZE is non-zero.
12734
12735 2017-03-30 Jakub Jelinek <jakub (a] redhat.com>
12736
12737 * env.c (initialize_env): Initialize stacksize to 0.
12738
12739 2017-03-22 Cesar Philippidis <cesar (a] codesourcery.com>
12740
12741 PR c++/80029
12742 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: New test.
12743
12744 2017-03-08 Jakub Jelinek <jakub (a] redhat.com>
12745
12746 PR c/79940
12747 * testsuite/libgomp.c/pr79940.c: New test.
12748
12749 2017-02-15 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
12750
12751 * testsuite/libgomp.c/pr48591.c: Enable on all __float128
12752 targets.
12753 Add __float128 options.
12754
12755 2017-02-11 John David Anglin <danglin (a] gcc.gnu.org>
12756
12757 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Remove
12758 hppa*-*-* dg-skip-if directive.
12759
12760 2017-02-09 Jakub Jelinek <jakub (a] redhat.com>
12761
12762 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Move
12763 dg-skip-if directive into a comment.
12764
12765 2017-02-09 Nathan Sidwell <nathan (a] codesourcery.com>
12766 Chung-Lin Tang <cltang (a] codesourcery.com>
12767
12768 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: New.
12769 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust and
12770 add additional case.
12771 * testsuite/libgomp.oacc-c-c++-common/vprop.c: XFAIL under
12772 "openacc_nvidia_accel_selected".
12773 * libgomp.oacc-fortran/nested-function-1.f90 (test2):
12774 Add num_workers(8) clause.
12775
12776 2017-02-08 John David Anglin <danglin (a] gcc.gnu.org>
12777
12778 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Skip on
12779 hppa*-*-*.
12780 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Don't
12781 include complex.h on hppa*-*-hpux*.
12782 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
12783
12784 2017-02-02 Thomas Schwinge <thomas (a] codesourcery.com>
12785
12786 * plugin/plugin-nvptx.c (nvptx_exec): Make it static.
12787
12788 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_parallel): Rename to
12789 GOMP_OFFLOAD_openacc_exec. Adjust all users.
12790 (GOMP_OFFLOAD_openacc_get_current_cuda_device): Rename to
12791 GOMP_OFFLOAD_openacc_cuda_get_current_device. Adjust all users.
12792 (GOMP_OFFLOAD_openacc_get_current_cuda_context): Rename to
12793 GOMP_OFFLOAD_openacc_cuda_get_current_context. Adjust all users.
12794 (GOMP_OFFLOAD_openacc_get_cuda_stream): Rename to
12795 GOMP_OFFLOAD_openacc_cuda_get_stream. Adjust all users.
12796 (GOMP_OFFLOAD_openacc_set_cuda_stream): Rename to
12797 GOMP_OFFLOAD_openacc_cuda_set_stream. Adjust all users.
12798
12799 2017-01-31 Thomas Schwinge <thomas (a] codesourcery.com>
12800
12801 * libgomp-plugin.h: #include <stdbool.h>.
12802 (GOMP_OFFLOAD_get_name, GOMP_OFFLOAD_get_caps)
12803 (GOMP_OFFLOAD_get_type, GOMP_OFFLOAD_get_num_devices)
12804 (GOMP_OFFLOAD_init_device, GOMP_OFFLOAD_fini_device)
12805 (GOMP_OFFLOAD_version, GOMP_OFFLOAD_load_image)
12806 (GOMP_OFFLOAD_unload_image, GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free)
12807 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_host2dev)
12808 (GOMP_OFFLOAD_dev2dev, GOMP_OFFLOAD_can_run, GOMP_OFFLOAD_run)
12809 (GOMP_OFFLOAD_async_run, GOMP_OFFLOAD_openacc_parallel)
12810 (GOMP_OFFLOAD_openacc_register_async_cleanup)
12811 (GOMP_OFFLOAD_openacc_async_test)
12812 (GOMP_OFFLOAD_openacc_async_test_all)
12813 (GOMP_OFFLOAD_openacc_async_wait)
12814 (GOMP_OFFLOAD_openacc_async_wait_async)
12815 (GOMP_OFFLOAD_openacc_async_wait_all)
12816 (GOMP_OFFLOAD_openacc_async_wait_all_async)
12817 (GOMP_OFFLOAD_openacc_async_set_async)
12818 (GOMP_OFFLOAD_openacc_create_thread_data)
12819 (GOMP_OFFLOAD_openacc_destroy_thread_data)
12820 (GOMP_OFFLOAD_openacc_get_current_cuda_device)
12821 (GOMP_OFFLOAD_openacc_get_current_cuda_context)
12822 (GOMP_OFFLOAD_openacc_get_cuda_stream)
12823 (GOMP_OFFLOAD_openacc_set_cuda_stream): New prototypes.
12824 * libgomp.h (struct acc_dispatch_t, struct gomp_device_descr): Use
12825 these.
12826 * plugin/plugin-hsa.c (GOMP_OFFLOAD_load_image)
12827 (GOMP_OFFLOAD_unload_image): Fix argument types.
12828
12829 2017-01-26 Jakub Jelinek <jakub (a] redhat.com>
12830
12831 * testsuite/lib/libgomp.exp
12832 (check_effective_target_hsa_offloading_selected_nocache): Fix up
12833 check_compile invocation. Fix up removal of executable. Drop
12834 bogus "2>&1" argument.
12835
12836 * testsuite/libgomp.fortran/declare-simd-4.f90: Add cleanup-modules
12837 directive.
12838
12839 2017-01-24 Pekka Jskelinen <pekka (a] parmance.com>
12840 Martin Jambor <mjambor (a] suse.cz>
12841
12842 * plugin/hsa.h: Moved to top level include.
12843 * plugin/plugin-hsa.c: Chanfgd include of hsa.h accordingly.
12844
12845 2017-01-21 Jakub Jelinek <jakub (a] redhat.com>
12846
12847 PR other/79046
12848 * testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
12849 of cat to get version from BASE-VER file.
12850 * testsuite/Makefile.in: Regenerated.
12851
12852 2017-01-19 Jakub Jelinek <jakub (a] redhat.com>
12853
12854 * plugin/cuda/cuda.h (CUdeviceptr): Typedef to unsigned long long even
12855 for _WIN64.
12856
12857 2017-01-17 Jakub Jelinek <jakub (a] redhat.com>
12858
12859 * plugin/hsa.h: Add GCC runtime library exception.
12860 * plugin/hsa_ext_finalize.h: Likewise.
12861
12862 * plugin/configfrag.ac: For --without-cuda-driver don't initialize
12863 CUDA_DRIVER_INCLUDE nor CUDA_DRIVER_LIB. If both
12864 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB are empty and linking small
12865 cuda program fails, define PLUGIN_NVPTX_DYNAMIC to 1 and use
12866 plugin/include/cuda as include dir and -ldl instead of -lcuda as
12867 library to link ptx plugin against.
12868 * plugin/plugin-nvptx.c: Include dlfcn.h if PLUGIN_NVPTX_DYNAMIC.
12869 (CUDA_CALLS): Define.
12870 (cuda_lib, cuda_lib_inited): New variables.
12871 (init_cuda_lib): New function.
12872 (CUDA_CALL_PREFIX): Define.
12873 (CUDA_CALL_ERET, CUDA_CALL_ASSERT): Use CUDA_CALL_PREFIX.
12874 (CUDA_CALL): Use FN instead of (FN).
12875 (CUDA_CALL_NOCHECK): Define.
12876 (cuda_error, fini_streams_for_device, select_stream_for_async,
12877 nvptx_attach_host_thread_to_device, nvptx_open_device, link_ptx,
12878 event_gc, nvptx_exec, nvptx_async_test, nvptx_async_test_all,
12879 nvptx_wait_all, nvptx_set_clocktick, GOMP_OFFLOAD_unload_image,
12880 nvptx_stacks_alloc, nvptx_stacks_free, GOMP_OFFLOAD_run): Use
12881 CUDA_CALL_NOCHECK.
12882 (nvptx_init): Call init_cuda_lib, if it fails, return false. Use
12883 CUDA_CALL_NOCHECK.
12884 (nvptx_get_num_devices): Call init_cuda_lib, if it fails, return 0.
12885 Use CUDA_CALL_NOCHECK.
12886 * plugin/cuda/cuda.h: New file.
12887 * config.h.in: Regenerated.
12888 * configure: Regenerated.
12889
12890 PR other/79046
12891 * configure.ac: Add GCC_BASE_VER.
12892 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
12893 get version from BASE-VER file.
12894 * testsuite/Makefile.in: Regenerated.
12895 * configure: Regenerated.
12896 * Makefile.in: Regenerated.
12897
12898 2017-01-09 Francois-Xavier Coudert <fxcoudert (a] gcc.gnu.org>
12899
12900 PR libgomp/60670
12901 * Makefile.am: Make fincludedir multilib-aware.
12902 * Makefile.in: Regenerate.
12903
12904 2017-01-01 Jakub Jelinek <jakub (a] redhat.com>
12905
12906 Update copyright years.
12907
12908 * libgomp.texi: Bump @copying's copyright year.
12909
12910 2016-12-02 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
12911
12912 * libgomp/config/rtems/pool.h (gomp_thread_pool_reservoir): Use
12913 pthread_spinlock_t instead of gomp_mutex_t lock.
12914 (gomp_get_thread_pool): Likewise.
12915 (gomp_release_thread_pool): Likewise.
12916 * libgomp/config/rtems/proc.c (allocate_thread_pool_reservoir):
12917 Likewise.
12918
12919 2016-12-02 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
12920
12921 * config/rtems/pool.h (gomp_get_thread_pool): Return proper
12922 thread pool in case nthreads == 1.
12923
12924 2016-11-30 Alexander Monakov <amonakov (a] ispras.ru>
12925
12926 * config/nvptx/env.c: Delete.
12927 * icv.c: Move definitions of ICV variables back ...
12928 * env.c: ...here. Do not compile environment-related functionality if
12929 LIBGOMP_OFFLOADED_ONLY is set.
12930
12931 2016-11-30 Alexander Monakov <amonakov (a] ispras.ru>
12932
12933 * configure.ac [nvptx*-*-*] (libgomp_offloaded_only): Set and use it...
12934 (LIBGOMP_OFFLOADED_ONLY): ...here; new define.
12935 * configure: Regenerate.
12936 * config.h.in: Likewise.
12937
12938 2016-11-30 Alexander Monakov <amonakov (a] ispras.ru>
12939
12940 * Makefile.in: Regenerate with automake-1.11.6.
12941 * aclocal.m4: Likewise.
12942 * configure: Likewise.
12943 * testsuite/Makefile.in: Likewise.
12944
12945 2016-11-28 Alexander Monakov <amonakov (a] ispras.ru>
12946
12947 * config/nvptx/critical.c: Delete to use generic implementation.
12948
12949 2016-11-28 Jonas Hahnfeld <Hahnfeld (a] itc.rwth-aachen.de>
12950
12951 * config/linux/affinity.c [!HAVE_PTHREAD_AFFINITY_NP]: Include
12952 ../../affinity.c as fallback.
12953 * config/nvptx/affinity.c: Delete to use fallback implementation.
12954
12955 2016-11-23 Alexander Monakov <amonakov (a] ispras.ru>
12956 Jakub Jelinek <jakub (a] redhat.com>
12957 Dmitry Melnik <dm (a] ispras.ru>
12958
12959 * Makefile.am (libgomp_la_SOURCES): Add atomic.c, icv.c, icv-device.c.
12960 * Makefile.in. Regenerate.
12961 * configure.ac [nvptx*-*-*] (libgomp_use_pthreads): Set and use it...
12962 (LIBGOMP_USE_PTHREADS): ...here; new define.
12963 * configure: Regenerate.
12964 * config.h.in: Likewise.
12965 * config/posix/affinity.c: Move to...
12966 * affinity.c: ...here (new file). Guard use of Pthreads-specific
12967 interface by LIBGOMP_USE_PTHREADS.
12968 * critical.c: Split out GOMP_atomic_{start,end} into...
12969 * atomic.c: ...here (new file).
12970 * env.c: Split out ICV definitions into...
12971 * icv.c: ...here (new file) and...
12972 * icv-device.c: ...here. New file.
12973 * config/linux/lock.c (gomp_init_lock_30): Move to generic lock.c.
12974 (gomp_destroy_lock_30): Ditto.
12975 (gomp_set_lock_30): Ditto.
12976 (gomp_unset_lock_30): Ditto.
12977 (gomp_test_lock_30): Ditto.
12978 (gomp_init_nest_lock_30): Ditto.
12979 (gomp_destroy_nest_lock_30): Ditto.
12980 (gomp_set_nest_lock_30): Ditto.
12981 (gomp_unset_nest_lock_30): Ditto.
12982 (gomp_test_nest_lock_30): Ditto.
12983 * lock.c: New.
12984 * config/nvptx/lock.c: New.
12985 * config/nvptx/bar.c: New.
12986 * config/nvptx/bar.h: New.
12987 * config/nvptx/doacross.h: New.
12988 * config/nvptx/error.c: New.
12989 * config/nvptx/icv-device.c: New.
12990 * config/nvptx/mutex.h: New.
12991 * config/nvptx/pool.h: New.
12992 * config/nvptx/proc.c: New.
12993 * config/nvptx/ptrlock.h: New.
12994 * config/nvptx/sem.h: New.
12995 * config/nvptx/simple-bar.h: New.
12996 * config/nvptx/target.c: New.
12997 * config/nvptx/task.c: New.
12998 * config/nvptx/team.c: New.
12999 * config/nvptx/time.c: New.
13000 * config/posix/simple-bar.h: New.
13001 * libgomp.h: Guard pthread.h inclusion. Include simple-bar.h.
13002 (gomp_num_teams_var): Declare.
13003 (struct gomp_thread_pool): Change threads_dock member to
13004 gomp_simple_barrier_t.
13005 [__nvptx__] (gomp_thread): New implementation.
13006 (gomp_thread_attr): Guard by LIBGOMP_USE_PTHREADS.
13007 (gomp_thread_destructor): Ditto.
13008 (gomp_init_thread_affinity): Ditto.
13009 * team.c: Guard uses of Pthreads-specific interfaces by
13010 LIBGOMP_USE_PTHREADS. Adjust all uses of threads_dock.
13011 (gomp_free_thread) [__nvptx__]: Do not call 'free'.
13012 * config/nvptx/alloc.c: Delete.
13013 * config/nvptx/barrier.c: Ditto.
13014 * config/nvptx/fortran.c: Ditto.
13015 * config/nvptx/iter.c: Ditto.
13016 * config/nvptx/iter_ull.c: Ditto.
13017 * config/nvptx/loop.c: Ditto.
13018 * config/nvptx/loop_ull.c: Ditto.
13019 * config/nvptx/ordered.c: Ditto.
13020 * config/nvptx/parallel.c: Ditto.
13021 * config/nvptx/priority_queue.c: Ditto.
13022 * config/nvptx/sections.c: Ditto.
13023 * config/nvptx/single.c: Ditto.
13024 * config/nvptx/splay-tree.c: Ditto.
13025 * config/nvptx/work.c: Ditto.
13026 * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Pass
13027 -foffload=-lgfortran in addition to -lgfortran.
13028 * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags): Ditto.
13029 * plugin/plugin-nvptx.c: Include <limits.h>.
13030 (struct targ_fn_descriptor): Add new fields.
13031 (struct ptx_device): Ditto. Set them...
13032 (nvptx_open_device): ...here.
13033 (nvptx_adjust_launch_bounds): New.
13034 (nvptx_host2dev): Allow NULL 'nvthd'.
13035 (nvptx_dev2host): Ditto.
13036 (GOMP_OFFLOAD_get_caps): Add GOMP_OFFLOAD_CAP_OPENMP_400.
13037 (link_ptx): Adjust log sizes.
13038 (nvptx_host2dev): Allow NULL 'nvthd'.
13039 (nvptx_dev2host): Ditto.
13040 (nvptx_set_clocktick): New. Use it...
13041 (GOMP_OFFLOAD_load_image): ...here. Set new targ_fn_descriptor
13042 fields.
13043 (GOMP_OFFLOAD_dev2dev): New.
13044 (nvptx_adjust_launch_bounds): New.
13045 (nvptx_stacks_size): New.
13046 (nvptx_stacks_alloc): New.
13047 (nvptx_stacks_free): New.
13048 (GOMP_OFFLOAD_run): New.
13049 (GOMP_OFFLOAD_async_run): New (stub).
13050
13051 2016-11-23 Martin Jambor <mjambor (a] suse.cz>
13052
13053 * testsuite/libgomp.hsa.c/bits-insns.c: New test.
13054 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
13055 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
13056
13057 2016-11-23 Martin Liska <mliska (a] suse.cz>
13058 Martin Jambor <mjambor (a] suse.cz>
13059
13060 * plugin/hsa.h: New file.
13061 * plugin/hsa_ext_finalize.h: New file.
13062 * plugin/configfrag.ac: Remove hsa-kmt-lib test. Added checks for
13063 header file unistd.h, and functions secure_getenv, __secure_getenv,
13064 getuid, geteuid, getgid and getegid.
13065 * plugin/Makefrag.am (libgomp_plugin_hsa_la_CPPFLAGS): Added
13066 -D_GNU_SOURCE.
13067 * plugin/plugin-hsa.c: Include config.h, inttypes.h and stdbool.h.
13068 Handle various cases of secure_getenv presence, add an implementation
13069 when we can test effective UID and GID.
13070 (struct hsa_runtime_fn_info): New structure.
13071 (hsa_runtime_fn_info hsa_fns): New variable.
13072 (hsa_runtime_lib): Likewise.
13073 (support_cpu_devices): Likewise.
13074 (init_enviroment_variables): Load newly introduced ENV
13075 variables.
13076 (hsa_warn): Call hsa run-time functions via hsa_fns structure.
13077 (hsa_fatal): Likewise.
13078 (DLSYM_FN): New macro.
13079 (init_hsa_runtime_functions): New function.
13080 (suitable_hsa_agent_p): Call hsa run-time functions via hsa_fns
13081 structure. Depending on environment, also allow CPU devices.
13082 (init_hsa_context): Call hsa run-time functions via hsa_fns structure.
13083 (get_kernarg_memory_region): Likewise.
13084 (GOMP_OFFLOAD_init_device): Likewise.
13085 (destroy_hsa_program): Likewise.
13086 (init_basic_kernel_info): New function.
13087 (GOMP_OFFLOAD_load_image): Use it.
13088 (create_and_finalize_hsa_program): Call hsa run-time functions via
13089 hsa_fns structure.
13090 (create_single_kernel_dispatch): Likewise.
13091 (release_kernel_dispatch): Likewise.
13092 (init_single_kernel): Likewise.
13093 (parse_target_attributes): Allow up multiple HSA grid dimensions.
13094 (get_group_size): New function.
13095 (run_kernel): Likewise.
13096 (GOMP_OFFLOAD_run): Outline most functionality to run_kernel.
13097 (GOMP_OFFLOAD_fini_device): Call hsa run-time functions via hsa_fns
13098 structure.
13099 * testsuite/lib/libgomp.exp: Remove hsa_kmt_lib support.
13100 * testsuite/libgomp-test-support.exp.in: Likewise.
13101 * Makefile.in: Regenerated.
13102 * aclocal.m4: Likewise.
13103 * config.h.in: Likewise.
13104 * configure: Likewise.
13105 * testsuite/Makefile.in: Likewise.
13106
13107 2016-11-15 Martin Jambor <mjambor (a] suse.cz>
13108 Alexander Monakov <amonakov (a] ispras.ru>
13109
13110 * testsuite/libgomp.fortran/examples-4/device-1.f90 (e_57_1): Add
13111 mapping clauses to target constructs.
13112 * testsuite/libgomp.fortran/examples-4/device-3.f90 (e_57_3): Ditto.
13113
13114 2016-11-15 Matthias Klose <doko (a] ubuntu.com>
13115
13116 * configure: Regenerate.
13117
13118 2016-11-10 Jakub Jelinek <jakub (a] redhat.com>
13119
13120 * omp_lib.f90.in (openmp_version): Change to 201511 from 201307.
13121 * omp_lib.h.in (openmp_version): Likewise.
13122 * testsuite/libgomp.fortran/openmp_version-1.f: Expect 201511 instead
13123 of 201307.
13124 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
13125
13126 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90
13127 (fib_wrapper): Add map(from: x) clause.
13128 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90
13129 (e_53_2): Likewise.
13130 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90
13131 (accum): Add map(tmp) clause.
13132 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90
13133 (accum): Add map(tofrom: tmp) clause.
13134 * testsuite/libgomp.fortran/examples-4/target_data-3.f90
13135 (gramSchmidt): Likewise.
13136 * testsuite/libgomp.fortran/examples-4/teams-2.f90 (dotprod): Add
13137 map(tofrom: sum) clause.
13138 * testsuite/libgomp.fortran/nestedfn5.f90 (foo): Add twice
13139 map (alloc: a, l) clause. Add defaultmap(tofrom: scalar) clause.
13140 * testsuite/libgomp.fortran/pr66199-2.f90: Adjust for linear clause
13141 only allowed on the loop iterator.
13142 * testsuite/libgomp.fortran/target4.f90 (foo): Add map(t) clause.
13143 * testsuite/libgomp.fortran/taskloop2.f90: New test.
13144 * testsuite/libgomp.fortran/taskloop4.f90: New test.
13145 * testsuite/libgomp.fortran/doacross1.f90: New test.
13146 * testsuite/libgomp.fortran/doacross3.f90: New test.
13147 * testsuite/libgomp.fortran/taskloop1.f90: New test.
13148 * testsuite/libgomp.fortran/taskloop3.f90: New test.
13149 * testsuite/libgomp.fortran/doacross2.f90: New test.
13150 * testsuite/libgomp.c/doacross-1.c (main): Add missing
13151 #pragma omp atomic read.
13152 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
13153 * testsuite/libgomp.c/doacross-3.c (main): Likewise.
13154
13155 2016-11-02 Cesar Philippidis <cesar (a] codesourcery.com>
13156 Nathan Sidwell <nathan (a] acm.org>
13157
13158 * plugin/plugin-nvptx.c (nvptx_exec): Interrogate board attributes
13159 to determine default geometry.
13160 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Set gang
13161 dimension.
13162
13163 2016-11-01 Jakub Jelinek <jakub (a] redhat.com>
13164
13165 * hashtab.h: Use standard GPLv3 with runtime exception
13166 boilerplate.
13167
13168 2016-10-27 Aldy Hernandez <aldyh (a] redhat.com>
13169
13170 * oacc-init.c (goacc_new_thread): Use sizeof of the appropriate
13171 size when allocating new thread.
13172
13173 2016-09-14 Marek Polacek <polacek (a] redhat.com>
13174
13175 * testsuite/libgomp.c++/atomic-3.C: Use -Wno-deprecated.
13176
13177 2016-08-19 Jakub Jelinek <jakub (a] redhat.com>
13178
13179 PR fortran/71014
13180 * testsuite/libgomp.fortran/pr71014.f90: New test.
13181
13182 2016-08-18 Chung-Lin Tang <cltang (a] codesourcery.com>
13183
13184 PR middle-end/70895
13185 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Add explicit
13186 firstprivate clauses.
13187 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Remove explicit
13188 copy clauses.
13189 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
13190 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
13191 * testsuite/libgomp.oacc-c-c++-common/reduction-flt.c: Likewise.
13192 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
13193 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
13194 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
13195 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
13196 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
13197 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
13198 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
13199 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
13200 * testsuite/libgomp.oacc-c-c++-common/reduction-dbl.c: Likewise.
13201
13202 2016-08-14 Chung-Lin Tang <cltang (a] codesourcery.com>
13203
13204 PR fortran/70598
13205 * testsuite/libgomp.oacc-fortran/host_data-1.f90: New test.
13206
13207 2016-08-08 Jakub Jelinek <jakub (a] redhat.com>
13208
13209 PR c++/58706
13210 * testsuite/libgomp.c++/pr58706.C: New test.
13211
13212 2016-08-04 Thomas Schwinge <thomas (a] codesourcery.com>
13213
13214 * testsuite/libgomp.oacc-c++/routine-1-auto.C: New file.
13215 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Likewise.
13216 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
13217 Likewise.
13218 * testsuite/libgomp.oacc-c++/routine-1-template.C: Likewise.
13219 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C:
13220 Likewise.
13221 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Adjust.
13222
13223 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: Make it a "link"
13224 test, and don't hardcode -O0.
13225
13226 2016-08-03 Nathan Sidwell <nathan (a] codesourcery.com>
13227
13228 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: New.
13229
13230 2016-07-15 Cesar Philippidis <cesar (a] codesourcery.com>
13231
13232 * testsuite/libgomp.oacc-c-c++-common/zero_length_subarrays.c: New
13233 test.
13234
13235 2016-07-03 H.J. Lu <hongjiu.lu (a] intel.com>
13236
13237 PR middle-end/71734
13238 * testsuite/libgomp.fortran/pr71734-1.f90: New test.
13239 * testsuite/libgomp.fortran/pr71734-2.f90: Likewise.
13240
13241 2016-07-01 Jakub Jelinek <jakub (a] redhat.com>
13242
13243 PR fortran/71717
13244 * testsuite/libgomp.fortran/associate3.f90: New test.
13245
13246 2016-06-17 Jakub Jelinek <jakub (a] redhat.com>
13247
13248 * testsuite/libgomp.c++/target-21.C: New test.
13249
13250 2016-06-16 Jakub Jelinek <jakub (a] redhat.com>
13251
13252 * testsuite/libgomp.c++/target-20.C: New test.
13253
13254 2016-06-10 Thomas Schwinge <thomas (a] codesourcery.com>
13255 Cesar Philippidis <cesar (a] codesourcery.com>
13256
13257 PR middle-end/71373
13258 * libgomp.oacc-c/nested-function-1.c: New file.
13259 * libgomp.oacc-c/nested-function-2.c: Likewise.
13260 * libgomp.oacc-fortran/nested-function-1.f90: Likewise.
13261 * libgomp.oacc-fortran/nested-function-2.f90: Likewise.
13262 * libgomp.oacc-fortran/nested-function-3.f90: Likewise.
13263
13264 2016-06-10 Thomas Schwinge <thomas (a] codesourcery.com>
13265
13266 PR c/71381
13267 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: #include
13268 "../../../gcc/testsuite/c-c++-common/goacc/cache-1.c".
13269 * testsuite/libgomp.oacc-fortran/cache-1.f95: New file.
13270
13271 2016-06-03 Chung-Lin Tang <cltang (a] codesourcery.com>
13272
13273 * testsuite/libgomp.oacc-fortran/reduction-8.f90: New testcase.
13274 * testsuite/libgomp.oacc-c-c++-common/reduction-8.c: New testcase.
13275
13276 2016-06-01 Cesar Philippidis <cesar (a] codesourcery.com>
13277
13278 PR c/70688
13279 * testsuite/libgomp.oacc-c-c++-common/pr70688.c: New file.
13280
13281 2016-05-26 Jakub Jelinek <jakub (a] redhat.com>
13282
13283 * testsuite/libgomp.c/doacross-1.c (main): Use schedule(static)
13284 instead of invalid schedule(static, 0).
13285 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
13286
13287 2016-05-26 Chung-Lin Tang <cltang (a] codesourcery.com>
13288
13289 * oacc-plugin.h (GOMP_PLUGIN_async_unmap_vars): Add int parameter.
13290 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Add 'int async'
13291 parameter, use to set async stream around call to gomp_unmap_vars,
13292 call gomp_unmap_vars() with 'do_copyfrom' set to true.
13293 * plugin/plugin-nvptx.c (struct ptx_event): Add 'int val' field.
13294 (event_gc): Adjust event handling loop, collect PTX_EVT_ASYNC_CLEANUP
13295 events and call GOMP_PLUGIN_async_unmap_vars() for each of them.
13296 (event_add): Add int parameter, initialize 'val' field when
13297 adding new ptx_event struct.
13298 (nvptx_evec): Adjust event_add() call arguments.
13299 (nvptx_host2dev): Likewise.
13300 (nvptx_dev2host): Likewise.
13301 (nvptx_wait_async): Likewise.
13302 (nvptx_wait_all_async): Likewise.
13303 (GOMP_OFFLOAD_openacc_register_async_cleanup): Add async parameter,
13304 pass to event_add() call.
13305 * oacc-host.c (host_openacc_register_async_cleanup): Add 'int async'
13306 parameter.
13307 * oacc-mem.c (gomp_acc_remove_pointer): Adjust async case to
13308 call openacc.register_async_cleanup_func() hook.
13309 * oacc-parallel.c (GOACC_parallel_keyed): Likewise.
13310 * target.c (gomp_copy_from_async): Delete function.
13311 (gomp_map_vars): Remove async_refcount.
13312 (gomp_unmap_vars): Likewise.
13313 (gomp_load_image_to_device): Likewise.
13314 (omp_target_associate_ptr): Likewise.
13315 * libgomp.h (struct splay_tree_key_s): Remove async_refcount.
13316 (acc_dispatch_t.register_async_cleanup_func): Add int parameter.
13317 (gomp_copy_from_async): Remove.
13318
13319 2016-05-26 Chung-Lin Tang <cltang (a] codesourcery.com>
13320
13321 * target.c (gomp_device_copy): New function.
13322 (gomp_copy_host2dev): Likewise.
13323 (gomp_copy_dev2host): Likewise.
13324 (gomp_free_device_memory): Likewise.
13325 (gomp_map_vars_existing): Adjust to call gomp_copy_host2dev.
13326 (gomp_map_pointer): Likewise.
13327 (gomp_map_vars): Adjust to call gomp_copy_host2dev, handle
13328 NULL value from alloc_func plugin hook.
13329 (gomp_unmap_tgt): Adjust to call gomp_free_device_memory.
13330 (gomp_copy_from_async): Adjust to call gomp_copy_dev2host.
13331 (gomp_unmap_vars): Likewise.
13332 (gomp_update): Adjust to call gomp_copy_dev2host and
13333 gomp_copy_host2dev functions.
13334 (gomp_unload_image_from_device): Handle false value from
13335 unload_image_func plugin hook.
13336 (gomp_init_device): Handle false value from init_device_func
13337 plugin hook.
13338 (gomp_exit_data): Adjust to call gomp_copy_dev2host.
13339 (omp_target_free): Adjust to call gomp_free_device_memory.
13340 (omp_target_memcpy): Handle return values from host2dev_func,
13341 dev2host_func, and dev2dev_func plugin hooks.
13342 (omp_target_memcpy_rect_worker): Likewise.
13343 (gomp_target_fini): Handle false value from fini_device_func
13344 plugin hook.
13345 * libgomp.h (struct gomp_device_descr): Adjust return type of
13346 init_device_func, fini_device_func, unload_image_func, free_func,
13347 dev2host_func,host2dev_func, and dev2dev_func plugin hooks to 'bool'.
13348 * oacc-init.c (acc_shutdown_1): Handle false value from
13349 fini_device_func plugin hook.
13350 * oacc-host.c (host_init_device): Change return type to bool.
13351 (host_fini_device): Likewise.
13352 (host_unload_image): Likewise.
13353 (host_free): Likewise.
13354 (host_dev2host): Likewise.
13355 (host_host2dev): Likewise.
13356 * oacc-mem.c (acc_free): Handle plugin hook fatal error case.
13357 (acc_memcpy_to_device): Likewise.
13358 (acc_memcpy_from_device): Likewise.
13359 (delete_copyout): Add libfnname parameter, handle free_func
13360 hook fatal error case.
13361 (acc_delete): Adjust delete_copyout call.
13362 (acc_copyout): Likewise.
13363 (update_dev_host): Move gomp_mutex_unlock to after
13364 host2dev/dev2host hook calls.
13365
13366 * plugin/plugin-hsa.c (hsa_warn): Adjust 'hsa_error' local variable
13367 to 'hsa_error_msg', for clarity.
13368 (hsa_fatal): Likewise.
13369 (hsa_error): New function.
13370 (init_hsa_context): Change return type to bool, adjust to return
13371 false on error.
13372 (GOMP_OFFLOAD_get_num_devices): Adjust to handle init_hsa_context
13373 return value.
13374 (GOMP_OFFLOAD_init_device): Change return type to bool, adjust to
13375 return false on error.
13376 (get_agent_info): Adjust to return NULL on error.
13377 (destroy_hsa_program): Change return type to bool, adjust to
13378 return false on error.
13379 (GOMP_OFFLOAD_load_image): Adjust to return -1 on error.
13380 (destroy_module): Change return type to bool, adjust to
13381 return false on error.
13382 (GOMP_OFFLOAD_unload_image): Likewise.
13383 (GOMP_OFFLOAD_fini_device): Likewise.
13384 (GOMP_OFFLOAD_alloc): Change to return NULL when called.
13385 (GOMP_OFFLOAD_free): Change to return false when called.
13386 (GOMP_OFFLOAD_dev2host): Likewise.
13387 (GOMP_OFFLOAD_host2dev): Likewise.
13388 (GOMP_OFFLOAD_dev2dev): Likewise.
13389
13390 * plugin/plugin-nvptx.c (CUDA_CALL_ERET): New convenience macro.
13391 (CUDA_CALL): Likewise.
13392 (CUDA_CALL_ASSERT): Likewise.
13393 (map_init): Change return type to bool, use CUDA_CALL* macros.
13394 (map_fini): Likewise.
13395 (init_streams_for_device): Change return type to bool, adjust
13396 call to map_init.
13397 (fini_streams_for_device): Change return type to bool, adjust
13398 call to map_fini.
13399 (select_stream_for_async): Release stream_lock before calls to
13400 GOMP_PLUGIN_fatal, adjust call to map_init.
13401 (nvptx_init): Use CUDA_CALL* macros.
13402 (nvptx_attach_host_thread_to_device): Change return type to bool,
13403 use CUDA_CALL* macros.
13404 (nvptx_open_device): Use CUDA_CALL* macros.
13405 (nvptx_close_device): Change return type to bool, use CUDA_CALL*
13406 macros.
13407 (nvptx_get_num_devices): Use CUDA_CALL* macros.
13408 (link_ptx): Change return type to bool, use CUDA_CALL* macros.
13409 (nvptx_exec): Use CUDA_CALL* macros.
13410 (nvptx_alloc): Use CUDA_CALL* macros.
13411 (nvptx_free): Change return type to bool, use CUDA_CALL* macros.
13412 (nvptx_host2dev): Likewise.
13413 (nvptx_dev2host): Likewise.
13414 (nvptx_wait): Use CUDA_CALL* macros.
13415 (nvptx_wait_async): Likewise.
13416 (nvptx_wait_all): Likewise.
13417 (nvptx_wait_all_async): Likewise.
13418 (nvptx_set_cuda_stream): Adjust order of stream_lock acquire,
13419 use CUDA_CALL* macros, adjust call to map_fini.
13420 (GOMP_OFFLOAD_init_device): Change return type to bool,
13421 adjust code accordingly.
13422 (GOMP_OFFLOAD_fini_device): Likewise.
13423 (GOMP_OFFLOAD_load_image): Adjust calls to
13424 nvptx_attach_host_thread_to_device/link_ptx to handle errors,
13425 use CUDA_CALL* macros.
13426 (GOMP_OFFLOAD_unload_image): Change return type to bool, adjust
13427 return code.
13428 (GOMP_OFFLOAD_alloc): Adjust calls to code to handle error return.
13429 (GOMP_OFFLOAD_free): Change return type to bool, adjust calls to
13430 handle error return.
13431 (GOMP_OFFLOAD_dev2host): Likewise.
13432 (GOMP_OFFLOAD_host2dev): Likewise.
13433 (GOMP_OFFLOAD_openacc_register_async_cleanup): Use CUDA_CALL* macros.
13434 (GOMP_OFFLOAD_openacc_create_thread_data): Likewise.
13435
13436 2016-05-24 Cesar Philippidis <cesar (a] codesourcery.com>
13437
13438 * oacc-mem.c (acc_malloc): Update handling of shared-memory targets.
13439 (acc_free): Likewise.
13440 (acc_memcpy_to_device): Likewise.
13441 (acc_memcpy_from_device): Likewise.
13442 (acc_deviceptr): Likewise.
13443 (acc_hostptr): Likewise.
13444 (acc_is_present): Likewise.
13445 (acc_map_data): Likewise.
13446 (acc_unmap_data): Likewise.
13447 (present_create_copy): Likewise.
13448 (delete_copyout): Likewise.
13449 (update_dev_host): Likewise.
13450 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Remove xfail.
13451 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: New test.
13452 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Adjust test.
13453 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
13454 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: New test.
13455 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Adjust test so that
13456 it only runs on nvptx targets.
13457 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
13458 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
13459 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
13460 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
13461 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
13462 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
13463 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
13464 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
13465 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
13466 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
13467 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
13468 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
13469 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
13470 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
13471 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
13472 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
13473 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
13474 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
13475 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
13476 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
13477 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
13478 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
13479 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
13480
13481 2016-05-23 Martin Jambor <mjambor (a] suse.cz>
13482
13483 * testsuite/libgomp.hsa.c/switch-sbr-2.c: New test.
13484
13485 2016-05-17 Chung-Lin Tang <cltang (a] codesourcery.com>
13486
13487 * oacc-init.c (acc_init): Remove !cached_base_dev condition on call
13488 to gomp_init_targets_once.
13489 (acc_set_device_type): Remove !cached_base_dev condition on call to
13490 gomp_init_targets_once, move call to before acc_device_lock acquire,
13491 to avoid deadlock.
13492 (acc_get_device_num): Remove !cached_base_dev condition on call to
13493 gomp_init_targets_once.
13494 (acc_set_device_num): Likewise.
13495
13496 2016-05-16 Martin Jambor <mjambor (a] suse.cz>
13497
13498 * testsuite/libgomp.hsa.c/complex-align-2.c: New test.
13499
13500 2016-05-02 Nathan Sidwell <nathan (a] codesourcery.com>
13501
13502 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust
13503 expected partitioning.
13504
13505 2016-04-29 Cesar Philippidis <cesar (a] codesourcery.com>
13506
13507 PR middle-end/70626
13508 * testsuite/libgomp.oacc-c++/template-reduction.C: Adjust test.
13509 * testsuite/libgomp.oacc-c-c++-common/combined-reduction.c: New test.
13510 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: New test.
13511
13512 2016-04-21 Alexander Monakov <amonakov (a] ispras.ru>
13513
13514 * plugin/plugin-nvptx.c (map_fini): Make cuMemFreeHost error
13515 non-fatal.
13516
13517 2016-04-19 Jakub Jelinek <jakub (a] redhat.com>
13518
13519 PR middle-end/70680
13520 * testsuite/libgomp.c/pr70680-1.c: New test.
13521 * testsuite/libgomp.c/pr70680-2.c: New test.
13522
13523 2016-04-14 Cesar Philippidis <cesar (a] codesourcery.com>
13524
13525 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Don't
13526 pass parameter variables to subroutines.
13527
13528 2016-04-14 Cesar Philippidis <cesar (a] codesourcery.com>
13529
13530 PR middle-end/70643
13531 * testsuite/libgomp.oacc-fortran/pr70643.f90: New test.
13532
13533 2016-04-13 Cesar Philippidis <cesar (a] codesourcery.com>
13534
13535 PR testsuite/68242
13536 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Adjust test.
13537 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
13538
13539 2016-04-12 Thomas Schwinge <thomas (a] codesourcery.com>
13540
13541 * libgomp_g.h: Rename GOACC_parallel_keyd prototype to
13542 GOACC_parallel_keyed, restore GOACC_parallel prototype, new
13543 GOACC_declare prototype.
13544
13545 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c:
13546 Merge this file, and...
13547 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gv-np-1.c:
13548 ... this file, and...
13549 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c:
13550 ... this file, and...
13551 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c:
13552 ... this file, and...
13553 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c:
13554 ... this file, and...
13555 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c:
13556 ... this file, and...
13557 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c:
13558 ... this file, and...
13559 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c:
13560 ... this file, and...
13561 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c:
13562 ... this file, and...
13563 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c:
13564 ... this file, and...
13565 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c:
13566 ... this file, and...
13567 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c:
13568 ... this file, and...
13569 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c:
13570 ... this file into...
13571 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: ... this
13572 file.
13573
13574 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
13575 Make failure observable.
13576
13577 2016-04-12 Jakub Jelinek <jakub (a] redhat.com>
13578
13579 * libgomp.h (struct gomp_target_task): Remove firstprivate_copies
13580 field.
13581 * target.c (gomp_target_fallback_firstprivate,
13582 gomp_target_unshare_firstprivate): Removed.
13583 (GOMP_target_ext): Copy firstprivate vars into gomp_allocaed memory
13584 before waiting for dependencies.
13585 (gomp_target_task_fn): Don't copy firstprivate vars here.
13586 * task.c (GOMP_PLUGIN_target_task_completion): Don't free
13587 firstprivate_copies here.
13588 (gomp_create_target_task): Don't initialize firstprivate_copies field.
13589 * testsuite/libgomp.c/target-25.c (main): Use map (to:) instead of
13590 explicit/implicit firstprivate.
13591
13592 2016-04-08 Cesar Philippidis <cesar (a] codesourcery.com>
13593
13594 PR lto/70289
13595 PR ipa/70348
13596 PR tree-optimization/70373
13597 PR middle-end/70533
13598 PR middle-end/70534
13599 PR middle-end/70535
13600 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c: New
13601 test.
13602 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c: New
13603 test.
13604 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c: New
13605 test.
13606 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c: New
13607 test.
13608 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c: New
13609 test.
13610 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c: New
13611 test.
13612 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c: New
13613 test.
13614 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c: New
13615 test.
13616 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c: New
13617 test.
13618 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c: New test.
13619 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c: New test.
13620 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c: New test.
13621 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c: New
13622 test.
13623 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c: New
13624 test.
13625 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c: New
13626 test.
13627 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c: New
13628 test.
13629 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Add test
13630 coverage.
13631 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
13632 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
13633 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c: New test.
13634 * testsuite/libgomp.oacc-c-c++-common/pr70289.c: New test.
13635 * testsuite/libgomp.oacc-c-c++-common/pr70373.c: New test.
13636 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Add test
13637 coverage.
13638 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
13639 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
13640 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
13641 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
13642 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: New test.
13643 * testsuite/libgomp.oacc-c-c++-common/reduction.h: New test.
13644 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: New test.
13645 * testsuite/libgomp.oacc-fortran/pr70289.f90: New test.
13646 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Add test coverage.
13647 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
13648 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
13649 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
13650 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
13651 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
13652 * testsuite/libgomp.oacc-fortran/reduction-7.f90: New test.
13653
13654 2016-03-30 Thomas Schwinge <thomas (a] codesourcery.com>
13655 James Norris <jnorris (a] codesourcery.com>
13656 Nathan Sidwell <nathan (a] codesourcery.com>
13657 Julian Brown <julian (a] codesourcery.com>
13658 Cesar Philippidis <cesar (a] codesourcery.com>
13659 Chung-Lin Tang <cltang (a] codesourcery.com>
13660 Tom de Vries <tom (a] codesourcery.com>
13661
13662 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Update.
13663 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
13664 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
13665 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Likewise.
13666 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
13667 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
13668 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
13669 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
13670 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
13671 XFAIL.
13672 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
13673 Incorporate...
13674 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: ... this
13675 file.
13676 * testsuite/libgomp.oacc-c++/template-reduction.C: New file.
13677 * testsuite/libgomp.oacc-c-c++-common/gang-static-1.c: Likewise.
13678 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Likewise.
13679 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-clauses.c:
13680 Likewise.
13681 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
13682 Likewise.
13683 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
13684 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Likewise.
13685 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
13686 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
13687 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
13688 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
13689 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
13690 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
13691 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
13692 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90:
13693 Likewise.
13694 * testsuite/libgomp.oacc-fortran/pr68813.f90: Likewise.
13695 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
13696 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Merge this
13697 file...
13698 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: ..., and this
13699 file into...
13700 * testsuite/libgomp.oacc-c-c++-common/data-clauses.h: ... this new
13701 file. Update.
13702 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels.c: New
13703 file.
13704 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel.c:
13705 Likewise.
13706 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: Rename to...
13707 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c:
13708 ... this new file. Update.
13709 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: Rename to...
13710 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c:
13711 ... this new file. Update.
13712 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: New
13713 file. Incorporate...
13714 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c: ... this
13715 file, and...
13716 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: ... this
13717 file, and...
13718 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: ... this
13719 file.
13720 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Remove file.
13721
13722 2016-03-29 Thomas Schwinge <thomas (a] codesourcery.com>
13723
13724 * testsuite/libgomp.oacc-c++/c++.exp [!lang_test_file_found]: Call
13725 set-torture-options.
13726
13727 2016-03-24 Thomas Schwinge <thomas (a] codesourcery.com>
13728
13729 * testsuite/libgomp.oacc-c++/c++.exp: Set up torture testing, use
13730 gcc-dg-runtest.
13731 * testsuite/libgomp.oacc-c/c.exp: Likewise.
13732 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: Specify
13733 -fno-builtin-acc_on_device instead of -O0.
13734 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: Skip for
13735 -O0.
13736 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
13737 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c:
13738 Likewise.
13739 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
13740 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
13741 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
13742 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
13743 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
13744 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
13745 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
13746 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
13747 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
13748 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
13749 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
13750 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
13751 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
13752 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
13753 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
13754 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
13755 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
13756 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-2.c:
13757 Don't specify -O2.
13758 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-3.c:
13759 Likewise.
13760 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta.c:
13761 Likewise.
13762
13763 2016-03-24 Martin Liska <mliska (a] suse.cz>
13764
13765 * plugin/plugin-hsa.c (packet_store_release): New function
13766 that is taken from the HSA runtime manual.
13767 (GOMP_OFFLOAD_run): Use the function.
13768
13769 2016-03-23 Jakub Jelinek <jakub (a] redhat.com>
13770
13771 PR c++/70376
13772 * testsuite/libgomp.c++/pr70376.C: New test.
13773
13774 2016-03-23 Tom de Vries <tom (a] codesourcery.com>
13775
13776 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Add missing
13777 initialization of lresult and lvresult.
13778 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Same.
13779
13780 2016-03-23 James Norris <jnorris (a] codesourcery.com>
13781 Daichi Fukuoka <dc-fukuoka (a] sgi.com>
13782
13783 PR libgomp/69414
13784 * oacc-mem.c (delete_copyout, update_dev_host): Fix device address.
13785 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Additional tests.
13786 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
13787 * testsuite/libgomp.oacc-fortran/update-1.f90: New file.
13788
13789 2016-03-23 Martin Liska <mliska (a] suse.cz>
13790
13791 PR hsa/70337
13792 * plugin/plugin-hsa.c (GOMP_OFFLOAD_run): Copy shadow
13793 argument just in case a dispatched kernel uses that argument.
13794
13795 2016-03-16 Thomas Schwinge <thomas (a] codesourcery.com>
13796
13797 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Adjust to
13798 -ftree-parallelize-loops/-fopenacc changes.
13799 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
13800 Likewise.
13801 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
13802 Likewise.
13803 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
13804 Likewise.
13805 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
13806 Likewise.
13807 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
13808 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
13809
13810 2016-03-13 Thomas Schwinge <thomas (a] codesourcery.com>
13811
13812 * testsuite/lib/libgomp.exp (libgomp_init): Potentially append to
13813 always_ld_library_path the path to libgcc_s.
13814
13815 2016-03-10 Cesar Philippidis <cesar (a] codesourcery.com>
13816
13817 PR testsuite/70009
13818 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Make test data signed.
13819
13820 2016-03-09 Tom de Vries <tom (a] codesourcery.com>
13821
13822 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: New test.
13823 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Same.
13824 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
13825 Same.
13826 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Same.
13827 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Same.
13828 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Same.
13829 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Same.
13830
13831 2016-03-07 Martin Jambor <mjambor (a] suse.cz>
13832
13833 * testsuite/lib/libgomp.exp
13834 (check_effective_target_hsa_offloading_selected_nocache): New.
13835 (check_effective_target_hsa_offloading_selected): Likewise.
13836 * testsuite/libgomp.hsa.c/c.exp: Likewise.
13837 * testsuite/libgomp.hsa.c/alloca-1.c: Likewise.
13838 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
13839 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
13840 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
13841 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
13842 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
13843 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
13844 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
13845 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
13846 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
13847 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
13848 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
13849 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
13850 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
13851 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
13852 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
13853
13854 2016-03-07 Martin Jambor <mjambor (a] suse.cz>
13855
13856 * testsuite/libgomp.c/examples-4/async_target-2.c: Only run on
13857 non-shared memory accelerators.
13858 * testsuite/libgomp.c/examples-4/device-1.c: Likewise.
13859 * testsuite/libgomp.c/examples-4/target-5.c: Likewise.
13860 * testsuite/libgomp.c/examples-4/target_data-6.c: Likewise.
13861 * testsuite/libgomp.c/examples-4/target_data-7.c: Likewise.
13862 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
13863 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
13864 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
13865 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
13866 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
13867
13868 2016-03-07 Martin Jambor <mjambor (a] suse.cz>
13869
13870 * testsuite/lib/libgomp.exp (libgomp_init): Append -Wno-hsa to
13871 ALWAYS_CFLAGS.
13872
13873 2016-03-02 Jakub Jelinek <jakub (a] redhat.com>
13874
13875 PR libgomp/69555
13876 * testsuite/libgomp.c++/pr69555-1.C: New test.
13877 * testsuite/libgomp.c++/pr69555-2.C: New test.
13878
13879 2016-02-26 Keith McDaniel <k.allen.mcdaniel (a] gmail.com>
13880 Martin Jambor <mjambor (a] suse.cz>
13881
13882 * testsuite/lib/libgomp.exp
13883 (check_effective_target_offload_device_shared_as): New proc.
13884 * testsuite/libgomp.c++/declare_target-1.C: New test.
13885
13886 2016-02-25 Ilya Verbin <ilya.verbin (a] intel.com>
13887
13888 PR driver/68463
13889 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: Remove.
13890
13891 2016-02-23 Thomas Schwinge <thomas (a] codesourcery.com>
13892
13893 * oacc-parallel.c (GOACC_parallel_keyed): Initialize dims.
13894 * plugin/plugin-nvptx.c (nvptx_exec): Provide default values for
13895 dims.
13896 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Adjust to
13897 -ftree-parallelize-loops/-fopenacc changes.
13898 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Likewise.
13899 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c:
13900 Likewise.
13901 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c:
13902 Likewise.
13903 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c:
13904 Likewise.
13905 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c:
13906 Likewise.
13907 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c:
13908 Likewise.
13909 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c:
13910 Likewise.
13911 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c:
13912 Likewise.
13913 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
13914 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c:
13915 Likewise.
13916 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Likewise.
13917 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c:
13918 Likewise.
13919 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Likewise.
13920 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c:
13921 Likewise.
13922
13923 2016-02-22 Cesar Philippidis <cesar (a] codesourcery.com>
13924
13925 * testsuite/libgomp.oacc-c-c++-common/vprop.c: New test.
13926
13927 2016-02-19 Jakub Jelinek <jakub (a] redhat.com>
13928
13929 PR driver/69805
13930 * testsuite/libgomp.c/pr69805.c: New test.
13931
13932 2016-02-16 Tom de Vries <tom (a] codesourcery.com>
13933
13934 PR lto/67709
13935 * testsuite/libgomp.fortran/declare-simd-4.f90: New test.
13936
13937 2016-02-09 Tom de Vries <tom (a] codesourcery.com>
13938
13939 PR tree-optimization/69599
13940 * testsuite/libgomp.c/omp-nested-3.c: New test.
13941 * testsuite/libgomp.c/pr46032-2.c: New test.
13942 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: New test.
13943 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: New test.
13944
13945 2016-02-09 Tom de Vries <tom (a] codesourcery.com>
13946
13947 PR lto/69707
13948 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: New test.
13949
13950 2016-02-02 Alexander Monakov <amonakov (a] ispras.ru>
13951
13952 * testsuite/libgomp.c/target-31.c: Fix testcase.
13953
13954 2016-02-02 Alexander Monakov <amonakov (a] ispras.ru>
13955
13956 * testsuite/libgomp.c/examples-4/teams-3.c: Add missing reduction
13957 clause.
13958 * testsuite/libgomp.c/examples-4/teams-4.c: Likewise.
13959 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Add missing
13960 reduction and map clauses.
13961 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
13962
13963 2016-02-02 James Norris <jnorris (a] codesourcery.com>
13964
13965 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Fix clause.
13966
13967 2016-02-02 Thomas Schwinge <thomas (a] codesourcery.com>
13968
13969 * libgomp.map (GOACC_2.0): Remove GOACC_host_data.
13970 * oacc-parallel.c (GOACC_host_data): Remove function definition.
13971
13972 * testsuite/lib/libgomp.exp: Skip hsa offloading for OpenACC test
13973 cases.
13974
13975 * plugin/configfrag.ac (HSA_KMT_LIB, HSA_KMT_LDFLAGS): New
13976 variables.
13977 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib)
13978 (hsa_kmt_lib): Set variables.
13979 * testsuite/lib/libgomp.exp (libgomp_init): Use them to amend
13980 always_ld_library_path.
13981 * Makefile.in: Regenerate.
13982 * configure: Likewise.
13983 * testsuite/Makefile.in: Likewise.
13984
13985 * plugin/configfrag.ac (offload_additional_options)
13986 (offload_additional_lib_paths): Don't amend for hsa offloading.
13987 * configure: Regenerate.
13988
13989 * plugin/configfrag.ac: Don't configure for offloading target if
13990 we don't build the corresponding plugin.
13991 * configure: Regenerate.
13992
13993 2016-02-01 Nathan Sidwell <nathan (a] codesourcery.com>
13994
13995 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: New.
13996 * testsuite/libgomp.oacc-fortran/routine-7.f90: Serialize loop.
13997
13998 2016-01-26 Tom de Vries <tom (a] codesourcery.com>
13999
14000 PR tree-optimization/69110
14001 * testsuite/libgomp.c/pr69110.c: New test.
14002
14003 2016-01-25 Richard Biener <rguenther (a] suse.de>
14004
14005 PR lto/69393
14006 * testsuite/libgomp.c++/pr69393.C: New testcase.
14007
14008 2016-01-22 Ilya Verbin <ilya.verbin (a] intel.com>
14009
14010 * target.c (gomp_get_target_fn_addr): Allow host fallback if target
14011 function wasn't mapped to the device with non-shared memory.
14012
14013 2016-01-20 Ilya Verbin <ilya.verbin (a] intel.com>
14014
14015 * task.c (gomp_create_target_task): Set firstprivate_copies to NULL.
14016
14017 2016-01-19 Martin Jambor <mjambor (a] suse.cz>
14018 Martin Liska <mliska (a] suse.cz>
14019
14020 * plugin/Makefrag.am: Add HSA plugin requirements.
14021 * plugin/configfrag.ac (HSA_RUNTIME_INCLUDE): New variable.
14022 (HSA_RUNTIME_LIB): Likewise.
14023 (HSA_RUNTIME_CPPFLAGS): Likewise.
14024 (HSA_RUNTIME_INCLUDE): New substitution.
14025 (HSA_RUNTIME_LIB): Likewise.
14026 (HSA_RUNTIME_LDFLAGS): Likewise.
14027 (hsa-runtime): New configure option.
14028 (hsa-runtime-include): Likewise.
14029 (hsa-runtime-lib): Likewise.
14030 (PLUGIN_HSA): New substitution variable.
14031 Fill HSA_RUNTIME_INCLUDE and HSA_RUNTIME_LIB according to the new
14032 configure options.
14033 (PLUGIN_HSA_CPPFLAGS): Likewise.
14034 (PLUGIN_HSA_LDFLAGS): Likewise.
14035 (PLUGIN_HSA_LIBS): Likewise.
14036 Check that we have access to HSA run-time.
14037 * libgomp-plugin.h (offload_target_type): New element
14038 OFFLOAD_TARGET_TYPE_HSA.
14039 * libgomp.h (gomp_target_task): New fields firstprivate_copies and
14040 args.
14041 (bool gomp_create_target_task): Updated.
14042 (gomp_device_descr): Extra parameter of run_func and async_run_func,
14043 new field can_run_func.
14044 * libgomp_g.h (GOMP_target_ext): Update prototype.
14045 * oacc-host.c (host_run): Added a new parameter args.
14046 * target.c (calculate_firstprivate_requirements): New function.
14047 (copy_firstprivate_data): Likewise.
14048 (gomp_target_fallback_firstprivate): Use them.
14049 (gomp_target_unshare_firstprivate): New function.
14050 (gomp_get_target_fn_addr): Allow returning NULL for shared memory
14051 devices.
14052 (GOMP_target): Do host fallback for all shared memory devices. Do not
14053 pass any args to plugins.
14054 (GOMP_target_ext): Introduce device-specific argument parameter args.
14055 Allow host fallback if device shares memory. Do not remap data if
14056 device has shared memory.
14057 (gomp_target_task_fn): Likewise. Also treat shared memory devices
14058 like host fallback for mappings.
14059 (GOMP_target_data): Treat shared memory devices like host fallback.
14060 (GOMP_target_data_ext): Likewise.
14061 (GOMP_target_update): Likewise.
14062 (GOMP_target_update_ext): Likewise. Also pass NULL as args to
14063 gomp_create_target_task.
14064 (GOMP_target_enter_exit_data): Likewise.
14065 (omp_target_alloc): Treat shared memory devices like host fallback.
14066 (omp_target_free): Likewise.
14067 (omp_target_is_present): Likewise.
14068 (omp_target_memcpy): Likewise.
14069 (omp_target_memcpy_rect): Likewise.
14070 (omp_target_associate_ptr): Likewise.
14071 (gomp_load_plugin_for_device): Also load can_run.
14072 * task.c (GOMP_PLUGIN_target_task_completion): Free
14073 firstprivate_copies.
14074 (gomp_create_target_task): Accept new argument args and store it to
14075 ttask.
14076 * plugin/plugin-hsa.c: New file.
14077
14078 2016-01-18 Tom de Vries <tom (a] codesourcery.com>
14079
14080 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: New test.
14081 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Same.
14082 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c: Same.
14083 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c: Same.
14084 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c: Same.
14085 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c: Same.
14086 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c: Same.
14087 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c: Same.
14088 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c: Same.
14089 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c: Same.
14090 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
14091 Same.
14092 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
14093 Same.
14094 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c: Same.
14095 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c: Same.
14096 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Same.
14097 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c: Same.
14098 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Same.
14099 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c: Same.
14100 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Same.
14101 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
14102 Same.
14103 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c: Same.
14104
14105 2016-01-15 Jakub Jelinek <jakub (a] redhat.com>
14106
14107 * task.c (GOMP_PLUGIN_target_task_completion): Add missing return.
14108
14109 2016-01-15 Cesar Philippidis <cesar (a] codesourcery.com>
14110
14111 * testsuite/libgomp.oacc-fortran/kernels-data.f90: New test.
14112
14113 2016-01-12 James Norris <jnorris (a] codesourcery.com>
14114
14115 * libgomp.texi: Updates for OpenACC.
14116
14117 2016-01-11 Alexander Monakov <amonakov (a] ispras.ru>
14118
14119 * plugin/plugin-nvptx.c (link_ptx): Do not set CU_JIT_TARGET.
14120
14121 2016-01-07 H.J. Lu <hongjiu.lu (a] intel.com>
14122
14123 PR fortran/66680
14124 * testsuite/libgomp.fortran/pr66680.f90: New test.
14125
14126 2016-01-07 Jakub Jelinek <jakub (a] redhat.com>
14127
14128 PR middle-end/68960
14129 * testsuite/libgomp.c/pr68960.c: New test.
14130
14131 2016-01-06 Nathan Sidwell <nathan (a] acm.org>
14132
14133 * openacc.h (acc_on_device): Add routine pragma for C++ wrapper.
14134 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: New.
14135
14136 2016-01-04 Jakub Jelinek <jakub (a] redhat.com>
14137
14138 Update copyright years.
14139
14140 * libgomp.texi: Bump @copying's copyright year.
14141
14142 2015-12-31 Nathan Sidwell <nathan (a] acm.org>
14143
14144 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Correct
14145 dg-additional-options syntax.
14146 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
14147 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
14148 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
14149 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
14150 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
14151 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
14152 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
14153 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
14154 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
14155 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
14156 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
14157 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
14158 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
14159 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
14160 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
14161 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
14162 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
14163 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
14164
14165 2015-12-15 Ilya Verbin <ilya.verbin (a] intel.com>
14166
14167 * libgomp.h (REFCOUNT_LINK): Define.
14168 (struct splay_tree_key_s): Add link_key.
14169 * target.c (gomp_map_vars): Treat REFCOUNT_LINK objects as not mapped.
14170 Replace target address of the pointer with target address of newly
14171 mapped object in the splay tree. Set link pointer on target to the
14172 device address of the mapped object.
14173 (gomp_unmap_vars): Restore target address of the pointer in the splay
14174 tree for REFCOUNT_LINK objects after unmapping.
14175 (gomp_load_image_to_device): Set refcount to REFCOUNT_LINK for "omp
14176 declare target link" objects.
14177 (gomp_unload_image_from_device): Replace j with i. Force unmap of all
14178 "omp declare target link" objects, which were mapped for the image.
14179 (gomp_exit_data): Restore target address of the pointer in the splay
14180 tree for REFCOUNT_LINK objects after unmapping.
14181 * testsuite/libgomp.c/target-link-1.c: New file.
14182
14183 2015-12-14 Ilya Verbin <ilya.verbin (a] intel.com>
14184
14185 * libgomp.h (gomp_device_state): New enum.
14186 (struct gomp_device_descr): Replace is_initialized with state.
14187 (gomp_fini_device): Remove declaration.
14188 * oacc-host.c (host_dispatch): Use state instead of is_initialized.
14189 * oacc-init.c (acc_init_1): Use state instead of is_initialized.
14190 (acc_shutdown_1): Likewise. Inline gomp_fini_device.
14191 (acc_set_device_type): Use state instead of is_initialized.
14192 (acc_set_device_num): Likewise.
14193 * target.c (resolve_device): Use state instead of is_initialized.
14194 Do not initialize finalized device.
14195 (gomp_map_vars): Do nothing if device is finalized.
14196 (gomp_unmap_vars): Likewise.
14197 (gomp_update): Likewise.
14198 (GOMP_offload_register_ver): Use state instead of is_initialized.
14199 (GOMP_offload_unregister_ver): Likewise.
14200 (gomp_init_device): Likewise.
14201 (gomp_unload_device): Likewise.
14202 (gomp_fini_device): Remove.
14203 (gomp_get_target_fn_addr): Do nothing if device is finalized.
14204 (GOMP_target): Go to host fallback if device is finalized.
14205 (GOMP_target_ext): Likewise.
14206 (gomp_exit_data): Do nothing if device is finalized.
14207 (gomp_target_task_fn): Go to host fallback if device is finalized.
14208 (gomp_target_fini): New static function.
14209 (gomp_target_init): Use state instead of is_initialized.
14210 Call gomp_target_fini at exit.
14211
14212 2015-12-09 Tom de Vries <tom (a] codesourcery.com>
14213
14214 PR tree-optimization/68716
14215 * testsuite/libgomp.c/omp-nested-2.c: New test.
14216
14217 2015-12-02 Thomas Schwinge <thomas (a] codesourcery.com>
14218
14219 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: Restrict to
14220 target openacc_nvidia_accel_selected.
14221 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: Likewise.
14222 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: Likewise.
14223 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: Remove file.
14224 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: Remove file.
14225
14226 2015-12-01 Julian Brown <julian (a] codesourcery.com>
14227 James Norris <James_Norris (a] mentor.com>
14228
14229 * oacc-parallel.c (GOACC_host_data): New function.
14230 * libgomp.map (GOACC_host_data): Add to GOACC_2.0.1.
14231 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: New test.
14232 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: New test.
14233 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: New test.
14234 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: New test.
14235 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: New test.
14236 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New test.
14237
14238 2015-11-30 James Norris <jnorris (a] codesourcery.com>
14239 Cesar Philippidis <cesar (a] codesourcery.com>
14240
14241 libgomp/
14242 * libgomp.oacc-fortran/routine-5.f90: New test.
14243 * libgomp.oacc-fortran/routine-7.f90: New test.
14244 * libgomp.oacc-fortran/routine-9.f90: New test.
14245
14246 2015-11-30 Tom de Vries <tom (a] codesourcery.com>
14247
14248 PR tree-optimization/46032
14249 * testsuite/libgomp.c/pr46032.c: New test.
14250
14251 2015-11-27 Jakub Jelinek <jakub (a] redhat.com>
14252
14253 PR libgomp/68579
14254 * task.c (gomp_task_run_post_handle_depend_hash): New forward decl.
14255 (gomp_create_target_task): Call it before freeing
14256 GOMP_TARGET_TASK_DATA tasks.
14257
14258 PR c/63326
14259 * testsuite/libgomp.c/cancel-parallel-2.c (foo): Add semicolon
14260 in between case label and OpenMP standalone directives.
14261 * testsuite/libgomp.c++/cancel-parallel-2.C (foo): Likewise.
14262
14263 2015-11-26 David Edelsohn <dje.gcc (a] gmail.com>
14264
14265 * configure: Regenerate.
14266
14267 2015-11-26 Jakub Jelinek <jakub (a] redhat.com>
14268
14269 * testsuite/libgomp.c/target-35.c: New test.
14270
14271 2015-11-22 James Norris <jnorris (a] codesourcery.com>
14272 Cesar Philippidis <cesar (a] codesourcery.com>
14273
14274 * testsuite/libgomp.oacc-fortran/declare-1.f90: New test.
14275 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
14276 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
14277 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
14278 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
14279
14280 2015-11-20 Jakub Jelinek <jakub (a] redhat.com>
14281
14282 PR middle-end/68221
14283 * testsuite/libgomp.c/reduction-11.c: Remove xfail.
14284 * testsuite/libgomp.c/reduction-12.c: Likewise.
14285 * testsuite/libgomp.c++/reduction-11.C: Likewise.
14286 * testsuite/libgomp.c++/reduction-12.C: Likewise.
14287
14288 2015-11-19 Nathan Sidwell <nathan (a] codesourcery.com>
14289
14290 * libgomp.oacc-c-c++-common/reduction-dbl.c: New.
14291 * libgomp.oacc-c-c++-common/reduction-flt.c: New.
14292 * libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Use typedef.
14293 * libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Use typedef.
14294 * libgomp.oacc-c-c++-common/reduction-2.c: Uncomment broken tests
14295 and fix.
14296 * libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
14297 * libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
14298
14299 2015-11-18 Nathan Sidwell <nathan (a] codesourcery.com>
14300
14301 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Add
14302 worker & gang cases.
14303 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
14304
14305 2015-11-17 Cesar Philippidis <cesar (a] codesourcery.com>
14306
14307 * config/nvptx/priority_queue.c: New file.
14308
14309 2015-11-14 Jakub Jelinek <jakub (a] redhat.com>
14310
14311 * libgomp.texi: Update references from OpenMP 4.0 to OpenMP 4.5
14312 sections.
14313
14314 2015-11-14 Jakub Jelinek <jakub (a] redhat.com>
14315 Aldy Hernandez <aldyh (a] redhat.com>
14316 Ilya Verbin <ilya.verbin (a] intel.com>
14317
14318 * ordered.c (gomp_doacross_init, GOMP_doacross_post,
14319 GOMP_doacross_wait, gomp_doacross_ull_init, GOMP_doacross_ull_post,
14320 GOMP_doacross_ull_wait): For GFS_GUIDED don't divide number of
14321 iterators or IV by chunk size.
14322 * parallel.c (gomp_resolve_num_threads): Don't assume that
14323 if thr->ts.team is non-NULL, then pool must be non-NULL.
14324 * libgomp-plugin.h (GOMP_PLUGIN_target_task_completion): Declare.
14325 * libgomp.map (GOMP_PLUGIN_1.1): New symbol version, export
14326 GOMP_PLUGIN_target_task_completion.
14327 * Makefile.am (libgomp_la_SOURCES): Add priority_queue.c.
14328 * Makefile.in: Regenerate.
14329 * libgomp.h: Shuffle prototypes and forward definitions around so
14330 priority queues can be defined.
14331 (enum gomp_task_kind): Add GOMP_TASK_ASYNC_RUNNING.
14332 (enum gomp_target_task_state): New enum.
14333 (struct gomp_target_task): Add state, tgt, task and team fields.
14334 (gomp_create_target_task): Change return type to bool, add
14335 state argument.
14336 (gomp_target_task_fn): Change return type to bool.
14337 (struct gomp_device_descr): Add async_run_func.
14338 (struct gomp_task): Remove children, next_child, prev_child,
14339 next_queue, prev_queue, next_taskgroup, prev_taskgroup.
14340 Add pnode field.
14341 (struct gomp_taskgroup): Remove children.
14342 Add taskgroup_queue.
14343 (struct gomp_team): Change task_queue type to a priority queue.
14344 (splay_compare): Define inline.
14345 (priority_queue_offset): New.
14346 (priority_node_to_task): New.
14347 (task_to_priority_node): New.
14348 * oacc-mem.c: Do not include splay-tree.h.
14349 * priority_queue.c: New file.
14350 * priority_queue.h: New file.
14351 * splay-tree.c: Do not include splay-tree.h.
14352 (splay_tree_foreach_internal): New.
14353 (splay_tree_foreach): New.
14354 * splay-tree.h: Become re-entrant if splay_tree_prefix is defined.
14355 (splay_tree_callback): Define typedef.
14356 * target.c (splay_compare): Move to libgomp.h.
14357 (GOMP_target): Don't adjust *thr in any way around running offloaded
14358 task.
14359 (GOMP_target_ext): Likewise. Handle target nowait.
14360 (GOMP_target_update_ext, GOMP_target_enter_exit_data): Check
14361 return value from gomp_create_target_task, if false, fallthrough
14362 as if no dependencies exist.
14363 (gomp_target_task_fn): Change return type to bool, return true
14364 if the task should have another part scheduled later. Handle
14365 target nowait.
14366 (gomp_load_plugin_for_device): Initialize async_run.
14367 * task.c (gomp_init_task): Initialize children_queue.
14368 (gomp_clear_parent_in_list): New.
14369 (gomp_clear_parent_in_tree): New.
14370 (gomp_clear_parent): Handle priorities.
14371 (GOMP_task): Likewise.
14372 (priority_queue_move_task_first,
14373 gomp_target_task_completion, GOMP_PLUGIN_target_task_completion):
14374 New functions.
14375 (gomp_create_target_task): Use priority queues. Change return type
14376 to bool, add state argument, return false if for async
14377 {{enter,exit} data,update} constructs no dependencies need to be
14378 waited for, handle target nowait. Set task->fn to NULL instead of
14379 gomp_target_task_fn.
14380 (verify_children_queue): Remove.
14381 (priority_list_upgrade_task): New.
14382 (priority_queue_upgrade_task): New.
14383 (verify_task_queue): Remove.
14384 (priority_list_downgrade_task): New.
14385 (priority_queue_downgrade_task): New.
14386 (gomp_task_run_pre): Use priority queues.
14387 Abstract code out to priority_queue_downgrade_task.
14388 (gomp_task_run_post_handle_dependers): Use priority queues.
14389 (gomp_task_run_post_remove_parent): Likewise.
14390 (gomp_task_run_post_remove_taskgroup): Likewise.
14391 (gomp_barrier_handle_tasks): Likewise. Handle target nowait target
14392 tasks specially.
14393 (GOMP_taskwait): Likewise.
14394 (gomp_task_maybe_wait_for_dependencies): Likewise. Abstract code to
14395 priority-queue_upgrade_task.
14396 (GOMP_taskgroup_start): Use priority queues.
14397 (GOMP_taskgroup_end): Likewise. Handle target nowait target tasks
14398 specially. If taskgroup is NULL, and thr->ts.level is 0, act as a
14399 barrier.
14400 * taskloop.c (GOMP_taskloop): Handle priorities.
14401 * team.c (gomp_new_team): Call priority_queue_init.
14402 (free_team): Call priority_queue_free.
14403 (gomp_free_thread): Call gomp_team_end if thr->ts.team is artificial
14404 team created for target nowait in implicit parallel region.
14405 (gomp_team_start): For nested check, test thr->ts.level instead of
14406 thr->ts.team != NULL.
14407 * testsuite/libgomp.c/doacross-3.c: New test.
14408 * testsuite/libgomp.c/ordered-5.c: New test.
14409 * testsuite/libgomp.c/priority.c: New test.
14410 * testsuite/libgomp.c/target-31.c: New test.
14411 * testsuite/libgomp.c/target-32.c: New test.
14412 * testsuite/libgomp.c/target-33.c: New test.
14413 * testsuite/libgomp.c/target-34.c: New test.
14414
14415 2015-11-13 Nathan Sidwell <nathan (a] codesourcery.com>
14416
14417 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: New.
14418
14419 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Sequential
14420 loop is sequential.
14421
14422 2015-11-13 Nathan Sidwell <nathan (a] codesourcery.com>
14423
14424 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: New.
14425 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: New.
14426
14427 2015-11-12 James Norris <jnorris (a] codesourcery.com>
14428 Joseph Myers <joseph (a] codesourcery.com>
14429
14430 * libgomp.map (GOACC_2.0.1): Export GOACC_declare.
14431 * oacc-parallel.c (GOACC_declare): New function.
14432 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: New test.
14433 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Likewise.
14434 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Likewise.
14435 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Likewise.
14436 * testsuite/libgomp.oacc-c++/declare-1.C: Likewise.
14437
14438 2015-11-12 Nathan Sidwell <nathan (a] codesourcery.com>
14439
14440 * testsuite/libgomp.oacc-c-c++-common/default-1.c: New.
14441
14442 2015-11-1 Nathan Sidwell <nathan (a] codesourcery.com>
14443
14444 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: New.
14445 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: New.
14446
14447 2015-11-09 Nathan Sidwell <nathan (a] codesourcery.com>
14448
14449 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Remove
14450 inadvertent commit.
14451
14452 2015-11-09 Nathan Sidwell <nathan (a] codesourcery.com>
14453
14454 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: New.
14455 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: New.
14456 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: New.
14457 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: New.
14458 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: New.
14459
14460 2015-11-06 Thomas Schwinge <thomas (a] codesourcery.com>
14461
14462 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: XFAIL.
14463 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
14464
14465 2015-11-05 Jakub Jelinek <jakub (a] redhat.com>
14466 Ilya Verbin <ilya.verbin (a] intel.com>
14467
14468 * libgomp_g.h (GOMP_loop_nonmonotonic_dynamic_next,
14469 GOMP_loop_nonmonotonic_dynamic_start,
14470 GOMP_loop_nonmonotonic_guided_next,
14471 GOMP_loop_nonmonotonic_guided_start,
14472 GOMP_loop_ull_nonmonotonic_dynamic_next,
14473 GOMP_loop_ull_nonmonotonic_dynamic_start,
14474 GOMP_loop_ull_nonmonotonic_guided_next,
14475 GOMP_loop_ull_nonmonotonic_guided_start,
14476 GOMP_parallel_loop_nonmonotonic_dynamic,
14477 GOMP_parallel_loop_nonmonotonic_guided): New prototypes.
14478 (GOMP_target_41): Renamed to ...
14479 (GOMP_target_ext): ... this. Add num_teams and thread_limit
14480 arguments.
14481 (GOMP_target_data_41): Renamed to ...
14482 (GOMP_target_data_ext): ... this.
14483 (GOMP_target_update_41): Renamed to ...
14484 (GOMP_target_update_ext): ... this.
14485 * libgomp.map (GOMP_4.5): Export GOMP_target_ext,
14486 GOMP_target_data_ext and GOMP_target_update_ext instead of
14487 GOMP_target_41, GOMP_target_data_41 and GOMP_target_update_41.
14488 Export GOMP_loop_nonmonotonic_dynamic_next,
14489 GOMP_loop_nonmonotonic_dynamic_start,
14490 GOMP_loop_nonmonotonic_guided_next,
14491 GOMP_loop_nonmonotonic_guided_start,
14492 GOMP_loop_ull_nonmonotonic_dynamic_next,
14493 GOMP_loop_ull_nonmonotonic_dynamic_start,
14494 GOMP_loop_ull_nonmonotonic_guided_next,
14495 GOMP_loop_ull_nonmonotonic_guided_start,
14496 GOMP_parallel_loop_nonmonotonic_dynamic and
14497 GOMP_parallel_loop_nonmonotonic_guided.
14498 * loop.c (GOMP_parallel_loop_nonmonotonic_dynamic,
14499 GOMP_parallel_loop_nonmonotonic_guided,
14500 GOMP_loop_nonmonotonic_dynamic_start,
14501 GOMP_loop_nonmonotonic_guided_start,
14502 GOMP_loop_nonmonotonic_dynamic_next,
14503 GOMP_loop_nonmonotonic_guided_next): New aliases or functions.
14504 * loop_ull.c (GOMP_loop_ull_nonmonotonic_dynamic_start,
14505 GOMP_loop_ull_nonmonotonic_guided_start,
14506 GOMP_loop_ull_nonmonotonic_dynamic_next,
14507 GOMP_loop_ull_nonmonotonic_guided_next): Likewise.
14508 * target.c (gomp_map_0len_lookup, gomp_map_val): New inline
14509 functions.
14510 (gomp_map_vars): Handle GOMP_MAP_ALWAYS_POINTER. For
14511 GOMP_MAP_ZERO_LEN_ARRAY_SECTION use gomp_map_0len_lookup.
14512 Use gomp_map_val function.
14513 (gomp_target_fallback_firstprivate): New static function.
14514 (GOMP_target_41): Renamed to ...
14515 (GOMP_target_ext): ... this. Add num_teams and thread_limit
14516 arguments. Move firstprivate fallback handling into a new
14517 function.
14518 (GOMP_target_data_41): Renamed to ...
14519 (GOMP_target_data_ext): ... this.
14520 (GOMP_target_update_41): Renamed to ...
14521 (GOMP_target_update_ext): ... this.
14522 (gomp_exit_data): For GOMP_MAP_*ZERO_LEN* use
14523 gomp_map_0len_lookup instead of gomp_map_lookup.
14524 (omp_target_is_present): Use gomp_map_0len_lookup instead of
14525 gomp_map_lookup.
14526 * testsuite/libgomp.c/target-28.c: Likewise.
14527 * testsuite/libgomp.c/monotonic-1.c: New test.
14528 * testsuite/libgomp.c/monotonic-2.c: New test.
14529 * testsuite/libgomp.c/nonmonotonic-1.c: New test.
14530 * testsuite/libgomp.c/nonmonotonic-2.c: New test.
14531 * testsuite/libgomp.c/pr66199-5.c: New test.
14532 * testsuite/libgomp.c/pr66199-6.c: New test.
14533 * testsuite/libgomp.c/pr66199-7.c: New test.
14534 * testsuite/libgomp.c/pr66199-8.c: New test.
14535 * testsuite/libgomp.c/pr66199-9.c: New test.
14536 * testsuite/libgomp.c/reduction-11.c: New test.
14537 * testsuite/libgomp.c/reduction-12.c: New test.
14538 * testsuite/libgomp.c/reduction-13.c: New test.
14539 * testsuite/libgomp.c/reduction-14.c: New test.
14540 * testsuite/libgomp.c/reduction-15.c: New test.
14541 * testsuite/libgomp.c/target-12.c (main): Adjust for
14542 omp_target_is_present change for one-past-last element.
14543 * testsuite/libgomp.c/target-17.c (foo): Drop tests where
14544 the same var is both mapped and privatized.
14545 * testsuite/libgomp.c/target-19.c (foo): Adjust for different
14546 handling of zero-length array sections.
14547 * testsuite/libgomp.c/target-28.c: New test.
14548 * testsuite/libgomp.c/target-29.c: New test.
14549 * testsuite/libgomp.c/target-30.c: New test.
14550 * testsuite/libgomp.c/target-teams-1.c: New test.
14551 * testsuite/libgomp.c++/member-6.C: New test.
14552 * testsuite/libgomp.c++/member-7.C: New test.
14553 * testsuite/libgomp.c++/monotonic-1.C: New test.
14554 * testsuite/libgomp.c++/monotonic-2.C: New test.
14555 * testsuite/libgomp.c++/nonmonotonic-1.C: New test.
14556 * testsuite/libgomp.c++/nonmonotonic-2.C: New test.
14557 * testsuite/libgomp.c++/pr66199-3.C: New test.
14558 * testsuite/libgomp.c++/pr66199-4.C: New test.
14559 * testsuite/libgomp.c++/pr66199-5.C: New test.
14560 * testsuite/libgomp.c++/pr66199-6.C: New test.
14561 * testsuite/libgomp.c++/pr66199-7.C: New test.
14562 * testsuite/libgomp.c++/pr66199-8.C: New test.
14563 * testsuite/libgomp.c++/pr66199-9.C: New test.
14564 * testsuite/libgomp.c++/reduction-11.C: New test.
14565 * testsuite/libgomp.c++/reduction-12.C: New test.
14566 * testsuite/libgomp.c++/target-13.C: New test.
14567 * testsuite/libgomp.c++/target-14.C: New test.
14568 * testsuite/libgomp.c++/target-15.C: New test.
14569 * testsuite/libgomp.c++/target-16.C: New test.
14570 * testsuite/libgomp.c++/target-17.C: New test.
14571 * testsuite/libgomp.c++/target-18.C: New test.
14572 * testsuite/libgomp.c++/target-19.C: New test.
14573
14574 2015-11-04 Nathan Sidwell <nathan (a] codesourcery.com>
14575
14576 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Fix dimensions
14577 and reduction copy.
14578 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
14579 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
14580 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
14581 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
14582 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
14583 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
14584 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
14585 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
14586 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
14587 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c: Likewise.
14588 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
14589 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
14590 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
14591 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New.
14592
14593 2015-11-04 Nathan Sidwell <nathan (a] codesourcery.com>
14594
14595 * libgomp.oacc-c-c++-common/loop-red-g-1.c: New.
14596 * libgomp.oacc-c-c++-common/loop-red-gwv-1.c: New.
14597 * libgomp.oacc-c-c++-common/loop-red-v-1.c: New.
14598 * libgomp.oacc-c-c++-common/loop-red-v-2.c: New.
14599 * libgomp.oacc-c-c++-common/loop-red-w-1.c: New.
14600 * libgomp.oacc-c-c++-common/loop-red-w-2.c: New.
14601 * libgomp.oacc-c-c++-common/loop-red-wv-1.c: New.
14602 * libgomp.oacc-fortran/reduction-5.f90: Avoid reference var.
14603
14604 2015-11-03 Nathan Sidwell <nathan (a] codesourcery.com>
14605
14606 * libgomp.h (struct acc_dispatch_t): Remove args from exec_func.
14607 * plugin/plugin-nvptx.c (nvptx_exec): Remove sizes & kinds arg.
14608 (GOMP_OFFLOAD_openacc_parallel): Likewise.
14609 * oacc-host.c (host_openacc_exec): Likewise.
14610 * oacc-parallel.c (GOACC_parallel_keyed): Adjust exec_func call.
14611
14612 2015-11-03 Julian Brown <julian (a] codesourcery.com>
14613 Thomas Schwinge <thomas (a] codesourcery.com>
14614
14615 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: New file.
14616 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
14617 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c:
14618 Likewise.
14619 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: Likewise.
14620 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: Likewise.
14621
14622 2015-11-03 James Norris <jnorris (a] codesourcery.com>
14623
14624 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: New
14625 file.
14626 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c:
14627 Likewise.
14628 * testsuite/libgomp.oacc-c-c++-common/atomic_rw-1.c: Likewise.
14629 * testsuite/libgomp.oacc-c-c++-common/atomic_update-1.c: Likewise.
14630 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
14631 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: New file.
14632 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
14633
14634 2015-10-29 Nathan Sidwell <nathan (a] codesourcery.com>
14635
14636 * openacc.h (enum acc_device_t): Reformat. Ensure layout
14637 compatibility.
14638 (enum acc_async_t): Reformat.
14639 (acc_on_device): Declare compatible with builtin and provide C++
14640 wrapper.
14641 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: New.
14642
14643 2015-10-29 Thomas Schwinge <thomas (a] codesourcery.com>
14644 Cesar Philippidis <cesar (a] codesourcery.com>
14645
14646 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: Rename to...
14647 * testsuite/libgomp.oacc-c-c++-common/combined-directives-1.c:
14648 ... this. Add a description of the test at the top of the file.
14649 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Rename file to...
14650 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90:
14651 ... this. Add a description of the test at the top of the file.
14652
14653 2015-10-28 Nathan Sidwell <nathan (a] codesourcery.com>
14654
14655 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: New.
14656 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: New.
14657 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: New.
14658 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: New.
14659 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: New.
14660 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: New.
14661
14662 2015-10-27 Nathan Sidwell <nathan (a] codesourcery.com>
14663
14664 * plugin/plugin-nvptx.c (nvptx_exec): Remove check on compute
14665 dimensions.
14666
14667 2015-10-27 Thomas Schwinge <thomas (a] codesourcery.com>
14668
14669 PR testsuite/68063
14670 * testsuite/libgomp.c++/member-1.C (A::m1): Add missing private clause.
14671
14672 2015-10-27 James Norris <jnorris (a] codesourcery.com>
14673
14674 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: New file.
14675 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Likewise.
14676
14677 2015-10-26 Thomas Schwinge <thomas (a] codesourcery.com>
14678
14679 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Print to stderr.
14680 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
14681
14682 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Remove explicit
14683 acc_device_nvidia usage.
14684 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
14685 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
14686 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
14687
14688 * oacc-init.c (acc_shutdown): Call gomp_init_targets_once.
14689 * testsuite/libgomp.oacc-c-c++-common/lib-8.c: New file.
14690
14691 PR libgomp/66518
14692 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Resolve XFAIL.
14693
14694 PR libgomp/65437
14695 PR libgomp/66518
14696 * oacc-mem.c (update_dev_host): Call goacc_lazy_initialize.
14697 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Remove XFAIL.
14698
14699 2015-10-23 Tom de Vries <tom (a] codesourcery.com>
14700
14701 PR testsuite/68063
14702 * testsuite/libgomp.c++/member-2.C (A::m1): Add missing private clause.
14703
14704 2015-10-20 Nathan Sidwell <nathan (a] codesourcery.com>
14705
14706 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Set sane
14707 vector_length.
14708 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
14709
14710 2015-10-14 Ilya Verbin <ilya.verbin (a] intel.com>
14711 Aleksander Ivanushenko <aleksander.ivanushenko (a] intel.com>
14712
14713 * target.c (gomp_map_vars): Initialize tgt->tgt_start and tgt->tgt_end
14714 to 0 when mapnum is 0.
14715
14716 2015-10-14 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
14717
14718 * fortran.c (omp_get_place_proc_ids_, omp_get_partition_place_nums_):
14719 Cast to int from int32_t.
14720
14721 2015-10-13 Jakub Jelinek <jakub (a] redhat.com>
14722 Aldy Hernandez <aldyh (a] redhat.com>
14723 Ilya Verbin <ilya.verbin (a] intel.com>
14724
14725 * config/linux/affinity.c (omp_get_place_num_procs,
14726 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
14727 * config/linux/doacross.h: New file.
14728 * config/posix/affinity.c (omp_get_place_num_procs,
14729 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
14730 * config/posix/doacross.h: New file.
14731 * env.c: Include gomp-constants.h.
14732 (struct gomp_task_icv): Rename run_sched_modifier to
14733 run_sched_chunk_size.
14734 (gomp_max_task_priority_var): New variable.
14735 (parse_schedule): Rename run_sched_modifier to run_sched_chunk_size.
14736 (handle_omp_display_env): Change _OPENMP value from 201307 to
14737 201511. Print OMP_MAX_TASK_PRIORITY.
14738 (initialize_env): Parse OMP_MAX_TASK_PRIORITY.
14739 (omp_set_schedule, omp_get_schedule): Rename modifier argument to
14740 chunk_size and run_sched_modifier to run_sched_chunk_size.
14741 (omp_get_max_task_priority, omp_get_initial_device,
14742 omp_get_num_places, omp_get_place_num, omp_get_partition_num_places,
14743 omp_get_partition_place_nums): New functions.
14744 * fortran.c (omp_set_schedule_, omp_set_schedule_8_,
14745 omp_get_schedule_, omp_get_schedule_8_): Rename modifier argument
14746 to chunk_size.
14747 (omp_get_num_places_, omp_get_place_num_procs_,
14748 omp_get_place_num_procs_8_, omp_get_place_proc_ids_,
14749 omp_get_place_proc_ids_8_, omp_get_place_num_,
14750 omp_get_partition_num_places_, omp_get_partition_place_nums_,
14751 omp_get_partition_place_nums_8_, omp_get_initial_device_,
14752 omp_get_max_task_priority_): New functions.
14753 * libgomp_g.h (GOMP_loop_doacross_static_start,
14754 GOMP_loop_doacross_dynamic_start, GOMP_loop_doacross_guided_start,
14755 GOMP_loop_doacross_runtime_start, GOMP_loop_ull_doacross_static_start,
14756 GOMP_loop_ull_doacross_dynamic_start,
14757 GOMP_loop_ull_doacross_guided_start,
14758 GOMP_loop_ull_doacross_runtime_start, GOMP_doacross_post,
14759 GOMP_doacross_wait, GOMP_doacross_ull_post, GOMP_doacross_wait,
14760 GOMP_taskloop, GOMP_taskloop_ull, GOMP_target_41,
14761 GOMP_target_data_41, GOMP_target_update_41,
14762 GOMP_target_enter_exit_data): New prototypes.
14763 (GOMP_task): Add prototype argument.
14764 * libgomp.h (_LIBGOMP_CHECKING_): Define to 0 if not yet defined.
14765 (struct gomp_doacross_work_share): New type.
14766 (struct gomp_work_share): Add doacross field.
14767 (struct gomp_task_icv): Rename run_sched_modifier to
14768 run_sched_chunk_size.
14769 (enum gomp_task_kind): Rename GOMP_TASK_IFFALSE to
14770 GOMP_TASK_UNDEFERRED. Add comments.
14771 (struct gomp_task_depend_entry): Add comments.
14772 (struct gomp_task): Likewise.
14773 (struct gomp_taskgroup): Likewise.
14774 (struct gomp_target_task): New type.
14775 (struct gomp_team): Add comment.
14776 (gomp_get_place_proc_ids_8, gomp_doacross_init,
14777 gomp_doacross_ull_init, gomp_task_maybe_wait_for_dependencies,
14778 gomp_create_target_task, gomp_target_task_fn): New prototypes.
14779 (struct target_var_desc): New type.
14780 (struct target_mem_desc): Adjust comment. Use struct
14781 target_var_desc instead of splay_tree_key for list.
14782 (REFCOUNT_INFINITY): Define.
14783 (struct splay_tree_key_s): Remove copy_from field.
14784 (struct gomp_device_descr): Add dev2dev_func field.
14785 (enum gomp_map_vars_kind): New enum.
14786 (gomp_map_vars): Add one argument.
14787 * libgomp.map (OMP_4.5): Export omp_get_max_task_priority,
14788 omp_get_max_task_priority_, omp_get_num_places, omp_get_num_places_,
14789 omp_get_place_num_procs, omp_get_place_num_procs_,
14790 omp_get_place_num_procs_8_, omp_get_place_proc_ids,
14791 omp_get_place_proc_ids_, omp_get_place_proc_ids_8_, omp_get_place_num,
14792 omp_get_place_num_, omp_get_partition_num_places,
14793 omp_get_partition_num_places_, omp_get_partition_place_nums,
14794 omp_get_partition_place_nums_, omp_get_partition_place_nums_8_,
14795 omp_get_initial_device, omp_get_initial_device_, omp_target_alloc,
14796 omp_target_free, omp_target_is_present, omp_target_memcpy,
14797 omp_target_memcpy_rect, omp_target_associate_ptr and
14798 omp_target_disassociate_ptr.
14799 (GOMP_4.0.2): Renamed to ...
14800 (GOMP_4.5): ... this. Export GOMP_target_41, GOMP_target_data_41,
14801 GOMP_target_update_41, GOMP_target_enter_exit_data, GOMP_taskloop,
14802 GOMP_taskloop_ull, GOMP_loop_doacross_dynamic_start,
14803 GOMP_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
14804 GOMP_loop_doacross_static_start, GOMP_doacross_post,
14805 GOMP_doacross_wait, GOMP_loop_ull_doacross_dynamic_start,
14806 GOMP_loop_ull_doacross_guided_start,
14807 GOMP_loop_ull_doacross_runtime_start,
14808 GOMP_loop_ull_doacross_static_start, GOMP_doacross_ull_post and
14809 GOMP_doacross_ull_wait.
14810 * libgomp.texi: Document omp_get_max_task_priority.
14811 Rename modifier argument to chunk_size for omp_set_schedule and
14812 omp_get_schedule. Document OMP_MAX_TASK_PRIORITY env var.
14813 * loop.c (GOMP_loop_runtime_start): Adjust for run_sched_modifier
14814 to run_sched_chunk_size renaming.
14815 (GOMP_loop_ordered_runtime_start): Likewise.
14816 (gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
14817 gomp_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
14818 GOMP_parallel_loop_runtime_start): New functions.
14819 (GOMP_parallel_loop_runtime): Adjust for run_sched_modifier
14820 to run_sched_chunk_size renaming.
14821 (GOMP_loop_doacross_static_start, GOMP_loop_doacross_dynamic_start,
14822 GOMP_loop_doacross_guided_start): New functions or aliases.
14823 * loop_ull.c (GOMP_loop_ull_runtime_start): Adjust for
14824 run_sched_modifier to run_sched_chunk_size renaming.
14825 (GOMP_loop_ull_ordered_runtime_start): Likewise.
14826 (gomp_loop_ull_doacross_static_start,
14827 gomp_loop_ull_doacross_dynamic_start,
14828 gomp_loop_ull_doacross_guided_start,
14829 GOMP_loop_ull_doacross_runtime_start): New functions.
14830 (GOMP_loop_ull_doacross_static_start,
14831 GOMP_loop_ull_doacross_dynamic_start,
14832 GOMP_loop_ull_doacross_guided_start): New functions or aliases.
14833 * oacc-mem.c (acc_map_data, present_create_copy,
14834 gomp_acc_insert_pointer): Pass GOMP_MAP_VARS_OPENACC instead of false
14835 to gomp_map_vars.
14836 (gomp_acc_remove_pointer): Use copy_from from target_var_desc.
14837 * oacc-parallel.c (GOACC_data_start): Pass GOMP_MAP_VARS_OPENACC
14838 instead of false to gomp_map_vars.
14839 (GOACC_parallel_keyed): Likewise. Use copy_from from target_var_desc.
14840 * omp.h.in (omp_lock_hint_t): New type.
14841 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
14842 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
14843 omp_get_place_num, omp_get_partition_num_places,
14844 omp_get_partition_place_nums, omp_get_initial_device,
14845 omp_get_max_task_priority, omp_target_alloc, omp_target_free,
14846 omp_target_is_present, omp_target_memcpy, omp_target_memcpy_rect,
14847 omp_target_associate_ptr, omp_target_disassociate_ptr): New
14848 prototypes.
14849 * omp_lib.f90.in (omp_lock_hint_kind): New parameter.
14850 (omp_lock_hint_none, omp_lock_hint_uncontended,
14851 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
14852 omp_lock_hint_speculative): New parameters.
14853 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
14854 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
14855 omp_get_place_num, omp_get_partition_num_places,
14856 omp_get_partition_place_nums, omp_get_initial_device,
14857 omp_get_max_task_priority): New interfaces.
14858 (omp_set_schedule, omp_get_schedule): Rename modifier argument
14859 to chunk_size.
14860 * omp_lib.h.in (omp_lock_hint_kind): New parameter.
14861 (omp_lock_hint_none, omp_lock_hint_uncontended,
14862 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
14863 omp_lock_hint_speculative): New parameters.
14864 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
14865 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
14866 omp_get_place_num, omp_get_partition_num_places,
14867 omp_get_partition_place_nums, omp_get_initial_device,
14868 omp_get_max_task_priority): New functions and subroutines.
14869 * ordered.c: Include stdarg.h and string.h.
14870 (MAX_COLLAPSED_BITS): Define.
14871 (gomp_doacross_init, GOMP_doacross_post, GOMP_doacross_wait,
14872 gomp_doacross_ull_init, GOMP_doacross_ull_post,
14873 GOMP_doacross_ull_wait): New functions.
14874 * target.c: Include errno.h.
14875 (resolve_device): If device is not initialized, call
14876 gomp_init_device on it.
14877 (gomp_map_lookup): New function.
14878 (gomp_map_vars_existing): Add tgt_var argument, fill it in.
14879 Don't bump refcount if REFCOUNT_INFINITY. Handle
14880 GOMP_MAP_ALWAYS_TO_P.
14881 (get_kind): Rename is_openacc argument to short_mapkind.
14882 (gomp_map_pointer): Use gomp_map_lookup.
14883 (gomp_map_fields_existing): New function.
14884 (gomp_map_vars): Rename is_openacc argument to short_mapkind
14885 and is_target to pragma_kind. Handle GOMP_MAP_VARS_ENTER_DATA,
14886 handle GOMP_MAP_FIRSTPRIVATE_INT, GOMP_MAP_STRUCT,
14887 GOMP_MAP_USE_DEVICE_PTR, GOMP_MAP_ZERO_LEN_ARRAY_SECTION.
14888 Adjust for tgt->list changed type and copy_from living in there.
14889 (gomp_copy_from_async): Adjust for tgt->list changed type and
14890 copy_from living in there.
14891 (gomp_unmap_vars): Likewise.
14892 (gomp_update): Likewise. Rename is_openacc argument to
14893 short_mapkind. Don't fail if object is not mapped.
14894 (gomp_load_image_to_device): Initialize refcount to
14895 REFCOUNT_INFINITY.
14896 (gomp_target_fallback): New function.
14897 (gomp_get_target_fn_addr): Likewise.
14898 (GOMP_target): Adjust gomp_map_vars caller, use
14899 gomp_get_target_fn_addr and gomp_target_fallback.
14900 (GOMP_target_41): New function.
14901 (gomp_target_data_fallback): New function.
14902 (GOMP_target_data): Use it, adjust gomp_map_vars caller.
14903 (GOMP_target_data_41): New function.
14904 (GOMP_target_update): Adjust gomp_update caller.
14905 (GOMP_target_update_41): New function.
14906 (gomp_exit_data, GOMP_target_enter_exit_data,
14907 gomp_target_task_fn, omp_target_alloc, omp_target_free,
14908 omp_target_is_present, omp_target_memcpy,
14909 omp_target_memcpy_rect_worker, omp_target_memcpy_rect,
14910 omp_target_associate_ptr, omp_target_disassociate_ptr,
14911 gomp_load_plugin_for_device): New functions.
14912 * task.c: Include gomp-constants.h. Include taskloop.c
14913 twice to get GOMP_taskloop and GOMP_taskloop_ull definitions.
14914 (gomp_task_handle_depend): New function.
14915 (GOMP_task): Use it. Add priority argument. Use
14916 gomp-constant.h constants instead of hardcoded numbers.
14917 Rename GOMP_TASK_IFFALSE to GOMP_TASK_UNDEFERRED.
14918 (gomp_create_target_task): New function.
14919 (verify_children_queue, verify_taskgroup_queue,
14920 verify_task_queue): New functions.
14921 (gomp_task_run_pre): Call verify_*_queue functions.
14922 If an upcoming tied task is about to leave the sibling or
14923 taskgroup queues in an invalid state, adjust appropriately.
14924 Remove taskgroup argument. Add comments.
14925 (gomp_task_run_post_handle_dependers): Add comments.
14926 (gomp_task_run_post_remove_parent): Likewise.
14927 (gomp_barrier_handle_tasks): Adjust gomp_task_run_pre caller.
14928 (GOMP_taskwait): Likewise. Add comments.
14929 (gomp_task_maybe_wait_for_dependencies): Fix scheduling
14930 problem such that the first non parent_depends_on task does not
14931 end up at the end of the children queue.
14932 (GOMP_taskgroup_start): Rename GOMP_TASK_IFFALSE to
14933 GOMP_TASK_UNDEFERRED.
14934 (GOMP_taskgroup_end): Adjust gomp_task_run_pre caller.
14935 * taskloop.c: New file.
14936 * testsuite/lib/libgomp.exp
14937 (check_effective_target_offload_device_nonshared_as): New proc.
14938 * testsuite/libgomp.c/affinity-2.c: New test.
14939 * testsuite/libgomp.c/doacross-1.c: New test.
14940 * testsuite/libgomp.c/doacross-2.c: New test.
14941 * testsuite/libgomp.c/examples-4/declare_target-1.c (fib_wrapper):
14942 Add map clause to target.
14943 * testsuite/libgomp.c/examples-4/declare_target-4.c (accum): Likewise.
14944 * testsuite/libgomp.c/examples-4/declare_target-5.c (accum): Likewise.
14945 * testsuite/libgomp.c/examples-4/device-1.c (main): Likewise.
14946 * testsuite/libgomp.c/examples-4/device-3.c (main): Likewise.
14947 * testsuite/libgomp.c/examples-4/target_data-3.c (gramSchmidt):
14948 Likewise.
14949 * testsuite/libgomp.c/examples-4/teams-2.c (dotprod): Likewise.
14950 * testsuite/libgomp.c/examples-4/teams-3.c (dotprod): Likewise.
14951 * testsuite/libgomp.c/examples-4/teams-4.c (dotprod): Likewise.
14952 * testsuite/libgomp.c/for-2.h (OMPTGT, OMPTO, OMPFROM): Define if
14953 not defined. Use those where needed.
14954 * testsuite/libgomp.c/for-4.c: New test.
14955 * testsuite/libgomp.c/for-5.c: New test.
14956 * testsuite/libgomp.c/for-6.c: New test.
14957 * testsuite/libgomp.c/linear-1.c: New test.
14958 * testsuite/libgomp.c/ordered-4.c: New test.
14959 * testsuite/libgomp.c/pr66199-2.c (f2): Adjust for linear clause
14960 only allowed on the loop iterator.
14961 * testsuite/libgomp.c/pr66199-3.c: New test.
14962 * testsuite/libgomp.c/pr66199-4.c: New test.
14963 * testsuite/libgomp.c/reduction-7.c: New test.
14964 * testsuite/libgomp.c/reduction-8.c: New test.
14965 * testsuite/libgomp.c/reduction-9.c: New test.
14966 * testsuite/libgomp.c/reduction-10.c: New test.
14967 * testsuite/libgomp.c/target-1.c (fn2, fn3, fn4): Add
14968 map(tofrom:s).
14969 * testsuite/libgomp.c/target-2.c (fn2, fn3, fn4): Likewise.
14970 * testsuite/libgomp.c/target-7.c (foo): Add map(h) where needed.
14971 * testsuite/libgomp.c/target-11.c: New test.
14972 * testsuite/libgomp.c/target-12.c: New test.
14973 * testsuite/libgomp.c/target-13.c: New test.
14974 * testsuite/libgomp.c/target-14.c: New test.
14975 * testsuite/libgomp.c/target-15.c: New test.
14976 * testsuite/libgomp.c/target-16.c: New test.
14977 * testsuite/libgomp.c/target-17.c: New test.
14978 * testsuite/libgomp.c/target-18.c: New test.
14979 * testsuite/libgomp.c/target-19.c: New test.
14980 * testsuite/libgomp.c/target-20.c: New test.
14981 * testsuite/libgomp.c/target-21.c: New test.
14982 * testsuite/libgomp.c/target-22.c: New test.
14983 * testsuite/libgomp.c/target-23.c: New test.
14984 * testsuite/libgomp.c/target-24.c: New test.
14985 * testsuite/libgomp.c/target-25.c: New test.
14986 * testsuite/libgomp.c/target-26.c: New test.
14987 * testsuite/libgomp.c/target-27.c: New test.
14988 * testsuite/libgomp.c/taskloop-1.c: New test.
14989 * testsuite/libgomp.c/taskloop-2.c: New test.
14990 * testsuite/libgomp.c/taskloop-3.c: New test.
14991 * testsuite/libgomp.c/taskloop-4.c: New test.
14992 * testsuite/libgomp.c++/ctor-13.C: New test.
14993 * testsuite/libgomp.c++/doacross-1.C: New test.
14994 * testsuite/libgomp.c++/examples-4/declare_target-2.C:
14995 Replace offload_device with offload_device_nonshared_as.
14996 * testsuite/libgomp.c++/for-12.C: New test.
14997 * testsuite/libgomp.c++/for-13.C: New test.
14998 * testsuite/libgomp.c++/for-14.C: New test.
14999 * testsuite/libgomp.c++/linear-1.C: New test.
15000 * testsuite/libgomp.c++/member-1.C: New test.
15001 * testsuite/libgomp.c++/member-2.C: New test.
15002 * testsuite/libgomp.c++/member-3.C: New test.
15003 * testsuite/libgomp.c++/member-4.C: New test.
15004 * testsuite/libgomp.c++/member-5.C: New test.
15005 * testsuite/libgomp.c++/ordered-1.C: New test.
15006 * testsuite/libgomp.c++/reduction-5.C: New test.
15007 * testsuite/libgomp.c++/reduction-6.C: New test.
15008 * testsuite/libgomp.c++/reduction-7.C: New test.
15009 * testsuite/libgomp.c++/reduction-8.C: New test.
15010 * testsuite/libgomp.c++/reduction-9.C: New test.
15011 * testsuite/libgomp.c++/reduction-10.C: New test.
15012 * testsuite/libgomp.c++/reference-1.C: New test.
15013 * testsuite/libgomp.c++/simd14.C: New test.
15014 * testsuite/libgomp.c++/target-2.C (fn2): Add map(tofrom: s) clause.
15015 * testsuite/libgomp.c++/target-5.C: New test.
15016 * testsuite/libgomp.c++/target-6.C: New test.
15017 * testsuite/libgomp.c++/target-7.C: New test.
15018 * testsuite/libgomp.c++/target-8.C: New test.
15019 * testsuite/libgomp.c++/target-9.C: New test.
15020 * testsuite/libgomp.c++/target-10.C: New test.
15021 * testsuite/libgomp.c++/target-11.C: New test.
15022 * testsuite/libgomp.c++/target-12.C: New test.
15023 * testsuite/libgomp.c++/taskloop-1.C: New test.
15024 * testsuite/libgomp.c++/taskloop-2.C: New test.
15025 * testsuite/libgomp.c++/taskloop-3.C: New test.
15026 * testsuite/libgomp.c++/taskloop-4.C: New test.
15027 * testsuite/libgomp.c++/taskloop-5.C: New test.
15028 * testsuite/libgomp.c++/taskloop-6.C: New test.
15029 * testsuite/libgomp.c++/taskloop-7.C: New test.
15030 * testsuite/libgomp.c++/taskloop-8.C: New test.
15031 * testsuite/libgomp.c++/taskloop-9.C: New test.
15032 * testsuite/libgomp.fortran/affinity1.f90: New test.
15033 * testsuite/libgomp.fortran/affinity2.f90: New test.
15034
15035 2015-10-13 Tom de Vries <tom (a] codesourcery.com>
15036
15037 PR tree-optimization/67476
15038 * testsuite/libgomp.c/autopar-3.c: New test.
15039 * testsuite/libgomp.c/autopar-4.c: New test.
15040 * testsuite/libgomp.c/autopar-5.c: New test.
15041 * testsuite/libgomp.c/autopar-6.c: New test.
15042 * testsuite/libgomp.c/autopar-7.c: New test.
15043 * testsuite/libgomp.c/autopar-8.c: New test.
15044
15045 2015-10-12 James Norris <jnorris (a] codesourcery.com>
15046
15047 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Fix loop
15048 initializer.
15049
15050 2015-10-09 David Malcolm <dmalcolm (a] redhat.com>
15051
15052 * testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp,
15053 using load_gcc_lib.
15054
15055 2015-10-02 Thomas Schwinge <thomas (a] codesourcery.com>
15056
15057 * oacc-ptx.h: Remove file, moving its content into...
15058 * config/nvptx/fortran.c: ... here...
15059 * config/nvptx/oacc-init.c: ..., here...
15060 * config/nvptx/oacc-parallel.c: ..., and here.
15061 * config/nvptx/openacc.f90: New file.
15062 * plugin/plugin-nvptx.c: Don't include "oacc-ptx.h".
15063 (link_ptx): Don't link in predefined bits of PTX code.
15064
15065 2015-09-30 Nathan Sidwell <nathan (a] codesourcery.com>
15066 Bernd Schmidt <bernds (a] codesourcery.com>
15067
15068 * plugin/plugin-nvptx.c (targ_fn_launch): Use GOMP_DIM_MAX.
15069 (struct targ_ptx_obj): New.
15070 (nvptx_tdata): Move earlier, change data format.
15071 (link_ptx): Take targ_ptx_obj ptr and count. Allow multiple
15072 objects.
15073 (GOMP_OFFLOAD_load_image): Adjust.
15074
15075 2015-09-30 Thomas Schwinge <thomas (a] codesourcery.com>
15076
15077 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Add checkpoint.
15078 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
15079 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
15080 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
15081 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
15082 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
15083 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
15084 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
15085 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
15086 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
15087 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
15088 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
15089 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
15090 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
15091 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
15092 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
15093 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
15094 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
15095 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
15096 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
15097 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
15098 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
15099 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
15100 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
15101 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
15102 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
15103 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
15104 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
15105 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
15106 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
15107 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
15108 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
15109 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
15110 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
15111 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
15112 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
15113 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
15114 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
15115 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
15116 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
15117 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
15118 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
15119 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
15120 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
15121 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
15122 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
15123 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
15124 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
15125 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
15126 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
15127 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
15128 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
15129 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
15130 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
15131 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
15132 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
15133 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
15134 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
15135 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
15136 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
15137 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
15138 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
15139 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
15140
15141 2015-09-29 Nathan Sidwell <nathan (a] codesourcery.com>
15142
15143 * oacc-init.c (acc_on_device): Force optimization level.
15144
15145 2015-09-29 Nathan Sidwell <nathan (a] codesourcery.com>
15146
15147 * plugin/plugin-nvptx.c (ARRAYSIZE): Delete.
15148 (cuda_errlist): Delete.
15149 (cuda_error): Reimplement.
15150
15151 2015-09-28 Nathan Sidwell <nathan (a] codesourcery.com>
15152
15153 * libgomp.h (acc_dispatch_t): Replace separate geometry args with
15154 array.
15155 * libgomp.map (GOACC_parallel_keyed): New.
15156 * oacc-parallel.c (goacc_wait): Take pointer to va_list. Adjust
15157 all callers.
15158 (GOACC_parallel_keyed): New interface. Lose geometry arguments
15159 and take keyed varargs list. Adjust call to exec_func.
15160 (GOACC_parallel): Force host fallback.
15161 * libgomp_g.h (GOACC_parallel): Remove.
15162 (GOACC_parallel_keyed): Declare.
15163 * plugin/plugin-nvptx.c (struct targ_fn_launch): New struct.
15164 (struct targ_gn_descriptor): Replace name field with launch field.
15165 (nvptx_exec): Lose separate geometry args, take array. Process
15166 dynamic dimensions and adjust.
15167 (struct nvptx_tdata): Replace fn_names field with fn_descs.
15168 (GOMP_OFFLOAD_load_image): Adjust for change in function table
15169 data.
15170 (GOMP_OFFLOAD_openacc_parallel): Adjust for change in dimension
15171 passing.
15172 * oacc-host.c (host_openacc_exec): Adjust for change in dimension
15173 passing.
15174
15175 2015-09-22 Chung-Lin Tang <cltang (a] codesourcery.com>
15176
15177 PR libgomp/67141
15178 * oacc-int.h (goacc_host_init): Add declaration.
15179 * oacc-host.c (goacc_host_init): Remove static and constructor attribute.
15180 * oacc-init.c (goacc_runtime_initialize): Call goacc_host_init() at end.
15181
15182 2015-09-08 Aditya Kumar <hiraditya (a] msn.com>
15183 Sebastian Pop <s.pop (a] samsung.com>
15184
15185 * testsuite/libgomp.graphite/bounds.c (int foo): Modified test case to
15186 match o/p.
15187 * testsuite/libgomp.graphite/force-parallel-1.c (void parloop): Same.
15188 * testsuite/libgomp.graphite/force-parallel-4.c: Same.
15189 * testsuite/libgomp.graphite/force-parallel-5.c: Same.
15190 * testsuite/libgomp.graphite/force-parallel-7.c: Same.
15191 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
15192
15193 2015-09-03 Jakub Jelinek <jakub (a] redhat.com>
15194
15195 * configure.tgt: Add missing ;; in between nvptx and rtems
15196 snippets.
15197
15198 2015-09-03 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
15199
15200 * config/posix/pool.h (gomp_adjust_thread_attr): New.
15201 * config/rtems/pool.h (gomp_adjust_thread_attr): Likewise.
15202 (gomp_thread_pool_reservoir): Add priority member.
15203 * confi/rtems/proc.c (allocate_thread_pool_reservoir): Add
15204 priority.
15205 (parse_thread_pools): Likewise.
15206 * team.c (gomp_team_start): Call configuration provided
15207 gomp_adjust_thread_attr(). Destroy thread attributes if
15208 necessary.
15209 * libgomp.texi: Document GOMP_RTEMS_THREAD_POOLS.
15210
15211 2015-09-03 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
15212
15213 * config/posix/pool.h: New.
15214 * config/rtems/pool.h: Likewise.
15215 * config/rtems/proc.c: Likewise.
15216 * libgomp.h (gomp_thread_destructor): Declare.
15217 * team.c: Include configuration provided "pool.h".
15218 (gomp_get_thread_pool): Define in configuration.
15219 (gomp_team_end): Call configuration defined
15220 gomp_release_thread_pool().
15221
15222 2015-09-03 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
15223
15224 * config/rtems/bar.c: New.
15225 * config/rtems/bar.h: Likewise.
15226 * config/rtems/mutex.c: Likewise.
15227 * config/rtems/mutex.h: Likewise.
15228 * config/rtems/sem.c: Likewise.
15229 * config/rtems/sem.h: Likewise.
15230 * configure.ac (*-*-rtems*): Check that Newlib provides a proper
15231 <sys/lock.h> header file.
15232 * configure.tgt (*-*-rtems*): Enable RTEMS configuration if
15233 supported by Newlib.
15234 * configure: Regenerate.
15235
15236 2015-09-03 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
15237
15238 * team.c (gomp_new_thread_pool): Delete and move content to ...
15239 (gomp_get_thread_pool): ... new function. Allocate and
15240 initialize thread pool on demand.
15241 (get_last_team): Use gomp_get_thread_pool().
15242 (gomp_team_start): Delete thread pool initialization.
15243
15244 2015-09-03 Tom de Vries <tom (a] codesourcery.com>
15245
15246 PR tree-optimization/65637
15247 * testsuite/libgomp.c/autopar-2.c: New test.
15248
15249 2015-08-29 Tom de Vries <tom (a] codesourcery.com>
15250
15251 PR tree-optimization/46193
15252 * testsuite/libgomp.c/pr46193.c: New test.
15253
15254 2015-08-24 Nathan Sidwell <nathan (a] codesourcery.com>
15255
15256 libgomp/
15257 * libgomp.map: Add 4.0.2 version.
15258 * target.c (offload_image_descr): Add version field.
15259 (gomp_load_image_to_device): Add version argument. Adjust plugin
15260 call. Improve load mismatch diagnostic.
15261 (gomp_unload_image_from_device): Add version argument. Adjust plugin
15262 call.
15263 (GOMP_offload_regster): Make stub function, move bulk to ...
15264 (GOMP_offload_register_ver): ... here. Process version argument.
15265 (GOMP_offload_unregister): Make stub function, move bulk to ...
15266 (GOMP_offload_unregister_ver): ... here. Process version argument.
15267 (gomp_init_device): Process version field.
15268 (gomp_unload_device): Process version field.
15269 (gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT
15270 macros. Check plugin version.
15271 * libgomp.h (gomp_device_descr): Add version function field. Adjust
15272 loader and unloader types.
15273 * oacc-host.c: Include gomp-constants.h.
15274 (host_version): New.
15275 (host_load_image, host_unload_image): Adjust.
15276 (host_dispatch): Add host_version.
15277 * plugin/plugin-nvptx.c: Include gomp-constants.h.
15278 (GOMP_OFFLOAD_version): New.
15279 (GOMP_OFFLOAD_load_image): Add version arg and check it.
15280 (GOMP_OFFLOAD_unload_image): Likewise.
15281 * plugin/plugin-host.c: Include gomp-constants.h.
15282 (GOMP_OFFLOAD_version): New.
15283 (GOMP_OFFLOAD_load_image): Add version arg.
15284 (GOMP_OFFLOAD_unload_image): Likewise.
15285
15286 2015-08-24 Tom de Vries <tom (a] codesourcery.com>
15287
15288 PR tree-optimization/65468
15289 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test.
15290
15291 2015-08-24 Tom de Vries <tom (a] codesourcery.com>
15292
15293 PR tree-optimization/65468
15294 * testsuite/libgomp.c/static-chunk-size-one.c: New test.
15295
15296 2015-08-24 Joost VandeVondele <vondele (a] gnu.gcc.org>
15297
15298 PR libgomp/66761
15299 PR libgomp/67303
15300 * iter.c (gomp_iter_dynamic_next): Employ an atomic load.
15301 (gomp_iter_guided_next): Idem.
15302 * iter_ull.c (gomp_iter_ull_dynamic_next): Idem.
15303 (gomp_iter_ull_guided_next): Idem.
15304 * config/linux/wait.h (do_spin): Idem.
15305
15306 2015-08-10 Thomas Schwinge <thomas (a] codesourcery.com>
15307
15308 * libgomp-plugin.h (enum offload_target_type): Remove
15309 OFFLOAD_TARGET_TYPE_HOST_NONSHM.
15310 * openacc.f90 (openacc_kinds): Remove acc_device_host_nonshm.
15311 * openacc.h (enum acc_device_t): Likewise.
15312 * openacc_lib.h: Likewise.
15313 * oacc-init.c (name_of_acc_device_t): Don't handle it.
15314 (acc_on_device): Just use __builtin_acc_on_device.
15315 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Don't forbid usage
15316 of acc_on_device builtin.
15317 * plugin/plugin-host.h: Remove file.
15318 * plugin/plugin-host.c: Likewise, but salvage some content into...
15319 * oacc-host.c: ... this file.
15320 * plugin/Makefrag.am: Don't build libgomp-plugin-host_nonshm.la.
15321 * plugin/configfrag.ac (offload_targets): Don't add host_nonshm.
15322 * Makefile.in: Regenerate.
15323 * configure: Likewise.
15324 * testsuite/lib/libgomp.exp
15325 (check_effective_target_openacc_host_nonshm_selected): Remove.
15326 * testsuite/libgomp.oacc-c++/c++.exp: Don't handle
15327 ACC_DEVICE_TYPE=host_nonshm.
15328 * testsuite/libgomp.oacc-c/c.exp: Likewise.
15329 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
15330 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
15331 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
15332 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
15333 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
15334
15335 2015-08-10 Thomas Schwinge <thomas (a] codesourcery.com>
15336 Jakub Jelinek <jakub (a] redhat.com>
15337
15338 * config/nvptx/affinity.c: New file.
15339 * config/nvptx/alloc.c: Likewise.
15340 * config/nvptx/bar.c: Likewise.
15341 * config/nvptx/barrier.c: Likewise.
15342 * config/nvptx/critical.c: Likewise.
15343 * config/nvptx/env.c: Likewise.
15344 * config/nvptx/error.c: Likewise.
15345 * config/nvptx/fortran.c: Likewise.
15346 * config/nvptx/iter.c: Likewise.
15347 * config/nvptx/iter_ull.c: Likewise.
15348 * config/nvptx/libgomp-plugin.c: Likewise.
15349 * config/nvptx/lock.c: Likewise.
15350 * config/nvptx/loop.c: Likewise.
15351 * config/nvptx/loop_ull.c: Likewise.
15352 * config/nvptx/mutex.c: Likewise.
15353 * config/nvptx/oacc-async.c: Likewise.
15354 * config/nvptx/oacc-cuda.c: Likewise.
15355 * config/nvptx/oacc-host.c: Likewise.
15356 * config/nvptx/oacc-init.c: Likewise.
15357 * config/nvptx/oacc-mem.c: Likewise.
15358 * config/nvptx/oacc-parallel.c: Likewise.
15359 * config/nvptx/oacc-plugin.c: Likewise.
15360 * config/nvptx/omp-lock.h: Likewise.
15361 * config/nvptx/ordered.c: Likewise.
15362 * config/nvptx/parallel.c: Likewise.
15363 * config/nvptx/proc.c: Likewise.
15364 * config/nvptx/ptrlock.c: Likewise.
15365 * config/nvptx/sections.c: Likewise.
15366 * config/nvptx/sem.c: Likewise.
15367 * config/nvptx/single.c: Likewise.
15368 * config/nvptx/splay-tree.c: Likewise.
15369 * config/nvptx/target.c: Likewise.
15370 * config/nvptx/task.c: Likewise.
15371 * config/nvptx/team.c: Likewise.
15372 * config/nvptx/time.c: Likewise.
15373 * config/nvptx/work.c: Likewise.
15374 * configure.ac: Don't probe pthreads support for host nvptx*-*-*.
15375 * configure: Regenerate.
15376 * configure.tgt (config_path): Set to "nvptx" for target
15377 nvptx*-*-*.
15378
15379 2015-08-10 Thomas Schwinge <thomas (a] codesourcery.com>
15380
15381 * testsuite/libgomp.oacc-c-c++-common/vector-type-1.c: New file.
15382
15383 2015-08-03 Nathan Sidwell <nathan (a] codesourcery.com>
15384
15385 * plugin/plugin-nvptx.c: Don't include dlfcn.h.
15386 (cuda_errlist): Constify.
15387 (errmsg): Move into ...
15388 (cuda_error): ... here. Make smaller.
15389 (_XSTR, _STR): Delete.
15390 (cuda_synames): Delete.
15391 (verify_device_library): Delete.
15392 (nvptx_init): Don't call it.
15393
15394 2015-07-28 Tom de Vries <tom (a] codesourcery.com>
15395
15396 * testsuite/libgomp.c/uns-outer-4.c: New test.
15397
15398 2015-07-24 Cesar Philippidis <cesar (a] codesourcery.com>
15399
15400 * testsuite/libgomp.c/pr66714.c: New test.
15401
15402 2015-07-22 Maxim Blumenthal <maxim.blumenthal (a] intel.com>
15403
15404 PR libgomp/66950
15405 * testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45.
15406 (fib_ref): New function.
15407 (fib): Correct corner cases in the recursion.
15408 (main): Replace the non-simd loop with fib_ref call.
15409 * testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New
15410 subroutine.
15411 (fibonacci): Lower the parameter N to 30. Correct accordingly check
15412 for the last array element value. Replace the non-simd loop with
15413 fib_ref call. Remove redundant b_ref array. Remove the comparison
15414 of the last array element with according Fibonacci sequence element.
15415 (fib): Correct corner cases in the recursion.
15416
15417 2015-07-21 Nathan Sidwell <nathan (a] codesourcery.com>
15418
15419 * target.c (gomp_offload_image_to_device): Rename to ...
15420 (gomp_load_image_to_device): ... here.
15421 (GOMP_offload_register): Adjust call.
15422 (gomp_init_device): Likewise.
15423 (gomp_unload_image_from_device): New. Broken out of ...
15424 (GOMP_offload_unregister): ... here. Call it.
15425 (gomp_unload_device): New.
15426 * libgomp.h (gomp_unload_device): Declare.
15427 * oacc-init.c (acc_shutdown_1): Unload from device before deleting
15428 mem maps.
15429
15430 2015-07-20 Nathan Sidwell <nathan (a] codesourcery.com>
15431
15432 * oacc-parallel.c (GOACC_parallel): Move variadic handling into
15433 wait=-specific if.
15434 (GOACC_enter_exit_data, GOACC_update): Use consistent num_waits
15435 !=0 condition.
15436 (goacc_waits): Move !num_waits handling to ...
15437 (GOACC_wait): ... here, the only caller that might have zero waits.
15438
15439 * plugin/plugin-nvptx.c (struct targ_fn_descriptor): Move later.
15440 (struct ptx_image_data): Move earlier, add fns field.
15441 (struct ptx_device): Add images and image_lock fields.
15442 (ptx_images, ptx_image_lock): Delete.
15443 (nvptx_open_device): Initialize images and image_lock fields.
15444 (nvptx_close_device): Destroy image_lock.
15445 (GOMP_OFFLOAD_load_image): Register image to device-specific fields.
15446 (GOMP_OFFLOAD_unload_image): Unregister image from device-specific
15447 fields.
15448
15449 2015-07-17 Nathan Sidwell <nathan (a] codesourcery.com>
15450
15451 * target.c (GOMP_offload_register): Use int for device type arg.
15452 (GOMP_offload_unregister): Likewise.
15453
15454 * target.c (struct_offload_image_descr): Constify host_table.
15455 (gomp_offload_image_to_device): Likewise.
15456 (GOMP_offload_register, GOMP_offload_unregister): Likewise.
15457
15458 * libgomp.h (gomp_device_descr): Constify target data arguments.
15459 * target.c (struct offload_image_descr): Constify target_data.
15460 (gomp_offload_image_to_device): Likewise.
15461 (GOMP_offload_register): Likewise.
15462 (GOMP_offload_unregister): Likewise.
15463 * plugin/plugin-host.c (GOMP_OFFLOAD_load_image,
15464 GOMP_OFFLOAD_unload_image): Constify target data.
15465 * plugin/plugin-nvptx.c (struct ptx_image_data): Constify target data.
15466 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): Likewise.
15467
15468 2015-07-16 Nathan Sidwell <nathan (a] codesourcery.com>
15469
15470 * plugin/plugin-nvptx.c (link_ptx): Constify string argument.
15471 Workaround driver library const error.
15472 (struct nvptx_tdata, nvptx_tdata_t): New.
15473 (GOMP_OFFLOAD_load_image): Use struct for target_data's real
15474 type.
15475
15476 2015-07-15 Maxim Blumenthal <maxim.blumenthal (a] intel.com>
15477
15478 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Change type
15479 of EPS parameter from integer to real.
15480 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: (check): Change
15481 type of EPS parameter from integer to real.
15482
15483 2015-07-15 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
15484
15485 * team.c (get_last_team): New.
15486 (gomp_new_team): Recycle last non-nested team if possible.
15487 (gomp_team_end): Move team work share list free lock destruction
15488 to ...
15489 (free_team): ... here.
15490
15491 2015-07-14 Maxim Blumenthal <maxim.blumenthal (a] intel.com>
15492
15493 * testsuite/libgomp.c/examples-4/simd-3.c: (main): Change type of res
15494 and ref from int to double. Replaced their comparison with
15495 an inequality of their difference and EPS.
15496 * testsuite/libgomp.c/examples-4/simd-8.c: (main): Replace the
15497 comparison of pri and a reference number with an inequality of their
15498 difference and EPS.
15499 * testsuite/libgomp.fortran/examples-4/simd-3.f90: (main): Replaced
15500 the comparison of sum and sum_ref with an inequality of their
15501 difference and EPS.
15502 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Replace
15503 the comparison of pri and a reference number with an inequality of
15504 their difference and EPS.
15505
15506 2015-07-13 Maxim Blumenthal <maxim.blumenthal (a] intel.com>
15507
15508 * testsuite/libgomp.c++/examples-4/e.53.2.C: Renamed to...
15509 * testsuite/libgomp.c++/examples-4/declare_target-2.C: ...this.
15510 * testsuite/libgomp.c++/examples-4/e.51.5.C: Renamed to...
15511 * testsuite/libgomp.c++/examples-4/target_data-5.C: ...this.
15512 * testsuite/libgomp.c/examples-4/e.56.3.c: Renamed to...
15513 * testsuite/libgomp.c/examples-4/array_sections-3.c: ...this.
15514 * testsuite/libgomp.c/examples-4/e.56.4.c: Renamed to...
15515 * testsuite/libgomp.c/examples-4/array_sections-4.c: ...this.
15516 * testsuite/libgomp.c/examples-4/e.55.1.c: Renamed to...
15517 * testsuite/libgomp.c/examples-4/async_target-1.c: ...this.
15518 * testsuite/libgomp.c/examples-4/e.55.2.c: Renamed to...
15519 * testsuite/libgomp.c/examples-4/async_target-2.c: ...this.
15520 (vec_mult_ref): Remove v1 and v2 arguments, turn them into local
15521 variables.
15522 (vec_mult): Likewise. Add #pragma omp taskwait.
15523 (main): Adjust caller.
15524 * testsuite/libgomp.c/examples-4/e.53.1.c: Renamed to...
15525 * testsuite/libgomp.c/examples-4/declare_target-1.c: ...this.
15526 * testsuite/libgomp.c/examples-4/e.53.3.c: Renamed to...
15527 * testsuite/libgomp.c/examples-4/declare_target-3.c: ...this.
15528 * testsuite/libgomp.c/examples-4/e.53.4.c: Renamed to...
15529 * testsuite/libgomp.c/examples-4/declare_target-4.c: ...this.
15530 * testsuite/libgomp.c/examples-4/e.53.5.c: Renamed to...
15531 * testsuite/libgomp.c/examples-4/declare_target-5.c: ...this.
15532 * testsuite/libgomp.c/examples-4/e.57.1.c: Renamed to...
15533 * testsuite/libgomp.c/examples-4/device-1.c: ...this.
15534 * testsuite/libgomp.c/examples-4/e.57.2.c: Renamed to...
15535 * testsuite/libgomp.c/examples-4/device-2.c: ...this.
15536 * testsuite/libgomp.c/examples-4/e.57.3.c: Renamed to...
15537 * testsuite/libgomp.c/examples-4/device-3.c: ...this.
15538 * testsuite/libgomp.c/examples-4/simd-1.c: New file.
15539 * testsuite/libgomp.c/examples-4/simd-2.c: New file.
15540 * testsuite/libgomp.c/examples-4/simd-3.c: New file.
15541 * testsuite/libgomp.c/examples-4/simd-4.c: New file.
15542 * testsuite/libgomp.c/examples-4/simd-5.c: New file.
15543 * testsuite/libgomp.c/examples-4/simd-6.c: New file.
15544 * testsuite/libgomp.c/examples-4/simd-7.c: New file.
15545 * testsuite/libgomp.c/examples-4/simd-8.c: New file.
15546 * testsuite/libgomp.c/examples-4/e.50.1.c: Renamed to...
15547 * testsuite/libgomp.c/examples-4/target-1.c: ...this.
15548 * testsuite/libgomp.c/examples-4/e.50.2.c: Renamed to...
15549 * testsuite/libgomp.c/examples-4/target-2.c: ...this.
15550 * testsuite/libgomp.c/examples-4/e.50.3.c: Renamed to...
15551 * testsuite/libgomp.c/examples-4/target-3.c: ...this.
15552 * testsuite/libgomp.c/examples-4/e.50.4.c: Renamed to...
15553 * testsuite/libgomp.c/examples-4/target-4.c: ...this.
15554 * testsuite/libgomp.c/examples-4/e.50.5.c: Renamed to...
15555 * testsuite/libgomp.c/examples-4/target-5.c: ...this.
15556 * testsuite/libgomp.c/examples-4/e.51.1.c: Renamed to...
15557 * testsuite/libgomp.c/examples-4/target_data-1.c: ...this.
15558 * testsuite/libgomp.c/examples-4/e.51.2.c: Renamed to...
15559 * testsuite/libgomp.c/examples-4/target_data-2.c: ...this.
15560 * testsuite/libgomp.c/examples-4/e.51.3.c: Renamed to...
15561 * testsuite/libgomp.c/examples-4/target_data-3.c: ...this.
15562 * testsuite/libgomp.c/examples-4/e.51.4.c: Renamed to...
15563 * testsuite/libgomp.c/examples-4/target_data-4.c: ...this.
15564 * testsuite/libgomp.c/examples-4/e.51.6.c: Renamed to...
15565 * testsuite/libgomp.c/examples-4/target_data-6.c: ...this.
15566 * testsuite/libgomp.c/examples-4/e.51.7.c: Renamed to...
15567 * testsuite/libgomp.c/examples-4/target_data-7.c: ...this.
15568 * testsuite/libgomp.c/examples-4/e.52.1.c: Renamed to...
15569 * testsuite/libgomp.c/examples-4/target_update-1.c: ...this.
15570 * testsuite/libgomp.c/examples-4/e.52.2.c: Renamed to...
15571 * testsuite/libgomp.c/examples-4/target_update-2.c: ...this.
15572 * testsuite/libgomp.c/examples-4/task_dep-1.c: New file.
15573 * testsuite/libgomp.c/examples-4/task_dep-2.c: New file.
15574 * testsuite/libgomp.c/examples-4/task_dep-3.c: New file.
15575 * testsuite/libgomp.c/examples-4/task_dep-4.c: New file.
15576 * testsuite/libgomp.c/examples-4/task_dep-5.c: New file.
15577 * testsuite/libgomp.c/examples-4/e.54.2.c: Renamed to...
15578 * testsuite/libgomp.c/examples-4/teams-2.c: ...this.
15579 * testsuite/libgomp.c/examples-4/e.54.3.c: Renamed to...
15580 * testsuite/libgomp.c/examples-4/teams-3.c: ...this.
15581 * testsuite/libgomp.c/examples-4/e.54.4.c: Renamed to...
15582 * testsuite/libgomp.c/examples-4/teams-4.c: ...this.
15583 * testsuite/libgomp.c/examples-4/e.54.5.c: Renamed to...
15584 * testsuite/libgomp.c/examples-4/teams-5.c: ...this.
15585 * testsuite/libgomp.c/examples-4/e.54.6.c: Renamed to...
15586 * testsuite/libgomp.c/examples-4/teams-6.c: ...this.
15587 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Renamed to...
15588 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: ...this.
15589 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Renamed to...
15590 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: ...this.
15591 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Renamed to...
15592 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: ...this.
15593 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Renamed to...
15594 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: ...this.
15595 (vec_mult): Add !$omp taskwait.
15596 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Renamed to...
15597 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: ...this.
15598 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Renamed to...
15599 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: ...this.
15600 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Renamed to...
15601 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: ...this.
15602 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Renamed to...
15603 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: ...this.
15604 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Renamed to...
15605 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: ...this.
15606 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Renamed to...
15607 * testsuite/libgomp.fortran/examples-4/device-1.f90: ...this.
15608 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Renamed to...
15609 * testsuite/libgomp.fortran/examples-4/device-2.f90: ...this.
15610 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Renamed to...
15611 * testsuite/libgomp.fortran/examples-4/device-3.f90: ...this.
15612 * testsuite/libgomp.fortran/examples-4/simd-1.f90: New file.
15613 * testsuite/libgomp.fortran/examples-4/simd-2.f90: New file.
15614 * testsuite/libgomp.fortran/examples-4/simd-3.f90: New file.
15615 * testsuite/libgomp.fortran/examples-4/simd-4.f90: New file.
15616 * testsuite/libgomp.fortran/examples-4/simd-5.f90: New file.
15617 * testsuite/libgomp.fortran/examples-4/simd-6.f90: New file.
15618 * testsuite/libgomp.fortran/examples-4/simd-7.f90: New file.
15619 * testsuite/libgomp.fortran/examples-4/simd-8.f90: New file.
15620 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: Renamed to...
15621 * testsuite/libgomp.fortran/examples-4/target-1.f90: ...this.
15622 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Renamed to...
15623 * testsuite/libgomp.fortran/examples-4/target-2.f90: ...this.
15624 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Renamed to...
15625 * testsuite/libgomp.fortran/examples-4/target-3.f90: ...this.
15626 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Renamed to...
15627 * testsuite/libgomp.fortran/examples-4/target-4.f90: ...this.
15628 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Renamed to...
15629 * testsuite/libgomp.fortran/examples-4/target-5.f90: ...this.
15630 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Renamed to...
15631 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: ...this.
15632 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Renamed to...
15633 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: ...this.
15634 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Renamed to...
15635 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: ...this.
15636 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Renamed to...
15637 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: ...this.
15638 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Renamed to...
15639 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: ...this.
15640 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Renamed to...
15641 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: ...this.
15642 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Renamed to...
15643 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: ...this.
15644 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Renamed to...
15645 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: ...this.
15646 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Renamed to...
15647 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: ...this.
15648 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: New file.
15649 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: New file.
15650 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: New file.
15651 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: New file.
15652 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: New file.
15653 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Renamed to...
15654 * testsuite/libgomp.fortran/examples-4/teams-2.f90: ...this.
15655 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Renamed to...
15656 * testsuite/libgomp.fortran/examples-4/teams-3.f90: ...this.
15657 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Renamed to...
15658 * testsuite/libgomp.fortran/examples-4/teams-4.f90: ...this.
15659 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Renamed to...
15660 * testsuite/libgomp.fortran/examples-4/teams-5.f90: ...this.
15661 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Renamed to...
15662 * testsuite/libgomp.fortran/examples-4/teams-6.f90: ...this.
15663
15664 2015-07-10 Tom de Vries <tom (a] codesourcery.com>
15665
15666 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: New test.
15667 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: New test.
15668
15669 2015-07-08 Thomas Schwinge <thomas (a] codesourcery.com>
15670
15671 PR libgomp/65099
15672 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return 0 if not
15673 in a 64-bit configuration.
15674 * testsuite/libgomp.oacc-c++/c++.exp: Don't attempt nvidia
15675 offloading testing if no such device is available.
15676 * testsuite/libgomp.oacc-c/c.exp: Likewise.
15677 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
15678
15679 2015-07-08 Tom de Vries <tom (a] codesourcery.com>
15680
15681 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Fix
15682 second call to f.
15683 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
15684
15685 2015-07-07 Tom de Vries <tom (a] codesourcery.com>
15686
15687 PR tree-optimization/66642
15688 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Test low
15689 iteration count case.
15690 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c (init): New
15691 function, factor out of ...
15692 (main): ... here. Test low iteration count case.
15693
15694 2015-07-06 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
15695
15696 * libgomp.h (gomp_thread_pool): Comment last_team field.
15697
15698 2015-07-02 Uros Bizjak <ubizjak (a] gmail.com>
15699
15700 * testsuite/libgomp.c++/pr66702-1.C: Require
15701 vect_simd_clones effective target.
15702 * testsuite/libgomp.c++/pr66702-2.C: Ditto.
15703
15704 2015-06-30 Tom de Vries <tom (a] codesourcery.com>
15705
15706 * testsuite/libgomp.oacc-c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
15707 already set. Use DEFAULT_CFLAGS in dg-runtest.
15708 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Remove dg-options
15709 "-O2".
15710
15711 2015-06-30 Tom de Vries <tom (a] codesourcery.com>
15712
15713 * testsuite/libgomp.c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
15714 already set. Use DEFAULT_CFLAGS in dg-runtest.
15715 * testsuite/libgomp.c++/atomic-16.C: Remove dg-options "-O2 -fopenmp".
15716 * testsuite/libgomp.c++/pr64824.C: Same.
15717 * testsuite/libgomp.c++/pr64868.C: Same.
15718 * testsuite/libgomp.c++/pr66199-1.C: Same.
15719 * testsuite/libgomp.c++/pr66199-2.C: Same.
15720 * testsuite/libgomp.c++/target-2.C: Same.
15721 * testsuite/libgomp.c++/for-7.C: Use dg-additional-options for
15722 -std=<standard> option.
15723 * testsuite/libgomp.c++/udr-11.C: Same.
15724 * testsuite/libgomp.c++/udr-12.C: Same.
15725 * testsuite/libgomp.c++/udr-13.C: Same.
15726 * testsuite/libgomp.c++/udr-14.C: Same.
15727 * testsuite/libgomp.c++/udr-15.C: Same.
15728 * testsuite/libgomp.c++/udr-16.C: Same.
15729 * testsuite/libgomp.c++/udr-17.C: Same.
15730 * testsuite/libgomp.c++/udr-18.C: Same.
15731 * testsuite/libgomp.c++/udr-19.C: Same.
15732 * testsuite/libgomp.c++/atomic-1.C: Remove dg-options "-O2".
15733 * testsuite/libgomp.c++/simd-1.C: Same.
15734 * testsuite/libgomp.c++/simd-2.C: Same.
15735 * testsuite/libgomp.c++/simd-3.C: Same.
15736 * testsuite/libgomp.c++/simd-4.C: Same.
15737 * testsuite/libgomp.c++/simd-5.C: Same.
15738 * testsuite/libgomp.c++/simd-6.C: Same.
15739 * testsuite/libgomp.c++/simd-7.C: Same.
15740 * testsuite/libgomp.c++/simd-8.C: Same.
15741 * testsuite/libgomp.c++/simd-9.C: Same.
15742 * testsuite/libgomp.c++/simd10.C: Same.
15743 * testsuite/libgomp.c++/simd11.C: Same.
15744 * testsuite/libgomp.c++/simd12.C: Same.
15745 * testsuite/libgomp.c++/simd13.C: Same.
15746
15747 2015-06-30 Jakub Jelinek <jakub (a] redhat.com>
15748
15749 PR middle-end/66702
15750 * testsuite/libgomp.c++/pr66702-1.C: New test.
15751 * testsuite/libgomp.c++/pr66702-2.C: New test.
15752
15753 2015-06-30 Tom de Vries <tom (a] codesourcery.com>
15754
15755 * testsuite/libgomp.c/parloops-exit-first-loop-alt-5.c: New test.
15756 * testsuite/libgomp.c/parloops-exit-first-loop-alt-6.c: New test.
15757 * testsuite/libgomp.c/parloops-exit-first-loop-alt-7.c: New test.
15758 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Update comment.
15759
15760 2015-06-30 Tom de Vries <tom (a] codesourcery.com>
15761
15762 PR tree-optimization/66652
15763 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (f): Rewrite
15764 using restrict pointers.
15765 (main): Add arguments to calls to f.
15766 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
15767
15768 2015-06-23 Andreas Tobler <andreast (a] gcc.gnu.org>
15769
15770 * configure.ac: Fix check for header <sys/sysctl.h>.
15771 * configure: Regenerate.
15772 * config.h.in: Likewise.
15773
15774 2015-06-23 Tom de Vries <tom (a] codesourcery.com>
15775
15776 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Use
15777 abort.
15778 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c (main): Same.
15779
15780 2015-06-19 Thomas Schwinge <thomas (a] codesourcery.com>
15781
15782 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Only consider for
15783 acc_device_nvidia.
15784
15785 PR libgomp/66518
15786 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: XFAIL.
15787 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
15788
15789 2015-06-15 Tom de Vries <tom (a] codesourcery.com>
15790
15791 * testsuite/libgomp.c/atomic-1.c: Remove dg-options "-O2". Use
15792 dg-additional-options for any remaining options.
15793 * testsuite/libgomp.c/atomic-2.c: Same.
15794 * testsuite/libgomp.c/atomic-4.c: Same.
15795 * testsuite/libgomp.c/atomic-5.c: Same.
15796 * testsuite/libgomp.c/atomic-6.c: Same.
15797 * testsuite/libgomp.c/autopar-1.c: Same.
15798 * testsuite/libgomp.c/copyin-1.c: Same.
15799 * testsuite/libgomp.c/copyin-2.c: Same.
15800 * testsuite/libgomp.c/copyin-3.c: Same.
15801 * testsuite/libgomp.c/examples-4/e.53.5.c: Same.
15802 * testsuite/libgomp.c/nestedfn-5.c: Same.
15803 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Same.
15804 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Same.
15805 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: Same.
15806 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
15807 * testsuite/libgomp.c/pr32362-1.c: Same.
15808 * testsuite/libgomp.c/pr32362-2.c: Same.
15809 * testsuite/libgomp.c/pr32362-3.c: Same.
15810 * testsuite/libgomp.c/pr39591-1.c: Same.
15811 * testsuite/libgomp.c/pr39591-2.c: Same.
15812 * testsuite/libgomp.c/pr39591-3.c: Same.
15813 * testsuite/libgomp.c/pr58392.c: Same.
15814 * testsuite/libgomp.c/pr58756.c: Same.
15815 * testsuite/libgomp.c/simd-1.c: Same.
15816 * testsuite/libgomp.c/simd-10.c: Same.
15817 * testsuite/libgomp.c/simd-11.c: Same.
15818 * testsuite/libgomp.c/simd-12.c: Same.
15819 * testsuite/libgomp.c/simd-13.c: Same.
15820 * testsuite/libgomp.c/simd-14.c: Same.
15821 * testsuite/libgomp.c/simd-15.c: Same.
15822 * testsuite/libgomp.c/simd-2.c: Same.
15823 * testsuite/libgomp.c/simd-3.c: Same.
15824 * testsuite/libgomp.c/simd-4.c: Same.
15825 * testsuite/libgomp.c/simd-5.c: Same.
15826 * testsuite/libgomp.c/simd-6.c: Same.
15827 * testsuite/libgomp.c/simd-7.c: Same.
15828 * testsuite/libgomp.c/simd-8.c: Same.
15829 * testsuite/libgomp.c/simd-9.c: Same.
15830
15831 2015-06-15 Tom de Vries <tom (a] codesourcery.com>
15832
15833 * testsuite/libgomp.c/pr35625.c: Fix typo.
15834
15835 2015-06-15 Tom de Vries <tom (a] codesourcery.com>
15836
15837 * testsuite/libgomp.c/atomic-18.c: Remove superfluous -fopenmp setting
15838 in dg-options.
15839 * testsuite/libgomp.c/atomic-3.c: Same.
15840 * testsuite/libgomp.c/debug-1.c: Same.
15841 * testsuite/libgomp.c/nqueens-1.c: Same.
15842 * testsuite/libgomp.c/pr26171.c: Same.
15843 * testsuite/libgomp.c/pr48591.c: Same.
15844 * testsuite/libgomp.c/pr64824.c: Same.
15845 * testsuite/libgomp.c/pr64868.c: Same.
15846 * testsuite/libgomp.c/pr66133.c: Same.
15847 * testsuite/libgomp.c/pr66199-1.c: Same.
15848 * testsuite/libgomp.c/pr66199-2.c: Same.
15849 * testsuite/libgomp.c/target-8.c: Same.
15850
15851 2015-06-15 Tom de Vries <tom (a] codesourcery.com>
15852
15853 * testsuite/libgomp.c/collapse-3.c: Use dg-additional-options for
15854 -std={gnu99,c99}.
15855 * testsuite/libgomp.c/for-1.c: Same.
15856 * testsuite/libgomp.c/for-2.c: Same.
15857 * testsuite/libgomp.c/for-3.c: Same.
15858 * testsuite/libgomp.c/pr35625.c: Same.
15859 * testsuite/libgomp.c/pr39154.c: Same.
15860 * testsuite/libgomp.c/simd-16.c: Same.
15861 * testsuite/libgomp.c/simd-17.c: Same.
15862
15863 2015-06-13 Tom de Vries <tom (a] codesourcery.com>
15864
15865 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: New test.
15866
15867 2015-06-13 Tom de Vries <tom (a] codesourcery.com>
15868
15869 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Add comment.
15870 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
15871 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Add comment.
15872 (N): Define.
15873 (main): Use N instead of hardcoded constants.
15874
15875 2015-06-05 Tom de Vries <tom (a] codesourcery.com>
15876
15877 merge from gomp4 branch:
15878 2015-05-28 Tom de Vries <tom (a] codesourcery.com>
15879
15880 PR tree-optimization/65443
15881 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: New test.
15882 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: New test.
15883 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: New test.
15884
15885 2015-05-29 Bernhard Reutner-Fischer <aldot (a] gcc.gnu.org>
15886
15887 * testsuite/libgomp.graphite/bounds.c: Adjust for
15888 cleanup-tree-dump removal.
15889 * testsuite/libgomp.graphite/force-parallel-1.c: Likewise.
15890 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
15891 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
15892 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
15893 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
15894 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
15895 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
15896 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
15897 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
15898 * testsuite/libgomp.graphite/pr41118.c: Likewise.
15899
15900 2015-05-28 Uros Bizjak <ubizjak (a] gmail.com>
15901
15902 * config/linux/x86/futex.h (sys_futex0) [!__x86_64__]: Remove function.
15903 (futex_wait) [!__x86_64__]: Use __asm operand instead of sys_futex0.
15904 (futex_wake) [!__x86_64__]: Ditto.
15905
15906 2015-05-28 Julian Brown <julian (a] codesourcery.com>
15907
15908 * oacc-init.c (resolve_device): Add FAIL_IS_ERROR argument. Update
15909 function comment. Only call gomp_fatal if new argument is true.
15910 (acc_dev_num_out_of_range): New function.
15911 (acc_init_1, acc_shutdown_1): Update call to resolve_device. Call
15912 acc_dev_num_out_of_range as appropriate.
15913 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
15914 (acc_get_device_num, acc_set_device_num): Update calls to
15915 resolve_device.
15916 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Update expected test
15917 output.
15918
15919 2015-05-28 Julian Brown <julian (a] codesourcery.com>
15920
15921 PR libgomp/65742
15922 * oacc-init.c (plugin/plugin-host.h): Include.
15923 (acc_on_device): Check whether we're in an offloaded region for
15924 host_nonshm
15925 plugin. Don't use __builtin_acc_on_device.
15926 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_parallel): Set
15927 nonshm_exec flag in thread-local data.
15928 (GOMP_OFFLOAD_openacc_create_thread_data): Allocate thread-local
15929 data for host_nonshm plugin.
15930 (GOMP_OFFLOAD_openacc_destroy_thread_data): Free thread-local data
15931 for host_nonshm plugin.
15932 * plugin/plugin-host.h: New.
15933
15934 2015-05-27 Uros Bizjak <ubizjak (a] gmail.com>
15935
15936 * config/linux/ia64/futex.h (sys_futex0) Change operand "op" to int.
15937
15938 2015-05-27 Uros Bizjak <ubizjak (a] gmail.com>
15939
15940 * config/linux/wait.h (gomp_futex_wait, gomp_futex_wake):
15941 Declare as int.
15942 (FUTEX_PRIVATE_FLAG): Remove L suffix.
15943 * config/linux/mutex.c (gomp_futex_wait, gomp_futex_wake):
15944 Declare as int.
15945
15946 2015-05-27 Uros Bizjak <ubizjak (a] gmail.com>
15947
15948 * config/linux/x86/futex.h (sys_futex0) [__PIC__]: Remove function.
15949
15950 2015-05-27 Chung-Lin Tang <cltang (a] codesourcery.com>
15951
15952 * target.c (gomp_map_pointer): New function abstracting out
15953 GOMP_MAP_POINTER handling.
15954 (gomp_map_vars): Remove GOMP_MAP_POINTER handling code and use
15955 gomp_map_pointer().
15956
15957 2015-05-19 Jakub Jelinek <jakub (a] redhat.com>
15958
15959 PR middle-end/66199
15960 * testsuite/libgomp.c/pr66199-1.c: New test.
15961 * testsuite/libgomp.c/pr66199-2.c: New test.
15962 * testsuite/libgomp.c++/pr66199-1.C: New test.
15963 * testsuite/libgomp.c++/pr66199-2.C: New test.
15964 * testsuite/libgomp.fortran/pr66199-1.f90: New test.
15965 * testsuite/libgomp.fortran/pr66199-2.f90: New test.
15966
15967 2015-05-19 Julian Brown <julian (a] codesourcery.com>
15968
15969 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return zero
15970 on cuInit failure.
15971
15972 2015-05-13 Jakub Jelinek <jakub (a] redhat.com>
15973
15974 PR middle-end/66133
15975 * testsuite/libgomp.c/pr66133.c: New test.
15976
15977 2015-05-13 Michael Haubenwallner <michael.haubenwallner (a] ssi-schaefer.com>
15978
15979 * Makefile.in: Regenerated with automake-1.11.6.
15980 * aclocal.m4: Likewise.
15981 * config.h.in: Likewise.
15982 * configure: Likewise.
15983 * testsuite/Makefile.in: Likewise.
15984
15985 2015-05-08 Jason Merrill <jason (a] redhat.com>
15986
15987 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (main): Use
15988 _Complex.
15989
15990 * openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
15991
15992 2015-05-06 Julian Brown <julian (a] codesourcery.com>
15993
15994 * oacc-init.c (acc_device_lock): Add explanatory comment.
15995 (resolve_device): Add comment about locking requirement.
15996 (acc_init_1, acc_shutdown_1): Likewise. Add locking around
15997 gomp_init_device and gomp_fini_device calls.
15998 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
15999 (acc_get_device_num, acc_set_device_num): Add locking around
16000 resolve_device and gomp_init_device calls.
16001
16002 2015-05-06 Julian Brown <julian (a] codesourcery.com>
16003
16004 * oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for
16005 goacc_thread_lock on error paths.
16006 * oacc-mem.c (lookup_host): Remove locking from function. Note
16007 locking requirement for caller in function comment.
16008 (lookup_dev): Likewise.
16009 (acc_free, acc_deviceptr, acc_hostptr, acc_is_present)
16010 (acc_map_data, acc_unmap_data, present_create_copy, delete_copyout)
16011 (update_dev_host, gomp_acc_insert_pointer, gomp_acc_remove_pointer):
16012 Add locking.
16013
16014 2015-05-05 Thomas Schwinge <thomas (a] codesourcery.com>
16015
16016 PR testsuite/65205
16017 PR libgomp/65993
16018 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: In dg-output,
16019 don't expect "0x" prefix for "%p" format specifier, don't expect
16020 "(nil)" for NULL pointer.
16021 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
16022 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
16023 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
16024 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
16025 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
16026 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
16027 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
16028 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
16029 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
16030 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
16031 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
16032 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
16033 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
16034 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
16035 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
16036 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
16037 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
16038 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
16039 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
16040 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
16041 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
16042 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
16043 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
16044 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
16045 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
16046 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
16047 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
16048 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
16049 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: More
16050 accurately specify what we're looking for.
16051 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
16052 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
16053 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
16054 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
16055 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
16056
16057 2015-04-30 James Norris <jnorris (a] codesourcery.com>
16058
16059 PR testsuite/65205
16060 * testsuite/lib/libgomp.exp
16061 (check_effective_target_openacc_host_selected)
16062 (check_effective_target_openacc_host_nonshm_selected): New
16063 procedures.
16064 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Fix misuse of
16065 dg-shouldfail.
16066 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
16067 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
16068 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
16069 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
16070 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
16071 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
16072 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
16073 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
16074 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
16075 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
16076 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
16077 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
16078 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
16079 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
16080 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
16081 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
16082 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
16083 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
16084 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
16085 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
16086 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
16087 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
16088 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
16089 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
16090 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
16091 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
16092 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
16093 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
16094 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
16095 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
16096 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
16097 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
16098 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
16099 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
16100 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
16101 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
16102 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
16103 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
16104 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
16105 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
16106 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
16107 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
16108 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
16109
16110 2015-04-08 Julian Brown <julian (a] codesourcery.com>
16111
16112 * libgomp.h (target_mem_desc: Remove mem_map field.
16113 (acc_dispatch_t): Remove open_device_func, close_device_func,
16114 get_device_num_func, set_device_num_func, target_data members.
16115 Change create_thread_data_func argument to device number instead of
16116 generic pointer.
16117 * oacc-async.c (assert.h): Include.
16118 (acc_async_test, acc_async_test_all, acc_wait, acc_wait_async)
16119 (acc_wait_all, acc_wait_all_async): Use current host thread's
16120 active device, not base_dev.
16121 * oacc-cuda.c (acc_get_current_cuda_device)
16122 (acc_get_current_cuda_context, acc_get_cuda_stream)
16123 (acc_set_cuda_stream): Likewise.
16124 * oacc-host.c (host_dispatch): Don't set open_device_func,
16125 close_device_func, get_device_num_func or set_device_num_func.
16126 * oacc-init.c (base_dev, init_key): Remove.
16127 (cached_base_dev): New.
16128 (name_of_acc_device_t): New.
16129 (acc_init_1): Initialise default-numbered device, not zeroth.
16130 (acc_shutdown_1): Close all devices of a given type.
16131 (goacc_destroy_thread): Don't use base_dev.
16132 (lazy_open, lazy_init, lazy_init_and_open): Remove.
16133 (goacc_attach_host_thread_to_device): New.
16134 (acc_init): Reimplement with goacc_attach_host_thread_to_device.
16135 (acc_get_num_devices): Don't use base_dev.
16136 (acc_set_device_type): Reimplement.
16137 (acc_get_device_type): Don't use base_dev.
16138 (acc_get_device_num): Tweak logic.
16139 (acc_set_device_num): Likewise.
16140 (acc_on_device): Use acc_get_device_type.
16141 (goacc_runtime_initialize): Initialize cached_base_dev not base_dev.
16142 (goacc_lazy_initialize): Reimplement with acc_init and
16143 goacc_attach_host_thread_to_device.
16144 * oacc-int.h (goacc_thread): Add base_dev field.
16145 (base_dev): Remove extern declaration.
16146 (goacc_attach_host_thread_to_device): Add prototype.
16147 * oacc-mem.c (acc_malloc): Use current thread's device instead of
16148 base_dev.
16149 (acc_free): Likewise.
16150 (acc_memcpy_to_device): Likewise.
16151 (acc_memcpy_from_device): Likewise.
16152 * oacc-parallel.c (select_acc_device): Remove. Replace calls with
16153 goacc_lazy_initialize (throughout).
16154 (GOACC_parallel): Use tgt_offset to locate target functions.
16155 * target.c (gomp_map_vars): Don't set tgt->mem_map.
16156 (gomp_unmap_vars): Use devicep->mem_map pointer not tgt->mem_map.
16157 (gomp_load_plugin_for_device): Remove open_device, close_device,
16158 get_device_num, set_device_num openacc hook initialisation. Don't set
16159 openacc.target_data.
16160 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_open_device)
16161 (GOMP_OFFLOAD_openacc_close_device)
16162 (GOMP_OFFLOAD_openacc_get_device_num)
16163 (GOMP_OFFLOAD_openacc_set_device_num): Remove.
16164 (GOMP_OFFLOAD_openacc_create_thread_data): Change (unused) argument
16165 to int.
16166 * plugin/plugin-nvptx.c (ptx_inited): Remove.
16167 (instantiated_devices, ptx_dev_lock): New.
16168 (struct ptx_image_data): New.
16169 (ptx_devices, ptx_images, ptx_image_lock): New.
16170 (fini_streams_for_device): Reorder cuStreamDestroy call.
16171 (nvptx_get_num_devices): Remove forward declaration.
16172 (nvptx_init): Change return type to bool.
16173 (nvptx_fini): Remove.
16174 (nvptx_attach_host_thread_to_device): New.
16175 (nvptx_open_device): Return struct ptx_device* instead of void*.
16176 (nvptx_close_device): Change argument type to struct ptx_device*,
16177 return type to void.
16178 (nvptx_get_num_devices): Use instantiated_devices not ptx_inited.
16179 (kernel_target_data, kernel_host_table): Remove static globals.
16180 (GOMP_OFFLOAD_register_image, GOMP_OFFLOAD_get_table): Remove.
16181 (GOMP_OFFLOAD_init_device): Reimplement.
16182 (GOMP_OFFLOAD_fini_device): Likewise.
16183 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New.
16184 (GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free, GOMP_OFFLOAD_dev2host)
16185 (GOMP_OFFLOAD_host2dev): Use ORD argument.
16186 (GOMP_OFFLOAD_openacc_open_device)
16187 (GOMP_OFFLOAD_openacc_close_device)
16188 (GOMP_OFFLOAD_openacc_set_device_num)
16189 (GOMP_OFFLOAD_openacc_get_device_num): Remove.
16190 (GOMP_OFFLOAD_openacc_create_thread_data): Change argument to int
16191 (device number).
16192
16193 testsuite/
16194 * libgomp.oacc-c-c++-common/lib-9.c: Fix devnum check in test.
16195
16196 2015-04-06 Ilya Verbin <ilya.verbin (a] intel.com>
16197
16198 * libgomp-plugin.h (struct mapping_table): Replace with addr_pair.
16199 * libgomp.h (struct gomp_memory_mapping): Remove.
16200 (struct target_mem_desc): Change type of mem_map from
16201 gomp_memory_mapping * to splay_tree_s *.
16202 (struct gomp_device_descr): Remove register_image_func, get_table_func.
16203 Add load_image_func, unload_image_func.
16204 Change type of mem_map from gomp_memory_mapping to splay_tree_s.
16205 Remove offload_regions_registered.
16206 (gomp_init_tables): Remove.
16207 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
16208 to splay_tree_s *.
16209 * libgomp.map (GOMP_4.0.1): Add GOMP_offload_unregister.
16210 * oacc-host.c (host_dispatch): Do not initialize register_image_func,
16211 get_table_func, mem_map.is_initialized, mem_map.splay_tree.root,
16212 offload_regions_registered.
16213 Initialize load_image_func, unload_image_func, mem_map.root.
16214 (goacc_host_init): Do not initialize host_dispatch.mem_map.lock.
16215 * oacc-init.c (lazy_open): Don't call gomp_init_tables.
16216 (acc_shutdown_1): Use dev's lock and splay_tree instead of mem_map's.
16217 * oacc-mem.c (lookup_host): Get gomp_device_descr *dev instead of
16218 gomp_memory_mapping *. Use dev's lock and splay_tree.
16219 (lookup_dev): Use dev's lock.
16220 (acc_deviceptr): Pass dev to lookup_host instead of mem_map.
16221 (acc_is_present): Likewise.
16222 (acc_map_data): Likewise.
16223 (acc_unmap_data): Likewise. Use dev's lock.
16224 (present_create_copy): Likewise.
16225 (delete_copyout): Pass dev to lookup_host instead of mem_map.
16226 (update_dev_host): Likewise.
16227 (gomp_acc_remove_pointer): Likewise. Use dev's lock.
16228 * oacc-parallel.c (GOACC_parallel): Use dev's lock and splay_tree.
16229 * plugin/plugin-host.c (GOMP_OFFLOAD_register_image): Remove.
16230 (GOMP_OFFLOAD_get_table): Remove
16231 (GOMP_OFFLOAD_load_image): New function.
16232 (GOMP_OFFLOAD_unload_image): New function.
16233 * target.c (register_lock): New mutex for offload image registration.
16234 (num_devices): Do not guard with PLUGIN_SUPPORT.
16235 (gomp_realloc_unlock): New static function.
16236 (gomp_map_vars_existing): Add device descriptor argument. Unlock mutex
16237 before gomp_fatal.
16238 (gomp_map_vars): Use dev's lock and splay_tree instead of mem_map's.
16239 Pass devicep to gomp_map_vars_existing. Unlock mutex before gomp_fatal.
16240 (gomp_copy_from_async): Use dev's lock and splay_tree instead of
16241 mem_map's.
16242 (gomp_unmap_vars): Likewise.
16243 (gomp_update): Remove gomp_memory_mapping argument. Use dev's lock and
16244 splay_tree instead of mm's. Unlock mutex before gomp_fatal.
16245 (gomp_offload_image_to_device): New static function.
16246 (GOMP_offload_register): Add mutex lock.
16247 Call gomp_offload_image_to_device for all initialized devices.
16248 Replace gomp_realloc with gomp_realloc_unlock.
16249 (GOMP_offload_unregister): New function.
16250 (gomp_init_tables): Replace with gomp_init_device. Replace a call to
16251 get_table_func from the plugin with calls to init_device_func and
16252 gomp_offload_image_to_device.
16253 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
16254 to splay_tree_s *.
16255 (GOMP_target): Do not call gomp_init_tables. Use dev's lock and
16256 splay_tree instead of mem_map's. Unlock mutex before gomp_fatal.
16257 (GOMP_target_data): Do not call gomp_init_tables.
16258 (GOMP_target_update): Likewise. Remove argument from gomp_update.
16259 (gomp_load_plugin_for_device): Replace register_image and get_table
16260 with load_image and unload_image in DLSYM ().
16261 (gomp_register_images_for_device): Remove function.
16262 (gomp_target_init): Do not initialize current_device.mem_map.*,
16263 current_device.offload_regions_registered.
16264 Remove call to gomp_register_images_for_device.
16265 Do not free offload_images and num_offload_images.
16266
16267 2015-03-30 Jakub Jelinek <jakub (a] redhat.com>
16268
16269 PR fortran/65597
16270 * testsuite/libgomp.fortran/pr65597.f90: New test.
16271
16272 2015-03-27 Tom de Vries <tom (a] codesourcery.com>
16273
16274 PR testsuite/65594
16275 * testsuite/libgomp.graphite/force-parallel-6.c (abort): Declare.
16276 (init, check): New function.
16277 (foo): Change return type to void.
16278 (main): Call init and check.
16279
16280 2015-03-27 Tom de Vries <tom (a] codesourcery.com>
16281
16282 PR testsuite/65594
16283 * testsuite/libgomp.graphite/force-parallel-6.c (M): Define.
16284 (foo): Use M for non-inner loops to scale down test-case.
16285
16286 2015-03-25 Kai Tietz <ktietz (a] redhat.com>
16287
16288 PR libgomp/64972
16289 * oacc-parallel.c (GOACC_parallel): Use PRIu64 if available.
16290 (GOACC_data_start): Likewise.
16291 * target.c (gomp_map_vars): Likewise.
16292
16293 2015-03-21 John David Anglin <danglin (a] gcc.gnu.org>
16294
16295 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Don't run on
16296 hppa*-*-hpux*.
16297
16298 2015-03-19 Jakub Jelinek <jakub (a] redhat.com>
16299
16300 * testsuite/libgomp.c/target-10.c: New test.
16301 * testsuite/libgomp.c++/target-4.C: New test.
16302
16303 2015-03-13 Ilya Verbin <ilya.verbin (a] intel.com>
16304
16305 * testsuite/libgomp.fortran/declare-target-1.f90: New test.
16306 * testsuite/libgomp.fortran/declare-target-2.f90: New file.
16307
16308 2015-03-13 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
16309
16310 * configure.tgt (*-*-rtems*): Use local-exec TLS model.
16311 * configure.ac (*-*-rtems*): Assume Pthread is supported.
16312 (pthread.h): Check for this header file.
16313 * configure: Regenerate.
16314
16315 2015-02-25 Tom de Vries <tom (a] codesourcery.com>
16316
16317 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (DO_PRAGMA)
16318 (check_reduction_op, check_reduction_macro, max, min):
16319 Declare.
16320 (test_reductions_int, test_reductions_minmax, test_reductions_bool): New
16321 function.
16322 (main): Use new functions.
16323
16324 2015-02-18 Ilya Tocar <ilya.tocar (a] intel.com>
16325
16326 * target.c (gomp_load_plugin_for_device): Use const char * instead of
16327 char * for variables holding dlerror return values.
16328 (DLSYM_OPT): Ditto.
16329
16330 2015-02-17 Thomas Schwinge <thomas (a] codesourcery.com>
16331
16332 * libgomp-plugin.c (GOMP_PLUGIN_debug): Fix typo.
16333
16334 2015-02-17 Thomas Schwinge <thomas (a] codesourcery.com>
16335 Cesar Philippidis <cesar (a] codesourcery.com>
16336
16337 * oacc-ptx.h (GOACC_INTERNAL_PTX): Add GOACC_tid, GOACC_ntid,
16338 GOACC_ctaid, and GOACC_nctaid routines.
16339
16340 2015-02-11 Jakub Jelinek <jakub (a] redhat.com>
16341
16342 PR c/64824
16343 * testsuite/libgomp.c/atomic-18.c: New test.
16344 * testsuite/libgomp.c++/atomic-16.C: New test.
16345
16346 2015-02-04 Jakub Jelinek <jakub (a] redhat.com>
16347
16348 PR c/64824
16349 PR c/64868
16350 * testsuite/libgomp.c/pr64824.c: New test.
16351 * testsuite/libgomp.c/pr64868.c: New test.
16352 * testsuite/libgomp.c++/pr64824.C: New test.
16353 * testsuite/libgomp.c++/pr64868.C: New test.
16354
16355 2015-02-01 David Edelsohn <dje.gcc (a] gmail.com>
16356
16357 PR libgomp/64635
16358 * configure.tgt (*-*-aix*): Use standard posix plugin-suffix.h.
16359 Link with -lpthread.
16360 * config/aix/plugin-suffix.h: Delete.
16361
16362 2015-01-28 Jack Howarth <howarth.at.gcc (a] gmail.com>
16363
16364 PR libgomp/64635
16365 * configure.tgt (*-*-aix*): Use config_path "aix posix".
16366 (*-*-darwin*): Use config_path "bsd darwin posix".
16367 (*-*-hpux*): Use config_path "hpux posix".
16368 * target.c: Add include of plugin-suffix.h and use
16369 SONAME_SUFFIX macro.
16370 * config/aix/plugin-suffix.h: New file.
16371 * config/darwin/plugin-suffix.h: New file.
16372 * config/hpux/plugin-suffix.h: New file.
16373 * config/posix/plugin-suffix.h: New file.
16374
16375 2015-01-23 Jakub Jelinek <jakub (a] redhat.com>
16376
16377 PR middle-end/64734
16378 * libgomp.c/pr64734.c: New test.
16379
16380 2015-01-23 Tom de Vries <tom (a] codesourcery.com>
16381
16382 PR libgomp/64672
16383 * testsuite/libgomp.oacc-c-c++-common/abort-5.c: New test.
16384
16385 2015-01-23 Tom de Vries <tom (a] codesourcery.com>
16386
16387 PR libgomp/64707
16388 * testsuite/libgomp.c/target-9.c: Add -ftree-parallelize-loops=0 to
16389 dg-options.
16390
16391 2015-01-19 Thomas Schwinge <thomas (a] codesourcery.com>
16392
16393 PR libgomp/64625
16394 * libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data)
16395 (GOACC_parallel, GOACC_update): Remove const_void *offload_table
16396 formal parameter. Update all users.
16397 * target.c (GOMP_target, GOMP_target_data, GOMP_target_update):
16398 Document unused formal parameter.
16399
16400 2015-01-16 Thomas Schwinge <thomas (a] codesourcery.com>
16401
16402 * oacc-parallel.c: Don't include <alloca.h>.
16403 (GOACC_parallel): Use gomp_alloca instead of alloca.
16404
16405 2015-01-16 Gerald Pfeifer <gerald (a] pfeifer.com>
16406
16407 * target.c (num_devices): Guard with PLUGIN_SUPPORT.
16408
16409 2015-01-15 Thomas Schwinge <thomas (a] codesourcery.com>
16410 James Norris <jnorris (a] codesourcery.com>
16411 Tom de Vries <tom (a] codesourcery.com>
16412 Julian Brown <julian (a] codesourcery.com>
16413 Cesar Philippidis <cesar (a] codesourcery.com>
16414 Nathan Sidwell <nathan (a] codesourcery.com>
16415 Tobias Burnus <burnus (a] net-b.de>
16416
16417 * Makefile.am (search_path): Add $(top_srcdir)/../include.
16418 (libgomp_la_SOURCES): Add splay-tree.c, libgomp-plugin.c,
16419 oacc-parallel.c, oacc-host.c, oacc-init.c, oacc-mem.c,
16420 oacc-async.c, oacc-plugin.c, oacc-cuda.c.
16421 [USE_FORTRAN] (libgomp_la_SOURCES): Add openacc.f90.
16422 Include $(top_srcdir)/plugin/Makefrag.am.
16423 (nodist_libsubinclude_HEADERS): Add openacc.h.
16424 [USE_FORTRAN] (nodist_finclude_HEADERS): Add openacc_lib.h,
16425 openacc.f90, openacc.mod, openacc_kinds.mod.
16426 (omp_lib.mod): Generalize into...
16427 (%.mod): ... this new rule.
16428 (openacc_kinds.mod, openacc.mod): New rules.
16429 * plugin/configfrag.ac: New file.
16430 * configure.ac: Move plugin/offloading support into it. Include
16431 it. Instantiate testsuite/libgomp-test-support.pt.exp.
16432 * plugin/Makefrag.am: New file.
16433 * testsuite/Makefile.am (OFFLOAD_TARGETS)
16434 (OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS): Don't
16435 export.
16436 (libgomp-test-support.exp): New rule.
16437 (all-local): Depend on it.
16438 * Makefile.in: Regenerate.
16439 * testsuite/Makefile.in: Regenerate.
16440 * config.h.in: Likewise.
16441 * configure: Likewise.
16442 * configure.tgt: Harden shell syntax.
16443 * env.c: Include "oacc-int.h".
16444 (parse_acc_device_type): New function.
16445 (gomp_debug_var, goacc_device_type, goacc_device_num): New
16446 variables.
16447 (initialize_env): Initialize those. Call
16448 goacc_runtime_initialize.
16449 * error.c (gomp_vdebug, gomp_debug, gomp_vfatal): New functions.
16450 (gomp_fatal): Call gomp_vfatal.
16451 * libgomp.h: Include "libgomp-plugin.h" and <stdarg.h>.
16452 (gomp_debug_var, goacc_device_type, goacc_device_num, gomp_vdebug)
16453 (gomp_debug, gomp_verror, gomp_vfatal, gomp_init_targets_once)
16454 (splay_tree_node, splay_tree, splay_tree_key)
16455 (struct target_mem_desc, struct splay_tree_key_s)
16456 (struct gomp_memory_mapping, struct acc_dispatch_t)
16457 (struct gomp_device_descr, gomp_acc_insert_pointer)
16458 (gomp_acc_remove_pointer, target_mem_desc, gomp_copy_from_async)
16459 (gomp_unmap_vars, gomp_init_device, gomp_init_tables)
16460 (gomp_free_memmap, gomp_fini_device): New declarations.
16461 (gomp_vdebug, gomp_debug): New macros.
16462 Include "splay-tree.h".
16463 * libgomp.map (OACC_2.0): New symbol version. Use for
16464 acc_get_num_devices, acc_get_num_devices_h_, acc_set_device_type,
16465 acc_set_device_type_h_, acc_get_device_type,
16466 acc_get_device_type_h_, acc_set_device_num, acc_set_device_num_h_,
16467 acc_get_device_num, acc_get_device_num_h_, acc_async_test,
16468 acc_async_test_h_, acc_async_test_all, acc_async_test_all_h_,
16469 acc_wait, acc_wait_h_, acc_wait_async, acc_wait_async_h_,
16470 acc_wait_all, acc_wait_all_h_, acc_wait_all_async,
16471 acc_wait_all_async_h_, acc_init, acc_init_h_, acc_shutdown,
16472 acc_shutdown_h_, acc_on_device, acc_on_device_h_, acc_malloc,
16473 acc_free, acc_copyin, acc_copyin_32_h_, acc_copyin_64_h_,
16474 acc_copyin_array_h_, acc_present_or_copyin,
16475 acc_present_or_copyin_32_h_, acc_present_or_copyin_64_h_,
16476 acc_present_or_copyin_array_h_, acc_create, acc_create_32_h_,
16477 acc_create_64_h_, acc_create_array_h_, acc_present_or_create,
16478 acc_present_or_create_32_h_, acc_present_or_create_64_h_,
16479 acc_present_or_create_array_h_, acc_copyout, acc_copyout_32_h_,
16480 acc_copyout_64_h_, acc_copyout_array_h_, acc_delete,
16481 acc_delete_32_h_, acc_delete_64_h_, acc_delete_array_h_,
16482 acc_update_device, acc_update_device_32_h_,
16483 acc_update_device_64_h_, acc_update_device_array_h_,
16484 acc_update_self, acc_update_self_32_h_, acc_update_self_64_h_,
16485 acc_update_self_array_h_, acc_map_data, acc_unmap_data,
16486 acc_deviceptr, acc_hostptr, acc_is_present, acc_is_present_32_h_,
16487 acc_is_present_64_h_, acc_is_present_array_h_,
16488 acc_memcpy_to_device, acc_memcpy_from_device,
16489 acc_get_current_cuda_device, acc_get_current_cuda_context,
16490 acc_get_cuda_stream, acc_set_cuda_stream.
16491 (GOACC_2.0): New symbol version. Use for GOACC_data_end,
16492 GOACC_data_start, GOACC_enter_exit_data, GOACC_parallel,
16493 GOACC_update, GOACC_wait, GOACC_get_thread_num,
16494 GOACC_get_num_threads.
16495 (GOMP_PLUGIN_1.0): New symbol version. Use for
16496 GOMP_PLUGIN_malloc, GOMP_PLUGIN_malloc_cleared,
16497 GOMP_PLUGIN_realloc, GOMP_PLUGIN_debug, GOMP_PLUGIN_error,
16498 GOMP_PLUGIN_fatal, GOMP_PLUGIN_async_unmap_vars,
16499 GOMP_PLUGIN_acc_thread.
16500 * libgomp.texi: Update for OpenACC changes, and GOMP_DEBUG
16501 environment variable.
16502 * libgomp_g.h (GOACC_data_start, GOACC_data_end)
16503 (GOACC_enter_exit_data, GOACC_parallel, GOACC_update, GOACC_wait)
16504 (GOACC_get_num_threads, GOACC_get_thread_num): New declarations.
16505 * splay-tree.h (splay_tree_lookup, splay_tree_insert)
16506 (splay_tree_remove): New declarations.
16507 (rotate_left, rotate_right, splay_tree_splay, splay_tree_insert)
16508 (splay_tree_remove, splay_tree_lookup): Move into...
16509 * splay-tree.c: ... this new file.
16510 * target.c: Include "oacc-plugin.h", "oacc-int.h", <assert.h>.
16511 (splay_tree_node, splay_tree, splay_tree_key)
16512 (struct target_mem_desc, struct splay_tree_key_s)
16513 (struct gomp_device_descr): Don't declare.
16514 (num_devices_openmp): New variable.
16515 (gomp_get_num_devices ): Use it.
16516 (gomp_init_targets_once): New function.
16517 (gomp_get_num_devices ): Use it.
16518 (get_kind, gomp_copy_from_async, gomp_free_memmap)
16519 (gomp_fini_device, gomp_register_image_for_device): New functions.
16520 (gomp_map_vars): Add devaddrs parameter.
16521 (gomp_update): Add mm parameter.
16522 (gomp_init_device): Move most of it into...
16523 (gomp_init_tables): ... this new function.
16524 (gomp_register_images_for_device): Remove function.
16525 (splay_compare, gomp_map_vars, gomp_unmap_vars, gomp_init_device):
16526 Make them hidden instead of static.
16527 (gomp_map_vars_existing, gomp_map_vars, gomp_unmap_vars)
16528 (gomp_update, gomp_init_device, GOMP_target, GOMP_target_data)
16529 (GOMP_target_end_data, GOMP_target_update)
16530 (gomp_load_plugin_for_device, gomp_target_init): Update for
16531 OpenACC changes.
16532 * oacc-async.c: New file.
16533 * oacc-cuda.c: Likewise.
16534 * oacc-host.c: Likewise.
16535 * oacc-init.c: Likewise.
16536 * oacc-int.h: Likewise.
16537 * oacc-mem.c: Likewise.
16538 * oacc-parallel.c: Likewise.
16539 * oacc-plugin.c: Likewise.
16540 * oacc-plugin.h: Likewise.
16541 * oacc-ptx.h: Likewise.
16542 * openacc.f90: Likewise.
16543 * openacc.h: Likewise.
16544 * openacc_lib.h: Likewise.
16545 * plugin/plugin-host.c: Likewise.
16546 * plugin/plugin-nvptx.c: Likewise.
16547 * libgomp-plugin.c: Likewise.
16548 * libgomp-plugin.h: Likewise.
16549 * libgomp_target.h: Remove file after merging content into the
16550 former file. Update all users.
16551 * testsuite/lib/libgomp.exp: Load libgomp-test-support.exp.
16552 (offload_targets_s, offload_targets_s_openacc): New variables.
16553 (check_effective_target_openacc_nvidia_accel_present)
16554 (check_effective_target_openacc_nvidia_accel_selected): New
16555 procedures.
16556 (libgomp_init): Update for OpenACC changes.
16557 * testsuite/libgomp-test-support.exp.in: New file.
16558 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
16559 * testsuite/libgomp.oacc-c/c.exp: Likewise.
16560 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
16561 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Likewise.
16562 * testsuite/libgomp.oacc-c-c++-common/abort-2.c: Likewise.
16563 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
16564 * testsuite/libgomp.oacc-c-c++-common/abort-4.c: Likewise.
16565 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
16566 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
16567 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Likewise.
16568 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Likewise.
16569 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
16570 * testsuite/libgomp.oacc-c-c++-common/collapse-1.c: Likewise.
16571 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
16572 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
16573 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
16574 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
16575 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
16576 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
16577 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
16578 * testsuite/libgomp.oacc-c-c++-common/data-1.c: Likewise.
16579 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
16580 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
16581 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
16582 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
16583 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
16584 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
16585 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
16586 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
16587 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
16588 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
16589 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
16590 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
16591 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Likewise.
16592 * testsuite/libgomp.oacc-c-c++-common/kernels-empty.c: Likewise.
16593 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
16594 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
16595 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
16596 * testsuite/libgomp.oacc-c-c++-common/lib-12.c: Likewise.
16597 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
16598 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
16599 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
16600 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
16601 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
16602 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
16603 * testsuite/libgomp.oacc-c-c++-common/lib-19.c: Likewise.
16604 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
16605 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
16606 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
16607 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
16608 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
16609 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
16610 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
16611 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
16612 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
16613 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
16614 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
16615 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
16616 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
16617 * testsuite/libgomp.oacc-c-c++-common/lib-31.c: Likewise.
16618 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
16619 * testsuite/libgomp.oacc-c-c++-common/lib-33.c: Likewise.
16620 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
16621 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
16622 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
16623 * testsuite/libgomp.oacc-c-c++-common/lib-37.c: Likewise.
16624 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Likewise.
16625 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
16626 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
16627 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
16628 * testsuite/libgomp.oacc-c-c++-common/lib-41.c: Likewise.
16629 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
16630 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
16631 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
16632 * testsuite/libgomp.oacc-c-c++-common/lib-45.c: Likewise.
16633 * testsuite/libgomp.oacc-c-c++-common/lib-46.c: Likewise.
16634 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
16635 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
16636 * testsuite/libgomp.oacc-c-c++-common/lib-49.c: Likewise.
16637 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Likewise.
16638 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Likewise.
16639 * testsuite/libgomp.oacc-c-c++-common/lib-51.c: Likewise.
16640 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
16641 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
16642 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
16643 * testsuite/libgomp.oacc-c-c++-common/lib-55.c: Likewise.
16644 * testsuite/libgomp.oacc-c-c++-common/lib-56.c: Likewise.
16645 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
16646 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
16647 * testsuite/libgomp.oacc-c-c++-common/lib-59.c: Likewise.
16648 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
16649 * testsuite/libgomp.oacc-c-c++-common/lib-60.c: Likewise.
16650 * testsuite/libgomp.oacc-c-c++-common/lib-61.c: Likewise.
16651 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
16652 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
16653 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
16654 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
16655 * testsuite/libgomp.oacc-c-c++-common/lib-66.c: Likewise.
16656 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
16657 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
16658 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
16659 * testsuite/libgomp.oacc-c-c++-common/lib-7.c: Likewise.
16660 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
16661 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
16662 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
16663 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
16664 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
16665 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
16666 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
16667 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
16668 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
16669 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
16670 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
16671 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
16672 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
16673 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
16674 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
16675 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
16676 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
16677 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
16678 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
16679 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
16680 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
16681 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
16682 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
16683 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
16684 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
16685 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Likewise.
16686 * testsuite/libgomp.oacc-c-c++-common/offset-1.c: Likewise.
16687 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: Likewise.
16688 * testsuite/libgomp.oacc-c-c++-common/parallel-empty.c: Likewise.
16689 * testsuite/libgomp.oacc-c-c++-common/pointer-align-1.c: Likewise.
16690 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
16691 * testsuite/libgomp.oacc-c-c++-common/present-2.c: Likewise.
16692 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
16693 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
16694 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
16695 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
16696 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
16697 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c:
16698 Likewise.
16699 * testsuite/libgomp.oacc-c-c++-common/subr.h: Likewise.
16700 * testsuite/libgomp.oacc-c-c++-common/subr.ptx: Likewise.
16701 * testsuite/libgomp.oacc-c-c++-common/timer.h: Likewise.
16702 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
16703 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Likewise.
16704 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
16705 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
16706 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
16707 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
16708 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
16709 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
16710 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
16711 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
16712 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
16713 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
16714 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
16715 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
16716 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
16717 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
16718 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
16719 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
16720 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
16721 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
16722 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
16723 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
16724 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
16725 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
16726 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
16727 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
16728 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
16729 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
16730 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
16731 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
16732 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
16733 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
16734 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
16735 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
16736 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
16737 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
16738 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
16739 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
16740 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
16741 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
16742 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
16743 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
16744 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
16745 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
16746 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
16747 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
16748 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
16749 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
16750 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
16751 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
16752 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
16753 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
16754 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
16755 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
16756 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
16757 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
16758 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
16759
16760 2015-01-10 Thomas Schwinge <thomas (a] codesourcery.com>
16761 Julian Brown <julian (a] codesourcery.com>
16762 David Malcolm <dmalcolm (a] redhat.com>
16763
16764 * configure.ac: Rename libgomp from "GNU OpenMP Runtime Library"
16765 to "GNU Offloading and Multi Processing Runtime Library". Change
16766 all users.
16767 * configure: Regenerate.
16768 * libgomp.texi: Update.
16769
16770 2015-01-08 Thomas Schwinge <thomas (a] codesourcery.com>
16771
16772 * configure.ac [tgt_dir] (offload_additional_lib_paths): Also add
16773 "$tgt_dir/lib32".
16774 * configure: Regenerate.
16775
16776 * testsuite/lib/libgomp.exp (libgomp_init): Correctly match
16777 "intelmic" in $offload_targets.
16778
16779 2015-01-05 Jakub Jelinek <jakub (a] redhat.com>
16780
16781 Update copyright years.
16782
16783 * libgomp.texi: Bump @copying's copyright year.
16784
16785 2014-12-12 Kyrylo Tkachov <kyrylo.tkachov (a] arm.com>
16786
16787 * testsuite/lib/libgomp.exp: Load target-utils.exp.
16788 Move load of target-supports.exp earlier.
16789
16790 2014-12-10 Ilya Verbin <ilya.verbin (a] intel.com>
16791
16792 * testsuite/libgomp.c/target-9.c: New test.
16793
16794 2014-12-09 Varvara Rainchik <varvara.rainchik (a] intel.com>
16795
16796 * config.h.in: Regenerate.
16797 * configure: Regenerate.
16798 * configure.ac: Add GCC_CHECK_EMUTLS.
16799 * libgomp.h: Add check for USE_EMUTLS: this case
16800 is equal to HAVE_TLS.
16801 * team.c: Likewise.
16802
16803 2014-12-03 Uros Bizjak <ubizjak (a] gmail.com>
16804
16805 * configure.tgt (x86_64-*-linux*): Tune -m32 multilib to generic.
16806
16807 2014-11-28 Andrey Turetskiy <andrey.turetskiy (a] intel.com>
16808 Ilya Verbin <ilya.verbin (a] intel.com>
16809
16810 * testsuite/libgomp.c/target-critical-1.c: New test.
16811
16812 2014-11-26 Jakub Jelinek <jakub (a] redhat.com>
16813
16814 * testsuite/libgomp.c/examples-4/e.53.4.c: Add -DITESTITERS=20
16815 to dg-options unless expensive testing is on.
16816 (TESTITERS): Define to N if not defined.
16817 (main): Use TESTITERS instead of N.
16818 * testsuite/libgomp.c/examples-4/e.55.1.c: Define CHUNKSZ from
16819 dg-additional-options depending on whether expensive testing is on.
16820 * testsuite/libgomp.fortran/examples-4/e.55.1.f90 (e_55_1_mod):
16821 Decrease N to 100000 and CHUNKSZ to 10000.
16822
16823 2014-11-24 Jakub Jelinek <jakub (a] redhat.com>
16824
16825 PR fortran/63938
16826 * testsuite/libgomp.fortran/pr63938-1.f90: New test.
16827 * testsuite/libgomp.fortran/pr63938-2.f90: New test.
16828
16829 2014-11-21 Steve Ellcey <sellcey (a] imgtec.com>
16830
16831 * config/linux/mips/futex.h (SYS_futex): Define if not already done.
16832
16833 2014-11-21 H.J. Lu <hongjiu.lu (a] intel.com>
16834
16835 PR bootstrap/63784
16836 * configure: Regenerated.
16837
16838 2014-11-19 Uros Bizjak <ubizjak (a] gmail.com>
16839
16840 * testsuite/libgomp.c/examples-4/e.53.5.c: Require
16841 vect_simd_clones effective target.
16842 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
16843
16844 2014-11-14 Jakub Jelinek <jakub (a] redhat.com>
16845
16846 * libgomp.c/examples-4/e.54.2.c (main): Use N / 8 instead
16847 of 32 as block_size.
16848 * libgomp.fortran/examples-4/e.54.2.f90 (e_54_1): Use n / 8
16849 instead of 32 as block_size.
16850
16851 2014-11-13 Andrey Turetskiy <andrey.turetskiy (a] intel.com>
16852 Ilya Verbin <ilya.verbin (a] intel.com>
16853
16854 * Makefile.in: Regenerate.
16855 * configure: Regenerate.
16856 * configure.ac: Set up offload_additional_options,
16857 offload_additional_lib_paths and offload_targets.
16858 * testsuite/Makefile.am: Export environment variables: OFFLOAD_TARGETS,
16859 OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS.
16860 * testsuite/Makefile.in: Regenerate.
16861 * testsuite/lib/libgomp.exp (libgomp_init): Append
16862 offload_additional_lib_paths to LD_LIBRARY_PATH. Append
16863 offload_additional_options to ALWAYS_CFLAGS. Append liboffloadmic
16864 build directory to LD_LIBRARY_PATH for intelmic offload targets.
16865
16866 2014-11-13 Andrey Turetskiy <andrey.turetskiy (a] intel.com>
16867 Ilya Verbin <ilya.verbin (a] intel.com>
16868 Kirill Yukhin <kirill.yukhin (a] intel.com>
16869 Ilya Tocar <ilya.tocar (a] intel.com>
16870
16871 * testsuite/lib/libgomp.exp
16872 (check_effective_target_offload_device): New.
16873 * testsuite/libgomp.c++/c++.exp: Include tests from subdirectories.
16874 * testsuite/libgomp.c++/examples-4/e.51.5.C: New test.
16875 * testsuite/libgomp.c++/examples-4/e.53.2.C: Ditto.
16876 * testsuite/libgomp.c/examples-4/e.50.1.c: Ditto.
16877 * testsuite/libgomp.c/examples-4/e.50.2.c: Ditto.
16878 * testsuite/libgomp.c/examples-4/e.50.3.c: Ditto.
16879 * testsuite/libgomp.c/examples-4/e.50.4.c: Ditto.
16880 * testsuite/libgomp.c/examples-4/e.50.5.c: Ditto.
16881 * testsuite/libgomp.c/examples-4/e.51.1.c: Ditto.
16882 * testsuite/libgomp.c/examples-4/e.51.2.c: Ditto.
16883 * testsuite/libgomp.c/examples-4/e.51.3.c: Ditto.
16884 * testsuite/libgomp.c/examples-4/e.51.4.c: Ditto.
16885 * testsuite/libgomp.c/examples-4/e.51.6.c: Ditto.
16886 * testsuite/libgomp.c/examples-4/e.51.7.c: Ditto.
16887 * testsuite/libgomp.c/examples-4/e.52.1.c: Ditto.
16888 * testsuite/libgomp.c/examples-4/e.52.2.c: Ditto.
16889 * testsuite/libgomp.c/examples-4/e.53.1.c: Ditto.
16890 * testsuite/libgomp.c/examples-4/e.53.3.c: Ditto.
16891 * testsuite/libgomp.c/examples-4/e.53.4.c: Ditto.
16892 * testsuite/libgomp.c/examples-4/e.53.5.c: Ditto.
16893 * testsuite/libgomp.c/examples-4/e.54.2.c: Ditto.
16894 * testsuite/libgomp.c/examples-4/e.54.3.c: Ditto.
16895 * testsuite/libgomp.c/examples-4/e.54.4.c: Ditto.
16896 * testsuite/libgomp.c/examples-4/e.54.5.c: Ditto.
16897 * testsuite/libgomp.c/examples-4/e.54.6.c: Ditto.
16898 * testsuite/libgomp.c/examples-4/e.55.1.c: Ditto.
16899 * testsuite/libgomp.c/examples-4/e.55.2.c: Ditto.
16900 * testsuite/libgomp.c/examples-4/e.56.3.c: Ditto.
16901 * testsuite/libgomp.c/examples-4/e.56.4.c: Ditto.
16902 * testsuite/libgomp.c/examples-4/e.57.1.c: Ditto.
16903 * testsuite/libgomp.c/examples-4/e.57.2.c: Ditto.
16904 * testsuite/libgomp.c/examples-4/e.57.3.c: Ditto.
16905 * testsuite/libgomp.c/target-7.c: Fix test.
16906 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: New test.
16907 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Ditto.
16908 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Ditto.
16909 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Ditto.
16910 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Ditto.
16911 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Ditto.
16912 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Ditto.
16913 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Ditto.
16914 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Ditto.
16915 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Ditto.
16916 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Ditto.
16917 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Ditto.
16918 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Ditto.
16919 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Ditto.
16920 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Ditto.
16921 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Ditto.
16922 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Ditto.
16923 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Ditto.
16924 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
16925 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Ditto.
16926 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Ditto.
16927 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Ditto.
16928 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Ditto.
16929 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Ditto.
16930 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Ditto.
16931 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Ditto.
16932 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Ditto.
16933 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Ditto.
16934 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Ditto.
16935 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Ditto.
16936 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Ditto.
16937
16938 2014-11-13 Jakub Jelinek <jakub (a] redhat.com>
16939 Ilya Verbin <ilya.verbin (a] intel.com>
16940 Thomas Schwinge <thomas (a] codesourcery.com>
16941 Andrey Turetskiy <andrey.turetskiy (a] intel.com>
16942
16943 * libgomp.map (GOMP_4.0.1): New symbol version.
16944 Add GOMP_offload_register.
16945 * libgomp_target.h: New file.
16946 * splay-tree.h: New file.
16947 * target.c: Include config.h, libgomp_target.h, dlfcn.h, splay-tree.h.
16948 (gomp_target_init): New forward declaration.
16949 (gomp_is_initialized): New static variable.
16950 (splay_tree_node, splay_tree, splay_tree_key): New typedefs.
16951 (struct target_mem_desc, struct splay_tree_key_s, offload_image_descr):
16952 New structures.
16953 (offload_images, num_offload_images, devices, num_devices): New static
16954 variables.
16955 (splay_compare): New static function.
16956 (struct gomp_device_descr): New structure.
16957 (gomp_get_num_devices): Call gomp_target_init.
16958 (resolve_device, gomp_map_vars_existing, gomp_map_vars, gomp_unmap_tgt)
16959 (gomp_unmap_vars, gomp_update, gomp_init_device): New static functions.
16960 (GOMP_offload_register): New function.
16961 (GOMP_target): Arrange for host callback to be performed in a separate
16962 initial thread and contention group, inheriting ICVs from
16963 gomp_global_icv etc. Call gomp_map_vars and gomp_unmap_vars.
16964 Add device initialization and lookup for target function in splay tree.
16965 (GOMP_target_data): Add device initialization and call gomp_map_vars.
16966 (GOMP_target_end_data): Call gomp_unmap_vars.
16967 (GOMP_target_update): Add device initialization and call gomp_update.
16968 (gomp_load_plugin_for_device, gomp_register_images_for_device)
16969 (gomp_target_init): New static functions.
16970
16971 2014-11-13 Bernd Schmidt <bernds (a] codesourcery.com>
16972 Thomas Schwinge <thomas (a] codesourcery.com>
16973 Ilya Verbin <ilya.verbin (a] intel.com>
16974 Andrey Turetskiy <andrey.turetskiy (a] intel.com>
16975
16976 * config.h.in: Regenerate.
16977 * configure: Regenerate.
16978 * configure.ac: Check for libdl, required for plugin support.
16979 (PLUGIN_SUPPORT): Define if plugins are supported.
16980 (enable_offload_targets): Support Intel MIC targets.
16981 (OFFLOAD_TARGETS): List of target names suitable for offloading.
16982
16983 2014-11-11 Francois-Xavier Coudert <fxcoudert (a] gcc.gnu.org>
16984
16985 PR target/63610
16986 * configure: Regenerate.
16987
16988 2014-11-05 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
16989
16990 * config/posix/lock.c (_XOPEN_SOURCE) Define as 600.
16991
16992 2014-10-06 Marek Polacek <polacek (a] redhat.com>
16993
16994 * testsuite/libgomp.c/affinity-1.c: Include <sys/wait.h>.
16995 * testsuite/libgomp.c/nqueens-1.c: Include <stdlib.h>.
16996 * testsuite/libgomp.c/thread-limit-1.c: Include <omp.h>
16997 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
16998
16999 2014-10-06 Marek Polacek <polacek (a] redhat.com>
17000
17001 * testsuite/libgomp.c/affinity-1.c: Fix implicit declarations.
17002 * testsuite/libgomp.c/nqueens-1.c: Likewise.
17003 * testsuite/libgomp.c/pr26943-3.c: Likewise.
17004 * testsuite/libgomp.c/pr26943-4.c: Likewise.
17005 * testsuite/libgomp.c/pr36802-2.c: Likewise.
17006 * testsuite/libgomp.c/pr36802-3.c: Likewise.
17007 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
17008 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
17009 * testsuite/libgomp.c/appendix-a/a.15.1.c: Include <omp.h>.
17010 * testsuite/libgomp.c/omp-loop02.c: Fix defaulting to int.
17011 * testsuite/libgomp.c/omp-parallel-for.c: Likewise.
17012 * testsuite/libgomp.c/omp-parallel-if.c: Likewise.
17013 * testsuite/libgomp.c/omp-single-1.c: Likewise.
17014 * testsuite/libgomp.c/omp-single-2.c: Likewise.
17015 * testsuite/libgomp.c/omp_matvec.c: Likewise.
17016 * testsuite/libgomp.c/omp_workshare3.c: Likewise.
17017 * testsuite/libgomp.c/omp_workshare4.c: Likewise.
17018 * testsuite/libgomp.c/shared-1.c: Fix defaulting to int. Fix implicit
17019 declarations.
17020
17021 2014-10-03 Jakub Jelinek <jakub (a] redhat.com>
17022
17023 PR libgomp/61200
17024 * testsuite/libgomp.c/pr61200.c: New test.
17025
17026 2014-09-18 Jakub Jelinek <jakub (a] redhat.com>
17027
17028 PR c++/63248
17029 * testsuite/libgomp.c++/pr63248.C: New test.
17030
17031 2014-08-04 Jakub Jelinek <jakub (a] redhat.com>
17032
17033 * task.c (GOMP_taskgroup_end): If taskgroup->num_children
17034 is not zero, but taskgroup->children is NULL and there are
17035 any task->children, schedule those instead of waiting.
17036 * testsuite/libgomp.c/depend-6.c: New test.
17037 * testsuite/libgomp.c/depend-7.c: New test.
17038 * testsuite/libgomp.c/depend-8.c: New test.
17039 * testsuite/libgomp.c/depend-9.c: New test.
17040 * testsuite/libgomp.c/depend-10.c: New test.
17041
17042 2014-08-01 Jakub Jelinek <jakub (a] redhat.com>
17043
17044 * libgomp.h (struct gomp_task_depend_entry): Add redundant_out field.
17045 (struct gomp_taskwait): New type.
17046 (struct gomp_task): Add taskwait and parent_depends_on, remove
17047 in_taskwait and taskwait_sem fields.
17048 (gomp_finish_task): Don't destroy taskwait_sem.
17049 * task.c (gomp_init_task): Don't init in_taskwait, instead init
17050 taskwait and parent_depends_on.
17051 (GOMP_task): For if (0) tasks with depend clause that depend on
17052 earlier tasks don't defer them, instead call
17053 gomp_task_maybe_wait_for_dependencies to wait for the dependencies.
17054 Initialize redundant_out field, for redundant out entries just
17055 move them at the end of linked list instead of removing them
17056 completely, and set redundant_out flag instead of redundant.
17057 (gomp_task_run_pre): Update last_parent_depends_on if scheduling
17058 that task.
17059 (gomp_task_run_post_handle_dependers): If parent is in
17060 gomp_task_maybe_wait_for_dependencies and newly runnable task
17061 is not parent_depends_on, queue it in parent->children linked
17062 list after all runnable tasks with parent_depends_on set.
17063 Adjust for addition of taskwait indirection.
17064 (gomp_task_run_post_remove_parent): If parent is in
17065 gomp_task_maybe_wait_for_dependencies and task to be removed
17066 is parent_depends_on, decrement n_depend and if needed awake
17067 parent. Adjust for addition of taskwait indirection.
17068 (GOMP_taskwait): Adjust for addition of taskwait indirection.
17069 (gomp_task_maybe_wait_for_dependencies): New function.
17070 * testsuite/libgomp.c/depend-5.c: New test.
17071
17072 2014-07-13 Tobias Burnus <burnus (a] net-b.de>
17073
17074 * testsuite/libgomp.fortran/pr34020.f90: Make compile
17075 with TS 18508/Fortran 2015.
17076
17077 2014-07-06 Marek Polacek <polacek (a] redhat.com>
17078
17079 PR c/6940
17080 * testsuite/libgomp.c/appendix-a/a.29.1.c (f): Add dg-warnings.
17081
17082 2014-07-03 Jakub Jelinek <jakub (a] redhat.com>
17083
17084 * testsuite/lib/libgomp.exp (libgomp_target_compile): If $source
17085 matches regex $lang_source_re, add $lang_include_flags to options.
17086 * testsuite/libgomp.c/c.exp: Unset lang_include_flags.
17087 * testsuite/libgomp.c++/c++.exp: Likewise.
17088 * testsuite/libgomp.fortran/fortran.exp: Likewise. Set lang_source_re
17089 and lang_include_flags instead of adding -fintrinsic-modules-path= to
17090 ALWAYS_CFLAGS.
17091 * testsuite/libgomp.graphite/graphite.exp: Unset lang_include_flags.
17092
17093 2014-07-03 Thomas Schwinge <thomas (a] codesourcery.com>
17094
17095 * testsuite/libgomp.fortran/fortran.exp: Explain
17096 gfortran-dg-runtest usage.
17097
17098 2014-06-25 Jakub Jelinek <jakub (a] redhat.com>
17099
17100 * testsuite/libgomp.fortran/simd5.f90: New test.
17101 * testsuite/libgomp.fortran/simd6.f90: New test.
17102 * testsuite/libgomp.fortran/simd7.f90: New test.
17103
17104 2014-06-24 Jakub Jelinek <jakub (a] redhat.com>
17105
17106 * testsuite/libgomp.c/for-2.c: Define SC to static for
17107 #pragma omp for simd testing.
17108 * testsuite/libgomp.c/for-2.h (SC): Define if not defined.
17109 (N(f5), N(f6), N(f7), N(f8), N(f10), N(f12), N(f14)): Use
17110 SC macro.
17111 * testsuite/libgomp.c/simd-14.c: New test.
17112 * testsuite/libgomp.c/simd-15.c: New test.
17113 * testsuite/libgomp.c/simd-16.c: New test.
17114 * testsuite/libgomp.c/simd-17.c: New test.
17115 * testsuite/libgomp.c++/for-10.C: Define SC to static for
17116 #pragma omp for simd testing.
17117 * testsuite/libgomp.c++/simd10.C: New test.
17118 * testsuite/libgomp.c++/simd11.C: New test.
17119 * testsuite/libgomp.c++/simd12.C: New test.
17120 * testsuite/libgomp.c++/simd13.C: New test.
17121
17122 * testsuite/libgomp.fortran/aligned1.f03: New test.
17123 * testsuite/libgomp.fortran/nestedfn5.f90: New test.
17124 * testsuite/libgomp.fortran/target7.f90: Surround loop spawning
17125 tasks with !$omp parallel !$omp single.
17126 * testsuite/libgomp.fortran/target8.f90: New test.
17127 * testsuite/libgomp.fortran/udr4.f90 (foo UDR, bar UDR): Adjust
17128 not to use trim in the combiner, instead call elemental function.
17129 (fn): New elemental function.
17130 * testsuite/libgomp.fortran/udr6.f90 (do_add, dp_add, dp_init):
17131 Make elemental.
17132 * testsuite/libgomp.fortran/udr7.f90 (omp_priv, omp_orig, omp_out,
17133 omp_in): Likewise.
17134 * testsuite/libgomp.fortran/udr12.f90: New test.
17135 * testsuite/libgomp.fortran/udr13.f90: New test.
17136 * testsuite/libgomp.fortran/udr14.f90: New test.
17137 * testsuite/libgomp.fortran/udr15.f90: New test.
17138
17139 2014-06-18 Jakub Jelinek <jakub (a] redhat.com>
17140
17141 * omp_lib.f90.in (openmp_version): Set to 201307.
17142 * omp_lib.h.in (openmp_version): Likewise.
17143 * testsuite/libgomp.c/target-8.c: New test.
17144 * testsuite/libgomp.fortran/declare-simd-1.f90: Add notinbranch
17145 and inbranch clauses.
17146 * testsuite/libgomp.fortran/depend-3.f90: New test.
17147 * testsuite/libgomp.fortran/openmp_version-1.f: Adjust for new
17148 openmp_version.
17149 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
17150 * testsuite/libgomp.fortran/target1.f90: New test.
17151 * testsuite/libgomp.fortran/target2.f90: New test.
17152 * testsuite/libgomp.fortran/target3.f90: New test.
17153 * testsuite/libgomp.fortran/target4.f90: New test.
17154 * testsuite/libgomp.fortran/target5.f90: New test.
17155 * testsuite/libgomp.fortran/target6.f90: New test.
17156 * testsuite/libgomp.fortran/target7.f90: New test.
17157
17158 2014-06-10 Jakub Jelinek <jakub (a] redhat.com>
17159
17160 PR fortran/60928
17161 * testsuite/libgomp.fortran/allocatable9.f90: New test.
17162 * testsuite/libgomp.fortran/allocatable10.f90: New test.
17163 * testsuite/libgomp.fortran/allocatable11.f90: New test.
17164 * testsuite/libgomp.fortran/allocatable12.f90: New test.
17165 * testsuite/libgomp.fortran/alloc-comp-1.f90: New test.
17166 * testsuite/libgomp.fortran/alloc-comp-2.f90: New test.
17167 * testsuite/libgomp.fortran/alloc-comp-3.f90: New test.
17168 * testsuite/libgomp.fortran/associate1.f90: New test.
17169 * testsuite/libgomp.fortran/associate2.f90: New test.
17170 * testsuite/libgomp.fortran/procptr1.f90: New test.
17171
17172 2014-06-06 Jakub Jelinek <jakub (a] redhat.com>
17173
17174 * testsuite/libgomp.fortran/simd1.f90: New test.
17175 * testsuite/libgomp.fortran/udr1.f90: New test.
17176 * testsuite/libgomp.fortran/udr2.f90: New test.
17177 * testsuite/libgomp.fortran/udr3.f90: New test.
17178 * testsuite/libgomp.fortran/udr4.f90: New test.
17179 * testsuite/libgomp.fortran/udr5.f90: New test.
17180 * testsuite/libgomp.fortran/udr6.f90: New test.
17181 * testsuite/libgomp.fortran/udr7.f90: New test.
17182 * testsuite/libgomp.fortran/udr8.f90: New test.
17183 * testsuite/libgomp.fortran/udr9.f90: New test.
17184 * testsuite/libgomp.fortran/udr10.f90: New test.
17185 * testsuite/libgomp.fortran/udr11.f90: New test.
17186
17187 2014-05-27 Uros Bizjak <ubizjak (a] gmail.com>
17188
17189 * testsuite/libgomp.fortran/declare-simd-1.f90: Require
17190 vect_simd_clones effective target.
17191 * testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.
17192
17193 2014-05-21 Jakub Jelinek <jakub (a] redhat.com>
17194
17195 PR middle-end/61252
17196 * testsuite/libgomp.c++/simd-9.C: New test.
17197
17198 2014-05-18 Uros Bizjak <ubizjak (a] gmail.com>
17199
17200 * libgomp.texi (Runitme Library Routines): Remove multiple @menu.
17201 (Environment Variables) Move OMP_PROC_BIND and OMP_STACKSIZE node
17202 texts according to their @menu entry positions.
17203
17204 2014-05-11 Jakub Jelinek <jakub (a] redhat.com>
17205
17206 * testsuite/libgomp.fortran/cancel-do-1.f90: New test.
17207 * testsuite/libgomp.fortran/cancel-do-2.f90: New test.
17208 * testsuite/libgomp.fortran/cancel-parallel-1.f90: New test.
17209 * testsuite/libgomp.fortran/cancel-parallel-3.f90: New test.
17210 * testsuite/libgomp.fortran/cancel-sections-1.f90: New test.
17211 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: New test.
17212 * testsuite/libgomp.fortran/declare-simd-1.f90: New test.
17213 * testsuite/libgomp.fortran/declare-simd-2.f90: New test.
17214 * testsuite/libgomp.fortran/declare-simd-3.f90: New test.
17215 * testsuite/libgomp.fortran/depend-1.f90: New test.
17216 * testsuite/libgomp.fortran/depend-2.f90: New test.
17217 * testsuite/libgomp.fortran/omp_atomic5.f90: New test.
17218 * testsuite/libgomp.fortran/simd1.f90: New test.
17219 * testsuite/libgomp.fortran/simd2.f90: New test.
17220 * testsuite/libgomp.fortran/simd3.f90: New test.
17221 * testsuite/libgomp.fortran/simd4.f90: New test.
17222 * testsuite/libgomp.fortran/taskgroup1.f90: New test.
17223
17224 2014-05-02 Jakub Jelinek <jakub (a] redhat.com>
17225
17226 * testsuite/libgomp.c/simd-10.c: New test.
17227 * testsuite/libgomp.c/simd-11.c: New test.
17228 * testsuite/libgomp.c/simd-12.c: New test.
17229 * testsuite/libgomp.c/simd-13.c: New test.
17230
17231 2014-04-24 Jakub Jelinek <jakub (a] redhat.com>
17232
17233 * testsuite/libgomp.c++/atomic-14.C: Allow seq_cst and
17234 atomic type clauses in any order and optional comma in between.
17235 * testsuite/libgomp.c++/atomic-15.C: Likewise.
17236 * testsuite/libgomp.c/atomic-17.c: Likewise.
17237
17238 * testsuite/libgomp.c/simd-7.c: New test.
17239 * testsuite/libgomp.c/simd-8.c: New test.
17240 * testsuite/libgomp.c/simd-9.c: New test.
17241 * testsuite/libgomp.c/loop-16.c: New test.
17242
17243 2014-04-02 Richard Henderson <rth (a] redhat.com>
17244
17245 * config/linux/futex.h (futex_wait): Get error value from errno.
17246 (futex_wake): Likewise.
17247
17248 2014-03-25 Jakub Jelinek <jakub (a] redhat.com>
17249
17250 PR c++/60331
17251 * testsuite/libgomp.c++/udr-11.C: New test.
17252 * testsuite/libgomp.c++/udr-12.C: New test.
17253 * testsuite/libgomp.c++/udr-13.C: New test.
17254 * testsuite/libgomp.c++/udr-14.C: New test.
17255 * testsuite/libgomp.c++/udr-15.C: New test.
17256 * testsuite/libgomp.c++/udr-16.C: New test.
17257 * testsuite/libgomp.c++/udr-17.C: New test.
17258 * testsuite/libgomp.c++/udr-18.C: New test.
17259 * testsuite/libgomp.c++/udr-19.C: New test.
17260
17261 2014-01-02 Richard Sandiford <rdsandiford (a] googlemail.com>
17262
17263 Update copyright years
17264
17265 2014-01-02 Richard Sandiford <rdsandiford (a] googlemail.com>
17266
17267 * hashtab.h: Use the standard form for the copyright notice.
17268
17269 2014-01-02 Tobias Burnus <burnus (a] net-b.de>
17270
17271 * libgomp.texi: Bump @copying's copyright year.
17272
17273 2013-12-17 Andreas Tobler <andreast (a] gcc.gnu.org>
17274
17275 * testsuite/libgomp.c/affinity-1.c: Remove alloca.h include. Replace
17276 alloca () with __builtin_alloca ().
17277 * testsuite/libgomp.c/icv-2.c: Add FreeBSD coverage.
17278 * testsuite/libgomp.c/lock-3.c: Likewise.
17279 * testsuite/libgomp.c/pr48591.c: Likewise.
17280
17281 2013-12-17 Jakub Jelinek <jakub (a] redhat.com>
17282
17283 PR testsuite/59534
17284 * testsuite/libgomp.fortran/retval1.f90 (e5): Avoid non-shortcircuited
17285 comparisons.
17286
17287 2013-12-16 Jakub Jelinek <jakub (a] redhat.com>
17288
17289 PR libgomp/58756
17290 * testsuite/libgomp.c/pr58756.c: New test.
17291
17292 2013-12-12 Jakub Jelinek <jakub (a] redhat.com>
17293
17294 PR libgomp/59467
17295 * testsuite/libgomp.fortran/crayptr2.f90: Add private (d) clause to
17296 !$omp parallel.
17297
17298 2013-11-07 Thomas Schwinge <thomas (a] codesourcery.com>
17299
17300 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -fopenmp to
17301 ALWAYS_CFLAGS.
17302 * testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Add -fopenmp.
17303 * testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
17304 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
17305 * testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
17306 Likewise.
17307
17308 * libgomp_g.h: Include <stddef.h> for size_t.
17309
17310 * libgomp.spec.in: Update comment about libgomp's dependencies.
17311 * configure.ac: Likewise.
17312 * configure: Regenerate.
17313
17314 2013-10-16 Tobias Burnus <burnus (a] net-b.de>
17315
17316 * libgomp.texi: (Runtime Library Routines): Update references for
17317 OpenMP 4.0. Add omp_get_cancellation, omp_get_default_device,
17318 omp_get_num_devices, omp_get_num_teams, omp_get_proc_bind,
17319 omp_get_team_num, omp_is_initial_device, omp_set_default_device.
17320 (Environment Variables): Update references for OpenMP 4.0. Add
17321 OMP_CANCELLATION, OMP_DEFAULT_DEVICE, OMP_PLACES.
17322 Move OMP_DISPLAY_ENV and OMP_PROC_BIND up to be in alphabetical
17323 order.
17324
17325 2013-10-14 Jakub Jelinek <jakub (a] redhat.com>
17326
17327 * env.c (parse_bind_var): Initialize value to avoid
17328 (false positive) warning.
17329
17330 2013-10-12 Jakub Jelinek <jakub (a] redhat.com>
17331
17332 PR libgomp/58691
17333 * config/linux/proc.c (gomp_cpuset_popcount): Add unused attribute
17334 to check variable.
17335 (gomp_init_num_threads): Move i variable declaration into
17336 #ifdef CPU_ALLOC_SIZE block.
17337 * config/linux/affinity.c (gomp_affinity_init_level): Test
17338 gomp_places_list_len == 0 rather than gomp_places_list == 0
17339 when checking for topology reading error.
17340 * team.c (gomp_team_start): Don't handle bind == omp_proc_bind_false.
17341 * env.c (parse_affinity): Add ignore argument, if true, don't populate
17342 gomp_places_list, only parse env var and always return false.
17343 (parse_places_var): Likewise. Don't check gomp_global_icv.bind_var.
17344 (initialize_env): Always parse OMP_PLACES and GOMP_CPU_AFFINITY env
17345 vars, default to OMP_PROC_BIND=true if OMP_PROC_BIND wasn't specified
17346 and either of these variables were parsed correctly into a places
17347 list.
17348
17349 2013-10-11 Thomas Schwinge <thomas (a] codesourcery.com>
17350 Jakub Jelinek <jakub (a] redhat.com>
17351
17352 * testsuite/libgomp.graphite/force-parallel-1.c: Expect 4 instead
17353 of 5 loopfn matches.
17354 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
17355 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
17356 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
17357 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
17358 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
17359 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
17360 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
17361 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
17362
17363 2013-10-11 Thomas Schwinge <thomas (a] codesourcery.com>
17364
17365 * Makefile.am (omp_lib.mod): Streamline rule.
17366 * Makefile.in: Regenerate.
17367
17368 * libgomp.texi (Runtime Library Routines): C linkage, don't throw
17369 exceptions.
17370
17371 * testsuite/libgomp.c/lib-1.c (main): Add missing error check.
17372 * testsuite/libgomp.fortran/lib1.f90: Likewise.
17373 * testsuite/libgomp.fortran/lib2.f: Likewise.
17374 * testsuite/libgomp.fortran/lib3.f: Likewise.
17375
17376 * configure.ac: Typo fix.
17377 * configure: Regenerate.
17378
17379 * testsuite/libgomp.fortran/openmp_version-1.f: New file.
17380 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
17381
17382 * omp.h.in: Don't touch the user's namespace.
17383
17384 2013-10-11 Jakub Jelinek <jakub (a] redhat.com>
17385 Tobias Burnus <burnus (a] net-b.de>
17386 Richard Henderson <rth (a] redhat.com>
17387
17388 * target.c: New file.
17389 * Makefile.am (libgomp_la_SOURCES): Add target.c.
17390 * Makefile.in: Regenerated.
17391 * libgomp_g.h (GOMP_task): Add depend argument.
17392 (GOMP_barrier_cancel, GOMP_loop_end_cancel,
17393 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
17394 GOMP_target_end_data, GOMP_target_update, GOMP_teams,
17395 GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
17396 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
17397 GOMP_parallel, GOMP_cancel, GOMP_cancellation_point,
17398 GOMP_taskgroup_start, GOMP_taskgroup_end,
17399 GOMP_parallel_sections): New prototypes.
17400 * fortran.c (omp_is_initial_device): Add ialias_redirect.
17401 (omp_is_initial_device_): New function.
17402 (ULP, STR1, STR2, ialias_redirect): Removed.
17403 (omp_get_cancellation_, omp_get_proc_bind_, omp_set_default_device_,
17404 omp_set_default_device_8_, omp_get_default_device_,
17405 omp_get_num_devices_, omp_get_num_teams_, omp_get_team_num_): New
17406 functions.
17407 * libgomp.map (GOMP_barrier_cancel, GOMP_loop_end_cancel,
17408 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
17409 GOMP_target_end_data, GOMP_target_update, GOMP_teams): Export
17410 @@GOMP_4.0.
17411 (omp_is_initial_device, omp_is_initial_device_, omp_get_cancellation,
17412 omp_get_cancellation_, omp_get_proc_bind, omp_get_proc_bind_,
17413 omp_set_default_device, omp_set_default_device_,
17414 omp_set_default_device_8_, omp_get_default_device,
17415 omp_get_default_device_, omp_get_num_devices, omp_get_num_devices_,
17416 omp_get_num_teams, omp_get_num_teams_, omp_get_team_num,
17417 omp_get_team_num_): Export @@OMP_4.0.
17418 * team.c (struct gomp_thread_start_data): Add place field.
17419 (gomp_thread_start): Clear thr->thread_pool and
17420 thr->task before returning. Use gomp_team_barrier_wait_final
17421 instead of gomp_team_barrier_wait. Initialize thr->place.
17422 (gomp_new_team): Initialize work_shares_to_free, work_share_cancelled,
17423 team_cancelled and task_queued_count fields.
17424 (gomp_free_pool_helper): Clear thr->thread_pool and thr->task
17425 before calling pthread_exit.
17426 (gomp_free_thread): No longer static. Use
17427 gomp_managed_threads_lock instead of gomp_remaining_threads_lock.
17428 (gomp_team_start): Add flags argument. Set
17429 thr->thread_pool->threads_busy to nthreads immediately after creating
17430 new pool. Use gomp_managed_threads_lock instead of
17431 gomp_remaining_threads_lock. Handle OpenMP 4.0 affinity.
17432 (gomp_team_end): Use gomp_managed_threads_lock instead of
17433 gomp_remaining_threads_lock. Use gomp_team_barrier_wait_final instead
17434 of gomp_team_barrier_wait. If team->team_cancelled, call
17435 gomp_fini_workshare on ws chain starting at team->work_shares_to_free
17436 rather than thr->ts.work_share.
17437 (initialize_team): Don't call gomp_sem_init here.
17438 * sections.c (GOMP_parallel_sections_start): Adjust gomp_team_start
17439 caller.
17440 (GOMP_parallel_sections, GOMP_sections_end_cancel): New functions.
17441 * env.c (gomp_global_icv): Add default_device_var, target_data and
17442 bind_var initializers.
17443 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
17444 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
17445 gomp_places_list_len): New variables.
17446 (parse_bind_var, parse_one_place, parse_places_var): New functions.
17447 (parse_affinity): Rewritten to construct OMP_PLACES list with unit
17448 sized places.
17449 (gomp_cancel_var): New global variable.
17450 (parse_int): New function.
17451 (handle_omp_display_env): New function.
17452 (initialize_env): Use it. Initialize default_device_var.
17453 Parse OMP_CANCELLATION env var. Use parse_bind_var to parse
17454 OMP_PROC_BIND instead of parse_boolean. Use parse_places_var for
17455 OMP_PLACES parsing. Don't call parse_affinity if OMP_PLACES has
17456 been successfully parsed (and call gomp_init_affinity in that case).
17457 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
17458 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
17459 omp_get_team_num, omp_is_initial_device): New functions.
17460 * libgomp.h: Include stdlib.h.
17461 (ialias_ulp, ialias_str1, ialias_str2, ialias_redirect, ialias_call):
17462 Define.
17463 (struct target_mem_desc): Forward declare.
17464 (struct gomp_task_icv): Add default_device_var, target_data, bind_var
17465 and thread_limit_var fields.
17466 (gomp_get_num_devices): New prototype.
17467 (gomp_cancel_var): New extern decl.
17468 (struct gomp_team): Add work_shares_to_free, work_share_cancelled,
17469 team_cancelled and task_queued_count fields. Add comments about
17470 task_{,queued_,running_}count.
17471 (gomp_cancel_kind): New enum.
17472 (gomp_work_share_end_cancel): New prototype.
17473 (struct gomp_task): Add next_taskgroup, prev_taskgroup, taskgroup,
17474 copy_ctors_done, dependers, depend_hash, depend_count, num_dependees
17475 and depend fields.
17476 (struct gomp_taskgroup): New type.
17477 (struct gomp_task_depend_entry,
17478 struct gomp_dependers_vec): New types.
17479 (gomp_finish_task): Free depend_hash if non-NULL.
17480 (struct gomp_team_state): Add place_partition_off
17481 and place_partition_len fields.
17482 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
17483 gomp_places_list_len): New extern decls.
17484 (struct gomp_thread): Add place field.
17485 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
17486 (gomp_init_thread_affinity): Add place argument.
17487 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
17488 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
17489 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
17490 gomp_affinity_init_level, gomp_affinity_print_place): New
17491 prototypes.
17492 (gomp_team_start): Add flags argument.
17493 (gomp_thread_limit_var, gomp_remaining_threads_count,
17494 gomp_remaining_threads_lock): Remove.
17495 (gomp_managed_threads_lock): New variable.
17496 (struct gomp_thread_pool): Add threads_busy field.
17497 (gomp_free_thread): New prototype.
17498 * task.c: Include hashtab.h.
17499 (hash_entry_type): New typedef.
17500 (htab_alloc, htab_free, htab_hash, htab_eq): New inlines.
17501 (gomp_init_task): Clear dependers, depend_hash, depend_count,
17502 copy_ctors_done and taskgroup fields.
17503 (GOMP_task): Add depend argument, handle depend clauses. If
17504 gomp_team_barrier_cancelled or if it's taskgroup has been
17505 cancelled, don't queue or start new tasks. Set copy_ctors_done
17506 field if needed. Initialize taskgroup field. If copy_ctors_done
17507 and already cancelled, don't discard the task. If taskgroup is
17508 non-NULL, enqueue the task into taskgroup queue. Increment
17509 num_children field in taskgroup. Increment task_queued_count.
17510 (gomp_task_run_pre, gomp_task_run_post_remove_parent,
17511 gomp_task_run_post_remove_taskgroup): New inline functions.
17512 (gomp_task_run_post_handle_depend_hash,
17513 gomp_task_run_post_handle_dependers,
17514 gomp_task_run_post_handle_depend): New functions.
17515 (GOMP_taskwait): Use them. If more than one new tasks
17516 have been queued, wake other threads if needed.
17517 (gomp_barrier_handle_tasks): Likewise. If
17518 gomp_team_barrier_cancelled, don't start any new tasks, just free
17519 all tasks.
17520 (GOMP_taskgroup_start, GOMP_taskgroup_end): New functions.
17521 * omp_lib.f90.in
17522 (omp_proc_bind_kind, omp_proc_bind_false,
17523 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
17524 omp_proc_bind_spread): New params.
17525 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
17526 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
17527 omp_get_team_num, omp_is_initial_device): New interfaces.
17528 (omp_get_dynamic, omp_get_nested, omp_in_parallel,
17529 omp_get_max_threads, omp_get_num_procs, omp_get_num_threads,
17530 omp_get_thread_num, omp_get_thread_limit, omp_set_max_active_levels,
17531 omp_get_max_active_levels, omp_get_level, omp_get_ancestor_thread_num,
17532 omp_get_team_size, omp_get_active_level, omp_in_final): Remove
17533 useless use omp_lib_kinds.
17534 * omp.h.in (omp_proc_bind_t): New typedef.
17535 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
17536 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
17537 omp_get_team_num, omp_is_initial_device): New prototypes.
17538 * loop.c (gomp_parallel_loop_start): Add flags argument, pass it
17539 through to gomp_team_start.
17540 (GOMP_parallel_loop_static_start, GOMP_parallel_loop_dynamic_start,
17541 GOMP_parallel_loop_guided_start, GOMP_parallel_loop_runtime_start):
17542 Adjust gomp_parallel_loop_start callers.
17543 (GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
17544 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
17545 GOMP_loop_end_cancel): New functions.
17546 (GOMP_parallel_end): Add ialias_redirect.
17547 * hashtab.h: New file.
17548 * libgomp.texi (Environment Variables): Minor cleanup,
17549 update section refs to OpenMP 4.0rc2.
17550 (OMP_DISPLAY_ENV, GOMP_SPINCOUNT): Document these
17551 environment variables.
17552 * work.c (gomp_work_share_end, gomp_work_share_end_nowait): Set
17553 team->work_shares_to_free to thr->ts.work_share before calling
17554 free_work_share.
17555 (gomp_work_share_end_cancel): New function.
17556 * config/linux/proc.c: Include errno.h.
17557 (gomp_get_cpuset_size, gomp_cpuset_size, gomp_cpusetp): New variables.
17558 (gomp_cpuset_popcount): Add cpusetsize argument, use it instead of
17559 sizeof (cpu_set_t) to determine number of iterations. Fix up check
17560 extern decl. Use CPU_COUNT_S if available, or CPU_COUNT if
17561 gomp_cpuset_size is sizeof (cpu_set_t).
17562 (gomp_init_num_threads): Initialize gomp_cpuset_size,
17563 gomp_get_cpuset_size and gomp_cpusetp here, use gomp_cpusetp instead
17564 of &cpuset and pass gomp_cpuset_size instead of sizeof (cpu_set_t)
17565 to pthread_getaffinity_np. Free and clear gomp_cpusetp if it didn't
17566 contain any logical CPUs.
17567 (get_num_procs): Don't call pthread_getaffinity_np if gomp_cpusetp
17568 is NULL. Use gomp_cpusetp instead of &cpuset and pass
17569 gomp_get_cpuset_size instead of sizeof (cpu_set_t) to
17570 pthread_getaffinity_np. Check gomp_places_list instead of
17571 gomp_cpu_affinity. Adjust gomp_cpuset_popcount caller.
17572 * config/linux/bar.c (gomp_barrier_wait_end,
17573 gomp_barrier_wait_last): Use BAR_* defines.
17574 (gomp_team_barrier_wait_end): Likewise. Clear BAR_CANCELLED
17575 from state where needed. Set work_share_cancelled to 0 on last
17576 thread.
17577 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel_end,
17578 gomp_team_barrier_wait_cancel, gomp_team_barrier_cancel): New
17579 functions.
17580 * config/linux/proc.h (gomp_cpuset_popcount): Add attribute_hidden.
17581 Add cpusetsize argument.
17582 (gomp_cpuset_size, gomp_cpusetp): Declare.
17583 * config/linux/affinity.c: Include errno.h, stdio.h and string.h.
17584 (affinity_counter): Remove.
17585 (CPU_ISSET_S, CPU_ZERO_S, CPU_SET_S, CPU_CLR_S): Define
17586 if CPU_ALLOC_SIZE isn't defined.
17587 (gomp_init_affinity): Rewritten, if gomp_places_list is NULL, try
17588 silently create OMP_PLACES=threads, if it is non-NULL afterwards,
17589 bind current thread to the first place.
17590 (gomp_init_thread_affinity): Rewritten. Add place argument, just
17591 pthread_setaffinity_np to gomp_places_list[place].
17592 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
17593 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
17594 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
17595 gomp_affinity_init_level, gomp_affinity_print_place): New functions.
17596 * config/linux/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
17597 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
17598 (gomp_barrier_t): Add awaited_final field.
17599 (gomp_barrier_init): Initialize awaited_final field.
17600 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel,
17601 gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): New
17602 prototypes.
17603 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit. Use BAR_*
17604 defines.
17605 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final_start,
17606 gomp_team_barrier_cancelled): New inline functions.
17607 (gomp_barrier_last_thread,
17608 gomp_team_barrier_set_task_pending,
17609 gomp_team_barrier_clear_task_pending,
17610 gomp_team_barrier_set_waiting_for_tasks,
17611 gomp_team_barrier_waiting_for_tasks,
17612 gomp_team_barrier_done): Use BAR_* defines.
17613 * config/posix/bar.c (gomp_barrier_init): Clear cancellable field.
17614 (gomp_barrier_wait_end): Use BAR_* defines.
17615 (gomp_team_barrier_wait_end): Clear BAR_CANCELLED from state.
17616 Set work_share_cancelled to 0 on last thread, use __atomic_load_n.
17617 Use BAR_* defines.
17618 (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_wait_cancel,
17619 gomp_team_barrier_cancel): New functions.
17620 * config/posix/affinity.c (gomp_init_thread_affinity): Add place
17621 argument.
17622 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
17623 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
17624 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
17625 gomp_affinity_init_level, gomp_affinity_print_place): New stubs.
17626 * config/posix/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
17627 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
17628 (gomp_barrier_t): Add cancellable field.
17629 (gomp_team_barrier_wait_cancel, gomp_team_barrier_wait_cancel_end,
17630 gomp_team_barrier_cancel): New prototypes.
17631 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit.
17632 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final,
17633 gomp_team_barrier_cancelled): New inline functions.
17634 (gomp_barrier_wait_start, gomp_barrier_last_thread,
17635 gomp_team_barrier_set_task_pending,
17636 gomp_team_barrier_clear_task_pending,
17637 gomp_team_barrier_set_waiting_for_tasks,
17638 gomp_team_barrier_waiting_for_tasks,
17639 gomp_team_barrier_done): Use BAR_* defines.
17640 * barrier.c (GOMP_barrier_cancel): New function.
17641 * omp_lib.h.in (omp_proc_bind_kind, omp_proc_bind_false,
17642 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
17643 omp_proc_bind_spread): New params.
17644 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
17645 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
17646 omp_get_team_num, omp_is_initial_device): New externals.
17647 * parallel.c (GOMP_parallel, GOMP_cancel, GOMP_cancellation_point):
17648 New functions.
17649 (gomp_resolve_num_threads): Adjust for thread_limit now being in
17650 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
17651 infinity. If not nested, just return minimum of max_num_threads
17652 and icv->thread_limit_var and if thr->thread_pool, set threads_busy
17653 to the returned value. Otherwise, don't update atomically
17654 gomp_remaining_threads_count, but instead thr->thread_pool->threads_busy.
17655 (GOMP_parallel_end): Adjust for thread_limit now being in
17656 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
17657 infinity. Adjust threads_busy in the pool rather than
17658 gomp_remaining_threads_count. Remember team->nthreads and call
17659 gomp_team_end before adjusting threads_busy, if not nested
17660 afterwards, just set it to 1 non-atomically. Add ialias.
17661 (GOMP_parallel_start): Adjust gomp_team_start caller.
17662 * testsuite/libgomp.c/atomic-14.c: Add parens to make it valid.
17663 * testsuite/libgomp.c/affinity-1.c: New test.
17664 * testsuite/libgomp.c/atomic-15.c: New test.
17665 * testsuite/libgomp.c/atomic-16.c: New test.
17666 * testsuite/libgomp.c/atomic-17.c: New test.
17667 * testsuite/libgomp.c/cancel-for-1.c: New test.
17668 * testsuite/libgomp.c/cancel-for-2.c: New test.
17669 * testsuite/libgomp.c/cancel-parallel-1.c: New test.
17670 * testsuite/libgomp.c/cancel-parallel-2.c: New test.
17671 * testsuite/libgomp.c/cancel-parallel-3.c: New test.
17672 * testsuite/libgomp.c/cancel-sections-1.c: New test.
17673 * testsuite/libgomp.c/cancel-taskgroup-1.c: New test.
17674 * testsuite/libgomp.c/cancel-taskgroup-2.c: New test.
17675 * testsuite/libgomp.c/depend-1.c: New test.
17676 * testsuite/libgomp.c/depend-2.c: New test.
17677 * testsuite/libgomp.c/depend-3.c: New test.
17678 * testsuite/libgomp.c/depend-4.c: New test.
17679 * testsuite/libgomp.c/for-1.c: New test.
17680 * testsuite/libgomp.c/for-1.h: New file.
17681 * testsuite/libgomp.c/for-2.c: New test.
17682 * testsuite/libgomp.c/for-2.h: New file.
17683 * testsuite/libgomp.c/for-3.c: New test.
17684 * testsuite/libgomp.c/pr58392.c: New test.
17685 * testsuite/libgomp.c/simd-1.c: New test.
17686 * testsuite/libgomp.c/simd-2.c: New test.
17687 * testsuite/libgomp.c/simd-3.c: New test.
17688 * testsuite/libgomp.c/simd-4.c: New test.
17689 * testsuite/libgomp.c/simd-5.c: New test.
17690 * testsuite/libgomp.c/simd-6.c: New test.
17691 * testsuite/libgomp.c/target-1.c: New test.
17692 * testsuite/libgomp.c/target-2.c: New test.
17693 * testsuite/libgomp.c/target-3.c: New test.
17694 * testsuite/libgomp.c/target-4.c: New test.
17695 * testsuite/libgomp.c/target-5.c: New test.
17696 * testsuite/libgomp.c/target-6.c: New test.
17697 * testsuite/libgomp.c/target-7.c: New test.
17698 * testsuite/libgomp.c/taskgroup-1.c: New test.
17699 * testsuite/libgomp.c/thread-limit-1.c: New test.
17700 * testsuite/libgomp.c/thread-limit-2.c: New test.
17701 * testsuite/libgomp.c/thread-limit-3.c: New test.
17702 * testsuite/libgomp.c/udr-1.c: New test.
17703 * testsuite/libgomp.c/udr-2.c: New test.
17704 * testsuite/libgomp.c/udr-3.c: New test.
17705 * testsuite/libgomp.c++/affinity-1.C: New test.
17706 * testsuite/libgomp.c++/atomic-10.C: New test.
17707 * testsuite/libgomp.c++/atomic-11.C: New test.
17708 * testsuite/libgomp.c++/atomic-12.C: New test.
17709 * testsuite/libgomp.c++/atomic-13.C: New test.
17710 * testsuite/libgomp.c++/atomic-14.C: New test.
17711 * testsuite/libgomp.c++/atomic-15.C: New test.
17712 * testsuite/libgomp.c++/cancel-for-1.C: New test.
17713 * testsuite/libgomp.c++/cancel-for-2.C: New test.
17714 * testsuite/libgomp.c++/cancel-parallel-1.C: New test.
17715 * testsuite/libgomp.c++/cancel-parallel-2.C: New test.
17716 * testsuite/libgomp.c++/cancel-parallel-3.C: New test.
17717 * testsuite/libgomp.c++/cancel-sections-1.C: New test.
17718 * testsuite/libgomp.c++/cancel-taskgroup-1.C: New test.
17719 * testsuite/libgomp.c++/cancel-taskgroup-2.C: New test.
17720 * testsuite/libgomp.c++/cancel-taskgroup-3.C: New test.
17721 * testsuite/libgomp.c++/cancel-test.h: New file.
17722 * testsuite/libgomp.c++/for-9.C: New test.
17723 * testsuite/libgomp.c++/for-10.C: New test.
17724 * testsuite/libgomp.c++/for-11.C: New test.
17725 * testsuite/libgomp.c++/simd-1.C: New test.
17726 * testsuite/libgomp.c++/simd-2.C: New test.
17727 * testsuite/libgomp.c++/simd-3.C: New test.
17728 * testsuite/libgomp.c++/simd-4.C: New test.
17729 * testsuite/libgomp.c++/simd-5.C: New test.
17730 * testsuite/libgomp.c++/simd-6.C: New test.
17731 * testsuite/libgomp.c++/simd-7.C: New test.
17732 * testsuite/libgomp.c++/simd-8.C: New test.
17733 * testsuite/libgomp.c++/target-1.C: New test.
17734 * testsuite/libgomp.c++/target-2.C: New test.
17735 * testsuite/libgomp.c++/target-2-aux.cc: New file.
17736 * testsuite/libgomp.c++/target-3.C: New test.
17737 * testsuite/libgomp.c++/taskgroup-1.C: New test.
17738 * testsuite/libgomp.c++/udr-1.C: New test.
17739 * testsuite/libgomp.c++/udr-2.C: New test.
17740 * testsuite/libgomp.c++/udr-3.C: New test.
17741 * testsuite/libgomp.c++/udr-4.C: New test.
17742 * testsuite/libgomp.c++/udr-5.C: New test.
17743 * testsuite/libgomp.c++/udr-6.C: New test.
17744 * testsuite/libgomp.c++/udr-7.C: New test.
17745 * testsuite/libgomp.c++/udr-8.C: New test.
17746 * testsuite/libgomp.c++/udr-9.C: New test.
17747
17748 2013-09-20 Jakub Jelinek <jakub (a] redhat.com>
17749
17750 PR testsuite/57605
17751 * testsuite/lib/libgomp.exp: Add -fdiagnostics-color=never to
17752 ALWAYS_CFLAGS.
17753
17754 2013-09-20 Alan Modra <amodra (a] gmail.com>
17755
17756 * configure: Regenerate.
17757
17758 2013-09-19 Jakub Jelinek <jakub (a] redhat.com>
17759
17760 * testsuite/libgomp.c/sections-2.c: New test.
17761
17762 2013-06-28 Marcus Shawcroft <marcus.shawcroft (a] arm.com>
17763
17764 * testsuite/libgomp.fortran/strassen.f90:
17765 Add dg-skip-if aarch64_tiny.
17766
17767 2013-06-20 Iain Sandoe <iain (a] codesourcery.com>
17768 Cesar Philippidis <cesar (a] codesourcery.com>
17769
17770 * testsuite/lib/libgomp.exp: Reorder lib loads into dependency order.
17771 Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
17772 * testsuite/libgomp.c/c.exp: load_gcc_lib gcc-dg.exp.
17773 * testsuite/libgomp.fortran/fortran.exp: Likewise.
17774 * testsuite/libgomp.graphite/graphite.exp: Likewise.
17775 * testsuite/libgomp.c++/c++.exp: load_gcc_lib gcc-dg.exp.
17776 Use dg-runtest rather than gfortran-dg-runtest.
17777
17778 2013-06-10 Thomas Schwinge <thomas (a] codesourcery.com>
17779
17780 * testsuite/libgomp.c/icv-2.c: Extend current handling of
17781 Linux-based x86 systems to cover all GNU systems.
17782 * testsuite/libgomp.c/lock-3.c: Likewise.
17783 * testsuite/libgomp.c/pr48591.c: Likewise.
17784
17785 2013-06-06 Thomas Schwinge <thomas (a] codesourcery.com>
17786
17787 * configure.tgt (XCFLAGS): Add -ftls-model=initial-exec for
17788 GNU/Hurd, as done for Linux-based systems.
17789
17790 * config/posix/ptrlock.h: Fix comment.
17791
17792 2013-05-27 Tobias Burnus <burnus (a] net-b.de>
17793
17794 PR fortran/57423
17795 * libgomp.texi (omp_set_dynamic, omp_set_nested, omp_set_nested,
17796 omp_set_num_threads, omp_init_lock, omp_set_lock, omp_test_lock,
17797 omp_unset_lock, omp_destroy_lock, omp_init_nest_lock,
17798 omp_set_nest_lock, omp_test_nest_lock, omp_unset_nest_lock,
17799 omp_destroy_nest_lock): Correct arguments to match the one in
17800 the OpenMP spec.
17801 * omp_lib.f90.in (omp_init_lock, omp_init_nest_lock, omp_destroy_lock
17802 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock, omp_unset_lock,
17803 omp_unset_nest_lock, omp_set_dynamic, omp_set_nested,
17804 omp_set_num_threads, omp_test_lock, omp_test_nest_lock): Ditto.
17805
17806 2013-05-16 Jakub Jelinek <jakub (a] redhat.com>
17807
17808 * testsuite/libgomp.c/loop-13.c: New test.
17809 * testsuite/libgomp.c/loop-14.c: New test.
17810 * testsuite/libgomp.c/loop-15.c: New test.
17811 * testsuite/libgomp.c++/loop-13.C: New test.
17812 * testsuite/libgomp.c++/loop-14.C: New test.
17813 * testsuite/libgomp.c++/loop-15.C: New test.
17814
17815 2013-02-06 Jakub Jelinek <jakub (a] redhat.com>
17816
17817 PR middle-end/56217
17818 * testsuite/libgomp.c++/pr56217.C: New test.
17819
17820 2013-02-01 Alan Modra <amodra (a] gmail.com>
17821
17822 * task.c (GOMP_task, GOMP_taskwait): Comment.
17823
17824 2013-01-31 Dmitry Vyukov <dvyukov (a] gcc.gnu.org>
17825 Joost VandeVondele <Joost.VandeVondele (a] mat.ethz.ch>
17826
17827 PR libgomp/55561
17828 * config/linux/wait.h (do_spin): Use atomic load for addr.
17829 * config/linux/ptrlock.c (gomp_ptrlock_get_slow): Use atomic
17830 for intptr and ptrlock.
17831 * config/linux/ptrlock.h (gomp_ptrlock_get): Use atomic load
17832 for ptrlock.
17833
17834 2013-01-22 Alan Modra <amodra (a] gmail.com>
17835
17836 PR libgomp/51376
17837 PR libgomp/56073
17838 * task.c (GOMP_task): Revert 2011-12-09 change.
17839 (GOMP_taskwait): Likewise. Instead use atomic load with acquire
17840 barrier to read task->children..
17841 (gomp_barrier_handle_tasks): ..and matching atomic store with
17842 release barrier here when setting parent->children to NULL.
17843
17844 2013-01-16 Jakub Jelinek <jakub (a] redhat.com>
17845 Tobias Burnus <burnus (a] net-b.de>
17846
17847 PR driver/55884
17848 * testsuite/libgomp.fortran/fortran.exp: Use
17849 -fintrinsic-modules-path= instead of
17850 -fintrinsic-modules-path.
17851
17852 2013-01-14 Richard Sandiford <rdsandiford (a] googlemail.com>
17853
17854 Update copyright years.
17855
17856 2012-12-19 Tobias Burnus <burnus (a] net-b.de>
17857
17858 * testsuite/libgomp.fortran/fortran.exp: Set
17859 -fintrinsic-modules-path.
17860
17861 2012-12-19 Tobias Burnus <burnus (a] net-b.de>
17862
17863 * testsuite/libgomp.fortran/use_intrinsic_1.f90: New; moved
17864 from gcc/testsuite/gfortran.dg/gomp/use_intrinsic_1.f90.
17865
17866 2012-11-21 Jakub Jelinek <jakub (a] redhat.com>
17867
17868 PR libgomp/55411
17869 * team.c (gomp_free_thread): Decrease gomp_managed_threads
17870 if pool had any threads_used.
17871
17872 2012-11-07 Jack Howarth <howarth (a] bromo.med.uc.edu>
17873
17874 * testsuite/libgomp.c++/pr24455.C: Use
17875 -Wl,-undefined,dynamic_lookup on darwin.
17876
17877 2012-11-07 David Edelsohn <dje.gcc (a] gmail.com>
17878
17879 * testsuite/libgomp.c++/pr24455.C: Use -Wl,-G on AIX.
17880
17881 2012-10-24 Dominique d'Humieres <dominiq (a] lps.ens.fr>
17882
17883 * testsuite/libgomp.graphite/force-parallel-6.c: Adjust the loops.
17884
17885 2012-10-23 Ian Bolton <ian.bolton (a] arm.com>
17886 Jim MacArthur <jim.macarthur (a] arm.com>
17887 Marcus Shawcroft <marcus.shawcroft (a] arm.com>
17888 Nigel Stephens <nigel.stephens (a] arm.com>
17889 Ramana Radhakrishnan <ramana.radhakrishnan (a] arm.com>
17890 Richard Earnshaw <rearnsha (a] arm.com>
17891 Sofiane Naci <sofiane.naci (a] arm.com>
17892 Stephen Thomas <stephen.thomas (a] arm.com>
17893 Tejas Belagod <tejas.belagod (a] arm.com>
17894 Yufeng Zhang <yufeng.zhang (a] arm.com>
17895
17896 * configure.tgt: Add AArch64.
17897
17898 2012-10-04 Jason Merrill <jason (a] redhat.com>
17899
17900 * testsuite/libgomp.c++/tls-init1.C: New.
17901
17902 2012-09-14 David Edelsohn <dje.gcc (a] gmail.com>
17903
17904 * configure: Regenerated.
17905
17906 2012-08-29 Chung-Lin Tang <cltang (a] codesourcery.com>
17907
17908 * config/linux/mips/futex.h (sys_futex0): Change to static
17909 function with noinline, nomips16 attributes under MIPS16. Adjust
17910 asm statement to place 'li v0,SYS_futex' immediately before
17911 syscall insn.
17912
17913 2012-07-04 Sandra Loosemore <sandra (a] codesourcery.com>
17914
17915 * libgomp.texi (Library Index): Renamed from "Index" to prevent
17916 conflict with index.html on case-insensitive file systems.
17917
17918 2012-07-03 Uros Bizjak <ubizjak (a] gmail.com>
17919
17920 * config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
17921 * testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.
17922
17923 2012-07-02 Richard Guenther <rguenther (a] suse.de>
17924 Michael Matz <matz (a] suse.de>
17925 Tobias Grosser <tobias (a] grosser.es>
17926 Sebastian Pop <sebpop (a] gmail.com>
17927
17928 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
17929 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
17930 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
17931 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
17932
17933 2012-06-28 Andreas Schwab <schwab (a] linux-m68k.org>
17934
17935 * libgomp.texi: Include gpl_v3.texi instead of gpl.texi.
17936
17937 2012-06-22 Richard Guenther <rguenther (a] suse.de>
17938
17939 Merge from graphite branch
17940 2012-01-13 Tobias Grosser <tobias (a] grosser.es>
17941
17942 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
17943 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
17944
17945 2012-06-07 Jakub Jelinek <jakub (a] redhat.com>
17946
17947 PR middle-end/53580
17948 * testsuite/libgomp.c/pr26943-2.c: Remove #pragma omp barrier,
17949 use GOMP_barrier () call instead.
17950 * testsuite/libgomp.c/pr26943-3.c: Likewise.
17951 * testsuite/libgomp.c/pr26943-4.c: Likewise.
17952 * testsuite/libgomp.fortran/vla4.f90: Remove !$omp barrier,
17953 call GOMP_barrier instead.
17954 * testsuite/libgomp.fortran/vla5.f90: Likewise.
17955
17956 2012-06-06 Jakub Jelinek <jakub (a] redhat.com>
17957
17958 PR libgomp/52993
17959 * config/linux/lock.c (gomp_init_nest_lock_25): Fix up last
17960 argument to memset call.
17961
17962 2012-05-16 H.J. Lu <hongjiu.lu (a] intel.com>
17963
17964 * configure: Regenerated.
17965
17966 2012-04-11 Manuel Lpez-Ibez <manu (a] gcc.gnu.org>
17967
17968 * testsuite/lib/libgomp.exp: Add -fno-diagnostics-show-caret.
17969
17970 2012-03-31 H.J. Lu <hongjiu.lu (a] intel.com>
17971
17972 PR bootstrap/52812
17973 * configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.
17974
17975 2012-03-22 Jakub Jelinek <jakub (a] redhat.com>
17976
17977 PR middle-end/52547
17978 * testsuite/libgomp.c/pr52547.c: New test.
17979
17980 2012-03-16 Bernhard Reutner-Fischer <aldot (a] gcc.gnu.org>
17981
17982 * testsuite/lib/libgomp.exp: load fortran-modules.exp
17983
17984 2012-03-14 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
17985
17986 * configure.tgt (mips-sgi-irix6*): Remove.
17987
17988 2012-03-12 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
17989
17990 * configure.tgt (alpha*-dec-osf*): Remove.
17991
17992 * config/osf/sem.h: Remove.
17993 * config/posix/lock.c (_XOPEN_SOURCE): Define unconditionally.
17994
17995 2012-02-29 Eric Botcazou <ebotcazou (a] adacore.com>
17996
17997 * config/linux/sparc/futex.h (cpu_relax): Read from CC register.
17998
17999 2012-02-27 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18000
18001 PR libstdc++/52188
18002 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Remove symvers_renaming.
18003 Remove ENABLE_SYMVERS_SOL2.
18004 * configure: Regenerate.
18005 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB] (comma): New variable.
18006 (PREPROCESS): New variable.
18007 (libgomp.ver): New target.
18008 [LIBGOMP_BUILD_VERSIONED_SHLIB &&
18009 LIBGOMP_BUILD_VERSIONED_SHLIB_GNU]: Remove
18010 LIBGOMP_BUILD_VERSIONED_SHLIB_SOL2 handling.
18011 Use libgomp.ver.
18012 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Use libgomp.ver, libgomp.ver-sun.
18013 * Makefile.in: Regenerate.
18014
18015 2012-02-14 Walter Lee <walt (a] tilera.com>
18016
18017 * configure.tgt: Handle tilegx and tilepro.
18018 * config/linux/tile/futex.h: New file.
18019
18020 2012-02-08 Richard Guenther <rguenther (a] suse.de>
18021
18022 PR tree-optimization/46886
18023 * testsuite/libgomp.c/pr46886.c: New testcase.
18024
18025 2012-01-25 Matthias Klose <doko (a] ubuntu.com>
18026
18027 * config/linux/arm: Remove empty directory.
18028 * configure.tgt (config_path): Remove linux-arm for arm*-*-linux*.
18029
18030 2011-12-09 Alan Modra <amodra (a] gmail.com>
18031
18032 PR libgomp/51376
18033 * task.c (GOMP_taskwait): Don't access task->children outside of
18034 task_lock mutex region.
18035 (GOMP_task): Likewise.
18036
18037 2011-12-06 Jakub Jelinek <jakub (a] redhat.com>
18038
18039 PR libgomp/51132
18040 * testsuite/libgomp.graphite/force-parallel-1.c: Move large arrays
18041 to file scope.
18042 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
18043 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
18044 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
18045 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
18046 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
18047
18048 2011-12-02 Alan Modra <amodra (a] gmail.com>
18049
18050 * config/linux/affinity.c: Use atomic rather than sync builtin.
18051 * config/linux/lock.c: Likewise.
18052 * config/linux/ptrlock.h: Likewise.
18053 * config/linux/ptrlock.c: Likewise.
18054 * config/linux/ptrlock.h (gomp_ptrlock_set): Always write here..
18055 * config/linux/ptrlock.c (gomp_ptrlock_set_slow): ..not here.
18056 * config/linux/futex.h (atomic_write_barrier): Delete unused function.
18057 * config/linux/alpha/futex.h (atomic_write_barrier): Likewise.
18058 * config/linux/ia64/futex.h (atomic_write_barrier): Likewise.
18059 * config/linux/mips/futex.h (atomic_write_barrier): Likewise.
18060 * config/linux/powerpc/futex.h (atomic_write_barrier): Likewise.
18061 * config/linux/s390/futex.h (atomic_write_barrier): Likewise.
18062 * config/linux/sparc/futex.h (atomic_write_barrier): Likewise.
18063 * config/linux/x86/futex.h (atomic_write_barrier): Likewise.
18064
18065 2011-11-30 Alan Modra <amodra (a] gmail.com>
18066
18067 PR libgomp/51298
18068 * config/linux/bar.h: Use atomic rather than sync builtins.
18069 * config/linux/bar.c: Likewise. Add missing acquire
18070 synchronisation on generation field.
18071 * task.c (gomp_barrier_handle_tasks): Regain lock so as to not
18072 double unlock.
18073
18074 2011-11-30 Alan Modra <amodra (a] gmail.com>
18075
18076 * ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
18077 * critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence.
18078 * config/linux/mutex.h: Use atomic rather than sync builtins.
18079 * config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state.
18080 * config/linux/omp-lock.h: Comment fix.
18081 * config/linux/arm/mutex.h: Delete.
18082 * config/linux/powerpc/mutex.h: Delete.
18083 * config/linux/ia64/mutex.h: Delete.
18084 * config/linux/mips/mutex.h: Delete.
18085
18086 2011-11-30 Alan Modra <amodra (a] gmail.com>
18087
18088 PR libgomp/51249
18089 * config/linux/sem.h: Rewrite.
18090 * config/linux/sem.c: Rewrite.
18091
18092 2011-11-28 Richard Henderson <rth (a] redhat.com>
18093
18094 * libgomp.h (enum memmodel): New.
18095
18096 2011-11-21 Andreas Tobler <andreast (a] fgznet.ch>
18097
18098 * configure: Regenerate.
18099
18100 2011-10-10 Matthias Klose <doko (a] ubuntu.com>
18101
18102 * config/posix95: Remove empty directory.
18103
18104 2011-08-26 Jakub Jelinek <jakub (a] redhat.com>
18105
18106 * testsuite/libgomp.fortran/threadprivate4.f90: New test.
18107
18108 2011-08-19 Jakub Jelinek <jakub (a] redhat.com>
18109
18110 PR fortran/49792
18111 * testsuite/libgomp.fortran/pr49792-1.f90: New test.
18112 * testsuite/libgomp.fortran/pr49792-2.f90: New test.
18113
18114 2011-08-08 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18115
18116 * config/posix95/lock.c, posix95/omp-lock.h: Remove.
18117
18118 2011-08-05 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18119
18120 PR libgomp/49965
18121 * testsuite/libgomp.c++/task-8.C: Replaced err by errval.
18122
18123 2011-08-03 Uros Bizjak <ubizjak (a] gmail.com>
18124
18125 * config/linux/proc.h: New.
18126 * config/linux/proc.c: Include "proc.h". Do not include <sched.h>.
18127 (gomp_cpuset_popcount): Rename from cpuset_popcount. No more static.
18128 (gomp_init_num_threads): Update call to cpuset_popcount.
18129 (get_num_procs): Ditto.
18130 * config/linux/affinity.c (gomp_init_affinity): Call
18131 gomp_cpuset_popcount.
18132
18133 2011-08-02 Jakub Jelinek <jakub (a] redhat.com>
18134
18135 PR fortran/42041
18136 PR fortran/46752
18137 * omp.h.in (omp_in_final): New prototype.
18138 * omp_lib.f90.in (omp_in_final): New interface.
18139 (omp_integer_kind, omp_logical_kind): Remove
18140 and replace all its uses in the module with 4.
18141 (openmp_version): Change to 201107.
18142 * omp_lib.h.in (omp_sched_static, omp_sched_dynamic,
18143 omp_sched_guided, omp_sched_auto): Use omp_sched_kind
18144 kind for the parameters.
18145 (omp_in_final): New external.
18146 (openmp_version): Change to 201107.
18147 * task.c (omp_in_final): New function.
18148 (gomp_init_task): Initialize final_task.
18149 (GOMP_task): Remove unused attribute from flags. Handle final
18150 tasks.
18151 (GOMP_taskyield): New function.
18152 (omp_in_final): Return true if if (false) or final (true) task
18153 or descendant of final (true).
18154 * fortran.c (omp_in_final_): New function.
18155 * libgomp.map (OMP_3.1): Export omp_in_final and omp_in_final_.
18156 (GOMP_3.0): Export GOMP_taskyield.
18157 * env.c (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New
18158 variables.
18159 (parse_unsigned_long_list): New function.
18160 (initialize_env): Use it for OMP_NUM_THREADS. Call parse_boolean
18161 with "OMP_PROC_BIND". If OMP_PROC_BIND=true, call gomp_init_affinity
18162 even if parse_affinity returned false.
18163 * config/linux/affinity.c (gomp_init_affinity): Handle
18164 gomp_cpu_affinity_len == 0.
18165 * libgomp_g.h (GOMP_taskyield): New prototype.
18166 * libgomp.h (struct gomp_task): Add final_task field.
18167 (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New externs.
18168 * team.c (gomp_team_start): Override new task's nthreads_var icv
18169 if list form OMP_NUM_THREADS has been used and it has value for
18170 the new nesting level.
18171
18172 * testsuite/libgomp.c/atomic-11.c: New test.
18173 * testsuite/libgomp.c/atomic-12.c: New test.
18174 * testsuite/libgomp.c/atomic-13.c: New test.
18175 * testsuite/libgomp.c/atomic-14.c: New test.
18176 * testsuite/libgomp.c/reduction-6.c: New test.
18177 * testsuite/libgomp.c/task-5.c: New test.
18178 * testsuite/libgomp.c++/atomic-2.C: New test.
18179 * testsuite/libgomp.c++/atomic-3.C: New test.
18180 * testsuite/libgomp.c++/atomic-4.C: New test.
18181 * testsuite/libgomp.c++/atomic-5.C: New test.
18182 * testsuite/libgomp.c++/atomic-6.C: New test.
18183 * testsuite/libgomp.c++/atomic-7.C: New test.
18184 * testsuite/libgomp.c++/atomic-8.C: New test.
18185 * testsuite/libgomp.c++/atomic-9.C: New test.
18186 * testsuite/libgomp.c++/task-8.C: New test.
18187 * testsuite/libgomp.c++/reduction-4.C: New test.
18188 * testsuite/libgomp.fortran/allocatable7.f90: New test.
18189 * testsuite/libgomp.fortran/allocatable8.f90: New test.
18190 * testsuite/libgomp.fortran/crayptr3.f90: New test.
18191 * testsuite/libgomp.fortran/omp_atomic3.f90: New test.
18192 * testsuite/libgomp.fortran/omp_atomic4.f90: New test.
18193 * testsuite/libgomp.fortran/pointer1.f90: New test.
18194 * testsuite/libgomp.fortran/pointer2.f90: New test.
18195 * testsuite/libgomp.fortran/task4.f90: New test.
18196
18197 2011-08-02 Tobias Burnus <burnus (a] net-b.de>
18198
18199 * libgomp.texi: Update OpenMP spec references to 3.1.
18200 (omp_in_final,OMP_PROC_BIND): New sections.
18201 (OMP_NUM_THREADS): Document that the value can be now a list.
18202 (GOMP_STACKSIZE,GOMP_CPU_AFFINITY): Update @ref.
18203
18204 2011-08-02 H.J. Lu <hongjiu.lu (a] intel.com>
18205
18206 * config/linux/x86/futex.h: Check __x86_64__ instead of
18207 __LP64__.
18208
18209 2011-07-29 Jakub Jelinek <jakub (a] redhat.com>
18210
18211 PR middle-end/49897
18212 PR middle-end/49898
18213 * testsuite/libgomp.c/pr49897-1.c: New test.
18214 * testsuite/libgomp.c/pr49897-2.c: New test.
18215 * testsuite/libgomp.c/pr49898-1.c: New test.
18216 * testsuite/libgomp.c/pr49898-2.c: New test.
18217
18218 2011-07-28 H.J. Lu <hongjiu.lu (a] intel.com>
18219
18220 * testsuite/lib/libgomp.exp (libgomp_init): Add -march=i486
18221 for ia32 instead of ilp32.
18222
18223 * testsuite/libgomp.c/atomic-1.c: Require ia32 instead of ilp32.
18224 * testsuite/libgomp.c/atomic-6.c: Likewise.
18225
18226 2011-07-23 Sebastian Pop <sebastian.pop (a] amd.com>
18227
18228 * testsuite/libgomp.graphite/force-parallel-1.c: Un-xfail.
18229 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust pattern.
18230
18231 2011-07-25 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18232
18233 PR libgomp/45351
18234 * config/osf/sem.h: New file.
18235 * configure.tgt (alpha*-dec-osf*): Prepend osf to config_path.
18236
18237 2011-07-18 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18238
18239 PR target/49541
18240 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -lgomp to
18241 ldflags.
18242
18243 2011-07-15 Jakub Jelinek <jakub (a] redhat.com>
18244
18245 * config/linux/wait.h (do_spin): New inline, largely copied
18246 from do_wait, just don't do futex_wait here, instead return true if
18247 it should be done.
18248 (do_wait): Implement using do_spin.
18249 * config/linux/mutex.h (gomp_mutex_lock_slow): Add an int argument
18250 to prototype.
18251 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
18252 __sync_bool_compare_and_swap, pass the oldval to
18253 gomp_mutex_lock_slow.
18254 * config/linux/mutex.c (gomp_mutex_lock_slow): Add oldval argument.
18255 If all mutex contenders are just spinning and not sleeping, don't
18256 change state to 2 unnecessarily. Optimize the loop when state has
18257 already become 2 to use just one atomic operation per loop instead
18258 of two.
18259 * config/linux/ia64/mutex.h (gomp_mutex_lock_slow): Add an int argument
18260 to prototype.
18261 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
18262 __sync_bool_compare_and_swap, pass the oldval to
18263 gomp_mutex_lock_slow.
18264
18265 2011-06-22 Jakub Jelinek <jakub (a] redhat.com>
18266
18267 PR libgomp/49490
18268 * iter.c (gomp_iter_static_next): For chunk size 0
18269 only use n ceil/ nthreads size for the first
18270 n % nthreads threads in the team instead of
18271 all threads except for the last few ones which
18272 get less work or none at all.
18273 * iter_ull.c (gomp_iter_ull_static_next): Likewise.
18274 * env.c (parse_schedule): If OMP_SCHEDULE doesn't have
18275 chunk argument, set run_sched_modifier to 0 for static
18276 resp. 1 for other kinds. If chunk argument is 0
18277 and not static, set value to 1.
18278
18279 2011-05-19 Jakub Jelinek <jakub (a] redhat.com>
18280
18281 PR c++/49043
18282 * testsuite/libgomp.c++/pr49043.C: New test.
18283
18284 PR c++/48869
18285 * testsuite/libgomp.c++/pr48869.C: New test.
18286
18287 2011-05-06 Jakub Jelinek <jakub (a] redhat.com>
18288
18289 PR fortran/48894
18290 * fortran.c: Include limits.h.
18291 (TO_INT): Define.
18292 (omp_set_dynamic_8_, omp_set_num_threads_8_): Use !!*set instead of
18293 *set.
18294 (omp_set_num_threads_8_, omp_set_schedule_8_,
18295 omp_set_max_active_levels_8_, omp_get_ancestor_thread_num_8_,
18296 omp_get_team_size_8_): Use TO_INT macro.
18297 * testsuite/libgomp.fortran/pr48894.f90: New test.
18298
18299 2011-04-13 Jakub Jelinek <jakub (a] redhat.com>
18300
18301 PR middle-end/48591
18302 * testsuite/libgomp.c/pr48591.c: New test.
18303
18304 2011-03-21 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18305
18306 PR bootstrap/48135
18307 * acinclude.m4 (enable_symvers): Handle --disable-symvers.
18308 * configure: Regenerate.
18309
18310 2011-02-27 Jakub Jelinek <jakub (a] redhat.com>
18311
18312 PR fortran/47886
18313 * testsuite/libgomp.fortran/task3.f90: New test.
18314
18315 2011-02-24 Tobias Burnus <burnus (a] net-b.de>
18316
18317 * libgomp.texi (GOMP_STACKSIZE): Fix @ref to OMP_STACKSIZE.
18318
18319 2011-02-23 Jakub Jelinek <jakub (a] redhat.com>
18320
18321 PR libgomp/47854
18322 * libgomp.texi (omp_get_wtime): Don't say time in the past
18323 must be Unix Epoch.
18324
18325 2011-02-18 Jakub Jelinek <jakub (a] redhat.com>
18326
18327 PR libgomp/47804
18328 * testsuite/libgomp.fortran/fortran.exp: Check for both
18329 libquadmath.a and libquadmath.${shlib_ext}. If neither exists,
18330 but $blddir != "", still append ${blddir}/${lang_library_path}
18331 to ld_library_path.
18332
18333 2011-02-16 Tobias Burnus <burnus (a] net-b.de>
18334
18335 PR libgomp/47758
18336 * testsuite/libgomp.fortran/fortran.exp: Check for the existence
18337 of libquadmath.a before adding its libpath to ldflags.
18338
18339 2011-02-14 Jakub Jelinek <jakub (a] redhat.com>
18340
18341 PR libgomp/47731
18342 * config/linux/futex.h (futex_wait): Pass NULL as timeout argument
18343 to FUTEX_WAIT futex syscall.
18344 * config/linux/wait.h: Include <futex.h> instead of "futex.h".
18345
18346 2011-02-13 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18347
18348 * configure: Regenerate.
18349
18350 2011-01-20 Benjamin Kosnik <bkoz (a] redhat.com>
18351
18352 PR libstdc++/36104
18353 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.
18354
18355 2011-01-16 Gerald Pfeifer
18356
18357 * configure.tgt (*-*-freebsd*): Add -lpthread to XLDFLAGS.
18358
18359 2010-12-14 Jakub Jelinek <jakub (a] redhat.com>
18360
18361 PR fortran/46874
18362 * libgomp.fortran/allocatable6.f90: New test.
18363
18364 2010-12-06 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18365
18366 * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
18367 * configure: Regenerate.
18368
18369 2010-12-06 Dave Korn <dave.korn.cygwin (a] gmail.com>
18370
18371 PR target/40125
18372 PR lto/46695
18373 * configure.ac: Invoke ACX_LT_HOST_FLAGS.
18374 * Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
18375 * aclocal.m4: Regenerate.
18376 * configure: Regenerate.
18377 * Makefile.in: Regenerate.
18378 * testsuite/Makefile.in: Regenerate.
18379
18380 2010-12-02 Jakub Jelinek <jakub (a] redhat.com>
18381
18382 PR fortran/46753
18383 * libgomp.fortran/pr46753.f90: New test.
18384
18385 PR libgomp/43706
18386 * env.c (initialize_env): Default to spin count 300000
18387 instead of 20000000 if neither OMP_WAIT_POLICY nor GOMP_SPINCOUNT
18388 is specified.
18389
18390 PR libgomp/45240
18391 * parallel.c (GOMP_parallel_end): Unlock gomp_remaining_threads_lock
18392 at the end if sync builtins aren't supported.
18393
18394 2010-12-01 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18395
18396 * configure.tgt (mips-sgi-irix6*): Add -lpthread to XLDFLAGS.
18397
18398 2010-12-01 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18399
18400 * testsuite/libgomp.fortran/vla8.f90: Use dg-timeout-factor 2.0.
18401
18402 2010-11-24 Iain Sandoe <iains (a] gcc.gnu.org>
18403
18404 * testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath.
18405
18406 2010-11-16 Francois-Xavier Coudert <fxcoudert (a] gcc.gnu.org>
18407 Tobias Burnus <burnus (a] net-b.de>
18408
18409 PR fortran/32049
18410 * configure.ac:
18411 * configure: Regenerate.
18412
18413 2010-10-06 Marcus Shawcroft <marcus.shawcroft (a] arm.com>
18414
18415 * config/linux/futex.h: New.
18416 * config/linux/arm/mutex.h: New.
18417 * configure.tgt (arm*-*-linux*): Add config path.
18418
18419 2010-09-30 Sebastian Pop <sebastian.pop (a] amd.com>
18420
18421 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
18422
18423 2010-09-23 Tobias Burnus <burnus (a] net-b.de>
18424
18425 * libgomp.texi (omp_get_nested, omp_set_nested, omp_set_dynamic):
18426 Change Fortran datatype to LOGICAL.
18427 (omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
18428 omp_unset_nested_lock): Use intent(inout) instead of intent(out).
18429
18430 2010-08-21 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18431
18432 * configure: Regenerate.
18433
18434 2010-07-26 Jakub Jelinek <jakub (a] redhat.com>
18435
18436 * libgomp.texi: Add function keyword to a couple of Fortran
18437 interfaces, use integer instead of int for Fortran.
18438
18439 2010-07-26 Aldy Hernandez <aldyh (a] redhat.com>
18440
18441 * libgomp.texi: Fix spelling and pasto problems throughout.
18442 Adjust prototypes to match code.
18443
18444 2010-07-24 Tobias Burnus <burnus (a] net-b.de>
18445
18446 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add -w to
18447 silence -fwhole-file warning.
18448
18449 2010-07-23 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18450
18451 * configure.tgt (*-*-solaris2.[56]*): Removed.
18452
18453 2010-07-05 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18454
18455 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
18456 Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
18457 LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
18458 (HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
18459 targetting solaris2*.
18460 * configure: Regenerate.
18461 * config.h.in: Regenerate.
18462
18463 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
18464 libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
18465 Add libgomp_version_dep.
18466 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
18467 versioning.
18468 [!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
18469 (libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
18470 * Makefile.in: Regenerate.
18471
18472 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
18473 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
18474 * libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
18475 to common block, protected by
18476 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
18477
18478 2010-06-10 Gerald Pfeifer <gerald (a] pfeifer.com>
18479
18480 * libgomp.texi: Move to GFDL version 1.3. Update copyright years.
18481
18482 2010-06-09 Iain Sandoe <iains (a] gcc.gnu.org>
18483
18484 PR bootstrap/43170
18485 * configure: Regenerate.
18486
18487 2010-05-04 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18488
18489 PR other/43620
18490 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
18491 * configure: Regenerate.
18492 * Makefile.in: Regenerate.
18493 * testsuite/Makefile.in: Regenerate.
18494
18495 2010-04-26 Jakub Jelinek <jakub (a] redhat.com>
18496
18497 PR c/43893
18498 * testsuite/libgomp.c/pr43893.c: New test.
18499 * testsuite/libgomp.c++/pr43893.C: New test.
18500
18501 2010-04-21 Jakub Jelinek <jakub (a] redhat.com>
18502
18503 PR middle-end/43570
18504 * testsuite/libgomp.fortran/vla8.f90: New test.
18505
18506 2010-04-20 Jakub Jelinek <jakub (a] redhat.com>
18507
18508 PR libgomp/43706
18509 * config/linux/affinity.c (gomp_init_affinity): Decrease
18510 gomp_available_cpus if affinity mask confines the process to fewer
18511 CPUs.
18512 * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is
18513 non-NULL, just return gomp_available_cpus.
18514
18515 PR libgomp/43569
18516 * sections.c (gomp_sections_init): Initialize ws->mode.
18517
18518 2010-04-14 Uros Bizjak <ubizjak (a] gmail.com>
18519
18520 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
18521 not unused bar variable.
18522 * configure: Regenerate.
18523
18524 2010-04-02 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18525
18526 * Makefile.in: Regenerate.
18527 * aclocal.m4: Regenerate.
18528 * testsuite/Makefile.in: Regenerate.
18529
18530 2010-03-22 Jakub Jelinek <jakub (a] redhat.com>
18531
18532 PR libgomp/42942
18533 * env.c (parse_unsigned_long): Add ALLOW_ZERO argument.
18534 (initialize_env): Adjust callers.
18535 (omp_set_max_active_levels): Set gomp_max_active_levels_var even
18536 when the argument is 0.
18537
18538 * testsuite/libgomp.c/pr42942.c: New test.
18539
18540 2010-03-08 Tobias Grosser <grosser (a] fim.uni-passau.de>
18541
18542 PR middle-end/42644
18543 PR middle-end/42130
18544 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
18545 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust.
18546
18547 2010-01-29 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18548
18549 * testsuite/libgomp.c++/task-1.C: Renamed err to e.
18550 * testsuite/libgomp.c++/task-6.C: Likewise.
18551
18552 2010-01-28 Steve Ellcey <sje (a] cup.hp.com>
18553
18554 * configure.tgt (*-*-hpux*): Add -frandom-seed flag.
18555
18556 2010-01-26 Paolo Bonzini <bonzini (a] gnu.org>
18557
18558 * configure.ac: Test for executability of _the first word_ of GFORTRAN.
18559 * configure: Regenerate.
18560
18561 2010-01-26 Jakub Jelinek <jakub (a] redhat.com>
18562
18563 PR fortran/42866
18564 * testsuite/libgomp.fortran/allocatable5.f90: New test.
18565
18566 2010-01-20 Paolo Bonzini <bonzini (a] gnu.org>
18567
18568 * configure.ac: Test for executability of GFORTRAN.
18569 * configure: Regenerate.
18570
18571 2010-01-05 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
18572
18573 * configure: Regenerate.
18574
18575 2010-01-04 H.J. Lu <hongjiu.lu (a] intel.com>
18576
18577 PR libgomp/42602
18578 * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic.
18579
18580 2010-01-03 Richard Guenther <rguenther (a] suse.de>
18581
18582 * testsuite/libgomp.fortran/recursion1.f90: New testcase.
18583
18584 2009-12-23 Sebastian Pop <sebpop (a] gmail.com>
18585
18586 * testsuite/libgomp.graphite/pr4118.c: New.
18587
18588 2009-12-22 Iain Sandoe <iain.sandoe (a] sandoe-acoustics.co.uk>
18589
18590 * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage
18591 for darwin, protect the test with require-effective-target tls_runtime.
18592 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
18593
18594 2009-12-22 Iain Sandoe <iain.sandoe (a] sandoe-acoustics.co.uk>
18595
18596 PR target/41605
18597 * testsuite/lib/libgomp.exp: Provide -B options to allow for
18598 link spec %s substitutions for static libraries.
18599
18600 2009-12-18 Jack Howarth <howarth (a] bromo.med.uc.edu>
18601
18602 PR testsuite/42135
18603 * libgomp.graphite/force-parallel-2.c: Reduce array size.
18604
18605 2009-12-05 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18606
18607 * Makefile.in: Regenerate.
18608 * configure: Regenerate.
18609 * testsuite/Makefile.in: Regenerate.
18610
18611 2009-11-30 Dave Korn <dave.korn.cygwin (a] gmail.com>
18612
18613 * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
18614 settings for LC_ALL and LANG.
18615
18616 2009-11-25 Jakub Jelinek <jakub (a] redhat.com>
18617
18618 PR fortran/42162
18619 * testsuite/libgomp.fortran/pr42162.f90: New test.
18620
18621 2009-11-13 Jakub Jelinek <jakub (a] redhat.com>
18622
18623 PR middle-end/42029
18624 * testsuite/libgomp.c/pr42029.c: New test.
18625
18626 2009-10-26 Jakub Jelinek <jakub (a] redhat.com>
18627
18628 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
18629 *s. Accept ld version without text in ()s.
18630 * configure: Regenerated.
18631
18632 2009-10-22 Razya Ladelsky <razya (a] il.ibm.com>
18633
18634 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan.
18635
18636 2009-10-17 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18637
18638 PR libgomp/41418
18639 * configure.ac: Set FC to "no" if $GFORTRAN starts with "no"
18640 or a hyphen (happens with fortran language disabled).
18641 * configure: Regenerate.
18642
18643 2009-09-30 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18644
18645 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
18646 use sed script portable to Solaris /bin/sed for extracting ld
18647 version.
18648 * configure: Regenerate.
18649
18650 2009-09-17 Alexander Monakov <amonakov (a] ispras.ru>
18651
18652 * testsuite/libgomp.graphite/bounds.c: New test.
18653
18654 2009-09-11 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18655
18656 * Makefile.am (libgomp_la_LINK): New.
18657 * Makefile.in: Regenerate.
18658
18659 2009-08-24 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18660
18661 * configure.ac (AC_PREREQ): Bump to 2.64.
18662
18663 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18664
18665 * Makefile.am (install-html, install-pdf): Remove.
18666 * Makefile.in: Regenerate.
18667
18668 * Makefile.in: Regenerate.
18669 * aclocal.m4: Regenerate.
18670 * config.h.in: Regenerate.
18671 * configure: Regenerate.
18672 * testsuite/Makefile.in: Regenerate.
18673
18674 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18675
18676 * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
18677 * Makefile.in: Regenerate.
18678
18679 2009-08-20 Dave Korn <dave.korn.cygwin (a] gmail.com>
18680
18681 * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.
18682 * Makefile.in: Regenerate.
18683
18684 2009-08-19 Tobias Burnus <burnus (a] net-b.de>
18685
18686 PR fortran/41102
18687 omp_lib.h.in: Fix -std=f95 errors.
18688
18689 2009-08-14 David Edelsohn <edelsohn (a] gnu.org>
18690
18691 * testsuite/libgomp.graphite: Move from gcc.dg/graphite.
18692 * testsuite/libgomp.graphite/graphite_autopar.exp: Delete.
18693 * testsuite/libgomp.graphite/graphite.exp: New.
18694
18695 2009-08-05 Andreas Tobler <a.tobler (a] schweiz.org>
18696
18697 * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared
18698 only build.
18699
18700 2009-08-04 David Daney <ddaney (a] caviumnetworks.com>
18701
18702 * config/linux/mutex.h (gomp_mutex_unlock): Add comment about
18703 needed memory barrier semantics.
18704 * config/linux/mips/mutex.h: New file.
18705
18706 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18707
18708 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
18709
18710 2009-07-16 Joseph Myers <joseph (a] codesourcery.com>
18711
18712 * configure: Regenerate.
18713
18714 2009-07-11 Richard Sandiford <rdsandiford (a] googlemail.com>
18715
18716 PR testsuite/40699
18717 PR testsuite/40707
18718 PR testsuite/40709
18719 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
18720 * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
18721 testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.
18722
18723 2009-07-02 Richard Sandiford <r.sandiford (a] uk.ibm.com>
18724
18725 * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
18726 options when choosing a multilib.
18727
18728 2009-06-30 Richard Sandiford <r.sandiford (a] uk.ibm.com>
18729
18730 * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
18731 ld_library_path. Use add_path. Add just find_libgcc_s to
18732 ld_library_path, not every libgcc multilib directory.
18733 * testsuite/libgomp.c/c.exp (ld_library_path): Don't call
18734 gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
18735 * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
18736 Use add_path.
18737 * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
18738
18739 2009-06-09 Nathan Froyd <froydnj (a] codesourcery.com>
18740
18741 * Makefile.am (LTLDFLAGS): Define.
18742 (LINK): Define.
18743 * Makefile.in: Regenerate.
18744
18745 2009-05-27 Janne Blomqvist <jb (a] gcc.gnu.org>
18746
18747 PR fortran/39718
18748 * testsuite/libgomp.fortran/fortran.exp: Don't link with
18749 libgfortranbegin, check existence of libgfortran.a instead of
18750 libgfortranbegin.a.
18751
18752 2009-05-20 Jakub Jelinek <jakub (a] redhat.com>
18753
18754 PR libgomp/40174
18755 * team.c (gomp_thread_start): Destroy thr->release semaphore.
18756 (gomp_free_pool_helper): Likewise.
18757
18758 2009-04-20 Vasilis Liaskovitis <vliaskov (a] gmail.com>
18759 Jakub Jelinek <jakub (a] redhat.com>
18760
18761 PR fortran/35423
18762 * testsuite/libgomp.fortran/workshare2.f90: New test.
18763
18764 2009-04-09 Nick Clifton <nickc (a] redhat.com>
18765
18766 * iter.c: Change copyright header to refer to version 3 of the
18767 GNU General Public License with version 3.1 of the GCC Runtime
18768 Library Exception and to point readers at the COPYING3 and
18769 COPYING3.RUNTIME files and the FSF's license web page.
18770 * alloc.c: Likewise.
18771 * barrier.c: Likewise.
18772 * config/bsd/proc.c: Likewise.
18773 * config/linux/affinity.c: Likewise.
18774 * config/linux/alpha/futex.h: Likewise.
18775 * config/linux/bar.c: Likewise.
18776 * config/linux/bar.h: Likewise.
18777 * config/linux/ia64/futex.h: Likewise.
18778 * config/linux/ia64/mutex.h: Likewise.
18779 * config/linux/lock.c: Likewise.
18780 * config/linux/mips/futex.h: Likewise.
18781 * config/linux/mutex.c: Likewise.
18782 * config/linux/mutex.h: Likewise.
18783 * config/linux/powerpc/futex.h: Likewise.
18784 * config/linux/proc.c: Likewise.
18785 * config/linux/ptrlock.c: Likewise.
18786 * config/linux/ptrlock.h: Likewise.
18787 * config/linux/s390/futex.h: Likewise.
18788 * config/linux/sem.c: Likewise.
18789 * config/linux/sem.h: Likewise.
18790 * config/linux/sparc/futex.h: Likewise.
18791 * config/linux/wait.h: Likewise.
18792 * config/linux/x86/futex.h: Likewise.
18793 * config/mingw32/proc.c: Likewise.
18794 * config/mingw32/time.c: Likewise.
18795 * config/posix/affinity.c: Likewise.
18796 * config/posix/bar.c: Likewise.
18797 * config/posix/bar.h: Likewise.
18798 * config/posix/lock.c: Likewise.
18799 * config/posix/mutex.h: Likewise.
18800 * config/posix/proc.c: Likewise.
18801 * config/posix/ptrlock.h: Likewise.
18802 * config/posix/sem.c: Likewise.
18803 * config/posix/sem.h: Likewise.
18804 * config/posix/time.c: Likewise.
18805 * config/posix95/lock.c: Likewise.
18806 * critical.c: Likewise.
18807 * env.c: Likewise.
18808 * error.c: Likewise.
18809 * fortran.c: Likewise.
18810 * iter_ull.c: Likewise.
18811 * libgomp.h: Likewise.
18812 * libgomp_f.h.in: Likewise.
18813 * libgomp_g.h: Likewise.
18814 * loop.c: Likewise.
18815 * loop_ull.c: Likewise.
18816 * omp.h.in: Likewise.
18817 * omp_lib.f90.in: Likewise.
18818 * omp_lib.h.in: Likewise.
18819 * ordered.c: Likewise.
18820 * parallel.c: Likewise.
18821 * sections.c: Likewise.
18822 * single.c: Likewise.
18823 * task.c: Likewise.
18824 * team.c: Likewise.
18825 * work.c: Likewise.
18826
18827 2009-04-09 Jakub Jelinek <jakub (a] redhat.com>
18828
18829 * testsuite/config/default.exp: Change copyright header to refer to
18830 version 3 of the GNU General Public License and to point readers
18831 at the COPYING3 file and the FSF's license web page.
18832
18833 2009-04-08 Jakub Jelinek <jakub (a] redhat.com>
18834
18835 PR middle-end/39573
18836 * libgomp.c++/pr39573.C: New test.
18837
18838 2009-04-01 Jakub Jelinek <jakub (a] redhat.com>
18839
18840 PR other/39591
18841 * testsuite/libgomp.c/pr39591-1.c: New test.
18842 * testsuite/libgomp.c/pr39591-2.c: New test.
18843 * testsuite/libgomp.c/pr39591-3.c: New test.
18844
18845 2009-03-25 Uros Bizjak <ubizjak (a] gmail.com>
18846
18847 * testsuite/libgomp.c/atomic-5.c: Cleanup cpuid usage.
18848 * testsuite/libgomp.c/atomic-6.c: Ditto.
18849
18850 2009-03-23 Jakub Jelinek <jakub (a] redhat.com>
18851
18852 PR c/39495
18853 * testsuite/libgomp.c/loop-12.c: New test.
18854 * testsuite/libgomp.c/loop-11.c: New test.
18855 * testsuite/libgomp.c++/loop-11.C: New test.
18856 * testsuite/libgomp.c++/loop-12.C: New test.
18857 * testsuite/libgomp.c++/for-8.C: New test.
18858
18859 2009-03-01 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18860
18861 * configure: Regenerate.
18862
18863 2009-02-11 Jakub Jelinek <jakub (a] redhat.com>
18864
18865 PR middle-end/39154
18866 * testsuite/libgomp.c/pr39154.c: New test.
18867
18868 2009-01-30 Ian Lance Taylor <iant (a] google.com>
18869
18870 * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
18871 libgomp_ld_is_gold. Get gold version number.
18872 (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
18873 * configure: Rebuild.
18874
18875 2009-01-19 Iain Sandoe <iain.sandoe (a] sandoe-acoustics.co.uk>
18876
18877 * testsuite/lib/libgomp.exp: Add -B option for targets that
18878 use libgfortran.a%s in their specs.
18879
18880 2009-01-07 Jakub Jelinek <jakub (a] redhat.com>
18881
18882 PR libgomp/38086
18883 * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New check.
18884 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undefine if
18885 HAVE_AS_SYMVER_DIRECTIVE is not defined.
18886 * configure: Regenerated.
18887 * config.h.in: Likewise.
18888
18889 2008-12-28 Jakub Jelinek <jakub (a] redhat.com>
18890
18891 PR c++/38650
18892 * testsuite/libgomp.c/pr38650.c: New test.
18893 * testsuite/libgomp.c++/pr38650.C: New test.
18894
18895 2008-12-27 Jakub Jelinek <jakub (a] redhat.com>
18896
18897 * testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
18898
18899 2008-12-26 Uros Bizjak <ubizjak (a] gmail.com>
18900
18901 * testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
18902
18903 2008-12-18 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18904
18905 * configure: Regenerate.
18906
18907 2008-12-08 Jakub Jelinek <jakub (a] redhat.com>
18908
18909 PR middle-end/36802
18910 * testsuite/libgomp.c/pr36802-1.c: New test.
18911 * testsuite/libgomp.c/pr36802-2.c: New test.
18912 * testsuite/libgomp.c/pr36802-3.c: New test.
18913
18914 2008-12-01 Janis Johnson <janis187 (a] us.ibm.com>
18915
18916 PR libgomp/38270
18917 * config/linux/powerpc/mutex.h: New.
18918
18919 2008-12-01 Jakub Jelinek <jakub (a] redhat.com>
18920
18921 PR c++/38257
18922 * testsuite/libgomp.c++/for-7.C: New test.
18923
18924 PR c++/38348
18925 * testsuite/libgomp.c++/for-6.C: New test.
18926
18927 2008-11-26 Janis Johnson <janis187 (a] us.ibm.com>
18928
18929 PR testsuite/28870
18930 * testsuite/lib/libgomp.exp: Include new timeout library files.
18931 (libgomp_target_compile): Set timeout value from new proc.
18932
18933 2008-11-13 Steve Ellcey <sje (a] cup.hp.com>
18934
18935 PR libgomp/37938
18936 * config/linux/ia64/mutex.h: New.
18937
18938 2008-11-04 Tobias Burnus <burnus (a] net-b.de>
18939
18940 PR libgomp/37935
18941 * libgomp.texi (Runtime library routines, environment variables):
18942 Update for OpenMP version 3.0.
18943
18944 2008-09-26 Peter O'Gorman <pogma (a] thewrittenword.com>
18945 Steve Ellcey <sje (a] cup.hp.com>
18946
18947 * configure: Regenerate for new libtool.
18948 * Makefile.in: Ditto.
18949 * testsuite/Makefile.in: Ditto.
18950
18951 2008-09-19 Jakub Jelinek <jakub (a] redhat.com>
18952 Andreas Tobler <a.tobler (a] schweiz.org>
18953
18954 * config/bsd/proc.c: New file.
18955 * configure.tgt (*-*-darwin*): Use config_path "bsd posix".
18956 * configure.ac: Check for header <sys/sysctl.h>
18957 * configure: Regenerate.
18958 * config.h.in: Likewise.
18959
18960 2008-09-05 Janis Johnson <janis187 (a] us.ibm.com>
18961
18962 * testsuite/ligbomp.c/c.exp: Unset lang_test_file only if it exists.
18963
18964 2008-08-31 Aaron W. LaFramboise <aaronavay62 (a] aaronwl.com>
18965
18966 * Makefile.am (libgomp_la_LDFLAGS): Add -no-undefined.
18967 * Makefile.in: Regenerated.
18968 * testsuite/Makefile.in: Regenerated.
18969
18970 2008-08-21 Nathan Froyd <froydnj (a] codesourcery.com>
18971
18972 * testsuite/lib/libgomp.exp (libgomp_init): Only set things that
18973 depend on blddir if blddir exists.
18974 (libgomp_target_compile): Likewise.
18975 * testsuite/libgomp.c++/c++.exp: Likewise.
18976 * testsuite/libgomp.fortran/fortran.exp: Likewise.
18977
18978 2008-07-30 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
18979
18980 * libgomp.texi: Update to GFDL 1.2. Update copyright years.
18981 Do not list GPL as Invariant Section.
18982
18983 2008-07-28 Ilie Garbacea <ilie (a] mips.com>
18984 Chao-ying Fu <fu (a] mips.com>
18985
18986 * configure.tgt: Enable futex for MIPS.
18987 * config/linux/mips/futex.h: New file.
18988
18989 2008-07-16 Jakub Jelinek <jakub (a] redhat.com>
18990
18991 * team.c (gomp_team_end): Free team immediately if it has
18992 just one thread.
18993
18994 2008-07-08 David Edelsohn <edelsohn (a] gnu.org>
18995
18996 * testsuite/libgomp.c++/c++.exp: Append multilib library path.
18997 * testsuite/libgomp.fortran/fortran.exp: Same.
18998 * testsuite/libgomp.c/c.exp: Same.
18999 * testsuite/lib/libgomp.exp: Append AIX libgcc pthread multilib
19000 directory to library path first.
19001
19002 2008-06-29 Krister Walfridsson <krister.walfridsson (a] gmail.com>
19003
19004 * env.c (parse_stacksize): Add cast to avoid warning.
19005 (parse_spincount): Likewise.
19006
19007 2008-06-27 Jakub Jelinek <jakub (a] redhat.com>
19008
19009 * testsuite/libgomp.c/loop-10.c: New test.
19010 * libgomp.c/loop-3.c (main): Add lastprivate clause.
19011 * libgomp.c++/loop-6.C (main): Likewise.
19012
19013 PR debug/36617
19014 * testsuite/libgomp.c/debug-1.c: New test.
19015
19016 2008-06-19 Jakub Jelinek <jakub (a] redhat.com>
19017
19018 * testsuite/libgomp.c/nqueens-1.c: New test.
19019
19020 PR c++/36523
19021 * testsuite/libgomp.c++/task-7.C: New function.
19022
19023 2008-06-17 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
19024
19025 * configure: Regenerate.
19026
19027 2008-06-15 John David Anglin <dave.anglin (a] nrc-cnrc.gc.ca>
19028
19029 * env.c (initialize_env): Always initialize gomp_remaining_threads_lock
19030 mutex when HAVE_SYNC_BUILTINS isn't defined.
19031
19032 2008-06-15 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
19033
19034 * libgomp.texi (omp_test_lock): Fix typo.
19035
19036 2008-06-12 Tobias Burnus <burnus (a] net-b.de>
19037
19038 * omp_lib.f90.in: Add "implicit none".
19039
19040 2008-06-12 Jakub Jelinek <jakub (a] redhat.com>
19041
19042 PR middle-end/36506
19043 * testsuite/libgomp.c/reduction-5.c: New test.
19044
19045 2008-06-11 Jakub Jelinek <jakub (a] redhat.com>
19046
19047 * libgomp.h (struct gomp_task): Add in_tied_task field.
19048 * task.c (gomp_init_task): Initialize it.
19049 (GOMP_task): Likewise. Call gomp_team_barrier_set_task_pending
19050 unconditionally. Don't call gomp_team_barrier_wake if
19051 current task is implicit or if(0) from implicit and number of
19052 running tasks is equal to nthreads - 1.
19053
19054 PR libgomp/36471
19055 * omp_lib.f90.in (omp_get_ancestor_thread_num_8,
19056 omp_get_team_size_8): Fix pastos.
19057
19058 PR libgomp/36469
19059 * configure.ac: Add AC_CHECK_FUNCS (strtoull).
19060 * configure: Regenerated.
19061 * config.h.in: Regenerated.
19062 * env.c (strtoull): Define to strtoul if HAVE_STRTOULL is not
19063 defined.
19064
19065 2008-06-06 Andreas Tobler <a.tobler (a] schweiz.org>
19066
19067 PR bootstrap/36452
19068 * loop_ull.c (GOMP_loop_ull_static_start): Adjust API.
19069 (GOMP_loop_ull_dynamic_start): Likewise.
19070 (GOMP_loop_ull_guided_start): Likewise.
19071 (GOMP_loop_ull_ordered_static_start): Likewise.
19072 (GOMP_loop_ull_ordered_dynamic_start): Likewise.
19073 (GOMP_loop_ull_ordered_guided_start): Likewise.
19074
19075 2008-06-06 Jakub Jelinek <jakub (a] redhat.com>
19076 Richard Henderson <rth (a] redhat.com>
19077 Ulrich Drepper <drepper (a] redhat.com>
19078 Jakob Blomer <jakob.blomer (a] ira.uka.de>
19079
19080 * configure.ac (LIBGOMP_GNU_SYMBOL_VERSIONING): New AC_DEFINE.
19081 Substitute also OMP_*LOCK_25*.
19082 * configure: Regenerated.
19083 * config.h.in: Regenerated.
19084 * Makefile.am (libgomp_la_SOURCES): Add loop_ull.c, iter_ull.c,
19085 ptrlock.c and task.c.
19086 * Makefile.in: Regenerated.
19087 * testsuite/Makefile.in: Regenerated.
19088 * task.c: New file.
19089 * loop_ull.c: New file.
19090 * iter_ull.c: New file.
19091 * libgomp.h: Include ptrlock.h.
19092 (enum gomp_task_kind): New type.
19093 (struct gomp_team): Add task_lock, task_queue, task_count,
19094 task_running_count, single_count fields. Add
19095 work_share_list_free_lock ifndef HAVE_SYNC_BUILTINS.
19096 Remove work_share_lock, generation_mask,
19097 oldest_live_gen, num_live_gen and init_work_shares fields, add
19098 work work_share_list_alloc, work_share_list_free and work_share_chunk
19099 fields. Change work_shares from pointer to pointers into an array.
19100 Change ordered_release field into gomp_sem_t ** from flexible array
19101 member. Add implicit_task and initial_work_shares fields.
19102 Move close to the end of the struct.
19103 (struct gomp_team_state): Add single_count, last_work_share,
19104 active_level and level fields, remove work_share_generation.
19105 (gomp_barrier_handle_tasks): New prototype.
19106 (gomp_finish_task): New inline function.
19107 (struct gomp_work_share): Move chunk_size, end, incr into
19108 transparent union/struct, add chunk_size_ull, end_ll, incr_ll and
19109 next_ll fields. Reshuffle fields. Add next_alloc,
19110 next_ws, next_free and inline_ordered_team_ids fields, change
19111 ordered_team_ids into pointer from flexible array member.
19112 Add mode field. Put lock and next into a different cache line
19113 from most of the write-once fields.
19114 (gomp_iter_ull_static_next, gomp_iter_ull_dynamic_next_locked,
19115 gomp_iter_ull_guided_next_locked, gomp_iter_ull_dynamic_next,
19116 gomp_iter_ull_guided_next): New prototypes.
19117 (gomp_new_icv): New prototype.
19118 (struct gomp_thread): Add thread_pool and task fields.
19119 (struct gomp_thread_pool): New type.
19120 (gomp_new_team): New prototype.
19121 (gomp_team_start): Change type of last argument.
19122 (gomp_new_work_share): Removed.
19123 (gomp_init_work_share, gomp_fini_work_share): New prototypes.
19124 (gomp_work_share_init_done): New static inline.
19125 (gomp_throttled_spin_count_var, gomp_available_cpus,
19126 gomp_managed_threads): New extern decls.
19127 (gomp_init_task): New prototype.
19128 (gomp_spin_count_var): New extern var decl.
19129 (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef if no visibility
19130 or no alias support, or if not PIC.
19131 (gomp_init_lock_30, gomp_destroy_lock_30, gomp_set_lock_30,
19132 gomp_unset_lock_30, gomp_test_lock_30, gomp_init_nest_lock_30,
19133 gomp_destroy_nest_lock_30, gomp_set_nest_lock_30,
19134 gomp_unset_nest_lock_30, gomp_test_nest_lock_30, gomp_init_lock_25,
19135 gomp_destroy_lock_25, gomp_set_lock_25, gomp_unset_lock_25,
19136 gomp_test_lock_25, gomp_init_nest_lock_25, gomp_destroy_nest_lock_25,
19137 gomp_set_nest_lock_25, gomp_unset_nest_lock_25,
19138 gomp_test_nest_lock_25): New prototypes.
19139 (omp_lock_symver, strong_alias): Define.
19140 (gomp_remaining_threads_count, gomp_remaining_threads_lock): New
19141 decls.
19142 (gomp_end_task): New.
19143 (struct gomp_task_icv, gomp_global_icv): New.
19144 (gomp_thread_limit_var, gomp_max_active_levels_var): New.
19145 (struct gomp_task): New.
19146 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
19147 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
19148 (gomp_icv): New.
19149 (gomp_schedule_type): Reorder enum to match
19150 omp_sched_t.
19151 * team.c (struct gomp_thread_start_data): Add thread_pool and task
19152 fields.
19153 (gomp_thread_start): Add gomp_team_barrier_wait call.
19154 For non-nested case remove clearing of docked thread thr fields.
19155 Use pool fields instead of global gomp_* variables. Use
19156 gomp_barrier_wait_last when needed. Initialize ts.active_level.
19157 Create tasks for each member thread.
19158 (free_team): Only destroy team barrier, task_lock here and free it.
19159 (gomp_free_thread): Free last_team if non-NULL.
19160 (gomp_team_end): Call gomp_team_barrier_wait instead of
19161 gomp_barrier_wait. For nested case call one extra
19162 gomp_barrier_wait. Move here some destruction from free_team.
19163 Call free_team on pool->last_team if any, rather than freeing
19164 current team. Destroy work_share_list_free_lock ifndef
19165 HAVE_SYNC_BUILTINS.
19166 (gomp_new_icv): New function.
19167 (gomp_threads, gomp_threads_size, gomp_threads_used,
19168 gomp_threads_dock): Removed.
19169 (gomp_thread_destructor): New variable.
19170 (gomp_new_thread_pool, gomp_free_pool_helper, gomp_free_thread): New
19171 functions.
19172 (gomp_team_start): Create new pool if current thread doesn't have
19173 one. Use pool fields instead of global gomp_* variables.
19174 Initialize thread_pool field for new threads. Clear single_count.
19175 Change last argument from ws to team, don't create
19176 new team, set ts.work_share to &team->work_shares[0] and clear
19177 ts.last_work_share. Don't clear ts.work_share_generation.
19178 If number of threads changed, adjust atomically gomp_managed_threads.
19179 Use gomp_init_task instead of gomp_new_task,
19180 set thr->task to the corresponding implicit_task array entry.
19181 Create tasks for each member thread. Initialize ts.level.
19182 (initialize_team): Call pthread_key_create on
19183 gomp_thread_destructor.
19184 (team_destructor): New function.
19185 (new_team): Removed.
19186 (gomp_new_team): New function.
19187 (free_team): Free gomp_work_share blocks chained through next_alloc,
19188 instead of freeing work_shares and destroying work_share_lock.
19189 (gomp_team_end): Call gomp_fini_work_share. If number of threads
19190 changed, adjust atomically gomp_managed_threads. Use gomp_end_task.
19191 * barrier.c (GOMP_barrier): Call gomp_team_barrier_wait instead
19192 of gomp_barrier_wait.
19193 * single.c (GOMP_single_copy_start): Call gomp_team_barrier_wait
19194 instead of gomp_barrier_wait. Call gomp_work_share_init_done
19195 if gomp_work_share_start returned true. Don't unlock ws->lock.
19196 (GOMP_single_copy_end): Call gomp_team_barrier_wait instead
19197 of gomp_barrier_wait.
19198 (GOMP_single_start): Rewritten if HAVE_SYNC_BUILTINS. Call
19199 gomp_work_share_init_done if gomp_work_share_start returned true.
19200 Don't unlock ws->lock.
19201 * work.c: Include stddef.h.
19202 (free_work_share): Use work_share_list_free_lock instead
19203 of atomic chaining ifndef HAVE_SYNC_BUILTINS. Add team argument.
19204 Call gomp_fini_work_share and then either free ws if orphaned, or
19205 put it into work_share_list_free list of the current team.
19206 (alloc_work_share, gomp_init_work_share, gomp_fini_work_share): New
19207 functions.
19208 (gomp_work_share_start, gomp_work_share_end,
19209 gomp_work_share_end_nowait): Rewritten.
19210 * omp_lib.f90.in Change some tabs to spaces to prevent warnings.
19211 (openmp_version): Set to 200805.
19212 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
19213 omp_sched_guided, omp_sched_auto): New parameters.
19214 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
19215 omp_set_max_active_levels, omp_get_max_active_levels,
19216 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
19217 omp_get_active_level): New interfaces.
19218 * omp_lib.h.in (openmp_version): Set to 200805.
19219 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
19220 omp_sched_guided, omp_sched_auto): New parameters.
19221 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
19222 omp_set_max_active_levels, omp_get_max_active_levels,
19223 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
19224 omp_get_active_level): New externals.
19225 * loop.c: Include limits.h.
19226 (GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Handle
19227 GFS_AUTO.
19228 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start):
19229 Likewise. Use gomp_icv.
19230 (gomp_loop_static_start, gomp_loop_dynamic_start): Clear
19231 ts.static_trip here.
19232 (gomp_loop_static_start, gomp_loop_ordered_static_start): Call
19233 gomp_work_share_init_done after gomp_loop_init. Don't unlock ws->lock.
19234 (gomp_loop_dynamic_start, gomp_loop_guided_start): Call
19235 gomp_work_share_init_done after gomp_loop_init. If HAVE_SYNC_BUILTINS,
19236 don't unlock ws->lock, otherwise lock it.
19237 (gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start): Call
19238 gomp_work_share_init_done after gomp_loop_init. Lock ws->lock.
19239 (gomp_parallel_loop_start): Call gomp_new_team instead of
19240 gomp_new_work_share. Call gomp_loop_init on &team->work_shares[0].
19241 Adjust gomp_team_start caller. Pass 0 as second argument to
19242 gomp_resolve_num_threads.
19243 (gomp_loop_init): For GFS_DYNAMIC, multiply ws->chunk_size by incr.
19244 If adding ws->chunk_size nthreads + 1 times after end won't
19245 overflow, set ws->mode to 1.
19246 * libgomp_g.h (GOMP_loop_ull_static_start, GOMP_loop_ull_dynamic_start,
19247 GOMP_loop_ull_guided_start, GOMP_loop_ull_runtime_start,
19248 GOMP_loop_ull_ordered_static_start,
19249 GOMP_loop_ull_ordered_dynamic_start,
19250 GOMP_loop_ull_ordered_guided_start,
19251 GOMP_loop_ull_ordered_runtime_start, GOMP_loop_ull_static_next,
19252 GOMP_loop_ull_dynamic_next, GOMP_loop_ull_guided_next,
19253 GOMP_loop_ull_runtime_next, GOMP_loop_ull_ordered_static_next,
19254 GOMP_loop_ull_ordered_dynamic_next, GOMP_loop_ull_ordered_guided_next,
19255 GOMP_loop_ull_ordered_runtime_next, GOMP_task, GOMP_taskwait): New
19256 prototypes.
19257 * libgomp.map: Export lock routines also @@OMP_2.0.
19258 (GOMP_loop_ordered_dynamic_first,
19259 GOMP_loop_ordered_guided_first, GOMP_loop_ordered_runtime_first,
19260 GOMP_loop_ordered_static_first): Remove.
19261 (GOMP_loop_ull_dynamic_next, GOMP_loop_ull_dynamic_start,
19262 GOMP_loop_ull_guided_next, GOMP_loop_ull_guided_start,
19263 GOMP_loop_ull_ordered_dynamic_next,
19264 GOMP_loop_ull_ordered_dynamic_start,
19265 GOMP_loop_ull_ordered_guided_next,
19266 GOMP_loop_ull_ordered_guided_start,
19267 GOMP_loop_ull_ordered_runtime_next,
19268 GOMP_loop_ull_ordered_runtime_start,
19269 GOMP_loop_ull_ordered_static_next,
19270 GOMP_loop_ull_ordered_static_start,
19271 GOMP_loop_ull_runtime_next, GOMP_loop_ull_runtime_start,
19272 GOMP_loop_ull_static_next, GOMP_loop_ull_static_start,
19273 GOMP_task, GOMP_taskwait): Export @@GOMP_2.0.
19274 (omp_set_schedule, omp_get_schedule,
19275 omp_get_thread_limit, omp_set_max_active_levels,
19276 omp_get_max_active_levels, omp_get_level,
19277 omp_get_ancestor_thread_num, omp_get_team_size, omp_get_active_level,
19278 omp_set_schedule_, omp_set_schedule_8_,
19279 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
19280 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
19281 omp_get_max_active_levels_, omp_get_level_,
19282 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
19283 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
19284 New exports @@OMP_3.0.
19285 * omp.h.in (omp_sched_t): New type.
19286 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
19287 omp_set_max_active_levels, omp_get_max_active_levels,
19288 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
19289 omp_get_active_level): New prototypes.
19290 * env.c (gomp_spin_count_var, gomp_throttled_spin_count_var,
19291 gomp_available_cpus, gomp_managed_threads, gomp_max_active_levels_var,
19292 gomp_thread_limit_var, gomp_remaining_threads_count,
19293 gomp_remaining_threads_lock): New variables.
19294 (parse_spincount): New function.
19295 (initialize_env): Call gomp_init_num_threads unconditionally.
19296 Initialize gomp_available_cpus. Call parse_spincount,
19297 initialize gomp_{,throttled_}spin_count_var
19298 depending on presence and value of OMP_WAIT_POLICY and
19299 GOMP_SPINCOUNT env vars. Handle GOMP_BLOCKTIME env var.
19300 Handle OMP_WAIT_POLICY, OMP_MAX_ACTIVE_LEVELS,
19301 OMP_THREAD_LIMIT, OMP_STACKSIZE env vars. Handle unit specification
19302 for GOMP_STACKSIZE. Initialize gomp_remaining_threads_count and
19303 gomp_remaining_threads_lock if needed. Use gomp_global_icv.
19304 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
19305 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
19306 (gomp_global_icv): New.
19307 (parse_schedule): Use it. Parse "auto".
19308 (omp_set_num_threads): Use gomp_icv.
19309 (omp_set_dynamic, omp_get_dynamic, omp_set_nested, omp_get_nested):
19310 Likewise.
19311 (omp_get_max_threads): Move from parallel.c.
19312 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
19313 omp_set_max_active_levels, omp_get_max_active_levels): New functions,
19314 add ialias.
19315 (parse_stacksize, parse_wait_policy): New functions.
19316 * fortran.c: Rewrite lock wrappers, if symbol versioning provide
19317 both wrappers for compatibility and new locks.
19318 (omp_set_schedule, omp_get_schedule,
19319 omp_get_thread_limit, omp_set_max_active_levels,
19320 omp_get_max_active_levels, omp_get_level,
19321 omp_get_ancestor_thread_num, omp_get_team_size,
19322 omp_get_active_level): New ialias_redirect.
19323 (omp_set_schedule_, omp_set_schedule_8_,
19324 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
19325 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
19326 omp_get_max_active_levels_, omp_get_level_,
19327 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
19328 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
19329 New functions.
19330 * parallel.c: Include limits.h.
19331 (gomp_resolve_num_threads): Add count argument. Rewritten.
19332 (GOMP_parallel_start): Call gomp_new_team and pass that as last
19333 argument to gomp_team_start. Pass 0 as second argument to
19334 gomp_resolve_num_threads.
19335 (GOMP_parallel_end): Decrease gomp_remaining_threads_count
19336 if gomp_thread_limit_var != ULONG_MAX.
19337 (omp_in_parallel): Implement using ts.active_level.
19338 (omp_get_max_threads): Move to env.c.
19339 (omp_get_level, omp_get_ancestor_thread_num,
19340 omp_get_team_size, omp_get_active_level): New functions,
19341 add ialias.
19342 * sections.c (GOMP_sections_start): Call gomp_work_share_init_done
19343 after gomp_sections_init. If HAVE_SYNC_BUILTINS, call
19344 gomp_iter_dynamic_next instead of the _locked variant and don't take
19345 lock around it, otherwise acquire it before calling
19346 gomp_iter_dynamic_next_locked.
19347 (GOMP_sections_next): If HAVE_SYNC_BUILTINS, call
19348 gomp_iter_dynamic_next instead of the _locked variant and don't take
19349 lock around it.
19350 (GOMP_parallel_sections_start): Call gomp_new_team instead of
19351 gomp_new_work_share. Call gomp_sections_init on &team->work_shares[0].
19352 Adjust gomp_team_start caller. Pass count as second argument to
19353 gomp_resolve_num_threads, don't adjust num_threads after the call.
19354 Use gomp_icv.
19355 * iter.c (gomp_iter_dynamic_next_locked): Don't multiply
19356 ws->chunk_size by incr.
19357 (gomp_iter_dynamic_next): Likewise. If ws->mode, use more efficient
19358 code.
19359 * libgomp_f.h.in (omp_lock_25_arg_t, omp_nest_lock_25_arg_t): New
19360 types.
19361 (omp_lock_25_arg, omp_nest_lock_25_arg): New macros.
19362 (omp_check_defines): Check even the compat defines.
19363 * config/linux/ptrlock.c: New file.
19364 * config/linux/ptrlock.h: New file.
19365 * config/linux/wait.h: New file.
19366 * config/posix/ptrlock.c: New file.
19367 * config/posix/ptrlock.h: New file.
19368 * config/linux/bar.h (gomp_team_barrier_wait,
19369 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
19370 (gomp_team_barrier_set_task_pending,
19371 gomp_team_barrier_clear_task_pending,
19372 gomp_team_barrier_set_waiting_for_tasks,
19373 gomp_team_barrier_waiting_for_tasks,
19374 gomp_team_barrier_done): New inlines.
19375 (gomp_barrier_t): Rewritten.
19376 (gomp_barrier_state_t): New typedef.
19377 (gomp_barrier_init, gomp_barrier_reinit, gomp_barrier_destroy,
19378 gomp_barrier_wait_start): Rewritten.
19379 (gomp_barrier_wait_end): Change second argument to
19380 gomp_barrier_state_t.
19381 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
19382 inlines.
19383 * config/linux/bar.c: Include wait.h instead of libgomp.h and
19384 futex.h.
19385 (gomp_barrier_wait_end): Rewritten.
19386 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
19387 gomp_team_barrier_wake, gomp_barrier_wait_last): New functions.
19388 * config/posix/bar.h (gomp_barrier_t): Add generation field.
19389 (gomp_barrier_state_t): New typedef.
19390 (gomp_team_barrier_wait,
19391 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
19392 (gomp_barrier_wait_start): Or all but low 2 bits from generation
19393 into the return value. Return gomp_barrier_state_t.
19394 (gomp_team_barrier_set_task_pending,
19395 gomp_team_barrier_clear_task_pending,
19396 gomp_team_barrier_set_waiting_for_tasks,
19397 gomp_team_barrier_waiting_for_tasks,
19398 gomp_team_barrier_done): New inlines.
19399 (gomp_barrier_wait_end): Change second argument to
19400 gomp_barrier_state_t.
19401 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
19402 inlines.
19403 * config/posix/bar.c (gomp_barrier_init): Clear generation field.
19404 (gomp_barrier_wait_end): Change second argument to
19405 gomp_barrier_state_t.
19406 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
19407 gomp_team_barrier_wake): New functions.
19408 * config/linux/mutex.c: Include wait.h instead of libgomp.h and
19409 futex.h.
19410 (gomp_futex_wake, gomp_futex_wait): New variables.
19411 (gomp_mutex_lock_slow): Call do_wait instead of futex_wait.
19412 * config/linux/lock.c: Rewrite to make locks task owned,
19413 for backwards compatibility provide the old entrypoints
19414 if symbol versioning. Include wait.h instead of libgomp.h and
19415 futex.h.
19416 (gomp_set_nest_lock_25): Call do_wait instead of futex_wait.
19417 * config/posix95/lock.c: Rewrite to make locks task owned,
19418 for backwards compatibility provide the old entrypoints
19419 if symbol versioning.
19420 * config/posix/lock.c: Rewrite to make locks task owned,
19421 for backwards compatibility provide the old entrypoints
19422 if symbol versioning.
19423 * config/linux/proc.c (gomp_init_num_threads): Use gomp_global_icv.
19424 (get_num_procs, gomp_dynamic_max_threads): Use gomp_icv.
19425 * config/posix/proc.c, config/mingw32/proc.c: Similarly.
19426 * config/linux/powerpc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19427 (sys_futex0): Return error code.
19428 (futex_wake, futex_wait): If ENOSYS was returned, clear
19429 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19430 (cpu_relax, atomic_write_barrier): New static inlines.
19431 * config/linux/alpha/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19432 (futex_wake, futex_wait): If ENOSYS was returned, clear
19433 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19434 (cpu_relax, atomic_write_barrier): New static inlines.
19435 * config/linux/x86/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19436 (sys_futex0): Return error code.
19437 (futex_wake, futex_wait): If ENOSYS was returned, clear
19438 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19439 (cpu_relax, atomic_write_barrier): New static inlines.
19440 * config/linux/s390/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19441 (sys_futex0): Return error code.
19442 (futex_wake, futex_wait): If ENOSYS was returned, clear
19443 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19444 (cpu_relax, atomic_write_barrier): New static inlines.
19445 * config/linux/ia64/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19446 (sys_futex0): Return error code.
19447 (futex_wake, futex_wait): If ENOSYS was returned, clear
19448 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19449 (cpu_relax, atomic_write_barrier): New static inlines.
19450 * config/linux/sparc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19451 (sys_futex0): Return error code.
19452 (futex_wake, futex_wait): If ENOSYS was returned, clear
19453 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19454 (cpu_relax, atomic_write_barrier): New static inlines.
19455 * config/linux/sem.c: Include wait.h instead of libgomp.h and
19456 futex.h.
19457 (gomp_sem_wait_slow): Call do_wait instead of futex_wait.
19458 * config/linux/affinity.c: Assume HAVE_SYNC_BUILTINS.
19459 * config/linux/omp-lock.h (omp_lock_25_t, omp_nest_lock_25_t): New
19460 types.
19461 (omp_nest_lock_t): Change owner into void *, add lock field.
19462 * config/posix95/omp-lock.h: Include semaphore.h.
19463 (omp_lock_25_t, omp_nest_lock_25_t): New types.
19464 (omp_lock_t): Use sem_t instead of mutex if semaphores
19465 aren't broken.
19466 (omp_nest_lock_t): Likewise. Change owner to void *.
19467 * config/posix/omp-lock.h: Include semaphore.h.
19468 (omp_lock_25_t, omp_nest_lock_25_t): New types.
19469 (omp_lock_t): Use sem_t instead of mutex if semaphores
19470 aren't broken.
19471 (omp_nest_lock_t): Likewise. Add owner field.
19472
19473 2008-06-06 Jakub Jelinek <jakub (a] redhat.com>
19474
19475 * testsuite/libgomp.c/collapse-1.c: New test.
19476 * testsuite/libgomp.c/collapse-2.c: New test.
19477 * testsuite/libgomp.c/collapse-3.c: New test.
19478 * testsuite/libgomp.c/icv-1.c: New test.
19479 * testsuite/libgomp.c/icv-2.c: New test.
19480 * testsuite/libgomp.c/lib-2.c: New test.
19481 * testsuite/libgomp.c/lock-1.c: New test.
19482 * testsuite/libgomp.c/lock-2.c: New test.
19483 * testsuite/libgomp.c/lock-3.c: New test.
19484 * testsuite/libgomp.c/loop-4.c: New test.
19485 * testsuite/libgomp.c/loop-5.c: New test.
19486 * testsuite/libgomp.c/loop-6.c: New test.
19487 * testsuite/libgomp.c/loop-7.c: New test.
19488 * testsuite/libgomp.c/loop-8.c: New test.
19489 * testsuite/libgomp.c/loop-9.c: New test.
19490 * testsuite/libgomp.c/nested-3.c: New test.
19491 * testsuite/libgomp.c/nestedfn-6.c: New test.
19492 * testsuite/libgomp.c/sort-1.c: New test.
19493 * testsuite/libgomp.c/task-1.c: New test.
19494 * testsuite/libgomp.c/task-2.c: New test.
19495 * testsuite/libgomp.c/task-3.c: New test.
19496 * testsuite/libgomp.c/task-4.c: New test.
19497 * testsuite/libgomp.c++/c++.exp: Add libstdc++-v3 build includes
19498 to C++ testsuite default compiler options.
19499 * testsuite/libgomp.c++/collapse-1.C: New test.
19500 * testsuite/libgomp.c++/collapse-2.C: New test.
19501 * testsuite/libgomp.c++/ctor-10.C: New test.
19502 * testsuite/libgomp.c++/for-1.C: New test.
19503 * testsuite/libgomp.c++/for-2.C: New test.
19504 * testsuite/libgomp.c++/for-3.C: New test.
19505 * testsuite/libgomp.c++/for-4.C: New test.
19506 * testsuite/libgomp.c++/for-5.C: New test.
19507 * testsuite/libgomp.c++/loop-8.C: New test.
19508 * testsuite/libgomp.c++/loop-9.C: New test.
19509 * testsuite/libgomp.c++/loop-10.C: New test.
19510 * testsuite/libgomp.c++/task-1.C: New test.
19511 * testsuite/libgomp.c++/task-2.C: New test.
19512 * testsuite/libgomp.c++/task-3.C: New test.
19513 * testsuite/libgomp.c++/task-4.C: New test.
19514 * testsuite/libgomp.c++/task-5.C: New test.
19515 * testsuite/libgomp.c++/task-6.C: New test.
19516 * testsuite/libgomp.fortran/allocatable1.f90: New test.
19517 * testsuite/libgomp.fortran/allocatable2.f90: New test.
19518 * testsuite/libgomp.fortran/allocatable3.f90: New test.
19519 * testsuite/libgomp.fortran/allocatable4.f90: New test.
19520 * testsuite/libgomp.fortran/collapse1.f90: New test.
19521 * testsuite/libgomp.fortran/collapse2.f90: New test.
19522 * testsuite/libgomp.fortran/collapse3.f90: New test.
19523 * testsuite/libgomp.fortran/collapse4.f90: New test.
19524 * testsuite/libgomp.fortran/lastprivate1.f90: New test.
19525 * testsuite/libgomp.fortran/lastprivate2.f90: New test.
19526 * testsuite/libgomp.fortran/lib4.f90: New test.
19527 * testsuite/libgomp.fortran/lock-1.f90: New test.
19528 * testsuite/libgomp.fortran/lock-2.f90: New test.
19529 * testsuite/libgomp.fortran/nested1.f90: New test.
19530 * testsuite/libgomp.fortran/nestedfn4.f90: New test.
19531 * testsuite/libgomp.fortran/strassen.f90: New test.
19532 * testsuite/libgomp.fortran/tabs1.f90: New test.
19533 * testsuite/libgomp.fortran/tabs2.f: New test.
19534 * testsuite/libgomp.fortran/task1.f90: New test.
19535 * testsuite/libgomp.fortran/task2.f90: New test.
19536 * testsuite/libgomp.fortran/vla4.f90: Add dg-warning.
19537 * testsuite/libgomp.fortran/vla5.f90: Likewise.
19538 * testsuite/libgomp.c/pr26943-2.c: Likewise.
19539 * testsuite/libgomp.c/pr26943-3.c: Likewise.
19540 * testsuite/libgomp.c/pr26943-4.c: Likewise.
19541
19542 2008-05-23 Jakub Jelinek <jakub (a] redhat.com>
19543
19544 PR c++/36308
19545 * testsuite/libgomp.c++/ctor-11.C: New test.
19546 * testsuite/libgomp.c++/ctor-12.C: New test.
19547
19548 2008-05-15 Janis Johnson <janis187 (a] us.ibm.com>
19549
19550 * testsuite/lib/libgomp.exp: Load torture-options.exp from gcc lib.
19551
19552 2008-05-07 Jakub Jelinek <jakub (a] redhat.com>
19553
19554 PR middle-end/36106
19555 * testsuite/libgomp.c/atomic-5.c: New test.
19556 * testsuite/libgomp.c/atomic-6.c: New test.
19557 * testsuite/libgomp.c/autopar-1.c: New test.
19558
19559 2008-04-21 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
19560
19561 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
19562 (LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
19563 (LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
19564 (LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
19565 * configure: Regenerate.
19566 * Makefile.in, testsuite/Makefile.in: Likewise.
19567
19568 2008-04-18 Paolo Bonzini <bonzini (a] gnu.org>
19569
19570 PR bootstrap/35457
19571 * aclocal.m4: Regenerate.
19572 * configure: Regenerate.
19573
19574 2008-03-18 Jakub Jelinek <jakub (a] redhat.com>
19575
19576 PR middle-end/35611
19577 * testsuite/libgomp.c/atomic-4.c: New test.
19578
19579 PR libgomp/35625
19580 * iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
19581 (gomp_iter_guided_next): Likewise.
19582 * testsuite/libgomp.c/pr35625.c: New test.
19583
19584 2008-03-16 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
19585
19586 * aclocal.m4: Regenerate.
19587 * configure: Likewise.
19588 * Makefile.in: Likewise.
19589 * testsuite/Makefile.in: Likewise.
19590
19591 2008-03-13 Jakub Jelinek <jakub (a] redhat.com>
19592
19593 PR middle-end/35185
19594 * testsuite/libgomp.c++/pr35185.C: New test.
19595
19596 2008-03-12 Jakub Jelinek <jakub (a] redhat.com>
19597
19598 PR middle-end/35549
19599 * testsuite/libgomp.c/pr35549.c: New test.
19600
19601 2008-03-06 Jakub Jelinek <jakub (a] redhat.com>
19602
19603 * testsuite/libgomp.c/atomic-3.c: New test.
19604
19605 2008-03-03 Francois-Xavier Coudert <fxcoudert (a] gcc.gnu.org>
19606
19607 PR fortran/33197
19608 * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
19609 .F08 file suffixes.
19610
19611 2008-03-03 Peter O'Gorman <pogma (a] thewrittenword.com>
19612
19613 PR libgomp/33131
19614 * configure.ac: Add ACX_HEADER_STRING.
19615 * env.c: Include strings.h.
19616 * aclocal.m4: Regenerate.
19617 * config.h.in: Regenerate.
19618 * configure: Regenerate.
19619 * Makefile.in: Regenerate.
19620 * testsuite/Makefile.in: Regenerate.
19621
19622 2008-02-15 Jakub Jelinek <jakub (a] redhat.com>
19623
19624 PR middle-end/35196
19625 * testsuite/libgomp.c/pr35196.c: New test.
19626
19627 PR middle-end/35130
19628 * testsuite/libgomp.fortran/pr35130.f90: New test.
19629 * testsuite/libgomp.c/pr35130.c: New test.
19630
19631 2008-01-25 Jakub Jelinek <jakub (a] redhat.com>
19632
19633 PR middle-end/33880
19634 * testsuite/libgomp.c/pr33880.c: New test.
19635 * testsuite/libgomp.fortran/pr33880.f90: New test.
19636
19637 2008-01-24 David Edelsohn <edelsohn (a] gnu.org>
19638
19639 * configure: Regenerate.
19640
19641 2008-01-08 Jakub Jelinek <jakub (a] redhat.com>
19642
19643 * configure.ac: Move futex checking into ../config/futex.m4.
19644 * configure: Rebuilt.
19645 * aclocal.m4: Rebuilt.
19646 * Makefile.in: Rebuilt.
19647
19648 * configure.tgt: Rename have_tls to gcc_cv_have_tls to match
19649 2007-10-15 ../config/tls.m4 change.
19650
19651 2007-12-19 Jakub Jelinek <jakub (a] redhat.com>
19652
19653 PR c++/34513
19654 * testsuite/libgomp.c/pr34513.c: New test.
19655 * testsuite/libgomp.c++/pr34513.C: New test.
19656
19657 2007-12-17 Jack Howarth <howarth (a] bromo.med.uc.edu>
19658
19659 PR target/32765
19660 * testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.
19661
19662 2007-12-04 Jakub Jelinek <jakub (a] redhat.com>
19663
19664 * omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
19665
19666 2007-12-03 Jakub Jelinek <jakub (a] redhat.com>
19667
19668 * testsuite/libgomp.c/private-1.c: New test.
19669
19670 2007-11-29 Andris Pavenis <andris.pavenis (a] iki.fi>
19671 Paolo Bonzini <bonzini (a] gnu.org>
19672
19673 * Makefile.am: Use space as vpath separator. Use 'vpath %'
19674 instead of 'VPATH ='.
19675 * Makefile.in: Regenerate.
19676
19677 2007-11-23 Matthias Klose <doko (a] ubuntu.com>
19678
19679 * configure.ac: Adjust makeinfo version check.
19680 * configure: Regenerate.
19681
19682 2007-11-10 Jakub Jelinek <jakub (a] redhat.com>
19683
19684 PR fortran/34020
19685 * testsuite/libgomp.fortran/pr34020.f90: New test.
19686
19687 2007-11-06 Jakub Jelinek <jakub (a] redhat.com>
19688
19689 PR c++/33894
19690 * testsuite/libgomp.c++/atomic-1.C: New test.
19691
19692 2007-10-25 Jakub Jelinek <jakub (a] redhat.com>
19693
19694 PR libgomp/33275
19695 * testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
19696 Make x and y integers rather than (implicit) reals. Add private (j)
19697 clause to the last omp parallel.
19698
19699 2007-10-15 Maciej W. Rozycki <macro (a] linux-mips.org>
19700
19701 * configure: Regenerate following changes to ../config/tls.m4.
19702
19703 2007-09-28 Jakub Jelinek <jakub (a] redhat.com>
19704
19705 * testsuite/libgomp.fortran/stack.f90: New test.
19706
19707 2007-09-10 Danny Smith <dannysmith (a] users.sourceforge.net>
19708
19709 * config/mingw32/proc.c: New file.
19710
19711 2007-09-05 Uros Bizjak <ubizjak (a] gmail.com>
19712
19713 * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
19714 (main): Use __get_cpuid to get i386 target fetaures.
19715 * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
19716 (main): Use __get_cpuid to get x86_64 target fetaures.
19717
19718 2007-08-15 Jack Howarth <howarth (a] bromo.med.uc.edu>
19719
19720 PR target/32765
19721 * testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
19722 * testsuite/libgomp.fortran/crayptr2.f90: Likwise.
19723
19724 2007-07-12 Jakub Jelinek <jakub (a] redhat.com>
19725
19726 PR fortran/32550
19727 * testsuite/libgomp.fortran/pr32550.f90: New test.
19728 * testsuite/libgomp.fortran/crayptr2.f90: New test.
19729
19730 2007-07-05 H.J. Lu <hongjiu.lu (a] intel.com>
19731
19732 * aclocal.m4: Regenerated.
19733
19734 2007-07-05 Tobias Burnus <burnus (a] net-b.de>
19735
19736 PR fortran/32359
19737 * testsuite/libgomp.fortran/pr32359.f90: New.
19738
19739 2007-07-02 Jakub Jelinek <jakub (a] redhat.com>
19740
19741 PR libgomp/32468
19742 * sections.c (GOMP_parallel_sections_start): Only decrease
19743 number of threads to COUNT if dyn_var is true.
19744 * testsuite/libgomp.c/pr32468.c: New test.
19745
19746 2007-07-02 Rainer Orth <ro (a] TechFak.Uni-Bielefeld.DE>
19747
19748 PR libgomp/26308
19749 * config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
19750
19751 2007-06-21 Jakub Jelinek <jakub (a] redhat.com>
19752
19753 PR middle-end/32362
19754 * testsuite/libgomp.c/pr32362-1.c: New test.
19755 * testsuite/libgomp.c/pr32362-2.c: New test.
19756 * testsuite/libgomp.c/pr32362-3.c: New test.
19757
19758 2007-06-07 Jakub Jelinek <jakub (a] redhat.com>
19759
19760 * team.c (gomp_team_start): Fix setting up thread_attr
19761 stack size.
19762
19763 2007-06-02 Paolo Bonzini <bonzini (a] gnu.org>
19764
19765 * configure: Regenerate.
19766
19767 2007-05-23 Steve Ellcey <sje (a] cup.hp.com>
19768
19769 * Makefile.in: Regenerate.
19770 * configure: Regenerate.
19771 * aclocal.m4: Regenerate.
19772 * testsuite/Makefile.in: Regenerate.
19773
19774 2007-05-04 Jakub Jelinek <jakub (a] redhat.com>
19775
19776 * config/linux/proc.c: New file.
19777
19778 PR libgomp/28482
19779 * configure.tgt: Don't link with -Wl,-z,nodlopen even on Linux.
19780
19781 2007-04-19 Daniel Franke <franke.daniel (a] gmail.com>
19782
19783 * libgomp.texi (GOMP_CPU_AFFINITY): Updated.
19784
19785 2007-04-16 Matthias Klose <doko (a] debian.org>
19786
19787 * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
19788 flags if not building with -m64.
19789 * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
19790 flag for i?86-*-* targets, if current target matches -m64.
19791
19792 2007-04-14 Steve Ellcey <sje (a] cup.hp.com>
19793
19794 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.
19795 * Makefile.in: Regenerate.
19796
19797 2007-04-07 John David Anglin <dave.anglin (a] nrc-cnrc.gc.ca>
19798
19799 PR testsuite/31369
19800 * testsuite/libgomp.c++/c++.exp: Don't use concat when setting
19801 ld_library_path.
19802 * testsuite/libgomp.fortran/fortran.exp: Likewise.
19803
19804 2007-04-04 Jakub Jelinek <jakub (a] redhat.com>
19805
19806 * libgomp.h (gomp_cpu_affinity, gomp_cpu_affinity_len): New extern
19807 decls.
19808 (gomp_init_affinity, gomp_init_thread_affinity): New prototypes.
19809 * env.c (gomp_cpu_affinity, gomp_cpu_affinity_len): New variables.
19810 (parse_affinity): New function.
19811 (initialize_env): Call it and gomp_init_affinity.
19812 * team.c (gomp_team_start): If gomp_cpu_affinity != NULL,
19813 create new pthread_attr_t and call gomp_init_thread_affinity
19814 on it for each thread before passing the attribute to pthread_create.
19815 * config/linux/affinity.c: New file.
19816 * config/posix/affinity.c: New file.
19817 * configure.ac (HAVE_PTHREAD_AFFINITY_NP): New test.
19818 * configure: Rebuilt.
19819 * config.h.in: Rebuilt.
19820 * Makefile.am (libgomp_la_SOURCES): Add affinity.c.
19821 * Makefile.in: Rebuilt.
19822
19823 2007-03-23 Andreas Tobler <a.tobler (a] schweiz.org>
19824
19825 * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
19826 *-*-darwin*.
19827 * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
19828 and use it if found.
19829
19830 2007-03-18 Uros Bizjak <ubizjak (a] gmail.com>
19831
19832 * testsuite/config/default.exp: New file.
19833 * testsuite/lib/libgomp.exp: New file.
19834 * testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
19835 libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
19836 load_lib *, load_gcc_lib *): Move to libgomp.exp.
19837 (libgomp_load): Remove.
19838 * testsuite/lib/libgomp.exp (libgomp_init): Compute
19839 always_ld_library_path, not ld_library_path. Set additional_flags
19840 to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
19841 (target_compile): Do not call libgomp_init. Append lang_library_path
19842 and lang_link_flags to options.
19843 * testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2. Set
19844 ld_library_path from always_ld_library_path. Set LD_LIBRARY_PATH
19845 here.
19846 * testsuite/libgomp.c++/c++.exp: Set ld_library_path from
19847 always_ld_library_path. Set LD_LIBRARY_PATH here.
19848 * testsuite/libgomp.fortran/fortran.exp: Ditto.
19849 * testsuite/libgomp.c/atomic-1.c: Set dg-options to
19850 "-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
19851 CX8 flag.
19852 * testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
19853 lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
19854 * testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
19855 * testsuite/libgomp.c/pr29947-1.c: Ditto.
19856 * testsuite/libgomp.c/atomic-10.c: Ditto.
19857
19858 2007-03-21 Jakub Jelinek <jakub (a] redhat.com>
19859
19860 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
19861 dg-final cleanup-modules line.
19862 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
19863 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
19864 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
19865 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
19866 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
19867 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
19868 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
19869
19870 2007-03-18 Andreas Schwab <schwab (a] suse.de>
19871
19872 * acinclude.m4: Adjust regular expression for ld version
19873 extraction.
19874 * configure: Regenerate.
19875
19876 2007-03-01 Brooks Moses <brooks.moses (a] codesourcery.com>
19877
19878 * Makefile.am: Add install-pdf target as copied from
19879 automake v1.10 rules.
19880 * Makefile.in: Regenerate
19881
19882 2007-02-07 Jakub Jelinek <jakub (a] redhat.com>
19883
19884 PR libgomp/28486
19885 * configure: Regenerate.
19886
19887 PR c++/30703
19888 * testsuite/libgomp.c++/pr30703.C: New test.
19889
19890 2007-02-02 Jakub Jelinek <jakub (a] redhat.com>
19891
19892 Revert:
19893 2006-07-05 Eric Christopher <echristo (a] apple.com>
19894 * configure.ac: Depend addition of -pthread on host OS.
19895 * configure: Regenerate.
19896
19897 2007-01-31 Ralf Wildenhues <Ralf.Wildenhues (a] gmx.de>
19898
19899 * libgomp.texi: Fix spacing after abbreviations.
19900
19901 2007-01-31 Daniel Franke <franke.daniel (a] gmail.com>
19902
19903 PR libgomp/30546
19904 * configure.ac: Add check for makeinfo
19905 * Makefile.am: Redefined target libgomp.info, build libgomp.info only
19906 if an appropriate version of makeinfo is found.
19907 * aclocal.m4: Regenerated.
19908 * configure: Regenerated.
19909 * Makefile.in: Regenerated.
19910 * testsuite/Makefile.in: Regenerated.
19911
19912 2007-01-29 Daniel Franke <franke.daniel (a] gmail.com>
19913
19914 PR libgomp/30540
19915 * libgomp.texi: More about implementation-dependent settings.
19916
19917 2007-01-26 Tobias Burnus <burnus (a] net-b.de>
19918
19919 * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
19920
19921 2007-01-24 Jakub Jelinek <jakub (a] redhat.com>
19922
19923 PR middle-end/30494
19924 * testsuite/libgomp.c/pr30494.c: New test.
19925
19926 2007-01-15 Tom Tromey <tromey (a] redhat.com>
19927
19928 * configure: Rebuilt.
19929 * configure.ac: Fixed comment.
19930
19931 2007-01-14 Daniel Franke <franke.daniel (a] gmail.com>
19932
19933 * libgomp.texi: Document implementation specific default values of
19934 environment variables.
19935
19936 2006-12-21 Daniel Franke <franke.daniel (a] gmail.com>
19937
19938 PR libgomp/28209
19939 * libgomp.texi: New file.
19940 * configure.ac: Add --enable-generated-files-in-srcdir option.
19941 * Makefile.am: Add info, dvi, pdf, html targets. On request, copy
19942 files to srcdir.
19943 * Makefile.in: Regenerated.
19944 * config.h.in: Regenerated.
19945 * testsuite/Makefile.in: Regenerated.
19946 * NOTES: Removed.
19947
19948 2006-12-04 Daniel Franke <franke.daniel (a] gmail.com>
19949
19950 PR libgomp/29949
19951 * env.c (omp_set_num_threads): Set illegal thread count to 1.
19952
19953 2006-12-04 Eric Botcazou <ebotcazou (a] libertysurf.fr>
19954
19955 * configure: Regenerate.
19956
19957 2006-12-04 Jakub Jelinek <jakub (a] redhat.com>
19958
19959 PR libgomp/29947
19960 * loop.c (gomp_loop_init): Make parameters signed. Set ws->end to
19961 start if there shouldn't be any loop iterations.
19962 (gomp_loop_ordered_static_start): Remove start == end test.
19963 * testsuite/libgomp.c/pr29947-1.c: New test.
19964 * testsuite/libgomp.c/pr29947-2.c: New test.
19965
19966 2006-12-02 Eric Botcazou <ebotcazou (a] libertysurf.fr>
19967
19968 * configure.tgt: Force initial-exec TLS model on Linux only.
19969
19970 2006-11-13 Daniel Jacobowitz <dan (a] codesourcery.com>
19971
19972 * configure: Regenerated.
19973
19974 2006-11-09 Uros Bizjak <ubizjak (a] gmail.com>
19975
19976 * env.c (parse_schedule): Reject out of range values.
19977 (parse_unsigned_long): Reject out of range, negative or zero values.
19978
19979 2006-10-29 Jakub Jelinek <jakub (a] redhat.com>
19980
19981 PR fortran/29629
19982 * testsuite/libgomp.fortran/pr29629.f90: New test.
19983
19984 2006-10-24 Eric Botcazou <ebotcazou (a] libertysurf.fr>
19985
19986 PR libgomp/29494
19987 * configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
19988 * config/posix95: New directory.
19989 * config/posix95/omp-lock.h: New file.
19990 * config/posix95/lock.c: Likewise.
19991
19992 2006-10-14 Geoffrey Keating <geoffk (a] apple.com>
19993
19994 * aclocal.m4: Regenerate.
19995 * configure: Regenerate.
19996
19997 2006-10-05 Danny Smith <dannysmith (a] users.sourceforge.net>
19998
19999 * testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
20000 '<' to '<='.
20001
20002 2006-10-05 Danny Smith <dannysmith (a] users.sourceforge.net>
20003
20004 * acinclude.m4 (HAVE_ATTRIBUTE_ALIAS): Remove __USER_LABEL_PREFIX__ from
20005 test.
20006 * configure: Regenerate.
20007 * fortran.c (ialias_redirect): Add __USER_LABEL_PREFIX__ to alias.
20008
20009 2006-09-26 Jakub Jelinek <jakub (a] redhat.com>
20010
20011 PR middle-end/25261
20012 PR middle-end/28790
20013 * testsuite/libgomp.c/nestedfn-4.c: New test.
20014 * testsuite/libgomp.c/nestedfn-5.c: New test.
20015 * testsuite/libgomp.fortran/nestedfn3.f90: New test.
20016
20017 PR fortran/29097
20018 * testsuite/libgomp.fortran/condinc1.f: New test.
20019 * testsuite/libgomp.fortran/condinc2.f: New test.
20020 * testsuite/libgomp.fortran/condinc3.f90: New test.
20021 * testsuite/libgomp.fortran/condinc4.f90: New test.
20022 * testsuite/libgomp.fortran/condinc1.inc: New file.
20023
20024 2006-09-18 Tom Tromey <tromey (a] redhat.com>
20025
20026 * configure: Rebuilt.
20027
20028 2006-09-13 Joseph S. Myers <joseph (a] codesourcery.com>
20029
20030 PR c/28768
20031 PR preprocessor/14634
20032 * configure.ac (HAVE_CLOCK_GETTIME): Add missing second argument
20033 to AC_DEFINE.
20034 * configure: Regenerate.
20035
20036 2006-09-08 Steven G. Kargl <kargl (a] gcc.gnu.org>
20037
20038 * testsuite/libgomp.fortran/reduction3.f90: Change
20039 -2147483648 to -huge(i)-1 to avoid overflow.
20040 * testsuite/libgomp.fortran/reduction4.f90: Change
20041 Z'ffffffff' to not(0) to avoid overflow.
20042
20043 2006-08-26 Joseph S. Myers <joseph (a] codesourcery.com>
20044
20045 PR libgomp/25938
20046 * Makefile.am (libsubincludedir): New.
20047 (nodist_include_HEADERS): Rename to nodist_libsubinclude_HEADERS.
20048 * Makefile.in: Regenerate.
20049
20050 2006-08-17 Jakub Jelinek <jakub (a] redhat.com>
20051
20052 PR libgomp/28725
20053 * env.c: Include ctype.h.
20054 (parse_schedule, parse_unsigned_long, parse_boolean): Allow
20055 leading and/or trailing whitespace and compare strings case
20056 insensitively.
20057
20058 2006-07-16 Jakub Jelinek <jakub (a] redhat.com>
20059
20060 PR fortran/28390
20061 * testsuite/libgomp.fortran/pr28390.f: New test.
20062
20063 2006-07-05 Eric Christopher <echristo (a] apple.com>
20064
20065 * configure.ac: Depend addition of -pthread on host OS.
20066 * configure: Regenerate.
20067
20068 2006-06-21 Jakub Jelinek <jakub (a] redhat.com>
20069
20070 * critical.c (GOMP_critical_name_start): Fix *pptr initialization
20071 when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
20072 defined.
20073
20074 2006-06-20 Jakub Jelinek <jakub (a] redhat.com>
20075
20076 PR libgomp/26175
20077 PR libgomp/26477
20078 * configure.ac: If neither --enable-linux-futex nor
20079 --disable-linux-futex is passed, determine the default by checking
20080 for compiling and/or running against NPTL. With --enable-linux-futex,
20081 check if SYS_gettid and SYS_futex are defined.
20082 * configure: Rebuilt.
20083
20084 2006-06-14 Richard Henderson <rth (a] redhat.com>
20085
20086 PR libgomp/28008
20087 * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
20088 undefined. Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
20089
20090 2006-06-09 Richard Henderson <rth (a] redhat.com>
20091
20092 * env.c (gomp_nthreads_var): Change to unsigned long.
20093 (gomp_run_sched_chunk): Likewise.
20094 (parse_unsigned_long): Rename from parse_num_threads and generalize.
20095 (initialize_env): Initialize gomp_thread_attr.
20096 * libgomp.h (gomp_nthreads_var): Update decl.
20097 (gomp_run_sched_chunk): Likewise.
20098 (gomp_thread_attr): Declare.
20099 * team.c (gomp_thread_attr): Export.
20100 (initialize_team): Don't initialize it.
20101
20102 2006-06-09 Jakub Jelinek <jakub (a] redhat.com>
20103
20104 PR fortran/27916
20105 * testsuite/libgomp.fortran/pr27916-1.f90: New test.
20106 * testsuite/libgomp.fortran/pr27916-2.f90: New test.
20107
20108 2006-06-06 Francois-Xavier Coudert <coudert (a] clipper.ens.fr>
20109
20110 * config/mingw32/time.c: New file.
20111 * configure.tgt: Use it.
20112
20113 2006-05-23 Carlos O'Donell <carlos (a] codesourcery.com>
20114
20115 * Makefile.am: Add install-html target. Add install-html to .PHONY
20116 * Makefile.in: Regenerate.
20117
20118 2006-05-22 John David Anglin <dave.anglin (a] nrc-cnrc.gc.ca>
20119
20120 PR libgomp/27612
20121 * testsuite/libgomp.c/sections-1.c: Require sync_int_long.
20122 * testsuite/libgomp.c/critical-1.c: Likewise.
20123 * testsuite/libgomp.c/loop-1.c: Likewise.
20124 * testsuite/libgomp.c/loop-2.c: Likewise.
20125 * testsuite/libgomp.c/single-1.c: Likewise.
20126 * testsuite/libgomp.c/ordered-1.c: Likewise.
20127 * testsuite/libgomp.c/ordered-2.c: Likewise.
20128
20129 2006-05-15 Jakub Jelinek <jakub (a] redhat.com>
20130
20131 PR middle-end/27416
20132 * libgomp.fortran/pr27416-1.f90: New test.
20133
20134 2006-05-03 Jakub Jelinek <jakub (a] redhat.com>
20135
20136 PR fortran/27395
20137 * testsuite/libgomp.fortran/pr27395-1.f90: New test.
20138 * testsuite/libgomp.fortran/pr27395-2.f90: New test.
20139
20140 2006-05-02 Jakub Jelinek <jakub (a] redhat.com>
20141
20142 PR c++/26943
20143 * testsuite/libgomp.c/pr26943-1.c: New test.
20144 * testsuite/libgomp.c/pr26943-2.c: New test.
20145 * testsuite/libgomp.c/pr26943-3.c: New test.
20146 * testsuite/libgomp.c/pr26943-4.c: New test.
20147 * testsuite/libgomp.c++/pr27337.C: Remove barrier.
20148 * testsuite/libgomp.c++/pr26943.C: New test.
20149
20150 2006-05-02 Jakub Jelinek <jakub (a] redhat.com>
20151
20152 PR middle-end/27337
20153 * testsuite/libgomp.c++/pr27337.C: New test.
20154
20155 2006-04-26 Jakub Jelinek <jakub (a] redhat.com>
20156
20157 PR c/26171
20158 * testsuite/libgomp.c/pr26171.c: New test.
20159
20160 2006-04-25 Richard Henderson <rth (a] redhat.com>
20161
20162 PR libgomp/25865
20163 * configure.ac: Use GCC_CHECK_TLS.
20164 * acinclude.m4 (LIBGOMP_CHECK_TLS): Remove.
20165 * Makefile.in, aclocal.m4, configure: Regenerate.
20166
20167 2006-04-10 Matthias Klose <doko (a] debian.org>
20168
20169 * testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
20170 directory names containing underscores.
20171
20172 2006-03-21 Jakub Jelinek <jakub (a] redhat.com>
20173
20174 PR c++/26691
20175 * testsuite/libgomp.c++/pr26691.C: New test.
20176
20177 2006-03-13 Jakub Jelinek <jakub (a] redhat.com>
20178
20179 * testsuite/libgomp.fortran/retval2.f90: New test.
20180
20181 2006-03-09 Diego Novillo <dnovillo (a] redhat.com>
20182
20183 * testsuite/libgomp.c++: New directory.
20184
20185 2006-02-25 Shantonu Sen <ssen (a] opendarwin.org>
20186
20187 * config/posix/sem.h: Define BROKEN_POSIX_SEMAPHORES functions.
20188 * config/posix/sem.c: Implement the above.
20189
20190 2006-02-25 Andreas Tobler <a.tobler (a] schweiz.ch>
20191
20192 * configure.ac (HAVE_BROKEN_POSIX_SEMAPHORES): Check for darwin and
20193 define HAVE_BROKEN_POSIX_SEMAPHORES.
20194 * configure: Rebuilt.
20195 * config.h.in: Rebuilt.
20196
20197 2006-02-17 Francois-Xavier Coudert <coudert (a] clipper.ens.fr>
20198
20199 PR bootstrap/26161
20200 * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment
20201 for the other pthread check.
20202 * configure: Regenerate.
20203 * config.h.in: Regenerate.
20204
20205 2006-02-15 Jakub Jelinek <jakub (a] redhat.com>
20206
20207 PR libgomp/25938
20208 PR libgomp/25984
20209 * Makefile.am (fincludedir): New variable.
20210 (nodist_include_HEADERS): Remove Fortran files.
20211 (nodist_finclude_HEADERS): New variable.
20212 * Makefile.in: Regenerated.
20213
20214 2006-02-13 Jakub Jelinek <jakub (a] redhat.com>
20215
20216 * testsuite/libgomp.fortran/vla7.f90: Add -w to options.
20217 Remove tests for returning assumed character length arrays.
20218
20219 2006-02-12 Roger Sayle <roger (a] eyesopen.com>
20220 John David Anglin <dave (a] hiauly1.hia.nrc.ca>
20221
20222 PR libgomp/25936
20223 * configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.
20224
20225 2006-02-08 Ulrich Weigand <uweigand (a] de.ibm.com>
20226
20227 * testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
20228
20229 2006-02-07 Eric Botcazou <ebotcazou (a] libertysurf.fr>
20230
20231 * testsuite/lib/libgomp-dg.exp (libgomp_init): Compute multilib related
20232 part of LD_LIBRARY_PATH manually.
20233
20234 2006-02-03 H.J. Lu <hongjiu.lu (a] intel.com>
20235
20236 PR libgomp/25852
20237 * testsuite/lib/libgomp-dg.exp (blddir): Set it in
20238 libgomp_init.
20239
20240 2005-01-25 Paolo Bonzini <bonzini (a] gnu.org>
20241
20242 PR libgomp/25884
20243 * Makefile.am (omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Remove.
20244 * configure.ac (PERL): Don't set.
20245 (gstdint.h, omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Create here.
20246 (OMP_LOCK_SIZE, OMP_LOCK_ALIGN, OMP_LOCK_KIND, OMP_NEST_LOCK_SIZE,
20247 OMP_NEST_LOCK_ALIGN, OMP_NEST_LOCK_KIND): New substitutions.
20248 * omp.h.in: Wrap the new configure substitutions with @ characters.
20249 * omp_lib.h.in, omp_lib.f90.in, libgomp_f.h.in: Likewise.
20250 * aclocal.m4, configure, Makefile.in: Regenerate.
20251 * mkomp_h.pl: Delete.
20252
20253 2005-01-24 Paolo Bonzini <bonzini (a] gnu.org>
20254
20255 PR libgomp/25259
20256 * configure.ac: Use GCC_HEADER_STDINT.
20257 * libgomp.h: Include gstdint.h.
20258 * libgomp_f.h.in: Don't include stdint.h or inttypes.h.
20259 * configure, Makefile.in, testsuite/Makefile.in, aclocal.m4: Rebuild.
20260
20261 2006-01-24 Richard Henderson <rth (a] redhat.com>
20262
20263 PR libgomp/25942
20264 * configure.ac: Add AM_MAINTAINER_MODE.
20265 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in: Rebuild.
20266
20267 2006-01-24 Diego Novillo <dnovillo (a] redhat.com>
20268
20269 * Makefile.in: Regenerate.
20270 * testsuite/Makefile.in: Regenerate.
20271 * aclocal.m4: Regenerate.
20272
20273 2006-01-23 Andreas Tobler <a.tobler (a] schweiz.ch>
20274
20275 * config/posix/proc.c: Conditional include of sys/loadavg.h for
20276 Solaris.
20277 * configure.ac: Add check for loadavg.h.
20278 (link_gomp): Adjust comment.
20279 * configure: Regenerate.
20280 * config.h.in: Regenerate.
20281
20282 2006-01-21 Steve Ellcey <sje (a] cup.hp.com>
20283
20284 PR libgomp/25877
20285 * configure.ac: Remove check for alloca.h.
20286 * configure: Regenerate.
20287 * config.h.in: Regenerate.
20288 * libgomp.h: define gomp_alloca to be __builtin_alloca.
20289 * team.c: Remove use of alloca.h.
20290 Call gomp_alloca instead of alloca.
20291
20292 2006-01-20 Steve Ellcey <sje (a] cup.hp.com>
20293
20294 PR libgomp/25877
20295 * team.c: Add include of alloca.h.
20296 * configure.ac: Add check for alloca.h.
20297 * configure: Regenerate.
20298 * config.h.in: Regenerate.
20299
20300 2006-01-17 Jakub Jelinek <jakub (a] redhat.com>
20301
20302 PR fortran/25219
20303 * testsuite/libgomp.fortran/pr25219.f90: New test.
20304
20305 2005-12-05 Uros Bizjak <uros (a] kss-loka.si>
20306
20307 * testsuite/libgomp.c/pr24455.c, testsuite/libgomp.c/copyin-1.c,
20308 testsuite/libgomp.c/copyin-2.c, testsuite/libgomp.c/copyin-3.c,
20309 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
20310 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
20311 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455.C,
20312 testsuite/libgomp.fortran/threadprivate1.f90,
20313 testsuite/libgomp.fortran/threadprivate2.f90,
20314 testsuite/libgomp.fortran/threadprivate3.f90,
20315 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
20316 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
20317 testsuite/libgomp.fortran/omp_parse3.f90: Change required
20318 effective-target to TLS runtime.
20319
20320 * testsuite/libgomp.fortran/pr25162.f: Require
20321 effective-target TLS runtime.
20322
20323 2005-12-01 Jakub Jelinek <jakub (a] redhat.com>
20324
20325 * testsuite/libgomp.fortran/nestedfn2.f90: New test.
20326 * testsuite/libgomp.c/nestedfn-3.c: New test.
20327
20328 2005-11-30 Jakub Jelinek <jakub (a] redhat.com>
20329
20330 PR fortran/25162
20331 * testsuite/libgomp.fortran/pr25162.f: New test.
20332
20333 2005-11-28 Jakub Jelinek <jakub (a] redhat.com>
20334
20335 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Fall back to
20336 CLOCK_REALTIME if clock_* (CLOCK_MONOTONIC, &ts) call failed.
20337
20338 2005-11-25 Jakub Jelinek <jakub (a] redhat.com>
20339
20340 * alloc.c, barrier.c, critical.c, env.c, error.c, fortran.c, iter.c,
20341 libgomp.h, libgomp_f.h.in, libgomp_g.h, loop.c, mkomp_h.pl, omp.h.in,
20342 omp_lib.f90.in, omp_lib.h.in, ordered.c, parallel.c, sections.c,
20343 single.c, team.c, work.c, config/linux/alpha/futex.h,
20344 config/linux/bar.c, config/linux/bar.h, config/linux/ia64/futex.h,
20345 config/linux/lock.c, config/linux/mutex.c, config/linux/mutex.h,
20346 config/linux/powerpc/futex.h, config/linux/s390/futex.h,
20347 config/linux/sem.c, config/linux/sem.h, config/linux/sparc/futex.h,
20348 config/linux/x86/futex.h, config/posix/bar.c, config/posix/bar.h,
20349 config/posix/lock.c, config/posix/mutex.h, config/posix/proc.c,
20350 config/posix/sem.c, config/posix/sem.h, config/posix/time.c: Update
20351 FSF address.
20352
20353 2005-11-18 Jakub Jelinek <jakub (a] redhat.com>
20354
20355 * Makefile.am: Move libgomp_f.h from nodist_include_HEADERS
20356 to nodist_noinst_HEADERS.
20357 * Makefile.in: Rebuilt.
20358
20359 * config/posix/omp-lock.h (omp_nest_lock_t): Change into struct,
20360 add integer count field.
20361 * config/posix/lock.c (omp_destroy_nest_lock): Adjust for
20362 omp_nest_lock_t type change.
20363 (omp_init_nest_lock): Likewise. Initialize count to 0.
20364 (omp_set_nest_lock): Adjust for omp_nest_lock_t type change.
20365 Increment count.
20366 (omp_unset_nest_lock): Adjust for omp_nest_lock_t type change.
20367 Decrement count.
20368 (omp_test_nest_lock): Adjust for omp_nest_lock_t type change.
20369 Increment count if successful and return the new nesting level.
20370 * config/linux/lock.c (omp_test_nest_lock): Return new nesting level.
20371 * omp_lib.f90.in (omp_test_lock): Fix LOCK argument type.
20372 * testsuite/libgomp.c/lib-1.c: New test.
20373 * testsuite/libgomp.fortran/lib1.f90: New test.
20374 * testsuite/libgomp.fortran/lib2.f: New test.
20375 * testsuite/libgomp.fortran/lib3.f: New test.
20376
20377 2005-11-17 Richard Henderson <rth (a] redhat.com>
20378
20379 PR 24845
20380 * Makefile.am (nodist_toolexeclib_HEADERS): New.
20381 * configure.ac (link_gomp): New. Substitute it.
20382 (AC_CONFIG_FILES): Add libgomp.spec.
20383 * libgomp.spec.in: New file.
20384 * Makefile.in, testsuite/Makefile.in, configure: Rebuild.
20385 * testsuite/lib/libgomp-dg.exp: Add -B${blddir}/ to flags.
20386
20387 2005-11-18 Jakub Jelinek <jakub (a] redhat.com>
20388
20389 * testsuite/libgomp.fortran/reduction1.f90: Adjust for
20390 reduction(-:var) behaving the same as reduction(+:var).
20391 * testsuite/libgomp.c/reduction-4.c: New test.
20392
20393 2005-11-15 Uros Bizjak <uros (a] kss-loka.si>
20394
20395 * testsuite/libgomp.c/pr24455-1.c, testsuite/libgomp.c/pr24455.c,
20396 testsuite/libgomp.c/copyin-1.c, testsuite/libgomp.c/copyin-2.c,
20397 testsuite/libgomp.c/copyin-3.c,
20398 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
20399 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
20400 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455-1.C,
20401 testsuite/libgomp.c++/pr24455.C,
20402 testsuite/libgomp.fortran/threadprivate1.f90,
20403 testsuite/libgomp.fortran/threadprivate2.f90,
20404 testsuite/libgomp.fortran/threadprivate3.f90,
20405 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
20406 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
20407 testsuite/libgomp.fortran/omp_parse3.f90: Require
20408 effective-target TLS.
20409
20410 2005-11-14 Diego Novillo <dnovillo (a] redhat.com>
20411
20412 * HEADER: Remove.
20413
20414 2005-11-13 Jakub Jelinek <jakub (a] redhat.com>
20415
20416 PR libgomp/24797
20417 * team.c (initialize_team): Pass NULL rather than free as
20418 pthread_key_create destructor. Initialize thread specific data
20419 pointer in initial thread to a static local variable rather than
20420 malloced memory.
20421
20422 2005-11-11 Uros Bizjak <uros (a] kss-loka.si>
20423
20424 * testsuite/lib/libgomp-dg.exp: Locate libgcc.a and append
20425 its location to ld_library_path.
20426
20427 2005-11-10 Diego Novillo <dnovillo (a] redhat.com>
20428
20429 * testsuite/libgomp.c/c.exp: Rename from dg.exp.
20430
20431 2005-11-10 Diego Novillo <dnovillo (a] redhat.com>
20432
20433 * testsuite/libgomp.c: Rename from libgomp.dg.
20434
20435 2005-11-09 Diego Novillo <dnovillo (a] redhat.com>
20436
20437 * testsuite/libgomp.c++/pr24455.C: Add copyin clause for
20438 threadprivate variable 'i'.
20439
20440 2005-11-09 Jakub Jelinek <jakub (a] redhat.com>
20441
20442 * config/linux/s390/futex.h: New file.
20443 * configure.tgt: Use it.
20444
20445 * testsuite/libgomp.fortran/omp_parse4.f90: Move n initialization
20446 before the parallel.
20447
20448 2005-11-08 Jakub Jelinek <jakub (a] redhat.com>
20449
20450 PR c++/24734
20451 * testsuite/libgomp.c++/master-1.C: New test.
20452
20453 2005-11-07 Jakub Jelinek <jakub (a] redhat.com>
20454
20455 * testsuite/libgomp.dg/copyin-3.c: New test.
20456
20457 2005-11-07 Jakub Jelinek <jakub (a] redhat.com>
20458
20459 * testsuite/libgomp.fortran/retval1.f90: New test.
20460 * testsuite/libgomp.fortran/vla7.f90: New test.
20461
20462 2005-11-06 Jakub Jelinek <jakub (a] redhat.com>
20463
20464 * testsuite/libgomp.fortran/vla2.f90: New test.
20465 * testsuite/libgomp.fortran/vla3.f90: New test.
20466 * testsuite/libgomp.fortran/vla4.f90: New test.
20467 * testsuite/libgomp.fortran/vla5.f90: New test.
20468 * testsuite/libgomp.fortran/vla6.f90: New test.
20469
20470 2005-11-01 Jakub Jelinek <jakub (a] redhat.com>
20471
20472 * config/linux/sparc/futex.h: New file.
20473 * configure.tgt: Use it.
20474 * testsuite/lib/libgomp-dg.exp: Use -mcpu=v9 for sparc testing.
20475
20476 * critical.c: Include stdlib.h.
20477 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Avoid warnings about
20478 ignoring return value.
20479 * configure.ac: Don't put -Wc,-pthread into XCFLAGS until after
20480 LIBGOMP_CHECK_SYNC_BUILTINS check.
20481 * configure: Rebuilt.
20482
20483 2005-10-31 Jakub Jelinek <jakub (a] redhat.com>
20484
20485 * testsuite/libgomp.fortran/vla1.f90: New test.
20486
20487 2005-10-31 Richard Henderson <rth (a] redhat.com>
20488
20489 * testsuite/libgomp.fortran/character2.f90: Fix race condition
20490 setting 's' in different threads.
20491
20492 2005-10-31 Jakub Jelinek <jakub (a] redhat.com>
20493
20494 * libgomp.h (attribute_hidden, ialias): Define.
20495 * config/posix/proc.c (omp_get_num_procs): Add ialias.
20496 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Likewise.
20497 * config/posix/lock.c (omp_init_lock, omp_init_nest_lock,
20498 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
20499 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
20500 omp_test_lock, omp_test_nest_lock): Likewise.
20501 * config/linux/lock.c (omp_init_lock, omp_init_nest_lock,
20502 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
20503 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
20504 omp_test_lock, omp_test_nest_lock): Likewise.
20505 * env.c (omp_set_dynamic, omp_set_nested, omp_set_num_threads,
20506 omp_get_dynamic, omp_get_nested): Likewise.
20507 * parallel.c (omp_get_num_threads, omp_get_max_threads,
20508 omp_get_thread_num, omp_in_parallel): Likewise.
20509 * fortran.c (ialias_redirect): Define.
20510 (omp_init_lock, omp_init_nest_lock, omp_destroy_lock,
20511 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock,
20512 omp_unset_lock, omp_unset_nest_lock, omp_test_lock,
20513 omp_test_nest_lock, omp_set_dynamic, omp_set_nested,
20514 omp_set_num_threads, omp_get_dynamic, omp_get_nested,
20515 omp_in_parallel, omp_get_max_threads, omp_get_num_procs,
20516 omp_get_num_threads, omp_get_thread_num, omp_get_wtick,
20517 omp_get_wtime): Add ialias_redirect.
20518
20519 2005-10-30 Jakub Jelinek <jakub (a] redhat.com>
20520
20521 * fortran.c: Include stdlib.h.
20522
20523 2005-10-29 Jakub Jelinek <jakub (a] redhat.com>
20524
20525 * Makefile.am (env.o, env.lo): Depend on libgomp_f.h.
20526 * Makefile.in: Regenerated.
20527
20528 2005-10-28 Jakub Jelinek <jakub (a] redhat.com>
20529
20530 * mkomp_h.pl: Remove all -Wc, option prefixes in $COMPILE.
20531 * libgomp_f.h.in (omp_check_defines): New function.
20532 * env.c: Include libgomp_f.h.
20533 (initialize_env): Call omp_check_defines.
20534
20535 * testsuite/libgomp.dg/copyin-2.c: New test.
20536 * testsuite/libgomp.c++/copyin-2.C: New test.
20537 * testsuite/libgomp.fortran/threadprivate3.f90: New test.
20538
20539 * testsuite/libgomp.fortran/threadprivate2.f90: New test.
20540 * testsuite/libgomp.fortran/sharing2.f90: New test.
20541
20542 * testsuite/libgomp.dg/copyin-1.c: New test.
20543 * testsuite/libgomp.c++/copyin-1.C: New test.
20544
20545 2005-10-26 Jakub Jelinek <jakub (a] redhat.com>
20546
20547 * testsuite/libgomp.fortran/crayptr1.f90: New test.
20548
20549 * testsuite/libgomp.fortran/workshare1.f90: New test.
20550
20551 * libgomp.fortran/appendix-a/a.28.5.f90: Change into compile
20552 only test.
20553 * libgomp.fortran/sharing1.f90: New test.
20554
20555 2005-10-24 Jakub Jelinek <jakub (a] redhat.com>
20556
20557 PR c++/24502
20558 * testsuite/libgomp.c++/loop-7.C: New test.
20559
20560 * testsuite/libgomp.dg/nestedfn-2.c: New test.
20561
20562 * testsuite/libgomp.dg/nestedfn-1.c: New test.
20563 * testsuite/libgomp.fortran/reduction6.f90: New test.
20564 * testsuite/libgomp.fortran/nestedfn1.f90: New test.
20565
20566 2005-10-23 Richard Henderson <rth (a] redhat.com>
20567
20568 * testsuite/libgomp.c++/ctor-1.C: New.
20569 * testsuite/libgomp.c++/ctor-2.C: New.
20570 * testsuite/libgomp.c++/ctor-3.C: New.
20571 * testsuite/libgomp.c++/ctor-4.C: New.
20572 * testsuite/libgomp.c++/ctor-5.C: New.
20573 * testsuite/libgomp.c++/ctor-6.C: New.
20574 * testsuite/libgomp.c++/ctor-7.C: New.
20575 * testsuite/libgomp.c++/ctor-8.C: New.
20576 * testsuite/libgomp.c++/ctor-9.C: New.
20577
20578 2005-10-21 Diego Novillo <dnovillo (a] redhat.com>
20579
20580 PR 24455
20581 * testsuite/libgomp.c++/pr24455-1.C: New test.
20582 * testsuite/libgomp.c++/pr24455.C: New test.
20583 * testsuite/libgomp.dg/pr24455-1.c: New test.
20584 * testsuite/libgomp.dg/pr24455.c: New test.
20585
20586 2005-10-20 Richard Henderson <rth (a] redhat.com>
20587
20588 * testsuite/libgomp.c++/loop-6.C: New.
20589 * testsuite/libgomp.dg/loop-3.c: New.
20590
20591 2005-10-20 Jakub Jelinek <jakub (a] redhat.com>
20592
20593 * testsuite/libgomp.fortran/jacobi.f: Don't make i and j
20594 explicitly private.
20595 * testsuite/libgomp.fortran/omp_parse1.f90 (test_do): Make i
20596 explicitly shared.
20597
20598 2005-10-19 Diego Novillo <dnovillo (a] redhat.com>
20599
20600 * testsuite/libgomp.fortran/jacobi.f: New test.
20601
20602 2005-10-19 Richard Henderson <rth (a] redhat.com>
20603
20604 * configure.tgt (i?86-linux): Default to with_arch instead of
20605 CFLAGS. Add -mtune to match target_cpu.
20606 (x86_64-linux): Tune to i686.
20607
20608 * fortran.c (omp_test_nest_lock_): Fix typo.
20609
20610 2005-10-19 Jakub Jelinek <jakub (a] redhat.com>
20611
20612 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
20613 gomp_ordered_sync): Do nothing if team->nthreads == 1.
20614 * testsuite/libgomp.dg/ordered-3.c: New test.
20615
20616 * testsuite/libgomp.dg/appendix-a/a.18.1.c: Remove unconditional abort.
20617 Remove volatile keyword.
20618
20619 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Reorder variables
20620 in COMMON block to avoid warnings on 64-bit targets.
20621
20622 2005-10-18 Diego Novillo <dnovillo (a] redhat.com>
20623
20624 * testsuite/libgomp.dg/shared-3.c: New test.
20625
20626 2005-10-18 Jakub Jelinek <jakub (a] redhat.com>
20627
20628 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: Removed.
20629 * testsuite/libgomp.fortran/reduction5.f90: New test.
20630
20631 2005-10-18 Jakub Jelinek <jakub (a] redhat.com>
20632
20633 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Add -ffixed-form to
20634 dg-options.
20635 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise. Enable
20636 flush loop now that __sync_synchronize has proper memory barrier.
20637 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: Fix a typo.
20638 Add -ffixed-form to dg-options.
20639
20640 2005-10-17 Diego Novillo <dnovillo (a] redhat.com>
20641
20642 * testsuite/libgomp.fortran/fortran.exp: Also gather tests
20643 from subdirectories.
20644 * testsuite/libgomp.fortran/appendix-a/a.15.1.f90: New test.
20645 * testsuite/libgomp.fortran/appendix-a/a.16.1.f90: New test.
20646 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: New test.
20647 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: New test.
20648 * testsuite/libgomp.fortran/appendix-a/a.2.1.f90: New test.
20649 * testsuite/libgomp.fortran/appendix-a/a.21.1.f90: New test.
20650 * testsuite/libgomp.fortran/appendix-a/a.22.7.f90: New test.
20651 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: New test.
20652 * testsuite/libgomp.fortran/appendix-a/a.26.1.f90: New test.
20653 * testsuite/libgomp.fortran/appendix-a/a.28.1.f90: New test.
20654 * testsuite/libgomp.fortran/appendix-a/a.28.2.f90: New test.
20655 * testsuite/libgomp.fortran/appendix-a/a.28.3.f90: New test.
20656 * testsuite/libgomp.fortran/appendix-a/a.28.4.f90: New test.
20657 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: New test.
20658 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: New test.
20659 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: New test.
20660 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: New test.
20661 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: New test.
20662 * testsuite/libgomp.fortran/appendix-a/a.33.3.f90: New test.
20663 * testsuite/libgomp.fortran/appendix-a/a.38.1.f90: New test.
20664 * testsuite/libgomp.fortran/appendix-a/a.39.1.f90: New test.
20665 * testsuite/libgomp.fortran/appendix-a/a.4.1.f90: New test.
20666 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: New test.
20667 * testsuite/libgomp.fortran/appendix-a/a.5.1.f90: New test.
20668 * testsuite/libgomp.fortran/appendix-a/a10.1.f90: New test.
20669
20670 2005-10-17 Jakub Jelinek <jakub (a] redhat.com>
20671
20672 * testsuite/libgomp.dg/dg.exp: Only unset lang_* if
20673 lang_library_path exists. Use find instead of glob to gather tests.
20674 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: Removed.
20675
20676 2005-10-17 Diego Novillo <dnovillo (a] redhat.com>
20677
20678 * testsuite/libgomp.dg/appendix-a/a.15.1.c: New test.
20679 * testsuite/libgomp.dg/appendix-a/a.16.1.c: New test.
20680 * testsuite/libgomp.dg/appendix-a/a.18.1.c: New test.
20681 * testsuite/libgomp.dg/appendix-a/a.19.1.c: New test.
20682 * testsuite/libgomp.dg/appendix-a/a.2.1.c: New test.
20683 * testsuite/libgomp.dg/appendix-a/a.21.1.c: New test.
20684 * testsuite/libgomp.dg/appendix-a/a.26.1.c: New test.
20685 * testsuite/libgomp.dg/appendix-a/a.29.1.c: New test.
20686 * testsuite/libgomp.dg/appendix-a/a.3.1.c: New test.
20687 * testsuite/libgomp.dg/appendix-a/a.39.1.c: New test.
20688 * testsuite/libgomp.dg/appendix-a/a.4.1.c: New test.
20689 * testsuite/libgomp.dg/appendix-a/a.5.1.c: New test.
20690 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: New file.
20691
20692 2005-10-15 Jakub Jelinek <jakub (a] redhat.com>
20693
20694 * testsuite/libgomp.dg/vla-1.c: New test.
20695
20696 * testsuite/libgomp.fortran/reference2.f90: New test.
20697
20698 * testsuite/libgomp.fortran/character2.f90: Remove explicit
20699 declaration of omp_get_thread_num.
20700 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise. Add
20701 use omp_lib.
20702
20703 * testsuite/libgomp.fortran/reduction1.f90: New test.
20704 * testsuite/libgomp.fortran/reduction2.f90: New test.
20705 * testsuite/libgomp.fortran/reduction3.f90: New test.
20706 * testsuite/libgomp.fortran/reduction4.f90: New test.
20707
20708 2005-10-13 Richard Henderson <rth (a] redhat.com>
20709
20710 * Makefile.am (libgomp_la_SOURCES): Add bar.c.
20711 * Makefile.in: Regenerate.
20712 * barrier.c (GOMP_barrier): Use gomp_barrier_wait.
20713 * libgomp.h: Include bar.h.
20714 (struct gomp_barrier): Remove.
20715 (struct gomp_team): Add barrier. Replace master_barrier with
20716 master_release. Replace threads with ordered_release.
20717 (struct gomp_thread): Replace barrier with release.
20718 * ordered.c (gomp_ordered_first): Update for ordered_release change.
20719 (gomp_ordered_last, gomp_ordered_next, gomp_ordered_static_init,
20720 gomp_ordered_static_next, gomp_ordered_sync): Likewise.
20721 * single.c (GOMP_single_copy_start): Use gomp_barrier_wait.
20722 (GOMP_single_copy_end): Likewise.
20723 * team.c (gomp_threads_dock): New.
20724 (gomp_barrier_init, gomp_barrier_destroy): Remove.
20725 (gomp_thread_start): Use gomp_barrier_wait.
20726 (new_team, free_team): Update for gomp_team changes.
20727 (gomp_team_start): Use gomp_barrier_wait and gomp_barrier_reinit.
20728 (gomp_team_end): Use gomp_barrier_wait.
20729 (initialize_team): Update for gomp_thread changes.
20730 * work.c (gomp_work_share_end): Use gomp_barrier_wait_start.
20731 (gomp_work_share_end_nowait): Use atomic ops when available.
20732 * config/linux/bar.c, config/linux/bar.h: New files.
20733 * config/posix/bar.c, config/posix/bar.h: New files.
20734
20735 2005-10-13 Jakub Jelinek <jakub (a] redhat.com>
20736
20737 * single.c (GOMP_single_copy_end): Don't segfault if team is NULL.
20738 * testsuite/libgomp.dg/single-2.c: New test.
20739
20740 * testsuite/libgomp.dg/dg.exp (lang_library_path, lang_test_file,
20741 lang_link_flags): Unset, so that they aren't inherited from previously
20742 sourced *.exp.
20743
20744 * testsuite/libgomp.fortran/threadprivate1.f90: New test.
20745
20746 2005-10-12 Richard Henderson <rth (a] redhat.com>
20747
20748 * testsuite/lib/libgomp-dg.exp: Set blddir at toplevel.
20749 (libgomp_init): Use lang_test_file, lang_library_path, and
20750 lang_link_flags, set by the subdirectory files. Add -fopenmp here.
20751
20752 * testsuite/libgomp.fortran/fortran.exp (lang_library_path): New.
20753 (lang_test_file, lang_link_flags): New.
20754 (DEFAULT_FFLAGS, ALWAYS_CFLAGS, multilibs, blddir): Remove.
20755
20756 * testsuite/libgomp.c++/c++.exp, testsuite/libgomp.c++/loop-1.C,
20757 testsuite/libgomp.c++/loop-2.C, testsuite/libgomp.c++/loop-3.C,
20758 testsuite/libgomp.c++/loop-4.C, testsuite/libgomp.c++/nested-1.C,
20759 testsuite/libgomp.c++/parallel-1.C,
20760 testsuite/libgomp.c++/reduction-1.C,
20761 testsuite/libgomp.c++/reduction-2.C,
20762 testsuite/libgomp.c++/reduction-3.C,
20763 testsuite/libgomp.c++/sections-1.C, testsuite/libgomp.c++/shared-1.C,
20764 testsuite/libgomp.c++/shared-2.C, testsuite/libgomp.c++/single-1.C,
20765 testsuite/libgomp.c++/single-2.C, testsuite/libgomp.c++/single-3.C:
20766 New files, largely cribbed from the C testsuite.
20767
20768 2005-10-12 Jakub Jelinek <jakub (a] redhat.com>
20769
20770 * testsuite/libgomp.fortran/character1.f90: New test.
20771 * testsuite/libgomp.fortran/character2.f90: New test.
20772
20773 * testsuite/libgomp.dg/nested-1.c: New test.
20774 * testsuite/libgomp.dg/nested-2.c: New test.
20775 * testsuite/libgomp.fortran/do1.f90: New test.
20776 * testsuite/libgomp.fortran/do2.f90: New test.
20777
20778 * testsuite/libgomp.fortran/reference1.f90: New test.
20779
20780 2005-10-11 Jakub Jelinek <jakub (a] redhat.com>
20781
20782 * testsuite/libgomp.dg/reduction-1.c: New test.
20783 * testsuite/libgomp.dg/reduction-2.c: New test.
20784 * testsuite/libgomp.dg/reduction-3.c: New test.
20785
20786 2005-10-10 Jakub Jelinek <jakub (a] redhat.com>
20787
20788 * testsuite/libgomp.dg/atomic-1.c: New test.
20789 * testsuite/libgomp.dg/atomic-2.c: New test.
20790
20791 2005-10-09 Richard Henderson <rth (a] redhat.com>
20792
20793 * critical.c (atomic_lock): New.
20794 (initialize_critical): Initialize it.
20795 (GOMP_atomic_start, GOMP_atomic_end): New.
20796 * libgomp.map: Export them.
20797 * libgomp_g.h: Declare them.
20798
20799 * testsuite/libgomp.dg/atomic-10.c: Move from gcc testsuite.
20800
20801 2005-10-02 Richard Henderson <rth (a] redhat.com>
20802
20803 * configure.ac: Move save_CFLAGS hack earlier. Append -Wall/-Werror
20804 to XCFLAGS instead of CFLAGS.
20805
20806 2005-09-30 Richard Henderson <rth (a] redhat.com>
20807
20808 * configure.ac: Determine whether -pthread or -lpthread is needed.
20809 * Makefile.am (libgomp_la_LDFLAGS): Remove explicit -lpthread.
20810 * Makefile.in, configure: Rebuild.
20811
20812 2005-09-28 Richard Henderson <rth (a] redhat.com>
20813
20814 * testsuite/libgomp.dg/omp-loop03.c: Fix return code.
20815 * testsuite/libgomp.dg/omp-single-3.c: New test.
20816
20817 2005-09-28 Diego Novillo <dnovillo (a] redhat.com>
20818
20819 * testsuite/libgomp.dg/omp-single-2.c: New test.
20820 * testsuite/libgomp.dg/shared-2.c: Fix return code.
20821
20822 2005-09-27 Richard Henderson <rth (a] redhat.com>
20823
20824 * testsuite/libgomp.dg/omp-loop03.c: Add initial barrier.
20825 * testsuite/libgomp.dg/omp-parallel-for.c: Specify static schedule.
20826
20827 2005-09-27 Jakub Jelinek <jakub (a] redhat.com>
20828
20829 * testsuite/libgomp.dg/omp-loop03.c: New test.
20830
20831 2005-09-27 Diego Novillo <dnovillo (a] redhat.com>
20832
20833 * testsuite/libgomp.dg/omp-parallel-for.c: New test.
20834
20835 2005-09-27 Diego Novillo <dnovillo (a] redhat.com>
20836
20837 * testsuite/libgomp.dg/omp-single-1.c: New test.
20838 * testsuite/libgomp.dg/shared-1.c: Return 0.
20839 Add prototype for abort.
20840 * testsuite/libgomp.dg/shared-2.c: Likewise.
20841
20842 2005-09-26 Jakub Jelinek <jakub (a] redhat.com>
20843
20844 * testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
20845 constructs.
20846
20847 2005-09-26 Diego Novillo <dnovillo (a] redhat.com>
20848
20849 * testsuite/libgomp.dg/shared-1.c: New test.
20850 * testsuite/libgomp.dg/shared-2.c: New test.
20851
20852 2005-09-24 Richard Henderson <rth (a] redhat.com>
20853
20854 * testsuite/libgomp.dg/omp_workshare3.c: Mark dg-error.
20855
20856 2005-09-24 Richard Henderson <rth (a] redhat.com>
20857
20858 * iter.c (gomp_iter_static_next): Round up when computing number
20859 of iterations. Don't bother distributing a remainder equally.
20860
20861 * testsuite/libgomp.dg/omp-loop01.c (main1): Rename from main.
20862 Don't call srand. Zero b before testing.
20863 (main): New.
20864
20865 2005-09-24 Jakub Jelinek <jakub (a] redhat.com>
20866
20867 * testsuite/libgomp.fortran/omp_atomic1.f90: New test.
20868 * testsuite/libgomp.fortran/omp_atomic2.f90: New test.
20869
20870 2005-09-23 Jakub Jelinek <jakub (a] redhat.com>
20871
20872 * testsuite/libgomp.fortran/omp_parse1.f90: Add a test for !$omp do
20873 without !$omp end do, followed immediately by subroutine end.
20874
20875 2005-09-23 Diego Novillo <dnovillo (a] redhat.com>
20876
20877 * testsuite/libgomp.dg/omp-parallel-if.c: New test.
20878
20879 2005-09-22 Richard Henderson <rth (a] redhat.com>
20880
20881 * critical.c (GOMP_critical_name_start): Change argument to void**.
20882 Reuse the pointer space if the mutex fits.
20883 (GOMP_critical_name_end): Likewise.
20884 (initialize_critical): Don't define if GOMP_MUTEX_INIT_0.
20885 * libgomp_g.h (GOMP_critical_name_start): Update decl.
20886 (GOMP_critical_name_end): Likewise.
20887 * config/linux/mutex.h (GOMP_MUTEX_INIT_0): New.
20888 * config/posix/mutex.h (GOMP_MUTEX_INIT_0): New.
20889
20890 2005-09-20 Richard Henderson <rth (a] redhat.com>
20891
20892 * critical.c (GOMP_critical_name_start, GOMP_critical_name_end): New.
20893 (create_lock_lock): New.
20894 (initialize_critical): Initialize it.
20895 * libgomp.map (GOMP_critical_name_start, GOMP_critical_name_end): New.
20896 * libgomp_g.h (GOMP_ordered_start, GOMP_ordered_end): Declare.
20897
20898 2005-09-20 Diego Novillo <dnovillo (a] redhat.com>
20899
20900 * testsuite/libgom.dg/omp-loop01.c: Include stdio.h.
20901
20902 2005-09-20 Diego Novillo <dnovillo (a] redhat.com>
20903
20904 * testsuite/libgomp.dg/omp-loop01.c: New test.
20905 * testsuite/libgomp.dg/omp-loop02.c: New test.
20906
20907 2005-09-20 Jakub Jelinek <jakub (a] redhat.com>
20908
20909 * configure.ac (AC_PROG_FC): Add.
20910 (USE_FORTRAN): New automake conditional.
20911 * configure: Rebuilt.
20912 * Makefile.am (libgomp_la_SOURCES): Add fortran.c.
20913 (nodist_include_HEADERS): Add omp_lib.h, omp_lib.f90 and libgomp_f.h.
20914 If USE_FORTRAN, add also omp_lib.mod and omp_lib_kinds.mod.
20915 Add rules to build them.
20916 * Makefile.in: Rebuilt.
20917 * mkomp_h.pl: Compute and replace also OMP_LOCK_KIND and
20918 OMP_NEST_LOCK_KIND.
20919 * libgomp.map: Add Fortran wrappers.
20920 * libgomp_f.h.in: New file.
20921 * omp_lib.h.in: New file.
20922 * omp_lib.f90.in: New file.
20923 * fortran.c: New file.
20924 * testsuite/lib/libgomp-dg.exp: Load a few more .exp files.
20925 Append libgfortran directory to LD_LIBRARY_PATH if it exists.
20926 Add -Lpath_to_libgfortran and -lgfortran -lgfortranbegin if
20927 libgfortran has been built.
20928 * testsuite/libgomp.fortran/fortran.exp: New file.
20929 * testsuite/libgomp.fortran/omp_cond1.f: New test.
20930 * testsuite/libgomp.fortran/omp_cond2.f: New test.
20931 * testsuite/libgomp.fortran/omp_cond3.F90: New test.
20932 * testsuite/libgomp.fortran/omp_cond4.F90: New test.
20933 * testsuite/libgomp.fortran/omp_hello.f: New test.
20934 * testsuite/libgomp.fortran/omp_orphan.f: New test.
20935 * testsuite/libgomp.fortran/omp_parse1.f90: New test.
20936 * testsuite/libgomp.fortran/omp_parse2.f90: New test.
20937 * testsuite/libgomp.fortran/omp_parse3.f90: New test.
20938 * testsuite/libgomp.fortran/omp_parse4.f90: New test.
20939 * testsuite/libgomp.fortran/omp_reduction.f: New test.
20940 * testsuite/libgomp.fortran/omp_workshare1.f: New test.
20941 * testsuite/libgomp.fortran/omp_workshare2.f: New test.
20942
20943 2005-08-30 Richard Henderson <rth (a] redhat.com>
20944
20945 * loop.c (GOMP_loop_static_start): Provide fallback wrapper
20946 function for when aliases are not usable.
20947 (GOMP_loop_dynamic_start, GOMP_loop_guided_start,
20948 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
20949 GOMP_loop_ordered_guided_start, GOMP_loop_static_next,
20950 GOMP_loop_dynamic_next, GOMP_loop_guided_next,
20951 GOMP_loop_ordered_static_next, GOMP_loop_ordered_dynamic_next,
20952 GOMP_loop_ordered_guided_next): Likewise.
20953 * ordered.c (GOMP_ordered_start): Likewise.
20954
20955 2005-08-01 Diego Novillo <dnovillo (a] redhat.com>
20956
20957 * testsuite/libgomp.dg/dg.exp: Use -O2 for now.
20958 * testsuite/libgomp.dg/omp_hello.c: Fix return code
20959 * testsuite/libgomp.dg/omp_matvec.c: Likewise.
20960 * testsuite/libgomp.dg/omp_orphan.c: Likewise
20961 * testsuite/libgomp.dg/omp_reduction.c: Likewise
20962 * testsuite/libgomp.dg/omp_workshare1.c: Likewise
20963 * testsuite/libgomp.dg/omp_workshare2.c: Likewise
20964 * testsuite/libgomp.dg/omp_workshare3.c: Likewise
20965 * testsuite/libgomp.dg/omp_workshare4.c: Likewise
20966
20967 2005-07-07 Eric Christopher <echristo (a] redhat.com>
20968 Diego Novillo <dnovillo (a] redhat.com>
20969
20970 * testsuite/libgomp.dg/dg.exp: Add -fopenmp to DEFAULT_CFLAGS.
20971 * testsuite/libgomp.dg/omp_hello.c: Add standard includes, fix
20972 up code.
20973 * testsuite/libgomp.dg/omp_matvec.c: Ditto.
20974 * testsuite/libgomp.dg/omp_orphan.c: Ditto.
20975 * testsuite/libgomp.dg/omp_reduction.c: Ditto.
20976 * testsuite/libgomp.dg/omp_workshare1.c: Ditto.
20977 * testsuite/libgomp.dg/omp_workshare2.c: Ditto.
20978 * testsuite/libgomp.dg/omp_workshare3.c: Ditto.
20979 * testsuite/libgomp.dg/omp_workshare4.c: Ditto.
20980
20981 2005-06-13 Diego Novillo <dnovillo (a] redhat.com>
20982
20983 * TOPLEVEL.patch: Remove.
20984
20985 2005-05-16 Richard Henderson <rth (a] redhat.com>
20986
20987 * configure.ac: Test for clock_gettime.
20988 * config.h.in, configure: Rebuild.
20989 * config/posix/time.c: Use recommended TIME_WITH_SYS_TIME pattern.
20990 (omp_get_wtime): Use clock_gettime if available.
20991 (omp_get_wtick): Use clock_getres if available.
20992
20993 2005-05-11 Richard Henderson <rth (a] redhat.com>
20994
20995 * config/linux/ia64/futex.h: New file.
20996 * configure.tgt: Use it.
20997
20998 * team.c (gomp_barrier_init, gomp_barrier_destroy): Mark inline.
20999
21000 2005-05-07 Richard Henderson <rth (a] redhat.com>
21001
21002 * config/linux/powerpc/futex.h: New file.
21003 * configure.tgt: Use it.
21004
21005 * config/linux/i486/futex.h: Merge ...
21006 * config/linux/x86_64/futex.h: ... into ...
21007 * config/linux/x86/futex.h: ... here.
21008 * configure.tgt: Update to match.
21009
21010 2005-05-06 Richard Henderson <rth (a] redhat.com>
21011
21012 * config/linux/alpha/futex.h: Conditionally define SYS_futex.
21013 * config/linux/i486/futex.h: Likewise.
21014 * config/linux/x86_64/futex.h: Likewise.
21015
21016 * config/linux/lock.c: New file.
21017 * config/linux/omp-lock.h: New file.
21018
21019 * critical.c, env.h: Don't include omp.h
21020 * config/posix/lock.c: Include libgomp.h instead of omp.h.
21021 * config/posix/time.c: Likewise.
21022 * config/posix/omp-lock.h: New file.
21023 * libgomp.h: Include omp-lock.h and omp.h.
21024 * Makefile.am (nodist_include_HEADERS): New.
21025 (omp.h): New rule.
21026 * configure.ac (PERL): New.
21027 * mkomp_h.pl: New file.
21028 * omp.h.in: Rename from omp.h; replace omp_lock_t and omp_nest_lock_t
21029 with templates.
21030 * Makefile.in, configure, testsuite/Makefile.in: Rebuild.
21031
21032 * testsuite/lib/libgomp-dg.exp (libgomp_init): Add include into
21033 build directory. Re-add -march=i486 hack.
21034
21035 * testsuite/lib/libgomp-dg.exp (libgomp_compile_flags): Remove.
21036 (libgomp_link_flags): Remove.
21037 (libgomp_initialized): Remove.
21038 (libgomp_init): Don't protect from reinitialization. Copy code
21039 from libstdc++ for getting the multilib set correctly.
21040
21041 2005-05-05 Richard Henderson <rth (a] redhat.com>
21042
21043 * config/linux/alpha/futex.h: New file.
21044 * configure.tgt (alpha*-*-linux*): Use it.
21045
21046 * config/posix/mutex.c: New file.
21047 * config/posix/sem.c: Use libgomp.h.
21048
21049 * configure.tgt (x86_64-linux): Also test CC for -m32.
21050 * config/linux/x86_64/futex.h (futex_wait): Fix r10 usage.
21051
21052 * testsuite/lib/libgomp-dg.exp (libgomp_link_flags): Add /
21053 after $gccpath.
21054
21055 * Makefile.am (SUBDIRS): New.
21056 (libgomp_la_LDFLAGS): Add -lpthread.
21057 * configure.ac (AM_INIT_AUTOMAKE): Enable dependencies.
21058 * Makefile.in, aclocal.m4, config.h.in, configure: Rebuild.
21059
21060 * libgomp_g.h: New file.
21061 * libgomp.h: Split out all public declarations to libgomp_g.h.
21062 Use pragma GCC visibility instead of ATTRIBUTE_HIDDEN.
21063 * config/linux/mutex.h: Remove ATTRIBUTE_HIDDEN.
21064 * config/linux/sem.h: Likewise.
21065 * config/posix/sem.h: Likewise.
21066
21067 * Makefile.am (AM_LDFLAGS): New.
21068 (libgomp_version_script): Split out from ...
21069 (libgomp_la_LDFLAGS): ... here.
21070 (libgomp_version_info): New.
21071 * acinclude.m4 (LIBGOMP_CHECK_TLS): Use LIBGOMP_ENABLE.
21072 (LIBGOMP_ENABLE): New.
21073 (LIBGOMP_CHECK_LINKER_FEATURES): New.
21074 (LIBGOMP_ENABLE_SYMVERS): New.
21075 * configure.ac (AC_INIT): Version 1.0.
21076 (enable-version-specific-runtime-libs): Use LIBGOMP_ENABLE.
21077 (enable-linux-futex): Likewise. Rename from enable-futex.
21078 (libtool_VERSION): New.
21079 (LIBGOMP_ENABLE_SYMVERS): Use it.
21080 * configure.tgt: Check with_gnu_ld wrt have_tls optimizations.
21081 * Makefile.in, aclocal.m4, configure: Rebuild.
21082
21083 * config/linux/mutex.c: Include libgomp.h instead of mutex.h.
21084 (gomp_mutex_unlock_slow): Fix typo.
21085 * config/linux/sem.c: Similarly.
21086 (gomp_sem_post_slow): Fix typo.
21087 * config/linux/sem.h (gomp_sem_post_slow): Fix typo.
21088 * config/linux/i486/futex.h: Remove USE_LINUX_SYSENTER code.
21089 [__PIC__] (sys_futex0): Don't use tmp output in asm.
21090
21091 * Makefile.am (AM_CFLAGS): Expand with XCFLAGS.
21092 (libgomp_la_LDFLAGS): Add top_srcdir to path.
21093 * acinclude.m4: Copy libtool.m4 stuff from libgfortran.
21094 * configure.ac: Check for getloadavg. Substitute XCFLAGS and
21095 XLDFLAGS. Add XCFLAGS to CFLAGS around LIBGOMP_CHECK_SYNC_BUILTINS.
21096 * configure.tgt: Set XCFLAGS and XLDFLAGS instead of CFLAGS and
21097 LDFLAGS. Pull enable_futex check to top-level.
21098 * libgomp.h: Fix sem.h and mutex.h includes. Define ATTRIBUTE_HIDDEN.
21099 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
21100
21101 First attempt at real configury.
21102 * Makefile, config.h: Remove file.
21103 * Makefile.am, Makefile.in: New file.
21104 * acinclude.m4 aclocal.m4: New file.
21105 * configure.ac, configure.tgt, configure: New file.
21106
21107 * config/posix/lock.c: Rename from sys-lock.c.
21108 * config/posix/mutex.h: Rename from sys-mutex.h.
21109 * config/posix/sem.c: Rename from sys-sem.c.
21110 * config/posix/sem.h: Rename from sys-sem.h.
21111 * config/posix/proc.c: Rename from sys-proc.c.
21112 * config/posix/time.c: Rename from sys-proc.c.
21113
21114 * config/linux/mutex.c: New file.
21115 * config/linux/mutex.h: New file.
21116 * config/linux/sem.c: New file.
21117 * config/linux/sem.h: New file.
21118 * config/linux/i486/futex.h: New file.
21119 * config/linux/x86_64/futex.h: New file.
21120
21121 2005-05-04 Richard Henderson <rth (a] redhat.com>
21122
21123 * iter.c (gomp_iter_dynamic_next, gomp_iter_guided_next): New.
21124 * libgomp.h: Declare them.
21125 * loop.c (gomp_loop_dynamic_start, gomp_loop_guided_start,
21126 gomp_loop_dynamic_next, gomp_loop_guided_next): Use them.
21127
21128 2005-05-04 Richard Henderson <rth (a] redhat.com>
21129
21130 * libgomp-1 code drop
21131
21132 2005-05-04 Richard Henderson <rth (a] redhat.com>
21133
21134 * iter.c (gomp_iter_static_next): Return tri-state on 0.
21135 * ordered.c (gomp_ordered_static_next): Remove not_last argument.
21136 * libgomp.h (struct gomp_team_state): Make static_trip unsigned.
21137 (gomp_iter_static_next): Update.
21138 (gomp_ordered_static_next): Update.
21139 * loop.c (gomp_loop_static_start): Update for gomp_iter_static_next.
21140 (gomp_loop_ordered_static_start): Likewise. Exit early for a
21141 totally empty range.
21142 (gomp_loop_ordered_static_next): Refine test for calling
21143 gomp_ordered_static_next.
21144 * testsuite/ordered-1.c: Add case for more threads than iterations.
21145
21146 * iter.c (gomp_iter_runtime_next_locked): Remove.
21147 * loop.c (gomp_loop_static_start, gomp_loop_dynamic_start,
21148 gomp_loop_guided_start, gomp_loop_ordered_static_start,
21149 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
21150 gomp_loop_static_next, gomp_loop_dynamic_next, gomp_loop_guided_next,
21151 gomp_loop_ordered_static_next, gomp_loop_ordered_dynamic_next,
21152 gomp_loop_ordered_guided_next): Downcase name, make static, add
21153 an external alias with the old name.
21154 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
21155 GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Use a
21156 switch and call one of the above static functions.
21157 * libgomp.h: Update.
21158
21159 * work.c (gomp_work_share_start): Lock the mutex for !first too.
21160 * loop.c (GOMP_loop_static_start, GOMP_loop_dynamic_start,
21161 GOMP_loop_guided_start, GOMP_loop_runtime_start,
21162 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
21163 GOMP_loop_ordered_guided_start): Update to match.
21164 * sections.c (GOMP_sections_start): Likewise.
21165 * single.c (GOMP_single_start, GOMP_single_copy_start): Likewise.
21166
21167 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
21168 gomp_ordered_static_init, gomp_ordered_static_next): Rename s/_loop//.
21169 Use bounds check instead of modulus.
21170 (gomp_ordered_sync): Split out of GOMP_ordered_start.
21171 (gomp_ordered_last): Don't sync with ordered_owner here.
21172 (gomp_ordered_next): Likewise.
21173 (gomp_ordered_static_loop_next): Likewise.
21174 * loop.c, libgomp.h: Update to match.
21175
21176 * libgomp.h (GOMP_barrier): Declare.
21177
21178 * testsuite/barrier-1.c: New file.
21179 * testsuite/critical-1.c: New file.
21180 * testsuite/ordered-2.c: New file.
21181 * testsuite/ordered-1.c: New file.
21182 * testsuite/sections-1.c: New file.
21183 * testsuite/single-1.c: New file.
21184 * testsuite/Makefile (TESTS): Add them.
21185
21186 2005-05-04 Richard Henderson <rth (a] redhat.com>
21187
21188 * libgomp.h (struct gomp_work_share): Add ordered_owner.
21189 * loop.c (GOMP_loop_static_start): If not the startup thread,
21190 acquire the mutex to wait for initialization complete.
21191 (GOMP_loop_ordered_static_start): Likewise.
21192 (GOMP_loop_ordered_runtime_start): Likewise.
21193 (GOMP_loop_ordered_static_first): Remove.
21194 (GOMP_loop_ordered_dynamic_first): Remove.
21195 (GOMP_loop_ordered_guided_first): Remove.
21196 (GOMP_loop_ordered_runtime_first): Remove.
21197 * ordered.c (gomp_ordered_loop_first): Post to own release when
21198 we're the first thread.
21199 (gomp_ordered_loop_last): Wait on release if not owner.
21200 (gomp_ordered_loop_next): Likewise.
21201 (gomp_ordered_static_loop_init): New.
21202 (gomp_ordered_static_loop_next): Use ordered_owner.
21203 (GOMP_ordered_start): Likewise.
21204 * work.c (gomp_new_work_share): Initialize ordered_owner.
21205
21206 2005-05-03 Richard Henderson <rth (a] redhat.com>
21207
21208 * Makefile (OPT): New.
21209 (CFLAGS): Use it.
21210
21211 * loop.c (GOMP_loop_end, GOMP_loop_end_nowait): New.
21212 * sections.c (GOMP_sections_end, GOMP_sections_end_nowait): New.
21213 * libgomp.h, libgomp.map, NOTES: Update to match.
21214
21215 * team.c (struct gomp_thread_start_data): Remove ts, fn, data.
21216 Add initialized and thr members.
21217 (gomp_thread_start): Pause when initially spawned to wait for
21218 the whole team to be created.
21219 (gomp_team_start): Release team members at the end.
21220
21221 * testsuite/loop-1.c (N): New. Use it instead of hardcoded 100.
21222 (f_foo_1): Use GOMP_loop_end.
21223 (f_foo_2): Use GOMP_loop_end_nowait.
21224
21225 * testsuite/loop-2.c: New file.
21226 * testsuite/Makefile (TESTS): Add it.
21227
21228 2005-05-03 Richard Henderson <rth (a] redhat.com>
21229
21230 * iter.c (gomp_iter_static_next): Fix overflow check typo.
21231 (gomp_iter_dynamic_next_locked): Fix overflow check thinko.
21232 * team.c (new_team): Initialize oldest_live_gen to 1 if no
21233 initial work_share.
21234
21235 * testsuite/Makefile: New file.
21236 * testsuite/loop-1.c: New file.
21237
21238 2005-05-03 Richard Henderson <rth (a] redhat.com>
21239
21240 Initial implementation and checkin.
21241
21243 Copyright (C) 2005-2024 Free Software Foundation, Inc.
21244
21245 Copying and distribution of this file, with or without modification,
21246 are permitted in any medium without royalty provided the copyright
21247 notice and this notice are preserved.
21248