]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgomp/ChangeLog
Daily bump.
[thirdparty/gcc.git] / libgomp / ChangeLog
CommitLineData
73ce73fc
GA
12024-01-09 Julian Brown <julian@codesourcery.com>
2
3 * testsuite/libgomp.c++/baseptrs-4.C: Remove commented-out cases that
4 now work.
5 * testsuite/libgomp.c++/baseptrs-6.C: New test.
6 * testsuite/libgomp.c++/ind-base-1.C: New test.
7 * testsuite/libgomp.c++/ind-base-2.C: New test.
8 * testsuite/libgomp.c++/lvalue-tofrom-1.C: New test.
9 * testsuite/libgomp.c++/lvalue-tofrom-2.C: New test.
10 * testsuite/libgomp.c++/map-comma-1.C: New test.
11 * testsuite/libgomp.c++/map-rvalue-ref-1.C: New test.
12 * testsuite/libgomp.c++/struct-ref-1.C: New test.
13 * testsuite/libgomp.c-c++-common/array-field-1.c: New test.
14 * testsuite/libgomp.c-c++-common/array-of-struct-1.c: New test.
15 * testsuite/libgomp.c-c++-common/array-of-struct-2.c: New test.
16
172024-01-09 Jakub Jelinek <jakub@redhat.com>
18
19 PR libgomp/113192
20 * configure.ac (FLOCK): Use \$(abs_top_srcdir)/testsuite/flock
21 rather than $srcdir/testsuite/flock.
22 * configure: Regenerated.
23
6b1d6a2d
GA
242024-01-08 Thomas Schwinge <thomas@codesourcery.com>
25
26 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
27 'EF_AMDGPU_MACH_AMDGCN_GFX1100'.
28
292024-01-08 Julian Brown <julian@codesourcery.com>
30
31 * plugin/plugin-gcn.c (hsa_runtime_fn_info): Add
32 hsa_amd_memory_lock_fn, hsa_amd_memory_unlock_fn,
33 hsa_amd_memory_async_copy_rect_fn function pointers.
34 (init_hsa_runtime_functions): Add above functions, with
35 DLSYM_OPT_FN.
36 (GOMP_OFFLOAD_memcpy2d, GOMP_OFFLOAD_memcpy3d): New functions.
37
382024-01-08 Tobias Burnus <tobias@codesourcery.com>
39
40 * plugin/plugin-gcn.c (gcn_gfx1100_s): New const string.
41 (gcn_isa_name_len): Fix length.
42 (isa_hsa_name, isa_code, max_isa_vgprs): Handle gfx1100.
43
b368d799
GA
442024-01-06 Tobias Burnus <tobias@codesourcery.com>
45
46 * libgomp.texi (OpenMP Technical Report 12): Fix a typo.
47 (Device Memory Routines): Fix OpenMP 5.1 spec refs; add
48 omp_target_is_accessible.
49 (Environment Display Routine): Uncomment and add
50 omp_display_env description.
51 (OMP_DISPLAY_ENV): Update wording, add 'see also'.
52
532024-01-06 Mark Wielaard <mark@klomp.org>
54
55 * configure: Regenerate.
56
eb84e8d3
GA
572024-01-03 Jakub Jelinek <jakub@redhat.com>
58
59 * libgomp.texi: Bump @copying's copyright year.
60
cdfaa4aa
GA
612023-12-21 Julian Brown <julian@codesourcery.com>
62
63 * testsuite/libgomp.fortran/target-enter-data-6.f90: Remove XFAIL.
64
7ad9058c
GA
652023-12-20 Julian Brown <julian@codesourcery.com>
66
67 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_memcpy2d): Adjust parameters to
68 avoid out-of-bounds array checks in CUDA runtime.
69 (GOMP_OFFLOAD_memcpy3d): Likewise.
70 * testsuite/libgomp.c-c++-common/memcpyxd-bias-1.c: New test.
71
08c5d26a
GA
722023-12-18 Jakub Jelinek <jakub@redhat.com>
73
74 * testsuite/libgomp.c/declare-variant-1.c: Restrict the test to x86,
75 drop because of that unneeded target selector from other directives
76 and remove the aarch64 specific ones.
77
ea54b390
GA
782023-12-15 Andre Vieira <andre.simoesdiasvieira@arm.com>
79
80 * testsuite/libgomp.c/declare-variant-1.c: Fixed test.
81 * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
82
832023-12-15 Thomas Schwinge <thomas@codesourcery.com>
84
85 * testsuite/libgomp.fortran/map-subarray-5.f90: Restrict
86 'dg-output's to 'target offload_device_nonshared_as'.
87
882023-12-15 Julian Brown <julian@codesourcery.com>
89
90 * oacc-mem.c (find_group_last, goacc_enter_data_internal,
91 goacc_exit_data_internal, GOACC_enter_exit_data): Add
92 GOMP_MAP_STRUCT_UNORD support.
93 * target.c (gomp_map_vars_internal): Add GOMP_MAP_STRUCT_UNORD support.
94 Detect incorrect use of variable indexing of arrays of structs.
95 (GOMP_target_enter_exit_data, gomp_target_task_fn): Add
96 GOMP_MAP_STRUCT_UNORD support.
97 * testsuite/libgomp.c-c++-common/map-arrayofstruct-1.c: New test.
98 * testsuite/libgomp.c-c++-common/map-arrayofstruct-2.c: New test.
99 * testsuite/libgomp.c-c++-common/map-arrayofstruct-3.c: New test.
100 * testsuite/libgomp.fortran/map-subarray-5.f90: New test.
101
e8018ccf
GA
1022023-12-13 Julian Brown <julian@codesourcery.com>
103
104 * testsuite/libgomp.fortran/map-subarray.f90: New test.
105 * testsuite/libgomp.fortran/map-subarray-2.f90: New test.
106 * testsuite/libgomp.fortran/map-subarray-3.f90: New test.
107 * testsuite/libgomp.fortran/map-subarray-4.f90: New test.
108 * testsuite/libgomp.fortran/map-subarray-6.f90: New test.
109 * testsuite/libgomp.fortran/map-subarray-7.f90: New test.
110 * testsuite/libgomp.fortran/map-subarray-8.f90: New test.
111 * testsuite/libgomp.fortran/map-subcomponents.f90: New test.
112 * testsuite/libgomp.fortran/struct-elem-map-1.f90: Adjust for
113 descriptor-mapping changes. Remove XFAIL.
114
1152023-12-13 Julian Brown <julian@codesourcery.com>
116
117 * target.c (gomp_map_pointer): Modify zero-length array section
118 pointer handling.
119 (gomp_attach_pointer): Likewise.
120 (gomp_map_fields_existing): Use gomp_map_0len_lookup.
121 (gomp_attach_pointer): Allow attaching null pointers (or Fortran
122 "unassociated" pointers).
123 (gomp_map_vars_internal): Handle zero-sized struct members. Add
124 diagnostic for unmapped struct pointer members.
125 * testsuite/libgomp.c-c++-common/baseptrs-1.c: New test.
126 * testsuite/libgomp.c-c++-common/baseptrs-2.c: New test.
127 * testsuite/libgomp.c-c++-common/baseptrs-6.c: New test.
128 * testsuite/libgomp.c-c++-common/baseptrs-7.c: New test.
129 * testsuite/libgomp.c-c++-common/ptr-attach-2.c: New test.
130 * testsuite/libgomp.c-c++-common/target-implicit-map-2.c: Fix missing
131 "free".
132 * testsuite/libgomp.c-c++-common/target-implicit-map-5.c: New test.
133 * testsuite/libgomp.c-c++-common/target-map-zlas-1.c: New test.
134 * testsuite/libgomp.c++/class-array-1.C: New test.
135 * testsuite/libgomp.c++/baseptrs-3.C: New test.
136 * testsuite/libgomp.c++/baseptrs-4.C: New test.
137 * testsuite/libgomp.c++/baseptrs-5.C: New test.
138 * testsuite/libgomp.c++/baseptrs-8.C: New test.
139 * testsuite/libgomp.c++/baseptrs-9.C: New test.
140 * testsuite/libgomp.c++/ref-mapping-1.C: New test.
141 * testsuite/libgomp.c++/target-48.C: New test.
142 * testsuite/libgomp.c++/target-49.C: New test.
143 * testsuite/libgomp.c++/target-exit-data-reftoptr-1.C: New test.
144 * testsuite/libgomp.c++/target-lambda-1.C: Update for OpenMP 5.2
145 semantics.
146 * testsuite/libgomp.c++/target-this-3.C: Likewise.
147 * testsuite/libgomp.c++/target-this-4.C: Likewise.
148 * testsuite/libgomp.fortran/struct-elem-map-1.f90: Add temporary XFAIL.
149 * testsuite/libgomp.fortran/target-enter-data-6.f90: Likewise.
150
1512023-12-13 Thomas Schwinge <thomas@codesourcery.com>
152
153 * config/linux/allocator.c (linux_memspace_alloc): Fix 'size_t'
154 vs. '%ld' format string mismatch.
155
1562023-12-13 Andrew Stubbs <ams@codesourcery.com>
157 Thomas Schwinge <thomas@codesourcery.com>
158
159 * allocator.c (MEMSPACE_ALLOC): Add PIN.
160 (MEMSPACE_CALLOC): Add PIN.
161 (MEMSPACE_REALLOC): Add PIN.
162 (MEMSPACE_FREE): Add PIN.
163 (MEMSPACE_VALIDATE): Add PIN.
164 (omp_init_allocator): Use MEMSPACE_VALIDATE to check pinning.
165 (omp_aligned_alloc): Add pinning to all MEMSPACE_* calls.
166 (omp_aligned_calloc): Likewise.
167 (omp_realloc): Likewise.
168 (omp_free): Likewise.
169 * config/linux/allocator.c: New file.
170 * config/nvptx/allocator.c (MEMSPACE_ALLOC): Add PIN.
171 (MEMSPACE_CALLOC): Add PIN.
172 (MEMSPACE_REALLOC): Add PIN.
173 (MEMSPACE_FREE): Add PIN.
174 (MEMSPACE_VALIDATE): Add PIN.
175 * config/gcn/allocator.c (MEMSPACE_ALLOC): Add PIN.
176 (MEMSPACE_CALLOC): Add PIN.
177 (MEMSPACE_REALLOC): Add PIN.
178 (MEMSPACE_FREE): Add PIN.
179 * libgomp.texi: Switch pinned trait to supported.
180 (MEMSPACE_VALIDATE): Add PIN.
181 * testsuite/libgomp.c/alloc-pinned-1.c: New test.
182 * testsuite/libgomp.c/alloc-pinned-2.c: New test.
183 * testsuite/libgomp.c/alloc-pinned-3.c: New test.
184 * testsuite/libgomp.c/alloc-pinned-4.c: New test.
185
d5c96225
GA
1862023-12-11 Lipeng Zhu <lipeng.zhu@intel.com>
187
188 * testsuite/libgomp.fortran/rwlock_1.f90: New file.
189 * testsuite/libgomp.fortran/rwlock_2.f90: New file.
190 * testsuite/libgomp.fortran/rwlock_3.f90: New file.
191
1922023-12-11 Andre Vieira <andre.simoesdiasvieira@arm.com>
193
194 * testsuite/libgomp.c/declare-variant-1.c: Adapt test for aarch64.
195 * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
196
1972023-12-11 Tobias Burnus <tobias@codesourcery.com>
198
199 * libgomp_g.h (GOMP_add_alloc, GOMP_is_alloc): Add.
200
dd3b75d8
GA
2012023-12-08 Tobias Burnus <tobias@codesourcery.com>
202
203 * allocator.c (struct fort_alloc_splay_tree_key_s,
204 fort_alloc_splay_compare, GOMP_add_alloc, GOMP_is_alloc): New.
205 * libgomp.h: Define splay_tree_static for 'reverse' splay tree.
206 * libgomp.map (GOMP_5.1.2): New; add GOMP_add_alloc and
207 GOMP_is_alloc; move GOMP_target_map_indirect_ptr from ...
208 (GOMP_5.1.1): ... here.
209 * libgomp.texi (Impl. Status, Memory management): Update for
210 allocators/allocate directives.
211 * splay-tree.c: Handle splay_tree_static define to declare all
212 functions as static.
213 (splay_tree_lookup_node): New.
214 * splay-tree.h: Handle splay_tree_decl_only define.
215 (splay_tree_lookup_node): New prototype.
216 * target.c: Define splay_tree_static for 'reverse'.
217 * testsuite/libgomp.fortran/allocators-1.f90: New test.
218 * testsuite/libgomp.fortran/allocators-2.f90: New test.
219 * testsuite/libgomp.fortran/allocators-3.f90: New test.
220 * testsuite/libgomp.fortran/allocators-4.f90: New test.
221 * testsuite/libgomp.fortran/allocators-5.f90: New test.
222
ae9e48e5
GA
2232023-12-06 Andrew Stubbs <ams@codesourcery.com>
224
225 * config/gcn/libgomp-gcn.h (TEAM_ARENA_START): Move to here.
226 (TEAM_ARENA_FREE): Likewise.
227 (TEAM_ARENA_END): Likewise.
228 (GCN_LOWLAT_HEAP): New.
229 * config/gcn/team.c (LITTLEENDIAN_CPU): New, and import hsa.h.
230 (__gcn_lowlat_init): New prototype.
231 (gomp_gcn_enter_kernel): Initialize the low-latency heap.
232 * libgomp.h (TEAM_ARENA_START): Move to libgomp.h.
233 (TEAM_ARENA_FREE): Likewise.
234 (TEAM_ARENA_END): Likewise.
235 * plugin/plugin-gcn.c (lowlat_size): New variable.
236 (print_kernel_dispatch): Label the group_segment_size purpose.
237 (init_environment_variables): Read GOMP_GCN_LOWLAT_POOL.
238 (create_kernel_dispatch): Pass low-latency head allocation to kernel.
239 (run_kernel): Use shadow; don't assume values.
240 * testsuite/libgomp.c/omp_alloc-traits.c: Enable for amdgcn.
241 * config/gcn/allocator.c: New file.
242 * libgomp.texi: Document low-latency implementation details.
243
2442023-12-06 Andrew Stubbs <ams@codesourcery.com>
245
246 * allocator.c (MEMSPACE_VALIDATE): New macro.
247 (omp_init_allocator): Use MEMSPACE_VALIDATE.
248 (omp_aligned_alloc): Use OMP_LOW_LAT_MEM_ALLOC_INVALID.
249 (omp_aligned_calloc): Likewise.
250 (omp_realloc): Likewise.
251 * config/nvptx/allocator.c (nvptx_memspace_validate): New function.
252 (MEMSPACE_VALIDATE): New macro.
253 (OMP_LOW_LAT_MEM_ALLOC_INVALID): New define.
254 * libgomp.texi: Document low-latency implementation details.
255 * testsuite/libgomp.c/omp_alloc-1.c (main): Add gnu_lowlat.
256 * testsuite/libgomp.c/omp_alloc-2.c (main): Add gnu_lowlat.
257 * testsuite/libgomp.c/omp_alloc-3.c (main): Add gnu_lowlat.
258 * testsuite/libgomp.c/omp_alloc-4.c (main): Add access trait.
259 * testsuite/libgomp.c/omp_alloc-5.c (main): Add gnu_lowlat.
260 * testsuite/libgomp.c/omp_alloc-6.c (main): Add access trait.
261 * testsuite/libgomp.c/omp_alloc-traits.c: New test.
262
2632023-12-06 Andrew Stubbs <ams@codesourcery.com>
264 Kwok Cheung Yeung <kcy@codesourcery.com>
265 Thomas Schwinge <thomas@codesourcery.com>
266
267 * allocator.c (MEMSPACE_ALLOC): New macro.
268 (MEMSPACE_CALLOC): New macro.
269 (MEMSPACE_REALLOC): New macro.
270 (MEMSPACE_FREE): New macro.
271 (predefined_alloc_mapping): New array. Add _Static_assert to match.
272 (ARRAY_SIZE): New macro.
273 (omp_aligned_alloc): Use MEMSPACE_ALLOC.
274 Implement fall-backs for predefined allocators. Simplify existing
275 fall-backs.
276 (omp_free): Use MEMSPACE_FREE.
277 (omp_calloc): Use MEMSPACE_CALLOC. Implement fall-backs for
278 predefined allocators. Simplify existing fall-backs.
279 (omp_realloc): Use MEMSPACE_REALLOC, MEMSPACE_ALLOC, and MEMSPACE_FREE.
280 Implement fall-backs for predefined allocators. Simplify existing
281 fall-backs.
282 * config/nvptx/team.c (__nvptx_lowlat_pool): New asm variable.
283 (__nvptx_lowlat_init): New prototype.
284 (gomp_nvptx_main): Call __nvptx_lowlat_init.
285 * libgomp.texi: Update memory space table.
286 * plugin/plugin-nvptx.c (lowlat_pool_size): New variable.
287 (GOMP_OFFLOAD_init_device): Read the GOMP_NVPTX_LOWLAT_POOL envvar.
288 (GOMP_OFFLOAD_run): Apply lowlat_pool_size.
289 * basic-allocator.c: New file.
290 * config/nvptx/allocator.c: New file.
291 * testsuite/libgomp.c/omp_alloc-1.c: New test.
292 * testsuite/libgomp.c/omp_alloc-2.c: New test.
293 * testsuite/libgomp.c/omp_alloc-3.c: New test.
294 * testsuite/libgomp.c/omp_alloc-4.c: New test.
295 * testsuite/libgomp.c/omp_alloc-5.c: New test.
296 * testsuite/libgomp.c/omp_alloc-6.c: New test.
297
8428bcd7
GA
2982023-11-30 Thomas Schwinge <thomas@codesourcery.com>
299
300 * testsuite/libgomp.c/declare-variant-4-fiji.c: Adjust.
301 * testsuite/libgomp.c/declare-variant-4-gfx803.c: Likewise.
302 * testsuite/libgomp.c/declare-variant-4-gfx900.c: Likewise.
303 * testsuite/libgomp.c/declare-variant-4-gfx906.c: Likewise.
304 * testsuite/libgomp.c/declare-variant-4-gfx908.c: Likewise.
305 * testsuite/libgomp.c/declare-variant-4-gfx90a.c: Likewise.
306 * testsuite/libgomp.c/declare-variant-4.h: Likewise.
307 * testsuite/libgomp.c/declare-variant-4.c: New.
308
3092023-11-30 Thomas Schwinge <thomas@codesourcery.com>
310
311 * testsuite/libgomp.c/declare-variant-3-sm30.c: Turn 'dg-do run'
312 into 'dg-do link'.
313 * testsuite/libgomp.c/declare-variant-3.c: New.
314 * testsuite/libgomp.c/declare-variant-3.h: Extend.
315
3162023-11-30 Thomas Schwinge <thomas@codesourcery.com>
317
318 * testsuite/libgomp.c/declare-variant-3-sm30.c: Restrict
319 'scan-offload-tree-dump' to 'only_for_offload_target nvptx-none'.
320 * testsuite/libgomp.c/declare-variant-3-sm35.c: Likewise.
321 * testsuite/libgomp.c/declare-variant-3-sm53.c: Likewise.
322 * testsuite/libgomp.c/declare-variant-3-sm70.c: Likewise.
323 * testsuite/libgomp.c/declare-variant-3-sm75.c: Likewise.
324 * testsuite/libgomp.c/declare-variant-3-sm80.c: Likewise.
325 * testsuite/libgomp.c/declare-variant-4-fiji.c: Restrict
326 'scan-offload-tree-dump' to
327 'only_for_offload_target amdgcn-amdhsa'.
328 * testsuite/libgomp.c/declare-variant-4-gfx803.c: Likewise.
329 * testsuite/libgomp.c/declare-variant-4-gfx900.c: Likewise.
330 * testsuite/libgomp.c/declare-variant-4-gfx906.c: Likewise.
331 * testsuite/libgomp.c/declare-variant-4-gfx908.c: Likewise.
332 * testsuite/libgomp.c/declare-variant-4-gfx90a.c: Likewise.
333
3342023-11-30 Thomas Schwinge <thomas@codesourcery.com>
335
336 * testsuite/libgomp.c/declare-variant-3-sm30.c:
337 'dg-additional-options -foffload=nvptx-none'.
338 * testsuite/libgomp.c/declare-variant-3-sm35.c: Likewise.
339 * testsuite/libgomp.c/declare-variant-3-sm53.c: Likewise.
340 * testsuite/libgomp.c/declare-variant-3-sm70.c: Likewise.
341 * testsuite/libgomp.c/declare-variant-3-sm75.c: Likewise.
342 * testsuite/libgomp.c/declare-variant-3-sm80.c: Likewise.
343
31d8cf17
GA
3442023-11-29 Thomas Schwinge <thomas@codesourcery.com>
345
346 * testsuite/libgomp.c/target-simd-clone-1.c: Restrict
347 'scan-offload-ipa-dump's to
348 'only_for_offload_target amdgcn-amdhsa'.
349 * testsuite/libgomp.c/target-simd-clone-2.c: Likewise.
350 * testsuite/libgomp.c/target-simd-clone-3.c: Likewise.
351
77cf1dba
GA
3522023-11-24 Tobias Burnus <tobias@codesourcery.com>
353
354 * libgomp.texi (5.2 Impl. Status): An argument to the destroy clause
355 is now supported.
356
26a7e775
GA
3572023-11-22 Thomas Schwinge <thomas@codesourcery.com>
358
359 * testsuite/libgomp.c/declare-variant-3.h (f30, f35, f53, f70)
360 (f75, f80, f): Add '__attribute__ ((noipa))'.
361 * testsuite/libgomp.c/declare-variant-4.h (gfx803, gfx900, gfx906)
362 (gfx908, gfx90a, f): Likewise.
363
17cc2e57
GA
3642023-11-15 Andrew Stubbs <ams@codesourcery.com>
365 Andrew Jenner <andrew@codesourcery.com>
366
367 * plugin/plugin-gcn.c (max_isa_vgprs): New.
368 (run_kernel): CDNA2 devices have more VGPRs.
369
b9fd8399
GA
3702023-11-10 Tobias Burnus <tobias@codesourcery.com>
371
372 * libgomp.texi (OpenMP Impl. Status): Update for OpenMP TR12;
373 renamed section from TR11.
374
c48f1056
GA
3752023-11-07 Kwok Cheung Yeung <kcy@codesourcery.com>
376
377 * config/linux/target-indirect.c: Move to...
378 * target-indirect.c: ...here.
379
3802023-11-07 Kwok Cheung Yeung <kcy@codesourcery.com>
381
382 * Makefile.am (libgomp_la_SOURCES): Add target-indirect.c.
383 * Makefile.in: Regenerate.
384 * libgomp-plugin.h (GOMP_INDIRECT_ADDR_MAP): New define.
385 (GOMP_OFFLOAD_load_image): Add extra argument.
386 * libgomp.h (struct indirect_splay_tree_key_s): New.
387 (indirect_splay_tree_node, indirect_splay_tree,
388 indirect_splay_tree_key): New.
389 (indirect_splay_compare): New.
390 * libgomp.map (GOMP_5.1.1): Add GOMP_target_map_indirect_ptr.
391 * libgomp.texi (OpenMP 5.1): Update documentation on indirect
392 calls in target region and on indirect clause.
393 (Other new OpenMP 5.2 features): Add entry for virtual function calls.
394 * libgomp_g.h (GOMP_target_map_indirect_ptr): Add prototype.
395 * oacc-host.c (host_load_image): Add extra argument.
396 * target.c (gomp_load_image_to_device): If the GOMP_VERSION is high
397 enough, read host indirect functions table and pass to
398 load_image_func.
399 * config/accel/target-indirect.c: New.
400 * config/linux/target-indirect.c: New.
401 * config/gcn/team.c (build_indirect_map): Add prototype.
402 (gomp_gcn_enter_kernel): Initialize support for indirect
403 function calls on GCN target.
404 * config/nvptx/team.c (build_indirect_map): Add prototype.
405 (gomp_nvptx_main): Initialize support for indirect function
406 calls on NVPTX target.
407 * plugin/plugin-gcn.c (struct gcn_image_desc): Add field for
408 indirect functions count.
409 (GOMP_OFFLOAD_load_image): Add extra argument. If the GOMP_VERSION
410 is high enough, build address translation table and copy it to target
411 memory.
412 * plugin/plugin-nvptx.c (nvptx_tdata): Add field for indirect
413 functions count.
414 (GOMP_OFFLOAD_load_image): Add extra argument. If the GOMP_VERSION
415 is high enough, Build address translation table and copy it to target
416 memory.
417 * testsuite/libgomp.c-c++-common/declare-target-indirect-1.c: New.
418 * testsuite/libgomp.c-c++-common/declare-target-indirect-2.c: New.
419 * testsuite/libgomp.c++/declare-target-indirect-1.C: New.
420
459866ea
GA
4212023-11-05 Jakub Jelinek <jakub@redhat.com>
422
423 * libgomp.texi (Enabling OpenMP): Adjust wording for attribute syntax
424 supported also in C.
425
eac0917b
GA
4262023-10-31 Thomas Schwinge <thomas@codesourcery.com>
427
428 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: Add OpenACC
429 'acc_map_data' variant.
430
f75fc1f0
GA
4312023-10-25 Thomas Schwinge <thomas@codesourcery.com>
432
433 * oacc-parallel.c (GOACC_data_start): Handle
434 'GOACC_FLAG_LOCAL_DEVICE'.
435 (GOACC_parallel_keyed): Simplify accordingly.
436 * testsuite/libgomp.oacc-fortran/self-1.f90: Adjust.
437
4382023-10-25 Thomas Schwinge <thomas@codesourcery.com>
439
440 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Enhance.
441 * testsuite/libgomp.oacc-c-c++-common/self-1.c: Likewise.
442 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
443 * testsuite/libgomp.oacc-c-c++-common/if-self-1.c: New.
444 * testsuite/libgomp.oacc-fortran/self-1.f90: Likewise.
445
4462023-10-25 Chung-Lin Tang <cltang@codesourcery.com>
447
448 * oacc-parallel.c (GOACC_parallel_keyed): Add code to handle
449 GOACC_FLAG_LOCAL_DEVICE case.
450 * testsuite/libgomp.oacc-c-c++-common/self-1.c: New test.
451
3b632746
GA
4522023-10-22 Iain Sandoe <iain@sandoe.co.uk>
453
454 * Makefile.am: Handle Darwin rpaths.
455 * Makefile.in: Regenerate.
456 * configure: Regenerate.
457 * configure.ac: Handle Darwin rpaths
458
6f684dd2
GA
4592023-10-20 Andrew Stubbs <ams@codesourcery.com>
460
461 * plugin/plugin-gcn.c (EF_AMDGPU_MACH_AMDGCN_GFX1030): New.
462 (isa_hsa_name): Recognise gfx1030.
463 (isa_code): Likewise.
464 * team.c (defined): Remove s_endpgm.
465
4662023-10-20 Tobias Burnus <tobias@codesourcery.com>
467
468 * omp_lib.f90.in: Tag omp_lock_hint_* as being deprecated when
469 _OPENMP >= 201811.
470
d5cfabc6
GA
4712023-10-15 Tobias Burnus <tobias@codesourcery.com>
472
473 * libgomp.texi (Enabling OpenMP): Update for C/C++ attributes;
474 improve wording especially for Fortran; mention -fopenmp-simd.
475 (Enabling OpenACC): Minor cleanup; remove conditional compilation
476 sentinel.
477
4782023-10-15 Tobias Burnus <tobias@codesourcery.com>
479
480 * libgomp.texi (ACC_DEVICE_TYPE, ACC_DEVICE_NUM, ACC_PROFLIB):
481 Actually document what the function does.
482 (GCC_ACC_NOTIFY): Remove unused env var.
483
4842023-10-15 Tobias Burnus <tobias@codesourcery.com>
485
486 * libgomp.texi: Replace most future tense by present tense.
487
b3cb98d7
GA
4882023-10-14 Tobias Burnus <tobias@codesourcery.com>
489
490 * testsuite/libgomp.fortran/allocate-6.f90: Add missing
491 dg-additional-options "-fdump-tree-gimple"; fix scan.
492
4932023-10-14 Tobias Burnus <tobias@codesourcery.com>
494
495 * libgomp.texi: Fix some typos.
496 (Memory Management Routines): Document remaining 5.x routines.
497 (Memory allocation): Make clear when the section applies.
498
4992023-10-14 Tobias Burnus <tobias@codesourcery.com>
500
501 * libgomp.texi (OpenMP Impl. Status): Mention that Fortran now
502 supports the allocate directive for stack variables.
503 * testsuite/libgomp.fortran/allocate-5.f90: New test.
504 * testsuite/libgomp.fortran/allocate-6.f90: New test.
505 * testsuite/libgomp.fortran/allocate-7.f90: New test.
506 * testsuite/libgomp.fortran/allocate-8.f90: New test.
507
f9ef2e6d
GA
5082023-10-12 Tobias Burnus <tobias@codesourcery.com>
509
510 * libgomp.texi (OMP_DEFAULT_DEVICE): Update spec ref; add @ref to
511 OMP_TARGET_OFFLOAD.
512 (OMP_TARGET_OFFLOAD): Update spec ref; add @ref to OMP_DEFAULT_DEVICE;
513 clarify MANDATORY behavior.
514
5152023-10-12 Zhang, Jun <jun.zhang@intel.com>
516
517 * env.c (initialize_env): Use do_adjust_default_spincount.
518 * config/linux/x86/spincount.h: New file.
519
00c67d62
GA
5202023-10-08 Tobias Burnus <tobias@codesourcery.com>
521
522 * testsuite/libgomp.fortran/strictly-structured-block-1.f90: New test.
523
0defa2a0
GA
5242023-10-06 Tobias Burnus <tobias@codesourcery.com>
525
526 * libgomp.texi (Device Memory Routines): New.
527
bf2e66e3
GA
5282023-10-04 Tobias Burnus <tobias@codesourcery.com>
529
530 * libgomp.texi (OpenMP Context Selectors): Clarify 'kind' trait
531 and that other target archs have no 'arch'/'isa' traits implemented.
532
4907d220
GA
5332023-09-20 Tobias Burnus <tobias@codesourcery.com>
534
535 * libgomp.texi (OpenMP 5.1 Impl.): Mark 'omp allocate' as
536 implemented for C only.
537 * testsuite/libgomp.c/allocate-4.c: New test.
538 * testsuite/libgomp.c/allocate-5.c: New test.
539 * testsuite/libgomp.c/allocate-6.c: New test.
540
5412023-09-20 Jakub Jelinek <jakub@redhat.com>
542
543 PR c++/111392
544 * libgomp.texi: Mark decl attribute was added to the C++ attribute
545 syntax as implemented.
546
590a8bec
GA
5472023-09-19 Jakub Jelinek <jakub@redhat.com>
548
549 PR libgomp/111413
550 * env.c (initialize_env): Don't dereference environ if it is NULL.
551 Reindent.
552
6b78e9a5
GA
5532023-09-18 Richard Biener <rguenther@suse.de>
554
555 PR tree-optimization/111294
556 * team.c (gomp_team_start): Assert alloca size to avoid false
557 positive alloc-size diagnostic.
558
a1c20158
GA
5592023-09-12 Thomas Schwinge <thomas@codesourcery.com>
560 Chung-Lin Tang <cltang@codesourcery.com>
561
562 PR testsuite/91884
563 PR testsuite/109951
564 * configure.ac: Revert earlier changes, instead
565 'AC_SUBST(SYSROOT_CFLAGS_FOR_TARGET)'.
566 * Makefile.in: Regenerate.
567 * configure: Likewise.
568 * testsuite/Makefile.in: Likewise.
569 * testsuite/lib/libgomp.exp (libgomp_init): Remove
570 "Fix up '-funconfigured-libstdc++-v3' in 'GXX_UNDER_TEST'" code.
571 If '--with-build-sysroot=[...]' was specified, use it for
572 build-tree testing.
573 * testsuite/libgomp-site-extra.exp.in (GCC_UNDER_TEST)
574 (GXX_UNDER_TEST, GFORTRAN_UNDER_TEST): Don't set.
575 (SYSROOT_CFLAGS_FOR_TARGET): Set.
576 * testsuite/libgomp.c++/c++.exp (lang_source_re)
577 (lang_include_flags): Set for build-tree testing.
578 * testsuite/libgomp.oacc-c++/c++.exp (lang_source_re)
579 (lang_include_flags): Likewise.
580
109c11f6
GA
5812023-09-07 Tobias Burnus <tobias@codesourcery.com>
582
583 * libgomp.texi (Memory Management Routines): New; add documentation for
584 omp_init_allocator, omp_destroy_allocator, omp_set_default_allocator,
585 omp_get_default_allocator.
586 (OMP_ALLOCATOR): Fix ICV var name; add see-also references.
587
478c37e7
TB
5882023-09-07 Tobias Burnus <tobias@codesourcery.com>
589
590 * target.c (gomp_unload_device): Remove tailing whitespace.
591
d820cd78
GA
5922023-09-04 Tobias Burnus <tobias@codesourcery.com>
593 Thomas Schwinge <thomas@codesourcery.com>
594
595 * testsuite/libgomp.c-c++-common/pr100059-1.c: New.
596
b8863640
GA
5972023-08-25 Sandra Loosemore <sandra@codesourcery.com>
598
599 * libgomp.texi (OpenMP 5.0): Imperfectly-nested loops are done.
600
6012023-08-25 Sandra Loosemore <sandra@codesourcery.com>
602
603 * testsuite/libgomp.fortran/imperfect-destructor.f90: New.
604 * testsuite/libgomp.fortran/imperfect1.f90: New.
605 * testsuite/libgomp.fortran/imperfect2.f90: New.
606 * testsuite/libgomp.fortran/imperfect3.f90: New.
607 * testsuite/libgomp.fortran/imperfect4.f90: New.
608 * testsuite/libgomp.fortran/target-imperfect1.f90: New.
609 * testsuite/libgomp.fortran/target-imperfect2.f90: New.
610 * testsuite/libgomp.fortran/target-imperfect3.f90: New.
611 * testsuite/libgomp.fortran/target-imperfect4.f90: New.
612
6132023-08-25 Sandra Loosemore <sandra@codesourcery.com>
614
615 * testsuite/libgomp.c-c++-common/imperfect1.c: New.
616 * testsuite/libgomp.c-c++-common/imperfect2.c: New.
617 * testsuite/libgomp.c-c++-common/imperfect3.c: New.
618 * testsuite/libgomp.c-c++-common/imperfect4.c: New.
619 * testsuite/libgomp.c-c++-common/imperfect5.c: New.
620 * testsuite/libgomp.c-c++-common/imperfect6.c: New.
621 * testsuite/libgomp.c-c++-common/target-imperfect1.c: New.
622 * testsuite/libgomp.c-c++-common/target-imperfect2.c: New.
623 * testsuite/libgomp.c-c++-common/target-imperfect3.c: New.
624 * testsuite/libgomp.c-c++-common/target-imperfect4.c: New.
625
6262023-08-25 Sandra Loosemore <sandra@codesourcery.com>
627
628 * testsuite/libgomp.c++/attrs-imperfect1.C: New test.
629 * testsuite/libgomp.c++/attrs-imperfect2.C: New test.
630 * testsuite/libgomp.c++/attrs-imperfect3.C: New test.
631 * testsuite/libgomp.c++/attrs-imperfect4.C: New test.
632 * testsuite/libgomp.c++/attrs-imperfect5.C: New test.
633 * testsuite/libgomp.c++/attrs-imperfect6.C: New test.
634 * testsuite/libgomp.c++/imperfect-class-1.C: New test.
635 * testsuite/libgomp.c++/imperfect-class-2.C: New test.
636 * testsuite/libgomp.c++/imperfect-class-3.C: New test.
637 * testsuite/libgomp.c++/imperfect-destructor.C: New test.
638 * testsuite/libgomp.c++/imperfect-template-1.C: New test.
639 * testsuite/libgomp.c++/imperfect-template-2.C: New test.
640 * testsuite/libgomp.c++/imperfect-template-3.C: New test.
641
6cd85273
GA
6422023-08-22 Francois-Xavier Coudert <fxcoudert@gmail.com>
643
644 * testsuite/lib/libgomp.exp: Add effective target.
645 * testsuite/libgomp.c/simd-math-1.c: Avoid calling nonstandard
646 functions.
647
6482023-08-22 Tobias Burnus <tobias@codesourcery.com>
649
650 * libgomp.texi (OpenMP 5.2 status): Add depobj with
651 destroy-var argument as 'N'. Mark defaultmap with
652 'all' category as 'Y'.
653
1ba33636
GA
6542023-08-19 Tobias Burnus <tobias@codesourcery.com>
655
656 PR middle-end/111017
657 * testsuite/libgomp.c-c++-common/non-rect-loop-1.c: New test.
658
1eb2433f
GA
6592023-08-17 Tobias Burnus <tobias@codesourcery.com>
660
661 PR libgomp/111024
662 * allocator.c (gomp_init_libnuma): Call numa_available; if
663 not available or not returning 0, disable libnuma usage.
664
4b92dba7
GA
6652023-08-07 Nick Alcock <nick.alcock@oracle.com>
666
667 * configure: Regenerate.
668
6692023-08-07 Alexander von Gluck IV <kallisti5@unixzen.com>
670
671 * configure: Regenerate.
672
6732023-08-07 Nick Alcock <nick.alcock@oracle.com>
674
675 * configure: Regenerate.
676
6772023-08-07 Nick Alcock <nick.alcock@oracle.com>
678
679 * configure: Regenerate.
680
6812023-08-07 H.J. Lu <hjl.tools@gmail.com>
682
683 * configure: Regenerate.
684
6852023-08-07 H.J. Lu <hjl.tools@gmail.com>
686
687 * configure: Regenerate.
688
861962ee
GA
6892023-07-29 Tobias Burnus <tobias@codesourcery.com>
690
691 * target.c (omp_target_memcpy_rect_worker): Undo dim=1 change for
692 GOMP_OFFLOAD_CAP_SHARED_MEM.
693 (omp_target_memcpy_rect_copy): Likewise for lock condition.
694 (gomp_load_plugin_for_device): Use DLSYM_OPT not DLSYM for
695 memcpy3d/memcpy2d.
696 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_memcpy2d,
697 GOMP_OFFLOAD_memcpy3d): Use memset 0 to nullify reserved and
698 unused src/dst fields for that mem type; remove '{src,dst}LOD = 0'.
699
5278cd6a
GA
7002023-07-26 Tobias Burnus <tobias@codesourcery.com>
701
702 * libgomp-plugin.h (GOMP_OFFLOAD_memcpy2d,
703 GOMP_OFFLOAD_memcpy3d): New prototypes.
704 * libgomp.h (struct gomp_device_descr): Add memcpy2d_func
705 and memcpy3d_func.
706 * libgomp.texi (nvtpx): Document when cuMemcpy2D/cuMemcpy3D is used.
707 * oacc-host.c (memcpy2d_func, .memcpy3d_func): Init with NULL.
708 * plugin/cuda-lib.def (cuMemcpy2D, cuMemcpy2DUnaligned,
709 cuMemcpy3D): Invoke via CUDA_ONE_CALL.
710 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_memcpy2d,
711 GOMP_OFFLOAD_memcpy3d): New.
712 * target.c (omp_target_memcpy_rect_worker):
713 (omp_target_memcpy_rect_check, omp_target_memcpy_rect_copy):
714 Permit all device-to-device copyies; invoke new plugins for
715 2D and 3D copying when available.
716 (gomp_load_plugin_for_device): DLSYM the new plugin functions.
717 * testsuite/libgomp.c/target-12.c: Fix dimension bug.
718 * testsuite/libgomp.fortran/target-12.f90: Likewise.
719 * testsuite/libgomp.fortran/target-memcpy-rect-1.f90: New test.
720
7212023-07-26 Tobias Burnus <tobias@codesourcery.com>
722
723 * libgomp.texi (OpenMP 5.2 features): Add 'all' for 'defaultmap' as 'N'.
724 (Tasking Routines): Document omp_in_explicit_task.
725 (Implementation-defined ICV Initialization): Use @ref not @code.
726
e2bf82d5
GA
7272023-07-20 Tobias Burnus <tobias@codesourcery.com>
728
729 * libgomp.texi (OpenMP Runtime Library Routines):
730 Split long list by adding sections and moving routines there.
731 (OMP_ALLOCATORS): Fix typo.
732
49bed11d
GA
7332023-07-19 Tobias Burnus <tobias@codesourcery.com>
734
735 PR fortran/107424
736 * libgomp.texi (Impl. Status 5.0): Add link to new PR110735.
737 * testsuite/libgomp.fortran/non-rectangular-loop-1.f90: Enable
738 commented tests.
739 * testsuite/libgomp.fortran/non-rectangular-loop-1a.f90: Remove
740 test file; tests are in non-rectangular-loop-1.f90.
741 * testsuite/libgomp.fortran/non-rectangular-loop-5.f90: Change
742 testcase to use a non-constant step to retain the 'sorry' test.
743 * testsuite/libgomp.fortran/non-rectangular-loop-6.f90: New test.
744
473c1b58
GA
7452023-07-17 Tobias Burnus <tobias@codesoucery.com>
746 Chung-Lin Tang <cltang@codesourcery.com>
747
748 * testsuite/libgomp.fortran/uses_allocators_1.f90: New test.
749 * testsuite/libgomp.fortran/uses_allocators_2.f90: New test.
750
18dac101
GA
7512023-07-14 Tobias Burnus <tobias@codesourcery.com>
752
753 * libgomp.texi (OMP_ALLOCATOR): Document the default values for
754 the traits. Add crossref to 'Memory allocation'.
755 (Memory allocation): Refer to OMP_ALLOCATOR for the available
756 traits and allocators/mem spaces; document the default value
757 for the pool_size trait.
758
7592023-07-14 Tobias Burnus <tobias@codesourcery.com>
760
761 * allocator.c (omp_init_allocator): Check whether symbol from
762 dlopened libnuma is available before using libnuma for
763 allocations.
764
3d0ca8b5
GA
7652023-07-13 David Edelsohn <dje.gcc@gmail.com>
766
767 * testsuite/libgomp.c++/target-map-class-2.C: Require LTO.
768 * testsuite/libgomp.c-c++-common/requires-4.c: Require LTO.
769 * testsuite/libgomp.c-c++-common/requires-4a.c: Require LTO.
770
15939bae
GA
7712023-07-12 Tobias Burnus <tobias@codesourcery.com>
772
773 * libgomp.texi (OpenMP 5.0): Replace '... stub' by @ref to
774 'Memory allocation' section which contains the full status.
775 (TR11): Remove differently worded duplicated entry.
776
7772023-07-12 Tobias Burnus <tobias@codesourcery.com>
778
779 * allocator.c: Add ifdef for LIBGOMP_USE_LIBNUMA.
780 (enum gomp_numa_memkind_kind): Renamed from gomp_memkind_kind;
781 add GOMP_MEMKIND_LIBNUMA.
782 (struct gomp_libnuma_data, gomp_init_libnuma, gomp_get_libnuma): New.
783 (omp_init_allocator): Handle partition=nearest with libnuma if avail.
784 (omp_aligned_alloc, omp_free, omp_aligned_calloc, omp_realloc): Add
785 numa_alloc_local (+ memset), numa_free, and numa_realloc calls as
786 needed.
787 * config/linux/allocator.c (LIBGOMP_USE_LIBNUMA): Define
788 * libgomp.texi: Fix a typo; use 'fi' instead of its ligature char.
789 (Memory allocation): Renamed from 'Memory allocation with libmemkind';
790 updated for libnuma usage.
791 * testsuite/libgomp.c-c++-common/alloc-11.c: New test.
792 * testsuite/libgomp.c-c++-common/alloc-12.c: New test.
793
af3d3ce3
GA
7942023-07-11 Tobias Burnus <tobias@codesourcery.com>
795
796 * allocator.c (omp_init_allocator): Use malloc for
797 omp_high_bw_mem_space when the memkind lib is unavailable
798 instead of returning omp_null_allocator.
799 * libgomp.texi (OpenMP 5.0): Fix typo.
800 (Memory allocation with libmemkind): Document implementation
801 in more detail.
802
270742ce
GA
8032023-06-22 Tobias Burnus <tobias@codesourcery.com>
804
805 * libgomp.texi: Use @var for ICV vars.
806 (OpenMP Environment Variables): Mention _ALL/_DEV/_DEV_<no> variants,
807 document which ICV is set and which scope the ICV has; extend/cleanup
808 some @ref.
809 (Implementation-defined ICV Initialization): New.
810 (nvptx): Document the implementation-defined used per-warp stack size.
811
e517d3f5
GA
8122023-06-19 Thomas Schwinge <thomas@codesourcery.com>
813
814 * testsuite/libgomp.c/target-51.c: Fix DejaGnu directive syntax
815 error.
816
8172023-06-19 Tobias Burnus <tobias@codesourcery.com>
818
819 * testsuite/libgomp.c/target-51.c: Accept more error msg variants
820 as expected dg-output.
821
8222023-06-19 Tobias Burnus <tobias@codesourcery.com>
823
824 PR middle-end/110270
825 * target.c (gomp_map_vars_internal): Copy host value instead of NULL
826 for GOMP_MAP_ZERO_LEN_ARRAY_SECTION if not mapped.
827 * libgomp.texi (OpenMP 5.2 Impl.): Mark as 'Y'.
828 * testsuite/libgomp.c/target-19.c: Update expected value.
829 * testsuite/libgomp.c++/target-18.C: Likewise.
830 * testsuite/libgomp.c++/target-19.C: Likewise.
831 * testsuite/libgomp.c-c++-common/requires-unified-addr-2.c: New test.
832 * testsuite/libgomp.c-c++-common/target-implicit-map-3.c: New test.
833 * testsuite/libgomp.c-c++-common/target-implicit-map-4.c: New test.
834
f10a4ce0
GA
8352023-06-16 Tobias Burnus <tobias@codesourcery.com>
836
837 * target.c (resolve_device): Call gomp_get_num_devices early to ensure
838 gomp_init_targets_once was called before using default-device-var.
839 * testsuite/libgomp.c/target-55.c: New test.
840 * testsuite/libgomp.c/target-55a.c: New test.
841
7ff79341
GA
8422023-06-15 Tobias Burnus <tobias@codesourcery.com>
843
844 * env.c (gomp_def_allocator_envvar): New var.
845 (parse_allocator): Handle OpenMP 5.1 syntax.
846 (cleanup_env): New.
847 (omp_display_env): Output gomp_def_allocator_envvar
848 for an allocator with traits.
849 * libgomp.texi (OMP_ALLOCATOR, OMP_AFFINITY_FORMAT,
850 OMP_DISPLAY_AFFINITY): New.
851 * testsuite/libgomp.c/allocator-1.c: New test.
852 * testsuite/libgomp.c/allocator-2.c: New test.
853 * testsuite/libgomp.c/allocator-3.c: New test.
854 * testsuite/libgomp.c/allocator-4.c: New test.
855 * testsuite/libgomp.c/allocator-5.c: New test.
856 * testsuite/libgomp.c/allocator-6.c: New test.
857
c1c5edef
GA
8582023-06-14 Thomas Schwinge <thomas@codesourcery.com>
859
860 * target.c (resolve_device): Align a
861 'OMP_TARGET_OFFLOAD=mandatory' diagnostic with others.
862 * testsuite/libgomp.c/target-51.c: Adjust.
863
8642023-06-14 Thomas Schwinge <thomas@codesourcery.com>
865
866 * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Don't
867 set.
868 * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags):
869 Likewise.
870 * testsuite/libgomp.c/simd-math-1.c: Remove
871 '-foffload-options=-lm'.
872 * testsuite/libgomp.fortran/fortran-torture_execute_math.f90:
873 Likewise.
874 * testsuite/libgomp.oacc-fortran/fortran-torture_execute_math.f90:
875 Likewise.
876
8772023-06-14 Thomas Schwinge <thomas@codesourcery.com>
878
879 * testsuite/libgomp.fortran/fortran-torture_execute_math.f90: New.
880 * testsuite/libgomp.oacc-fortran/fortran-torture_execute_math.f90:
881 Likewise.
882
8832023-06-14 Thomas Schwinge <thomas@codesourcery.com>
884
885 * testsuite/libgomp.c/target-51.c: Fix typo.
886
8872023-06-14 Tobias Burnus <tobias@codesourcery.com>
888
889 * env.c (gomp_default_icv_values): Init default_device_var to
890 an nonconforming value - INT_MIN.
891 (initialize_env): After env-var parsing, set default_device_var to
892 device 0 unless OMP_TARGET_OFFLOAD=mandatory.
893 (omp_display_env): If default_device_var is INT_MIN, call
894 gomp_init_targets_once.
895 * icv-device.c (omp_get_default_device): Likewise.
896 * libgomp.texi (OMP_DEFAULT_DEVICE): Update init description.
897 (OpenMP 5.2 Impl. Status): Mark OMP_TARGET_OFFLOAD=mandatory as 'Y'.
898 * target.c (resolve_device): Improve error message device-num < 0
899 with 'mandatory' and no no-host devices available.
900 (gomp_target_init): Set default-device-var if INT_MIN.
901 * testsuite/libgomp.c/target-48.c: New test.
902 * testsuite/libgomp.c/target-49.c: New test.
903 * testsuite/libgomp.c/target-50.c: New test.
904 * testsuite/libgomp.c/target-50a.c: New test.
905 * testsuite/libgomp.c/target-51.c: New test.
906 * testsuite/libgomp.c/target-52.c: New test.
907 * testsuite/libgomp.c/target-53.c: New test.
908 * testsuite/libgomp.c/target-54.c: New test.
909
532fb120
GA
9102023-06-13 Tobias Burnus <tobias@codesourcery.com>
911
912 PR libgomp/109837
913 * testsuite/libgomp.c-c++-common/requires-unified-addr-1.c: New test.
914 * testsuite/libgomp.fortran/requires-unified-addr-1.f90: New test.
915
9d250bdb
GA
9162023-06-12 Tobias Burnus <tobias@codesourcery.com>
917
918 * target.c (gomp_to_device_kind_p, gomp_map_vars_internal): Replace
919 GOMP_MAP_PRESENT_{FROM,TO,TOFROM,ACLLOC} by GOMP_MAP_FORCE_PRESENT.
920 (gomp_map_vars_internal, gomp_update): Likewise; unify and improve
921 error message.
922 * testsuite/libgomp.c-c++-common/target-present-2.c: Update for
923 changed error message.
924 * testsuite/libgomp.fortran/target-present-1.f90: Likewise.
925 * testsuite/libgomp.fortran/target-present-2.f90: Likewise.
926 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
927 * testsuite/libgomp.c-c++-common/target-present-1.c: Likewise and
928 extend testcase to check that data is copied when needed.
929 * testsuite/libgomp.c-c++-common/target-present-3.c: Likewise.
930 * testsuite/libgomp.fortran/target-present-3.f90: Likewise.
931
8c5b1365
GA
9322023-06-07 Thomas Schwinge <thomas@codesourcery.com>
933 Tobias Burnus <tobias@codesourcery.com>
934
935 * testsuite/libgomp.c-c++-common/target-present-1.c: Run code
936 also for non-offload_device targets; check that it runs
937 successfully for those and for all until a checkpoint for all
938 * testsuite/libgomp.c-c++-common/target-present-2.c: Likewise.
939 * testsuite/libgomp.c-c++-common/target-present-3.c: Likewise.
940 * testsuite/libgomp.fortran/target-present-1.f90: Likewise.
941 * testsuite/libgomp.fortran/target-present-3.f90: Likewise.
942 * testsuite/libgomp.fortran/target-present-2.f90: Likewise;
943 add missing vars to map clause.
944
4f0d4825
GA
9452023-06-06 Tobias Burnus <tobias@codesourcery.com>
946
947 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Regard
948 unified_address requirement as supported.
949 * libgomp.texi (OpenMP 5.0, AMD Radeon, nvptx): Remove
950 'unified_address' from the not-supported requirements.
951
9522023-06-06 Kwok Cheung Yeung <kcy@codesourcery.com>
953 Tobias Burnus <tobias@codesourcery.com>
954
955 * libgomp.texi (OpenMP 5.1 Impl. status): Set 'present' support for
956 defaultmap to 'Y', add 'Y' entry for 'present' on to/from/map clauses.
957 * target.c (gomp_to_device_kind_p): Add map kinds with 'present'
958 modifier.
959 (gomp_map_vars_existing): Use new GOMP_MAP_FORCE_P macro.
960 (gomp_map_vars_internal, gomp_update, gomp_target_rev):
961 Emit runtime error if memory region not present.
962 * testsuite/libgomp.c-c++-common/target-present-1.c: New test.
963 * testsuite/libgomp.c-c++-common/target-present-2.c: New test.
964 * testsuite/libgomp.c-c++-common/target-present-3.c: New test.
965 * testsuite/libgomp.fortran/target-present-1.f90: New test.
966 * testsuite/libgomp.fortran/target-present-2.f90: New test.
967 * testsuite/libgomp.fortran/target-present-3.f90: New test.
968
829d5975
GA
9692023-06-02 Thomas Schwinge <thomas@codesourcery.com>
970
971 PR testsuite/66005
972 * testsuite/lib/libgomp.exp: 'flock' through stdout.
973 * testsuite/flock: New.
974 * configure.ac (FLOCK): Point to that if no 'flock' available, but
975 'perl' is.
976 * configure: Regenerate.
977
9782023-06-02 Thomas Schwinge <thomas@codesourcery.com>
979
980 * configure.ac (PERL): Remove.
981 * configure: Regenerate.
982 * Makefile.in: Likewise.
983 * testsuite/Makefile.in: Likewise.
984
84749914
GA
9852023-06-01 Tobias Burnus <tobias@codesourcery.com>
986
987 * libgomp.texi (OpenMP 5.2): Mark pure-directive handling as 'Y'.
988
6e6bb373
GA
9892023-05-26 Tobias Burnus <tobias@codesourcery.com>
990
991 * testsuite/libgomp.fortran/allocate-4.f90: Update dg-error.
992
4579954f
GA
9932023-05-21 Tobias Burnus <tobias@codesourcery.com>
994
995 PR libgomp/109875
996 * config/gcn/target.c (GOMP_teams4): Honor nteams-var ICV.
997 * config/nvptx/target.c (GOMP_teams4): Likewise.
998 * testsuite/libgomp.c-c++-common/teams-nteams-icv-1.c: New test.
999 * testsuite/libgomp.c-c++-common/teams-nteams-icv-2.c: New test.
1000 * testsuite/libgomp.c-c++-common/teams-nteams-icv-3.c: New test.
1001 * testsuite/libgomp.c-c++-common/teams-nteams-icv-4.c: New test.
1002
5df01f89
GA
10032023-05-19 Jakub Jelinek <jakub@redhat.com>
1004
1005 PR libgomp/109904
1006 * configure.ac (link_gomp): Include also $DL_LIBS.
1007 * configure: Regenerated.
1008
ff2dcddf
GA
10092023-05-17 Tobias Burnus <tobias@codesourcery.com>
1010
1011 * testsuite/libgomp.fortran/target-enter-data-3.f90: Uncomment
1012 'target exit data'.
1013 * testsuite/libgomp.fortran/target-enter-data-4.f90: New test.
1014 * testsuite/libgomp.fortran/target-enter-data-5.f90: New test.
1015 * testsuite/libgomp.fortran/target-enter-data-6.f90: New test.
1016 * testsuite/libgomp.fortran/target-enter-data-7.f90: New test.
1017
3427b51b
GA
10182023-05-15 Thomas Schwinge <thomas@codesourcery.com>
1019
1020 PR testsuite/66005
1021 * configure.ac: Look for 'flock'.
1022 * testsuite/Makefile.am (gcc_test_parallel_slots): Enable parallel testing.
1023 * testsuite/config/default.exp: Don't 'load_lib "standard.exp"' here...
1024 * testsuite/lib/libgomp.exp: ... but here, instead.
1025 (libgomp_load): Override for parallel testing.
1026 * testsuite/libgomp-site-extra.exp.in (FLOCK): Set.
1027 * configure: Regenerate.
1028 * Makefile.in: Regenerate.
1029 * testsuite/Makefile.in: Regenerate.
1030
10312023-05-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1032 Thomas Schwinge <thomas@codesourcery.com>
1033
1034 PR testsuite/66005
1035 * testsuite/Makefile.am (PWD_COMMAND): New variable.
1036 (%/site.exp): New target.
1037 (check_p_numbers0, check_p_numbers1, check_p_numbers2)
1038 (check_p_numbers3, check_p_numbers4, check_p_numbers5)
1039 (check_p_numbers6, check_p_numbers, gcc_test_parallel_slots)
1040 (check_p_subdirs)
1041 (check_DEJAGNU_libgomp_targets): New variables.
1042 ($(check_DEJAGNU_libgomp_targets)): New target.
1043 ($(check_DEJAGNU_libgomp_targets)): New dependency.
1044 (check-DEJAGNU $(check_DEJAGNU_libgomp_targets)): New targets.
1045 * testsuite/Makefile.in: Regenerate.
1046 * testsuite/lib/libgomp.exp: For parallel testing,
1047 'load_file ../libgomp-test-support.exp'.
1048
10492023-05-15 Thomas Schwinge <thomas@codesourcery.com>
1050
1051 PR testsuite/91884
1052 * configure.ac: 'AC_SUBST(CXX)'.
1053 * configure: Regenerate.
1054 * Makefile.in: Likewise.
1055 * testsuite/Makefile.in: Likewise.
1056 * testsuite/libgomp-site-extra.exp.in (GXX_UNDER_TEST)
1057 (GFORTRAN_UNDER_TEST): Set.
1058 * testsuite/lib/libgomp.exp (libgomp_init): Adjust.
1059 * testsuite/libgomp.c++/c++.exp: Use 'GXX_UNDER_TEST'.
1060 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1061 * testsuite/libgomp.fortran/fortran.exp: Use
1062 'GFORTRAN_UNDER_TEST'.
1063 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1064
10652023-05-15 Thomas Schwinge <thomas@codesourcery.com>
1066
1067 PR testsuite/91884
1068 * testsuite/lib/libgomp.exp (libgomp_target_compile): Don't
1069 specify compiler.
1070 * testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Specify compiler.
1071 * testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
1072 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
1073 * testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
1074 Likewise.
1075 * testsuite/libgomp.oacc-c++/c++.exp (ALWAYS_CFLAGS): Likewise.
1076 * testsuite/libgomp.oacc-c/c.exp (ALWAYS_CFLAGS): Likewise.
1077 * testsuite/libgomp.oacc-fortran/fortran.exp (ALWAYS_CFLAGS):
1078 Likewise.
1079
20ca33db
GA
10802023-05-12 Tobias Burnus <tobias@codesourcery.com>
1081
1082 PR libstdc++/109816
1083 * testsuite/libgomp.c++/target-map-class-1.C: New test.
1084 * testsuite/libgomp.c++/target-map-class-2.C: New test.
1085
10862023-05-12 Thomas Schwinge <thomas@codesourcery.com>
1087
1088 * testsuite/lib/libgomp.exp (libgomp_target_compile): Generalize
1089 'lang_library_path' into a list of 'lang_library_paths'.
1090 * testsuite/libgomp.c++/c++.exp: Adjust.
1091 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1092 * testsuite/libgomp.fortran/fortran.exp: Adjust. Use that for
1093 libquadmath, too.
1094 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1095
10962023-05-12 Thomas Schwinge <thomas@codesourcery.com>
1097
1098 * testsuite/lib/libgomp.exp (libgomp_target_compile): Don't look
1099 at 'lang_test_file_found'.
1100 * testsuite/libgomp.c++/c++.exp: Don't set and use it, and instead
1101 'return' early if not able to test. Simplify 'ld_library_path' setup.
1102 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1103 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1104 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1105
11062023-05-12 Thomas Schwinge <thomas@codesourcery.com>
1107
1108 * testsuite/libgomp.c++/c++.exp: Resolve 'lang_test_file_found'
1109 first.
1110 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1111 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1112 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1113
11142023-05-12 Thomas Schwinge <thomas@codesourcery.com>
1115
1116 * testsuite/libgomp.c++/c++.exp: Localize 'lang_[...]' etc.
1117 * testsuite/libgomp.c/c.exp: Likewise.
1118 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1119 * testsuite/libgomp.graphite/graphite.exp: Likewise.
1120 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1121 * testsuite/libgomp.oacc-c/c.exp: Likewise.
1122 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1123
35e324da
GA
11242023-05-09 Thomas Schwinge <thomas@codesourcery.com>
1125
1126 * testsuite/libgomp.c++/c++.exp: Don't set 'lang_test_file'.
1127 * testsuite/libgomp.fortran/fortran.exp: Likewise.
1128 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1129 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
1130 * testsuite/libgomp.c/c.exp: Unset 'lang_test_file_found' instead of
1131 'lang_test_file'.
1132 * testsuite/libgomp.oacc-c/c.exp: Likewise.
1133 * testsuite/libgomp.graphite/graphite.exp: Likewise.
1134 * testsuite/lib/libgomp.exp (libgomp_target_compile): Look for
1135 'lang_test_file_found' instead of 'lang_test_file'.
1136
11372023-05-09 Thomas Schwinge <thomas@codesourcery.com>
1138
1139 * testsuite/lib/libgomp.exp (libgomp_init): Only use 'blddir' if
1140 set.
1141 * testsuite/libgomp.c++/c++.exp: Likewise.
1142 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1143
11442023-05-09 Thomas Schwinge <thomas@codesourcery.com>
1145
1146 * testsuite/libgomp.c++/c++.exp (blddir): Don't set.
1147 * testsuite/libgomp.oacc-c++/c++.exp (blddir): Likewise.
1148
212905a4
GA
11492023-05-08 Thomas Schwinge <thomas@codesourcery.com>
1150
1151 * testsuite/libgomp.c++/c++.exp: Use 'lang_include_flags' instead
1152 of 'libstdcxx_includes'.
1153 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
1154
11552023-05-08 Thomas Schwinge <thomas@codesourcery.com>
1156
1157 * target.c (gomp_target_rev): Instead of 'dev_to_host_cpy',
1158 'host_to_dev_cpy', 'token', take a single 'goacc_asyncqueue'.
1159 * libgomp.h (gomp_target_rev): Adjust.
1160 * libgomp-plugin.c (GOMP_PLUGIN_target_rev): Adjust.
1161 * libgomp-plugin.h (GOMP_PLUGIN_target_rev): Adjust.
1162 * plugin/plugin-gcn.c (process_reverse_offload): Adjust.
1163 * plugin/plugin-nvptx.c (rev_off_dev_to_host_cpy)
1164 (rev_off_host_to_dev_cpy): Remove.
1165 (GOMP_OFFLOAD_run): Adjust.
1166
fde093b7
GA
11672023-05-04 Julian Brown <julian@codesourcery.com>
1168
1169 PR fortran/109622
1170 * testsuite/libgomp.fortran/pr109622.f90: Move test...
1171 * testsuite/libgomp.oacc-fortran/pr109622.f90: ...to here. Ignore
1172 vector length warning.
1173 * testsuite/libgomp.fortran/pr109622-2.f90: Move test...
1174 * testsuite/libgomp.oacc-fortran/pr109622-2.f90: ...to here. Add
1175 missing copyin/copyout variable. Ignore vector length warnings.
1176 * testsuite/libgomp.fortran/pr109622-3.f90: Move test...
1177 * testsuite/libgomp.oacc-fortran/pr109622-3.f90: ...to here. Ignore
1178 vector length warnings.
1179 * testsuite/libgomp.oacc-fortran/pr109622-4.f90: New test.
1180
50205195
GA
11812023-04-28 Julian Brown <julian@codesourcery.com>
1182
1183 PR fortran/109622
1184 * testsuite/libgomp.fortran/pr109622.f90: New test.
1185 * testsuite/libgomp.fortran/pr109622-2.f90: New test.
1186 * testsuite/libgomp.fortran/pr109622-3.f90: New test.
1187
49cea02d
GA
11882023-04-25 Tobias Burnus <tobias@codesourcery.com>
1189
1190 * testsuite/libgomp.c-c++-common/scan-1.c: New test.
1191 * testsuite/libgomp.c/scan-23.c: New test.
1192 * testsuite/libgomp.fortran/scan-2.f90: New test.
1193
579cdc1e
GA
11942023-03-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1195
1196 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c: Add
1197 weak_undefined options.
1198
13ec81eb
GA
11992023-03-24 Tobias Burnus <tobias@codesourcery.com>
1200
1201 * libgomp.texi (Offload-Target Specifics): Grammar fix.
1202
12032023-03-24 Thomas Schwinge <thomas@codesourcery.com>
1204
1205 PR fortran/104949
1206 * target.c (gomp_map_vars_internal) <GOMP_MAP_FIRSTPRIVATE>: Add
1207 caveat/safeguard.
1208
c8065441
GA
12092023-03-10 Thomas Schwinge <thomas@codesourcery.com>
1210
1211 PR libgomp/90596
1212 * target.c (gomp_map_vars_internal): Allow for
1213 'param_kind == GOMP_MAP_VARS_OPENACC | GOMP_MAP_VARS_TARGET'.
1214 * oacc-parallel.c (GOACC_parallel_keyed): Pass
1215 'GOMP_MAP_VARS_TARGET' to 'goacc_map_vars'.
1216 * plugin/plugin-gcn.c (alloc_by_agent, gcn_exec)
1217 (GOMP_OFFLOAD_openacc_exec, GOMP_OFFLOAD_openacc_async_exec):
1218 Adjust, simplify.
1219 (gomp_offload_free): Remove.
1220 * plugin/plugin-nvptx.c (nvptx_exec, GOMP_OFFLOAD_openacc_exec)
1221 (GOMP_OFFLOAD_openacc_async_exec): Adjust, simplify.
1222 (cuda_free_argmem): Remove.
1223 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
1224 Adjust.
1225
12262023-03-10 Thomas Schwinge <thomas@codesourcery.com>
1227
1228 * target.c (gomp_copy_host2dev, gomp_map_vars_internal): Allow
1229 libgomp 'cbuf' buffering with OpenACC 'async' for 'ephemeral'
1230 data.
1231
12322023-03-10 Thomas Schwinge <thomas@codesourcery.com>
1233
1234 * target.c (gomp_map_vars_internal): Use 'OFFSET_INLINED' for
1235 'GOMP_MAP_IF_PRESENT'.
1236 * plugin/plugin-gcn.c (gcn_exec, GOMP_OFFLOAD_openacc_exec)
1237 (GOMP_OFFLOAD_openacc_async_exec): Adjust.
1238 * plugin/plugin-nvptx.c (nvptx_exec, GOMP_OFFLOAD_openacc_exec)
1239 (GOMP_OFFLOAD_openacc_async_exec): Likewise.
1240 * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: Add 'async'
1241 testing.
1242 * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: Likewise.
1243
12442023-03-10 Thomas Schwinge <thomas@codesourcery.com>
1245
1246 * oacc-async.c (goacc_wait): Remove 'acc_async_test' -> skip
1247 shortcut.
1248
12492023-03-10 Thomas Schwinge <thomas@codesourcery.com>
1250
1251 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Document/verify
1252 another aspect of OpenACC 'async' semantics.
1253
12542023-03-10 Thomas Schwinge <thomas@codesourcery.com>
1255
1256 * plugin/plugin-gcn.c (gcn_exec): Fix 'acc_ev_enqueue_launch_end'
1257 position.
1258 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
1259 Verify 'acc_ev_alloc', 'acc_ev_free'.
1260
da2b9c6e
GA
12612023-03-09 Hongyu Wang <hongyu.wang@intel.com>
1262
1263 PR libgomp/109062
1264 * env.c (wait_policy): Initialize to -1.
1265 (initialize_icvs): Initialize icvs->wait_policy to -1.
1266 * testsuite/libgomp.c-c++-common/pr109062.c: New test.
1267
6a87fdd3
GA
12682023-03-08 Tobias Burnus <tobias@codesourcery.com>
1269
1270 * libgomp.texi (Offload-Target Specifics): Mention GCN_STACK_SIZE.
1271
14db9ed5
GA
12722023-03-02 Kwok Cheung Yeung <kcy@codesourcery.com>
1273 Paul-Antoine Arras <pa@codesourcery.com>
1274
1275 * testsuite/libgomp.c/simd-math-1.c: New testcase.
1276
c88a7c63
GA
12772023-03-01 Tobias Burnus <tobias@codesourcery.com>
1278
1279 PR middle-end/108546
1280 * testsuite/libgomp.fortran/is_device_ptr-3.f90: New test.
1281 * testsuite/libgomp.fortran/use_device_ptr-optional-4.f90: New test.
1282
b6f98991
GA
12832023-02-22 Thomas Schwinge <thomas@codesourcery.com>
1284
1285 * testsuite/libgomp.fortran/alloc-10.f90: Use
1286 '-Wno-complain-wrong-lang'.
1287 * testsuite/libgomp.fortran/alloc-11.f90: Likewise.
1288 * testsuite/libgomp.fortran/alloc-7.f90: Likewise.
1289 * testsuite/libgomp.fortran/alloc-9.f90: Likewise.
1290 * testsuite/libgomp.fortran/allocate-1.f90: Likewise.
1291 * testsuite/libgomp.fortran/depend-4.f90: Likewise.
1292 * testsuite/libgomp.fortran/depend-5.f90: Likewise.
1293 * testsuite/libgomp.fortran/depend-6.f90: Likewise.
1294 * testsuite/libgomp.fortran/depend-7.f90: Likewise.
1295 * testsuite/libgomp.fortran/depend-inoutset-1.f90: Likewise.
1296 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90:
1297 Likewise.
1298 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90:
1299 Likewise.
1300 * testsuite/libgomp.fortran/order-reproducible-1.f90: Likewise.
1301 * testsuite/libgomp.fortran/order-reproducible-2.f90: Likewise.
1302 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
1303 * testsuite/libgomp.fortran/task-detach-6.f90: Remove left-over
1304 'dg-prune-output'.
1305
88cc4495
GA
13062023-02-16 Jakub Jelinek <jakub@redhat.com>
1307
1308 * libgomp.texi: Fix typos - theads -> threads.
1309
13102023-02-16 Jakub Jelinek <jakub@redhat.com>
1311
1312 * testsuite/libgomp.fortran/target-nowait-array-section.f90: Fix
1313 comment typo and improve its wording.
1314
29a35391
GA
13152023-02-15 Tobias Burnus <tobias@codesourcery.com>
1316
1317 * target.c (gomp_target_rev): Dereference ptr
1318 to get device address.
1319 * testsuite/libgomp.fortran/reverse-offload-5.f90: Add test
1320 for unallocated allocatable.
1321
13222023-02-15 Tobias Burnus <tobias@codesourcery.com>
1323
1324 * target.c (gomp_map_vars_internal): Add 'i > 0' before doing a
1325 kind check.
1326 (GOMP_target_enter_exit_data): If the next map item is
1327 GOMP_MAP_ALWAYS_POINTER map it together with the current item.
1328 * testsuite/libgomp.fortran/target-enter-data-3.f90: New test.
1329
e92e2c96
GA
13302023-02-09 Tobias Burnus <tobias@codesourcery.com>
1331
1332 PR fortran/107424
1333 * testsuite/libgomp.fortran/non-rectangular-loop-1.f90: New test.
1334 * testsuite/libgomp.fortran/non-rectangular-loop-1a.f90: New test.
1335 * testsuite/libgomp.fortran/non-rectangular-loop-2.f90: New test.
1336 * testsuite/libgomp.fortran/non-rectangular-loop-3.f90: New test.
1337 * testsuite/libgomp.fortran/non-rectangular-loop-4.f90: New test.
1338 * testsuite/libgomp.fortran/non-rectangular-loop-5.f90: New test.
1339
8f3b85ef
GA
13402023-02-07 Thomas Schwinge <thomas@codesourcery.com>
1341
1342 * testsuite/libgomp.fortran/reverse-offload-6.f90: Fix nvptx
1343 offloading compilation.
1344
49e52115
GA
13452023-02-03 Tobias Burnus <tobias@codesourcery.com>
1346
1347 * target.c (gomp_target_rev): Handle mapnum == 0 and avoid
1348 freeing not allocated memory.
1349 * testsuite/libgomp.fortran/reverse-offload-6.f90: New test.
1350
13512023-02-03 Tobias Burnus <tobias@codesourcery.com>
1352
1353 * libgomp.texi (5.0 Impl. Status, gcn specifics): Update for
1354 reverse offload.
1355 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Accept
1356 reverse-offload requirement.
1357
a37a0cb3
GA
13582023-02-02 Andrew Stubbs <ams@codesourcery.com>
1359
1360 * config/gcn/libgomp-gcn.h (DEFAULT_GCN_STACK_SIZE): New define.
1361 (DEFAULT_TEAM_ARENA_SIZE): New define.
1362 (struct heap): Move to this file.
1363 (struct kernargs_abi): Likewise.
1364 * config/gcn/team.c (gomp_gcn_enter_kernel): Use team arena size from
1365 the kernargs.
1366 * libgomp.h: Include libgomp-gcn.h.
1367 (TEAM_ARENA_SIZE): Remove.
1368 (team_malloc): Update the error message.
1369 * plugin/plugin-gcn.c (struct kernargs): Move common content to
1370 struct kernargs_abi.
1371 (struct agent_info): Rename team arenas to ephemeral memories.
1372 (struct team_arena_list): Rename ....
1373 (struct ephemeral_memories_list): to this.
1374 (struct heap): Delete.
1375 (team_arena_size): New variable.
1376 (stack_size): New variable.
1377 (print_kernel_dispatch): Update debug messages.
1378 (init_environment_variables): Read GCN_TEAM_ARENA_SIZE.
1379 Read GCN_STACK_SIZE.
1380 (get_team_arena): Rename ...
1381 (configure_ephemeral_memories): ... to this, and set up stacks.
1382 (release_team_arena): Rename ...
1383 (release_ephemeral_memories): ... to this.
1384 (destroy_team_arenas): Rename ...
1385 (destroy_ephemeral_memories): ... to this.
1386 (create_kernel_dispatch): Add num_threads parameter.
1387 Adjust for kernargs_abi refactor and ephemeral memories.
1388 (release_kernel_dispatch): Adjust for ephemeral memories.
1389 (run_kernel): Pass thread-count to create_kernel_dispatch.
1390 (GOMP_OFFLOAD_init_device): Adjust for ephemeral memories.
1391 (GOMP_OFFLOAD_fini_device): Adjust for ephemeral memories.
1392
13932023-02-02 Tobias Burnus <tobias@codesourcery.com>
1394
1395 * libgomp.texi (OpenMP TR11): Fix item for 'strict' modifier.
1396
0a251e74
GA
13972023-02-01 Tobias Burnus <tobias@codesourcery.com>
1398
1399 * testsuite/libgomp.fortran/allocate-3.f90: Fix ALIGN
1400 usage, remove unused -fdump-tree-original.
1401 * testsuite/libgomp.fortran/allocate-4.f90: New.
1402
14032023-02-01 Tobias Burnus <tobias@codesourcery.com>
1404
1405 * libgomp.texi (5.0 Impl. Status): Update 'requires' and 'ancestor'.
1406 (GCN): Add item about 'omp requires'.
1407 (nvptx): Likewise; add item about reverse offload.
1408
338eb0f0
GA
14092023-01-27 Tobias Burnus <tobias@codesourcery.com>
1410
1411 PR fortran/108558
1412 * testsuite/libgomp.fortran/has_device_addr.f90: New test.
1413
607f278a
GA
14142023-01-23 Tobias Burnus <tobias@codesourcery.com>
1415
1416 * libgomp.texi (OpenMP 5.0): Set non-rectangular
1417 loop nest back to 'P' as Fortran support is incomplete.
1418
0846336d
GA
14192023-01-19 Jakub Jelinek <jakub@redhat.com>
1420
1421 PR middle-end/108459
1422 * testsuite/libgomp.c/pr108459.c: New test.
1423
8d07b193
GA
14242023-01-17 Martin Liska <mliska@suse.cz>
1425
1426 * Makefile.in: Regenerate.
1427 * configure: Regenerate.
1428
d901bf8a
GA
14292023-01-07 LIU Hao <lh_mouse@126.com>
1430
1431 PR middle-end/108300
1432 * config/mingw32/proc.c: Define `WIN32_LEAN_AND_MEAN` before
1433 <windows.h>.
1434
53ef7c1d
GA
14352023-01-05 Jakub Jelinek <jakub@redhat.com>
1436
1437 PR c++/108286
1438 * testsuite/libgomp.c++/pr108286.C: New test.
1439
fee53a31
GA
14402023-01-02 Jakub Jelinek <jakub@redhat.com>
1441
1442 * libgomp.texi: Bump @copying's copyright year.
1443
de282a20
GA
14442022-12-21 Chung-Lin Tang <cltang@codesourcery.com>
1445
1446 PR target/99555
1447 * config/nvptx/bar.c (generation_to_barrier): Remove.
1448 (futex_wait,futex_wake,do_spin,do_wait): Remove.
1449 (GOMP_WAIT_H): Remove.
1450 (#include "../linux/bar.c"): Remove.
1451 (gomp_barrier_wait_end): New function.
1452 (gomp_barrier_wait): Likewise.
1453 (gomp_barrier_wait_last): Likewise.
1454 (gomp_team_barrier_wait_end): Likewise.
1455 (gomp_team_barrier_wait): Likewise.
1456 (gomp_team_barrier_wait_final): Likewise.
1457 (gomp_team_barrier_wait_cancel_end): Likewise.
1458 (gomp_team_barrier_wait_cancel): Likewise.
1459 (gomp_team_barrier_cancel): Likewise.
1460 * config/nvptx/bar.h (gomp_barrier_t): Remove waiters, lock fields.
1461 (gomp_barrier_init): Remove init of waiters, lock fields.
1462 (gomp_team_barrier_wake): Remove prototype, add new static inline
1463 function.
1464
14652022-12-21 Jakub Jelinek <jakub@redhat.com>
1466
1467 PR c++/108180
1468 * testsuite/libgomp.c++/pr108180.C: New test.
1469
5fb1e674
GA
14702022-12-16 Tobias Burnus <tobias@codesourcery.com>
1471
1472 PR libfortran/108056
1473 * testsuite/libgomp.fortran/allocate-4.f90: Remove
1474 accidentally added file.
1475
c8f767b2
GA
14762022-12-15 Tobias Burnus <tobias@codesourcery.com>
1477
1478 PR libfortran/108056
1479 * testsuite/libgomp.fortran/allocate-4.f90: New file.
1480
26f4aefa
GA
14812022-12-14 Julian Brown <julian@codesourcery.com>
1482
1483 * testsuite/libgomp.fortran/combined-directive-splitting-1.f90: New
1484 test.
1485
c6b12b80
GA
14862022-12-10 Tobias Burnus <tobias@codesourcery.com>
1487
1488 * libgomp.h (struct target_mem_desc): Predeclare; move
1489 below after 'reverse_splay_tree_node' and add rev_array
1490 member.
1491 (struct reverse_splay_tree_key_s, reverse_splay_compare): New.
1492 (reverse_splay_tree_node, reverse_splay_tree,
1493 reverse_splay_tree_key): New typedef.
1494 (struct gomp_device_descr): Add mem_map_rev member.
1495 * oacc-host.c (host_dispatch): NULL init .mem_map_rev.
1496 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_get_num_devices): Claim
1497 support for GOMP_REQUIRES_REVERSE_OFFLOAD.
1498 * splay-tree.h (splay_tree_callback_stop): New typedef; like
1499 splay_tree_callback but returning int not void.
1500 (splay_tree_foreach_lazy): Define; like splay_tree_foreach but
1501 taking splay_tree_callback_stop as argument.
1502 * splay-tree.c (splay_tree_foreach_internal_lazy,
1503 splay_tree_foreach_lazy): New; but early exit if callback returns
1504 nonzero.
1505 * target.c: Instatiate splay_tree_c with splay_tree_prefix 'reverse'.
1506 (gomp_map_lookup_rev): New.
1507 (gomp_load_image_to_device): Handle reverse-offload function
1508 lookup table.
1509 (gomp_unload_image_from_device): Free devicep->mem_map_rev.
1510 (struct gomp_splay_tree_rev_lookup_data, gomp_splay_tree_rev_lookup,
1511 gomp_map_rev_lookup, struct cpy_data, gomp_map_cdata_lookup_int,
1512 gomp_map_cdata_lookup): New auxiliary structs and functions for
1513 gomp_target_rev.
1514 (gomp_target_rev): Implement reverse offloading and its mapping.
1515 (gomp_target_init): Init current_device.mem_map_rev.root.
1516 * testsuite/libgomp.fortran/reverse-offload-2.f90: New test.
1517 * testsuite/libgomp.fortran/reverse-offload-3.f90: New test.
1518 * testsuite/libgomp.fortran/reverse-offload-4.f90: New test.
1519 * testsuite/libgomp.fortran/reverse-offload-5.f90: New test.
1520 * testsuite/libgomp.fortran/reverse-offload-5a.f90: New test without
1521 mapping of on-device allocated variables.
1522
40ce6485
GA
15232022-12-09 Tobias Burnus <tobias@codesourcery.com>
1524
1525 * libgomp.texi (5.1 Impl. Status): Split allocate clause/directive
1526 item about 'align'; mark clause as 'Y' and directive as 'N'.
1527 * testsuite/libgomp.fortran/allocate-2.f90: New test.
1528 * testsuite/libgomp.fortran/allocate-3.f90: New test.
1529
3fe66f7f
GA
15302022-12-06 Marcel Vollweiler <marcel@codesourcery.com>
1531
1532 * config/gcn/icv-device.c (omp_get_teams_thread_limit): Added to
1533 allow processing of device-specific values.
1534 (omp_set_teams_thread_limit): Likewise.
1535 (ialias): Likewise.
1536 * config/nvptx/icv-device.c (omp_get_teams_thread_limit): Likewise.
1537 (omp_set_teams_thread_limit): Likewise.
1538 (ialias): Likewise.
1539 * icv-device.c (omp_get_teams_thread_limit): Likewise.
1540 (ialias): Likewise.
1541 (omp_set_teams_thread_limit): Likewise.
1542 * icv.c (omp_set_teams_thread_limit): Removed.
1543 (omp_get_teams_thread_limit): Likewise.
1544 (ialias): Likewise.
1545 * libgomp.texi: Updated documentation for nvptx and gcn corresponding
1546 to the limitation of the number of teams.
1547 * plugin/plugin-gcn.c (limit_teams): New helper function that limits
1548 the number of teams by twice the number of compute units.
1549 (parse_target_attributes): Limit the number of teams on gcn offload
1550 devices.
1551 * target.c (get_gomp_offload_icvs): Added teams_thread_limit_var
1552 handling.
1553 (gomp_load_image_to_device): Added a size check for the ICVs struct
1554 variable.
1555 (gomp_copy_back_icvs): New function that is used in GOMP_target_ext to
1556 copy back the ICV values from device to host.
1557 (GOMP_target_ext): Update the number of teams and threads in the kernel
1558 args also considering device-specific values.
1559 * testsuite/libgomp.c-c++-common/icv-4.c: Fixed an error in the reading
1560 of OMP_TEAMS_THREAD_LIMIT from the environment.
1561 * testsuite/libgomp.c-c++-common/icv-5.c: Extended.
1562 * testsuite/libgomp.c-c++-common/icv-6.c: Extended.
1563 * testsuite/libgomp.c-c++-common/icv-7.c: Extended.
1564 * testsuite/libgomp.c-c++-common/icv-9.c: New test.
1565 * testsuite/libgomp.fortran/icv-5.f90: New test.
1566 * testsuite/libgomp.fortran/icv-6.f90: New test.
1567
15682022-12-06 Tobias Burnus <tobias@codesourcery.com>
1569
1570 * libgomp.texi (OpenMP 5.2): Add missing 'the'.
1571 (TR11): Add missing '@tab N @tab'.
1572
6eea85a9
GA
15732022-11-30 Tobias Burnus <tobias@codesourcery.com>
1574
1575 * libgomp.texi (OpenMP Context Selectors): Add 'gfx803' to gcn's isa.
1576
15772022-11-30 Paul-Antoine Arras <pa@codesourcery.com>
1578
1579 * testsuite/libgomp.c/declare-variant-4-fiji.c: New test.
1580 * testsuite/libgomp.c/declare-variant-4-gfx803.c: New test.
1581 * testsuite/libgomp.c/declare-variant-4-gfx900.c: New test.
1582 * testsuite/libgomp.c/declare-variant-4-gfx906.c: New test.
1583 * testsuite/libgomp.c/declare-variant-4-gfx908.c: New test.
1584 * testsuite/libgomp.c/declare-variant-4-gfx90a.c: New test.
1585 * testsuite/libgomp.c/declare-variant-4.h: New header file.
1586
b7748535
GA
15872022-11-28 Tobias Burnus <tobias@codesourcery.com>
1588
1589 * libgomp.texi (OpenMP 5.2): Mark end-directive as Y.
1590
d769c504
GA
15912022-11-25 Sandra Loosemore <sandra@codesourcery.com>
1592
1593 * testsuite/lib/libgomp.exp: Load scanoffloadipa.exp library.
1594 * testsuite/libgomp.c/target-simd-clone-1.c: New.
1595 * testsuite/libgomp.c/target-simd-clone-2.c: New.
1596 * testsuite/libgomp.c/target-simd-clone-3.c: New.
1597
15982022-11-25 Tobias Burnus <tobias@codesourcery.com>
1599
1600 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Use unsigned int
1601 for 'i' to match 'fn_entries'; regard absent GOMP_REV_OFFLOAD_VAR
1602 as valid and the code having no reverse-offload code.
1603 * testsuite/libgomp.c-c++-common/reverse-offload-2.c: New test.
1604
16052022-11-25 Tobias Burnus <tobias@codesourcery.com>
1606
1607 * libgomp.texi (OpenMP Implementation Status): Add three 5.1 items
1608 and status for Technical Report (TR) 11.
1609
8b7fee1d
GA
16102022-11-21 Tobias Burnus <tobias@codesourcery.com>
1611
1612 * config/gcn/libgomp-gcn.h (struct output):
1613 Remove 'msg_u64' from the union, change
1614 value_u64[2] to value_u64[6].
1615 * config/gcn/target.c (GOMP_target_ext): Update accordingly.
1616 * plugin/plugin-gcn.c (process_reverse_offload, console_output):
1617 Likewise.
1618
fb98ede8
GA
16192022-11-19 Tobias Burnus <tobias@codesourcery.com>
1620
1621 * config/gcn/libgomp-gcn.h: New file; contains
1622 struct output, declared previously in plugin-gcn.c.
1623 * config/gcn/target.c: Include it.
1624 (GOMP_ADDITIONAL_ICVS): Declare as extern var.
1625 (GOMP_target_ext): Handle reverse offload.
1626 * plugin/plugin-gcn.c: Include libgomp-gcn.h.
1627 (struct kernargs): Replace struct def by the one
1628 from libgomp-gcn.h for output_data.
1629 (process_reverse_offload): New.
1630 (console_output): Call it.
1631
80909529
GA
16322022-11-16 Tobias Burnus <tobias@codesourcery.com>
1633 Andrew Stubbs <ams@codesourcery.com>
1634
1635 * config/gcn/team.c (gomp_gcn_enter_kernel): Use
1636 __builtin_gcn_kernarg_ptr instead of asm ("s8").
1637
83d400bd
GA
16382022-11-14 Martin Liska <mliska@suse.cz>
1639
1640 Revert:
1641 2022-11-14 Martin Liska <mliska@suse.cz>
1642
1643 * doc/amd-radeon-gcn.rst: New file.
1644 * doc/conf.py: New file.
1645 * doc/copyright.rst: New file.
1646 * doc/cuda-streams-usage.rst: New file.
1647 * doc/enabling-openacc.rst: New file.
1648 * doc/enabling-openmp.rst: New file.
1649 * doc/first-invocation-nvidia-cublas-library-api.rst: New file.
1650 * doc/first-invocation-openacc-library-api.rst: New file.
1651 * doc/funding.rst: New file.
1652 * doc/general-public-license-3.rst: New file.
1653 * doc/gnu-free-documentation-license.rst: New file.
1654 * doc/implementation-status-and-implementation-defined-behavior.rst: New file.
1655 * doc/index.rst: New file.
1656 * doc/indices-and-tables.rst: New file.
1657 * doc/introduction.rst: New file.
1658 * doc/memory-allocation-with-libmemkind.rst: New file.
1659 * doc/nvptx.rst: New file.
1660 * doc/offload-target-specifics.rst: New file.
1661 * doc/openacc-environment-variables.rst: New file.
1662 * doc/openacc-environment-variables/accdevicenum.rst: New file.
1663 * doc/openacc-environment-variables/accdevicetype.rst: New file.
1664 * doc/openacc-environment-variables/accproflib.rst: New file.
1665 * doc/openacc-environment-variables/gccaccnotify.rst: New file.
1666 * doc/openacc-introduction.rst: New file.
1667 * doc/openacc-library-and-environment-variables.rst: New file.
1668 * doc/openacc-library-interoperability.rst: New file.
1669 * doc/openacc-profiling-interface.rst: New file.
1670 * doc/openacc-runtime-library-routines.rst: New file.
1671 * doc/openacc-runtime-library-routines/accasynctest.rst: New file.
1672 * doc/openacc-runtime-library-routines/accasynctestall.rst: New file.
1673 * doc/openacc-runtime-library-routines/accattach.rst: New file.
1674 * doc/openacc-runtime-library-routines/acccopyin.rst: New file.
1675 * doc/openacc-runtime-library-routines/acccopyout.rst: New file.
1676 * doc/openacc-runtime-library-routines/acccreate.rst: New file.
1677 * doc/openacc-runtime-library-routines/accdelete.rst: New file.
1678 * doc/openacc-runtime-library-routines/accdetach.rst: New file.
1679 * doc/openacc-runtime-library-routines/accdeviceptr.rst: New file.
1680 * doc/openacc-runtime-library-routines/accfree.rst: New file.
1681 * doc/openacc-runtime-library-routines/accgetcudastream.rst: New file.
1682 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst: New file.
1683 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst: New file.
1684 * doc/openacc-runtime-library-routines/accgetdevicenum.rst: New file.
1685 * doc/openacc-runtime-library-routines/accgetdevicetype.rst: New file.
1686 * doc/openacc-runtime-library-routines/accgetnumdevices.rst: New file.
1687 * doc/openacc-runtime-library-routines/accgetproperty.rst: New file.
1688 * doc/openacc-runtime-library-routines/acchostptr.rst: New file.
1689 * doc/openacc-runtime-library-routines/accinit.rst: New file.
1690 * doc/openacc-runtime-library-routines/accispresent.rst: New file.
1691 * doc/openacc-runtime-library-routines/accmalloc.rst: New file.
1692 * doc/openacc-runtime-library-routines/accmapdata.rst: New file.
1693 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst: New file.
1694 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst: New file.
1695 * doc/openacc-runtime-library-routines/accondevice.rst: New file.
1696 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst: New file.
1697 * doc/openacc-runtime-library-routines/accpresentorcreate.rst: New file.
1698 * doc/openacc-runtime-library-routines/accproflookup.rst: New file.
1699 * doc/openacc-runtime-library-routines/accprofregister.rst: New file.
1700 * doc/openacc-runtime-library-routines/accprofunregister.rst: New file.
1701 * doc/openacc-runtime-library-routines/accregisterlibrary.rst: New file.
1702 * doc/openacc-runtime-library-routines/accsetcudastream.rst: New file.
1703 * doc/openacc-runtime-library-routines/accsetdevicenum.rst: New file.
1704 * doc/openacc-runtime-library-routines/accsetdevicetype.rst: New file.
1705 * doc/openacc-runtime-library-routines/accshutdown.rst: New file.
1706 * doc/openacc-runtime-library-routines/accunmapdata.rst: New file.
1707 * doc/openacc-runtime-library-routines/accupdatedevice.rst: New file.
1708 * doc/openacc-runtime-library-routines/accupdateself.rst: New file.
1709 * doc/openacc-runtime-library-routines/accwait.rst: New file.
1710 * doc/openacc-runtime-library-routines/accwaitall.rst: New file.
1711 * doc/openacc-runtime-library-routines/accwaitallasync.rst: New file.
1712 * doc/openacc-runtime-library-routines/accwaitasync.rst: New file.
1713 * doc/openmp-context-selectors.rst: New file.
1714 * doc/openmp-environment-variables.rst: New file.
1715 * doc/openmp-environment-variables/gompcpuaffinity.rst: New file.
1716 * doc/openmp-environment-variables/gompdebug.rst: New file.
1717 * doc/openmp-environment-variables/gomprtemsthreadpools.rst: New file.
1718 * doc/openmp-environment-variables/gompspincount.rst: New file.
1719 * doc/openmp-environment-variables/gompstacksize.rst: New file.
1720 * doc/openmp-environment-variables/ompcancellation.rst: New file.
1721 * doc/openmp-environment-variables/ompdefaultdevice.rst: New file.
1722 * doc/openmp-environment-variables/ompdisplayenv.rst: New file.
1723 * doc/openmp-environment-variables/ompdynamic.rst: New file.
1724 * doc/openmp-environment-variables/ompmaxactivelevels.rst: New file.
1725 * doc/openmp-environment-variables/ompmaxtaskpriority.rst: New file.
1726 * doc/openmp-environment-variables/ompnested.rst: New file.
1727 * doc/openmp-environment-variables/ompnumteams.rst: New file.
1728 * doc/openmp-environment-variables/ompnumthreads.rst: New file.
1729 * doc/openmp-environment-variables/ompplaces.rst: New file.
1730 * doc/openmp-environment-variables/ompprocbind.rst: New file.
1731 * doc/openmp-environment-variables/ompschedule.rst: New file.
1732 * doc/openmp-environment-variables/ompstacksize.rst: New file.
1733 * doc/openmp-environment-variables/omptargetoffload.rst: New file.
1734 * doc/openmp-environment-variables/ompteamsthreadlimit.rst: New file.
1735 * doc/openmp-environment-variables/ompthreadlimit.rst: New file.
1736 * doc/openmp-environment-variables/ompwaitpolicy.rst: New file.
1737 * doc/openmp-implementation-specifics.rst: New file.
1738 * doc/openmp-implementation-status.rst: New file.
1739 * doc/openmp-implementation-status/openmp-45.rst: New file.
1740 * doc/openmp-implementation-status/openmp-50.rst: New file.
1741 * doc/openmp-implementation-status/openmp-51.rst: New file.
1742 * doc/openmp-implementation-status/openmp-52.rst: New file.
1743 * doc/openmp-runtime-library-routines.rst: New file.
1744 * doc/openmp-runtime-library-routines/ompdestroylock.rst: New file.
1745 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst: New file.
1746 * doc/openmp-runtime-library-routines/ompfulfillevent.rst: New file.
1747 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst: New file.
1748 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst: New file.
1749 * doc/openmp-runtime-library-routines/ompgetcancellation.rst: New file.
1750 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst: New file.
1751 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst: New file.
1752 * doc/openmp-runtime-library-routines/ompgetdynamic.rst: New file.
1753 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst: New file.
1754 * doc/openmp-runtime-library-routines/ompgetlevel.rst: New file.
1755 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst: New file.
1756 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst: New file.
1757 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst: New file.
1758 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst: New file.
1759 * doc/openmp-runtime-library-routines/ompgetnested.rst: New file.
1760 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst: New file.
1761 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst: New file.
1762 * doc/openmp-runtime-library-routines/ompgetnumteams.rst: New file.
1763 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst: New file.
1764 * doc/openmp-runtime-library-routines/ompgetprocbind.rst: New file.
1765 * doc/openmp-runtime-library-routines/ompgetschedule.rst: New file.
1766 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst: New file.
1767 * doc/openmp-runtime-library-routines/ompgetteamnum.rst: New file.
1768 * doc/openmp-runtime-library-routines/ompgetteamsize.rst: New file.
1769 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst: New file.
1770 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst: New file.
1771 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst: New file.
1772 * doc/openmp-runtime-library-routines/ompgetwtick.rst: New file.
1773 * doc/openmp-runtime-library-routines/ompgetwtime.rst: New file.
1774 * doc/openmp-runtime-library-routines/ompinfinal.rst: New file.
1775 * doc/openmp-runtime-library-routines/ompinitlock.rst: New file.
1776 * doc/openmp-runtime-library-routines/ompinitnestlock.rst: New file.
1777 * doc/openmp-runtime-library-routines/ompinparallel.rst: New file.
1778 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst: New file.
1779 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst: New file.
1780 * doc/openmp-runtime-library-routines/ompsetdynamic.rst: New file.
1781 * doc/openmp-runtime-library-routines/ompsetlock.rst: New file.
1782 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst: New file.
1783 * doc/openmp-runtime-library-routines/ompsetnested.rst: New file.
1784 * doc/openmp-runtime-library-routines/ompsetnestlock.rst: New file.
1785 * doc/openmp-runtime-library-routines/ompsetnumteams.rst: New file.
1786 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst: New file.
1787 * doc/openmp-runtime-library-routines/ompsetschedule.rst: New file.
1788 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst: New file.
1789 * doc/openmp-runtime-library-routines/omptestlock.rst: New file.
1790 * doc/openmp-runtime-library-routines/omptestnestlock.rst: New file.
1791 * doc/openmp-runtime-library-routines/ompunsetlock.rst: New file.
1792 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst: New file.
1793 * doc/reporting-bugs.rst: New file.
1794 * doc/the-libgomp-abi.rst: New file.
1795 * doc/the-libgomp-abi/implementing-atomic-construct.rst: New file.
1796 * doc/the-libgomp-abi/implementing-barrier-construct.rst: New file.
1797 * doc/the-libgomp-abi/implementing-critical-construct.rst: New file.
1798 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
1799 New file.
1800 * doc/the-libgomp-abi/implementing-flush-construct.rst: New file.
1801 * doc/the-libgomp-abi/implementing-for-construct.rst: New file.
1802 * doc/the-libgomp-abi/implementing-master-construct.rst: New file.
1803 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst: New file.
1804 * doc/the-libgomp-abi/implementing-ordered-construct.rst: New file.
1805 * doc/the-libgomp-abi/implementing-parallel-construct.rst: New file.
1806 * doc/the-libgomp-abi/implementing-private-clause.rst: New file.
1807 * doc/the-libgomp-abi/implementing-reduction-clause.rst: New file.
1808 * doc/the-libgomp-abi/implementing-sections-construct.rst: New file.
1809 * doc/the-libgomp-abi/implementing-single-construct.rst: New file.
1810 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst: New file.
1811
18122022-11-14 Martin Liska <mliska@suse.cz>
1813
1814 Revert:
1815 2022-11-14 Martin Liska <mliska@suse.cz>
1816
1817 * Makefile.in: Support Sphinx based documentation.
1818
18192022-11-14 Martin Liska <mliska@suse.cz>
1820
1821 Revert:
1822 2022-11-14 Martin Liska <mliska@suse.cz>
1823
1824 * libgomp.texi: Removed.
1825
18262022-11-14 Martin Liska <mliska@suse.cz>
1827
1828 Revert:
1829 2022-11-14 Martin Liska <mliska@suse.cz>
1830
1831 * Makefile.in: Support --with-sphinx-build.
1832 * configure.ac: Likewise..
1833 * configure: Regenerate.
1834
18352022-11-14 Martin Liska <mliska@suse.cz>
1836
1837 Revert:
1838 2022-11-09 Martin Liska <mliska@suse.cz>
1839
1840 * Makefile.in: Build info pages conditionally.
1841
18422022-11-14 Martin Liska <mliska@suse.cz>
1843
1844 Revert:
1845 2022-11-14 Martin Liska <mliska@suse.cz>
1846
1847 * doc/amd-radeon-gcn.rst:
3d3b561f 1848 Add trailing newline.
83d400bd 1849 * doc/copyright.rst:
3d3b561f 1850 Add trailing newline.
83d400bd 1851 * doc/cuda-streams-usage.rst:
3d3b561f 1852 Add trailing newline.
83d400bd 1853 * doc/enabling-openacc.rst:
3d3b561f 1854 Add trailing newline.
83d400bd 1855 * doc/enabling-openmp.rst:
3d3b561f 1856 Add trailing newline.
83d400bd 1857 * doc/first-invocation-nvidia-cublas-library-api.rst:
3d3b561f 1858 Add trailing newline.
83d400bd 1859 * doc/first-invocation-openacc-library-api.rst:
3d3b561f 1860 Add trailing newline.
83d400bd 1861 * doc/funding.rst:
3d3b561f 1862 Add trailing newline.
83d400bd 1863 * doc/general-public-license-3.rst:
3d3b561f 1864 Add trailing newline.
83d400bd 1865 * doc/gnu-free-documentation-license.rst:
3d3b561f 1866 Add trailing newline.
83d400bd 1867 * doc/implementation-status-and-implementation-defined-behavior.rst:
3d3b561f 1868 Add trailing newline.
83d400bd 1869 * doc/index.rst:
3d3b561f 1870 Add trailing newline.
83d400bd 1871 * doc/indices-and-tables.rst:
3d3b561f 1872 Add trailing newline.
83d400bd 1873 * doc/introduction.rst:
3d3b561f 1874 Add trailing newline.
83d400bd 1875 * doc/memory-allocation-with-libmemkind.rst:
3d3b561f 1876 Add trailing newline.
83d400bd 1877 * doc/nvptx.rst:
3d3b561f 1878 Add trailing newline.
83d400bd 1879 * doc/offload-target-specifics.rst:
3d3b561f 1880 Add trailing newline.
83d400bd 1881 * doc/openacc-environment-variables.rst:
3d3b561f 1882 Add trailing newline.
83d400bd 1883 * doc/openacc-environment-variables/accdevicenum.rst:
3d3b561f 1884 Add trailing newline.
83d400bd 1885 * doc/openacc-environment-variables/accdevicetype.rst:
3d3b561f 1886 Add trailing newline.
83d400bd 1887 * doc/openacc-environment-variables/accproflib.rst:
3d3b561f 1888 Add trailing newline.
83d400bd 1889 * doc/openacc-environment-variables/gccaccnotify.rst:
3d3b561f 1890 Add trailing newline.
83d400bd 1891 * doc/openacc-introduction.rst:
3d3b561f 1892 Add trailing newline.
83d400bd 1893 * doc/openacc-library-and-environment-variables.rst:
3d3b561f 1894 Add trailing newline.
83d400bd 1895 * doc/openacc-library-interoperability.rst:
3d3b561f 1896 Add trailing newline.
83d400bd 1897 * doc/openacc-profiling-interface.rst:
3d3b561f 1898 Add trailing newline.
83d400bd 1899 * doc/openacc-runtime-library-routines.rst:
3d3b561f 1900 Add trailing newline.
83d400bd 1901 * doc/openacc-runtime-library-routines/accasynctest.rst:
3d3b561f 1902 Add trailing newline.
83d400bd 1903 * doc/openacc-runtime-library-routines/accasynctestall.rst:
3d3b561f 1904 Add trailing newline.
83d400bd 1905 * doc/openacc-runtime-library-routines/accattach.rst:
3d3b561f 1906 Add trailing newline.
83d400bd 1907 * doc/openacc-runtime-library-routines/acccopyin.rst:
3d3b561f 1908 Add trailing newline.
83d400bd 1909 * doc/openacc-runtime-library-routines/acccopyout.rst:
3d3b561f 1910 Add trailing newline.
83d400bd 1911 * doc/openacc-runtime-library-routines/acccreate.rst:
3d3b561f 1912 Add trailing newline.
83d400bd 1913 * doc/openacc-runtime-library-routines/accdelete.rst:
3d3b561f 1914 Add trailing newline.
83d400bd 1915 * doc/openacc-runtime-library-routines/accdetach.rst:
3d3b561f 1916 Add trailing newline.
83d400bd 1917 * doc/openacc-runtime-library-routines/accdeviceptr.rst:
3d3b561f 1918 Add trailing newline.
83d400bd 1919 * doc/openacc-runtime-library-routines/accfree.rst:
3d3b561f 1920 Add trailing newline.
83d400bd 1921 * doc/openacc-runtime-library-routines/accgetcudastream.rst:
3d3b561f 1922 Add trailing newline.
83d400bd 1923 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst:
3d3b561f 1924 Add trailing newline.
83d400bd 1925 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst:
3d3b561f 1926 Add trailing newline.
83d400bd 1927 * doc/openacc-runtime-library-routines/accgetdevicenum.rst:
3d3b561f 1928 Add trailing newline.
83d400bd 1929 * doc/openacc-runtime-library-routines/accgetdevicetype.rst:
3d3b561f 1930 Add trailing newline.
83d400bd 1931 * doc/openacc-runtime-library-routines/accgetnumdevices.rst:
3d3b561f 1932 Add trailing newline.
83d400bd 1933 * doc/openacc-runtime-library-routines/accgetproperty.rst:
3d3b561f 1934 Add trailing newline.
83d400bd 1935 * doc/openacc-runtime-library-routines/acchostptr.rst:
3d3b561f 1936 Add trailing newline.
83d400bd 1937 * doc/openacc-runtime-library-routines/accinit.rst:
3d3b561f 1938 Add trailing newline.
83d400bd 1939 * doc/openacc-runtime-library-routines/accispresent.rst:
3d3b561f 1940 Add trailing newline.
83d400bd 1941 * doc/openacc-runtime-library-routines/accmalloc.rst:
3d3b561f 1942 Add trailing newline.
83d400bd 1943 * doc/openacc-runtime-library-routines/accmapdata.rst:
3d3b561f 1944 Add trailing newline.
83d400bd 1945 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst:
3d3b561f 1946 Add trailing newline.
83d400bd 1947 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst:
3d3b561f 1948 Add trailing newline.
83d400bd 1949 * doc/openacc-runtime-library-routines/accondevice.rst:
3d3b561f 1950 Add trailing newline.
83d400bd 1951 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst:
3d3b561f 1952 Add trailing newline.
83d400bd 1953 * doc/openacc-runtime-library-routines/accpresentorcreate.rst:
3d3b561f 1954 Add trailing newline.
83d400bd 1955 * doc/openacc-runtime-library-routines/accproflookup.rst:
3d3b561f 1956 Add trailing newline.
83d400bd 1957 * doc/openacc-runtime-library-routines/accprofregister.rst:
3d3b561f 1958 Add trailing newline.
83d400bd 1959 * doc/openacc-runtime-library-routines/accprofunregister.rst:
3d3b561f 1960 Add trailing newline.
83d400bd 1961 * doc/openacc-runtime-library-routines/accregisterlibrary.rst:
3d3b561f 1962 Add trailing newline.
83d400bd 1963 * doc/openacc-runtime-library-routines/accsetcudastream.rst:
3d3b561f 1964 Add trailing newline.
83d400bd 1965 * doc/openacc-runtime-library-routines/accsetdevicenum.rst:
3d3b561f 1966 Add trailing newline.
83d400bd 1967 * doc/openacc-runtime-library-routines/accsetdevicetype.rst:
3d3b561f 1968 Add trailing newline.
83d400bd 1969 * doc/openacc-runtime-library-routines/accshutdown.rst:
3d3b561f 1970 Add trailing newline.
83d400bd 1971 * doc/openacc-runtime-library-routines/accunmapdata.rst:
3d3b561f 1972 Add trailing newline.
83d400bd 1973 * doc/openacc-runtime-library-routines/accupdatedevice.rst:
3d3b561f 1974 Add trailing newline.
83d400bd 1975 * doc/openacc-runtime-library-routines/accupdateself.rst:
3d3b561f 1976 Add trailing newline.
83d400bd 1977 * doc/openacc-runtime-library-routines/accwait.rst:
3d3b561f 1978 Add trailing newline.
83d400bd 1979 * doc/openacc-runtime-library-routines/accwaitall.rst:
3d3b561f 1980 Add trailing newline.
83d400bd 1981 * doc/openacc-runtime-library-routines/accwaitallasync.rst:
3d3b561f 1982 Add trailing newline.
83d400bd 1983 * doc/openacc-runtime-library-routines/accwaitasync.rst:
3d3b561f 1984 Add trailing newline.
83d400bd 1985 * doc/openmp-context-selectors.rst:
3d3b561f 1986 Add trailing newline.
83d400bd 1987 * doc/openmp-environment-variables.rst:
3d3b561f 1988 Add trailing newline.
83d400bd 1989 * doc/openmp-environment-variables/gompcpuaffinity.rst:
3d3b561f 1990 Add trailing newline.
83d400bd 1991 * doc/openmp-environment-variables/gompdebug.rst:
3d3b561f 1992 Add trailing newline.
83d400bd 1993 * doc/openmp-environment-variables/gomprtemsthreadpools.rst:
3d3b561f 1994 Add trailing newline.
83d400bd 1995 * doc/openmp-environment-variables/gompspincount.rst:
3d3b561f 1996 Add trailing newline.
83d400bd 1997 * doc/openmp-environment-variables/gompstacksize.rst:
3d3b561f 1998 Add trailing newline.
83d400bd 1999 * doc/openmp-environment-variables/ompcancellation.rst:
3d3b561f 2000 Add trailing newline.
83d400bd 2001 * doc/openmp-environment-variables/ompdefaultdevice.rst:
3d3b561f 2002 Add trailing newline.
83d400bd 2003 * doc/openmp-environment-variables/ompdisplayenv.rst:
3d3b561f 2004 Add trailing newline.
83d400bd 2005 * doc/openmp-environment-variables/ompdynamic.rst:
3d3b561f 2006 Add trailing newline.
83d400bd 2007 * doc/openmp-environment-variables/ompmaxactivelevels.rst:
3d3b561f 2008 Add trailing newline.
83d400bd 2009 * doc/openmp-environment-variables/ompmaxtaskpriority.rst:
3d3b561f 2010 Add trailing newline.
83d400bd 2011 * doc/openmp-environment-variables/ompnested.rst:
3d3b561f 2012 Add trailing newline.
83d400bd 2013 * doc/openmp-environment-variables/ompnumteams.rst:
3d3b561f 2014 Add trailing newline.
83d400bd 2015 * doc/openmp-environment-variables/ompnumthreads.rst:
3d3b561f 2016 Add trailing newline.
83d400bd 2017 * doc/openmp-environment-variables/ompplaces.rst:
3d3b561f 2018 Add trailing newline.
83d400bd 2019 * doc/openmp-environment-variables/ompprocbind.rst:
3d3b561f 2020 Add trailing newline.
83d400bd 2021 * doc/openmp-environment-variables/ompschedule.rst:
3d3b561f 2022 Add trailing newline.
83d400bd 2023 * doc/openmp-environment-variables/ompstacksize.rst:
3d3b561f 2024 Add trailing newline.
83d400bd 2025 * doc/openmp-environment-variables/omptargetoffload.rst:
3d3b561f 2026 Add trailing newline.
83d400bd 2027 * doc/openmp-environment-variables/ompteamsthreadlimit.rst:
3d3b561f 2028 Add trailing newline.
83d400bd 2029 * doc/openmp-environment-variables/ompthreadlimit.rst:
3d3b561f 2030 Add trailing newline.
83d400bd 2031 * doc/openmp-environment-variables/ompwaitpolicy.rst:
3d3b561f 2032 Add trailing newline.
83d400bd 2033 * doc/openmp-implementation-specifics.rst:
3d3b561f 2034 Add trailing newline.
83d400bd 2035 * doc/openmp-implementation-status.rst:
3d3b561f 2036 Add trailing newline.
83d400bd 2037 * doc/openmp-implementation-status/openmp-45.rst:
3d3b561f 2038 Add trailing newline.
83d400bd 2039 * doc/openmp-implementation-status/openmp-50.rst:
3d3b561f 2040 Add trailing newline.
83d400bd 2041 * doc/openmp-implementation-status/openmp-51.rst:
3d3b561f 2042 Add trailing newline.
83d400bd 2043 * doc/openmp-implementation-status/openmp-52.rst:
3d3b561f 2044 Add trailing newline.
83d400bd 2045 * doc/openmp-runtime-library-routines.rst:
3d3b561f 2046 Add trailing newline.
83d400bd 2047 * doc/openmp-runtime-library-routines/ompdestroylock.rst:
3d3b561f 2048 Add trailing newline.
83d400bd 2049 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst:
3d3b561f 2050 Add trailing newline.
83d400bd 2051 * doc/openmp-runtime-library-routines/ompfulfillevent.rst:
3d3b561f 2052 Add trailing newline.
83d400bd 2053 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst:
3d3b561f 2054 Add trailing newline.
83d400bd 2055 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst:
3d3b561f 2056 Add trailing newline.
83d400bd 2057 * doc/openmp-runtime-library-routines/ompgetcancellation.rst:
3d3b561f 2058 Add trailing newline.
83d400bd 2059 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst:
3d3b561f 2060 Add trailing newline.
83d400bd 2061 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst:
3d3b561f 2062 Add trailing newline.
83d400bd 2063 * doc/openmp-runtime-library-routines/ompgetdynamic.rst:
3d3b561f 2064 Add trailing newline.
83d400bd 2065 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst:
3d3b561f 2066 Add trailing newline.
83d400bd 2067 * doc/openmp-runtime-library-routines/ompgetlevel.rst:
3d3b561f 2068 Add trailing newline.
83d400bd 2069 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst:
3d3b561f 2070 Add trailing newline.
83d400bd 2071 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst:
3d3b561f 2072 Add trailing newline.
83d400bd 2073 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst:
3d3b561f 2074 Add trailing newline.
83d400bd 2075 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst:
3d3b561f 2076 Add trailing newline.
83d400bd 2077 * doc/openmp-runtime-library-routines/ompgetnested.rst:
3d3b561f 2078 Add trailing newline.
83d400bd 2079 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst:
3d3b561f 2080 Add trailing newline.
83d400bd 2081 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst:
3d3b561f 2082 Add trailing newline.
83d400bd 2083 * doc/openmp-runtime-library-routines/ompgetnumteams.rst:
3d3b561f 2084 Add trailing newline.
83d400bd 2085 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst:
3d3b561f 2086 Add trailing newline.
83d400bd 2087 * doc/openmp-runtime-library-routines/ompgetprocbind.rst:
3d3b561f 2088 Add trailing newline.
83d400bd 2089 * doc/openmp-runtime-library-routines/ompgetschedule.rst:
3d3b561f 2090 Add trailing newline.
83d400bd 2091 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst:
3d3b561f 2092 Add trailing newline.
83d400bd 2093 * doc/openmp-runtime-library-routines/ompgetteamnum.rst:
3d3b561f 2094 Add trailing newline.
83d400bd 2095 * doc/openmp-runtime-library-routines/ompgetteamsize.rst:
3d3b561f 2096 Add trailing newline.
83d400bd 2097 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst:
3d3b561f 2098 Add trailing newline.
83d400bd 2099 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst:
3d3b561f 2100 Add trailing newline.
83d400bd 2101 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst:
3d3b561f 2102 Add trailing newline.
83d400bd 2103 * doc/openmp-runtime-library-routines/ompgetwtick.rst:
3d3b561f 2104 Add trailing newline.
83d400bd 2105 * doc/openmp-runtime-library-routines/ompgetwtime.rst:
3d3b561f 2106 Add trailing newline.
83d400bd 2107 * doc/openmp-runtime-library-routines/ompinfinal.rst:
3d3b561f 2108 Add trailing newline.
83d400bd 2109 * doc/openmp-runtime-library-routines/ompinitlock.rst:
3d3b561f 2110 Add trailing newline.
83d400bd 2111 * doc/openmp-runtime-library-routines/ompinitnestlock.rst:
3d3b561f 2112 Add trailing newline.
83d400bd 2113 * doc/openmp-runtime-library-routines/ompinparallel.rst:
3d3b561f 2114 Add trailing newline.
83d400bd 2115 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst:
3d3b561f 2116 Add trailing newline.
83d400bd 2117 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst:
3d3b561f 2118 Add trailing newline.
83d400bd 2119 * doc/openmp-runtime-library-routines/ompsetdynamic.rst:
3d3b561f 2120 Add trailing newline.
83d400bd 2121 * doc/openmp-runtime-library-routines/ompsetlock.rst:
3d3b561f 2122 Add trailing newline.
83d400bd 2123 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst:
3d3b561f 2124 Add trailing newline.
83d400bd 2125 * doc/openmp-runtime-library-routines/ompsetnested.rst:
3d3b561f 2126 Add trailing newline.
83d400bd 2127 * doc/openmp-runtime-library-routines/ompsetnestlock.rst:
3d3b561f 2128 Add trailing newline.
83d400bd 2129 * doc/openmp-runtime-library-routines/ompsetnumteams.rst:
3d3b561f 2130 Add trailing newline.
83d400bd 2131 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst:
3d3b561f 2132 Add trailing newline.
83d400bd 2133 * doc/openmp-runtime-library-routines/ompsetschedule.rst:
3d3b561f 2134 Add trailing newline.
83d400bd 2135 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst:
3d3b561f 2136 Add trailing newline.
83d400bd 2137 * doc/openmp-runtime-library-routines/omptestlock.rst:
3d3b561f 2138 Add trailing newline.
83d400bd 2139 * doc/openmp-runtime-library-routines/omptestnestlock.rst:
3d3b561f 2140 Add trailing newline.
83d400bd 2141 * doc/openmp-runtime-library-routines/ompunsetlock.rst:
3d3b561f 2142 Add trailing newline.
83d400bd 2143 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst:
3d3b561f 2144 Add trailing newline.
83d400bd 2145 * doc/reporting-bugs.rst:
3d3b561f 2146 Add trailing newline.
83d400bd 2147 * doc/the-libgomp-abi.rst:
3d3b561f 2148 Add trailing newline.
83d400bd 2149 * doc/the-libgomp-abi/implementing-atomic-construct.rst:
3d3b561f 2150 Add trailing newline.
83d400bd 2151 * doc/the-libgomp-abi/implementing-barrier-construct.rst:
3d3b561f 2152 Add trailing newline.
83d400bd 2153 * doc/the-libgomp-abi/implementing-critical-construct.rst:
3d3b561f 2154 Add trailing newline.
83d400bd 2155 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
3d3b561f 2156 Add trailing newline.
83d400bd 2157 * doc/the-libgomp-abi/implementing-flush-construct.rst:
3d3b561f 2158 Add trailing newline.
83d400bd 2159 * doc/the-libgomp-abi/implementing-for-construct.rst:
3d3b561f 2160 Add trailing newline.
83d400bd 2161 * doc/the-libgomp-abi/implementing-master-construct.rst:
3d3b561f 2162 Add trailing newline.
83d400bd 2163 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst:
3d3b561f 2164 Add trailing newline.
83d400bd 2165 * doc/the-libgomp-abi/implementing-ordered-construct.rst:
3d3b561f 2166 Add trailing newline.
83d400bd 2167 * doc/the-libgomp-abi/implementing-parallel-construct.rst:
3d3b561f 2168 Add trailing newline.
83d400bd 2169 * doc/the-libgomp-abi/implementing-private-clause.rst:
3d3b561f 2170 Add trailing newline.
83d400bd 2171 * doc/the-libgomp-abi/implementing-reduction-clause.rst:
3d3b561f 2172 Add trailing newline.
83d400bd 2173 * doc/the-libgomp-abi/implementing-sections-construct.rst:
3d3b561f 2174 Add trailing newline.
83d400bd 2175 * doc/the-libgomp-abi/implementing-single-construct.rst:
3d3b561f 2176 Add trailing newline.
83d400bd 2177 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst:
3d3b561f 2178 Add trailing newline.
83d400bd
GA
2179
21802022-11-14 Martin Liska <mliska@suse.cz>
2181
2182 Revert:
2183 2022-11-09 Martin Liska <mliska@suse.cz>
2184
2185 * Makefile.in: Add missing HAS_SPHINX_BUILD.
2186
21872022-11-14 Martin Liska <mliska@suse.cz>
2188
2189 Revert:
2190 2022-11-14 Martin Liska <mliska@suse.cz>
2191
2192 * doc/conf.py: Add newline at last line.
2193
21942022-11-14 Martin Liska <mliska@suse.cz>
2195
2196 Revert:
2197 2022-11-14 Martin Liska <mliska@suse.cz>
2198
2199 PR other/107620
2200 * configure: Regenerate.
2201 * configure.ac: Always set sphinx-build.
2202
eefbfbc7
GA
22032022-11-13 Martin Liska <mliska@suse.cz>
2204
2205 PR other/107620
2206 * configure: Regenerate.
2207 * configure.ac: Always set sphinx-build.
2208
30d77d49
GA
22092022-11-12 Jakub Jelinek <jakub@redhat.com>
2210
2211 PR libgomp/107641
2212 * env.c (parse_unsigned_long): Cast params[2] to uintptr_t rather than
2213 unsigned long. Change type of upper from unsigned to unsigned long.
2214
f225b813
GA
22152022-11-10 Martin Liska <mliska@suse.cz>
2216
2217 * doc/conf.py: Add newline at last line.
2218
1cdfd0e5
GA
22192022-11-09 Martin Liska <mliska@suse.cz>
2220
2221 * Makefile.in: Add missing HAS_SPHINX_BUILD.
2222
22232022-11-09 Martin Liska <mliska@suse.cz>
2224
2225 * doc/amd-radeon-gcn.rst:
3d3b561f 2226 Add trailing newline.
1cdfd0e5 2227 * doc/copyright.rst:
3d3b561f 2228 Add trailing newline.
1cdfd0e5 2229 * doc/cuda-streams-usage.rst:
3d3b561f 2230 Add trailing newline.
1cdfd0e5 2231 * doc/enabling-openacc.rst:
3d3b561f 2232 Add trailing newline.
1cdfd0e5 2233 * doc/enabling-openmp.rst:
3d3b561f 2234 Add trailing newline.
1cdfd0e5 2235 * doc/first-invocation-nvidia-cublas-library-api.rst:
3d3b561f 2236 Add trailing newline.
1cdfd0e5 2237 * doc/first-invocation-openacc-library-api.rst:
3d3b561f 2238 Add trailing newline.
1cdfd0e5 2239 * doc/funding.rst:
3d3b561f 2240 Add trailing newline.
1cdfd0e5 2241 * doc/general-public-license-3.rst:
3d3b561f 2242 Add trailing newline.
1cdfd0e5 2243 * doc/gnu-free-documentation-license.rst:
3d3b561f 2244 Add trailing newline.
1cdfd0e5 2245 * doc/implementation-status-and-implementation-defined-behavior.rst:
3d3b561f 2246 Add trailing newline.
1cdfd0e5 2247 * doc/index.rst:
3d3b561f 2248 Add trailing newline.
1cdfd0e5 2249 * doc/indices-and-tables.rst:
3d3b561f 2250 Add trailing newline.
1cdfd0e5 2251 * doc/introduction.rst:
3d3b561f 2252 Add trailing newline.
1cdfd0e5 2253 * doc/memory-allocation-with-libmemkind.rst:
3d3b561f 2254 Add trailing newline.
1cdfd0e5 2255 * doc/nvptx.rst:
3d3b561f 2256 Add trailing newline.
1cdfd0e5 2257 * doc/offload-target-specifics.rst:
3d3b561f 2258 Add trailing newline.
1cdfd0e5 2259 * doc/openacc-environment-variables.rst:
3d3b561f 2260 Add trailing newline.
1cdfd0e5 2261 * doc/openacc-environment-variables/accdevicenum.rst:
3d3b561f 2262 Add trailing newline.
1cdfd0e5 2263 * doc/openacc-environment-variables/accdevicetype.rst:
3d3b561f 2264 Add trailing newline.
1cdfd0e5 2265 * doc/openacc-environment-variables/accproflib.rst:
3d3b561f 2266 Add trailing newline.
1cdfd0e5 2267 * doc/openacc-environment-variables/gccaccnotify.rst:
3d3b561f 2268 Add trailing newline.
1cdfd0e5 2269 * doc/openacc-introduction.rst:
3d3b561f 2270 Add trailing newline.
1cdfd0e5 2271 * doc/openacc-library-and-environment-variables.rst:
3d3b561f 2272 Add trailing newline.
1cdfd0e5 2273 * doc/openacc-library-interoperability.rst:
3d3b561f 2274 Add trailing newline.
1cdfd0e5 2275 * doc/openacc-profiling-interface.rst:
3d3b561f 2276 Add trailing newline.
1cdfd0e5 2277 * doc/openacc-runtime-library-routines.rst:
3d3b561f 2278 Add trailing newline.
1cdfd0e5 2279 * doc/openacc-runtime-library-routines/accasynctest.rst:
3d3b561f 2280 Add trailing newline.
1cdfd0e5 2281 * doc/openacc-runtime-library-routines/accasynctestall.rst:
3d3b561f 2282 Add trailing newline.
1cdfd0e5 2283 * doc/openacc-runtime-library-routines/accattach.rst:
3d3b561f 2284 Add trailing newline.
1cdfd0e5 2285 * doc/openacc-runtime-library-routines/acccopyin.rst:
3d3b561f 2286 Add trailing newline.
1cdfd0e5 2287 * doc/openacc-runtime-library-routines/acccopyout.rst:
3d3b561f 2288 Add trailing newline.
1cdfd0e5 2289 * doc/openacc-runtime-library-routines/acccreate.rst:
3d3b561f 2290 Add trailing newline.
1cdfd0e5 2291 * doc/openacc-runtime-library-routines/accdelete.rst:
3d3b561f 2292 Add trailing newline.
1cdfd0e5 2293 * doc/openacc-runtime-library-routines/accdetach.rst:
3d3b561f 2294 Add trailing newline.
1cdfd0e5 2295 * doc/openacc-runtime-library-routines/accdeviceptr.rst:
3d3b561f 2296 Add trailing newline.
1cdfd0e5 2297 * doc/openacc-runtime-library-routines/accfree.rst:
3d3b561f 2298 Add trailing newline.
1cdfd0e5 2299 * doc/openacc-runtime-library-routines/accgetcudastream.rst:
3d3b561f 2300 Add trailing newline.
1cdfd0e5 2301 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst:
3d3b561f 2302 Add trailing newline.
1cdfd0e5 2303 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst:
3d3b561f 2304 Add trailing newline.
1cdfd0e5 2305 * doc/openacc-runtime-library-routines/accgetdevicenum.rst:
3d3b561f 2306 Add trailing newline.
1cdfd0e5 2307 * doc/openacc-runtime-library-routines/accgetdevicetype.rst:
3d3b561f 2308 Add trailing newline.
1cdfd0e5 2309 * doc/openacc-runtime-library-routines/accgetnumdevices.rst:
3d3b561f 2310 Add trailing newline.
1cdfd0e5 2311 * doc/openacc-runtime-library-routines/accgetproperty.rst:
3d3b561f 2312 Add trailing newline.
1cdfd0e5 2313 * doc/openacc-runtime-library-routines/acchostptr.rst:
3d3b561f 2314 Add trailing newline.
1cdfd0e5 2315 * doc/openacc-runtime-library-routines/accinit.rst:
3d3b561f 2316 Add trailing newline.
1cdfd0e5 2317 * doc/openacc-runtime-library-routines/accispresent.rst:
3d3b561f 2318 Add trailing newline.
1cdfd0e5 2319 * doc/openacc-runtime-library-routines/accmalloc.rst:
3d3b561f 2320 Add trailing newline.
1cdfd0e5 2321 * doc/openacc-runtime-library-routines/accmapdata.rst:
3d3b561f 2322 Add trailing newline.
1cdfd0e5 2323 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst:
3d3b561f 2324 Add trailing newline.
1cdfd0e5 2325 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst:
3d3b561f 2326 Add trailing newline.
1cdfd0e5 2327 * doc/openacc-runtime-library-routines/accondevice.rst:
3d3b561f 2328 Add trailing newline.
1cdfd0e5 2329 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst:
3d3b561f 2330 Add trailing newline.
1cdfd0e5 2331 * doc/openacc-runtime-library-routines/accpresentorcreate.rst:
3d3b561f 2332 Add trailing newline.
1cdfd0e5 2333 * doc/openacc-runtime-library-routines/accproflookup.rst:
3d3b561f 2334 Add trailing newline.
1cdfd0e5 2335 * doc/openacc-runtime-library-routines/accprofregister.rst:
3d3b561f 2336 Add trailing newline.
1cdfd0e5 2337 * doc/openacc-runtime-library-routines/accprofunregister.rst:
3d3b561f 2338 Add trailing newline.
1cdfd0e5 2339 * doc/openacc-runtime-library-routines/accregisterlibrary.rst:
3d3b561f 2340 Add trailing newline.
1cdfd0e5 2341 * doc/openacc-runtime-library-routines/accsetcudastream.rst:
3d3b561f 2342 Add trailing newline.
1cdfd0e5 2343 * doc/openacc-runtime-library-routines/accsetdevicenum.rst:
3d3b561f 2344 Add trailing newline.
1cdfd0e5 2345 * doc/openacc-runtime-library-routines/accsetdevicetype.rst:
3d3b561f 2346 Add trailing newline.
1cdfd0e5 2347 * doc/openacc-runtime-library-routines/accshutdown.rst:
3d3b561f 2348 Add trailing newline.
1cdfd0e5 2349 * doc/openacc-runtime-library-routines/accunmapdata.rst:
3d3b561f 2350 Add trailing newline.
1cdfd0e5 2351 * doc/openacc-runtime-library-routines/accupdatedevice.rst:
3d3b561f 2352 Add trailing newline.
1cdfd0e5 2353 * doc/openacc-runtime-library-routines/accupdateself.rst:
3d3b561f 2354 Add trailing newline.
1cdfd0e5 2355 * doc/openacc-runtime-library-routines/accwait.rst:
3d3b561f 2356 Add trailing newline.
1cdfd0e5 2357 * doc/openacc-runtime-library-routines/accwaitall.rst:
3d3b561f 2358 Add trailing newline.
1cdfd0e5 2359 * doc/openacc-runtime-library-routines/accwaitallasync.rst:
3d3b561f 2360 Add trailing newline.
1cdfd0e5 2361 * doc/openacc-runtime-library-routines/accwaitasync.rst:
3d3b561f 2362 Add trailing newline.
1cdfd0e5 2363 * doc/openmp-context-selectors.rst:
3d3b561f 2364 Add trailing newline.
1cdfd0e5 2365 * doc/openmp-environment-variables.rst:
3d3b561f 2366 Add trailing newline.
1cdfd0e5 2367 * doc/openmp-environment-variables/gompcpuaffinity.rst:
3d3b561f 2368 Add trailing newline.
1cdfd0e5 2369 * doc/openmp-environment-variables/gompdebug.rst:
3d3b561f 2370 Add trailing newline.
1cdfd0e5 2371 * doc/openmp-environment-variables/gomprtemsthreadpools.rst:
3d3b561f 2372 Add trailing newline.
1cdfd0e5 2373 * doc/openmp-environment-variables/gompspincount.rst:
3d3b561f 2374 Add trailing newline.
1cdfd0e5 2375 * doc/openmp-environment-variables/gompstacksize.rst:
3d3b561f 2376 Add trailing newline.
1cdfd0e5 2377 * doc/openmp-environment-variables/ompcancellation.rst:
3d3b561f 2378 Add trailing newline.
1cdfd0e5 2379 * doc/openmp-environment-variables/ompdefaultdevice.rst:
3d3b561f 2380 Add trailing newline.
1cdfd0e5 2381 * doc/openmp-environment-variables/ompdisplayenv.rst:
3d3b561f 2382 Add trailing newline.
1cdfd0e5 2383 * doc/openmp-environment-variables/ompdynamic.rst:
3d3b561f 2384 Add trailing newline.
1cdfd0e5 2385 * doc/openmp-environment-variables/ompmaxactivelevels.rst:
3d3b561f 2386 Add trailing newline.
1cdfd0e5 2387 * doc/openmp-environment-variables/ompmaxtaskpriority.rst:
3d3b561f 2388 Add trailing newline.
1cdfd0e5 2389 * doc/openmp-environment-variables/ompnested.rst:
3d3b561f 2390 Add trailing newline.
1cdfd0e5 2391 * doc/openmp-environment-variables/ompnumteams.rst:
3d3b561f 2392 Add trailing newline.
1cdfd0e5 2393 * doc/openmp-environment-variables/ompnumthreads.rst:
3d3b561f 2394 Add trailing newline.
1cdfd0e5 2395 * doc/openmp-environment-variables/ompplaces.rst:
3d3b561f 2396 Add trailing newline.
1cdfd0e5 2397 * doc/openmp-environment-variables/ompprocbind.rst:
3d3b561f 2398 Add trailing newline.
1cdfd0e5 2399 * doc/openmp-environment-variables/ompschedule.rst:
3d3b561f 2400 Add trailing newline.
1cdfd0e5 2401 * doc/openmp-environment-variables/ompstacksize.rst:
3d3b561f 2402 Add trailing newline.
1cdfd0e5 2403 * doc/openmp-environment-variables/omptargetoffload.rst:
3d3b561f 2404 Add trailing newline.
1cdfd0e5 2405 * doc/openmp-environment-variables/ompteamsthreadlimit.rst:
3d3b561f 2406 Add trailing newline.
1cdfd0e5 2407 * doc/openmp-environment-variables/ompthreadlimit.rst:
3d3b561f 2408 Add trailing newline.
1cdfd0e5 2409 * doc/openmp-environment-variables/ompwaitpolicy.rst:
3d3b561f 2410 Add trailing newline.
1cdfd0e5 2411 * doc/openmp-implementation-specifics.rst:
3d3b561f 2412 Add trailing newline.
1cdfd0e5 2413 * doc/openmp-implementation-status.rst:
3d3b561f 2414 Add trailing newline.
1cdfd0e5 2415 * doc/openmp-implementation-status/openmp-45.rst:
3d3b561f 2416 Add trailing newline.
1cdfd0e5 2417 * doc/openmp-implementation-status/openmp-50.rst:
3d3b561f 2418 Add trailing newline.
1cdfd0e5 2419 * doc/openmp-implementation-status/openmp-51.rst:
3d3b561f 2420 Add trailing newline.
1cdfd0e5 2421 * doc/openmp-implementation-status/openmp-52.rst:
3d3b561f 2422 Add trailing newline.
1cdfd0e5 2423 * doc/openmp-runtime-library-routines.rst:
3d3b561f 2424 Add trailing newline.
1cdfd0e5 2425 * doc/openmp-runtime-library-routines/ompdestroylock.rst:
3d3b561f 2426 Add trailing newline.
1cdfd0e5 2427 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst:
3d3b561f 2428 Add trailing newline.
1cdfd0e5 2429 * doc/openmp-runtime-library-routines/ompfulfillevent.rst:
3d3b561f 2430 Add trailing newline.
1cdfd0e5 2431 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst:
3d3b561f 2432 Add trailing newline.
1cdfd0e5 2433 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst:
3d3b561f 2434 Add trailing newline.
1cdfd0e5 2435 * doc/openmp-runtime-library-routines/ompgetcancellation.rst:
3d3b561f 2436 Add trailing newline.
1cdfd0e5 2437 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst:
3d3b561f 2438 Add trailing newline.
1cdfd0e5 2439 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst:
3d3b561f 2440 Add trailing newline.
1cdfd0e5 2441 * doc/openmp-runtime-library-routines/ompgetdynamic.rst:
3d3b561f 2442 Add trailing newline.
1cdfd0e5 2443 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst:
3d3b561f 2444 Add trailing newline.
1cdfd0e5 2445 * doc/openmp-runtime-library-routines/ompgetlevel.rst:
3d3b561f 2446 Add trailing newline.
1cdfd0e5 2447 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst:
3d3b561f 2448 Add trailing newline.
1cdfd0e5 2449 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst:
3d3b561f 2450 Add trailing newline.
1cdfd0e5 2451 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst:
3d3b561f 2452 Add trailing newline.
1cdfd0e5 2453 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst:
3d3b561f 2454 Add trailing newline.
1cdfd0e5 2455 * doc/openmp-runtime-library-routines/ompgetnested.rst:
3d3b561f 2456 Add trailing newline.
1cdfd0e5 2457 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst:
3d3b561f 2458 Add trailing newline.
1cdfd0e5 2459 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst:
3d3b561f 2460 Add trailing newline.
1cdfd0e5 2461 * doc/openmp-runtime-library-routines/ompgetnumteams.rst:
3d3b561f 2462 Add trailing newline.
1cdfd0e5 2463 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst:
3d3b561f 2464 Add trailing newline.
1cdfd0e5 2465 * doc/openmp-runtime-library-routines/ompgetprocbind.rst:
3d3b561f 2466 Add trailing newline.
1cdfd0e5 2467 * doc/openmp-runtime-library-routines/ompgetschedule.rst:
3d3b561f 2468 Add trailing newline.
1cdfd0e5 2469 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst:
3d3b561f 2470 Add trailing newline.
1cdfd0e5 2471 * doc/openmp-runtime-library-routines/ompgetteamnum.rst:
3d3b561f 2472 Add trailing newline.
1cdfd0e5 2473 * doc/openmp-runtime-library-routines/ompgetteamsize.rst:
3d3b561f 2474 Add trailing newline.
1cdfd0e5 2475 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst:
3d3b561f 2476 Add trailing newline.
1cdfd0e5 2477 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst:
3d3b561f 2478 Add trailing newline.
1cdfd0e5 2479 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst:
3d3b561f 2480 Add trailing newline.
1cdfd0e5 2481 * doc/openmp-runtime-library-routines/ompgetwtick.rst:
3d3b561f 2482 Add trailing newline.
1cdfd0e5 2483 * doc/openmp-runtime-library-routines/ompgetwtime.rst:
3d3b561f 2484 Add trailing newline.
1cdfd0e5 2485 * doc/openmp-runtime-library-routines/ompinfinal.rst:
3d3b561f 2486 Add trailing newline.
1cdfd0e5 2487 * doc/openmp-runtime-library-routines/ompinitlock.rst:
3d3b561f 2488 Add trailing newline.
1cdfd0e5 2489 * doc/openmp-runtime-library-routines/ompinitnestlock.rst:
3d3b561f 2490 Add trailing newline.
1cdfd0e5 2491 * doc/openmp-runtime-library-routines/ompinparallel.rst:
3d3b561f 2492 Add trailing newline.
1cdfd0e5 2493 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst:
3d3b561f 2494 Add trailing newline.
1cdfd0e5 2495 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst:
3d3b561f 2496 Add trailing newline.
1cdfd0e5 2497 * doc/openmp-runtime-library-routines/ompsetdynamic.rst:
3d3b561f 2498 Add trailing newline.
1cdfd0e5 2499 * doc/openmp-runtime-library-routines/ompsetlock.rst:
3d3b561f 2500 Add trailing newline.
1cdfd0e5 2501 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst:
3d3b561f 2502 Add trailing newline.
1cdfd0e5 2503 * doc/openmp-runtime-library-routines/ompsetnested.rst:
3d3b561f 2504 Add trailing newline.
1cdfd0e5 2505 * doc/openmp-runtime-library-routines/ompsetnestlock.rst:
3d3b561f 2506 Add trailing newline.
1cdfd0e5 2507 * doc/openmp-runtime-library-routines/ompsetnumteams.rst:
3d3b561f 2508 Add trailing newline.
1cdfd0e5 2509 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst:
3d3b561f 2510 Add trailing newline.
1cdfd0e5 2511 * doc/openmp-runtime-library-routines/ompsetschedule.rst:
3d3b561f 2512 Add trailing newline.
1cdfd0e5 2513 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst:
3d3b561f 2514 Add trailing newline.
1cdfd0e5 2515 * doc/openmp-runtime-library-routines/omptestlock.rst:
3d3b561f 2516 Add trailing newline.
1cdfd0e5 2517 * doc/openmp-runtime-library-routines/omptestnestlock.rst:
3d3b561f 2518 Add trailing newline.
1cdfd0e5 2519 * doc/openmp-runtime-library-routines/ompunsetlock.rst:
3d3b561f 2520 Add trailing newline.
1cdfd0e5 2521 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst:
3d3b561f 2522 Add trailing newline.
1cdfd0e5 2523 * doc/reporting-bugs.rst:
3d3b561f 2524 Add trailing newline.
1cdfd0e5 2525 * doc/the-libgomp-abi.rst:
3d3b561f 2526 Add trailing newline.
1cdfd0e5 2527 * doc/the-libgomp-abi/implementing-atomic-construct.rst:
3d3b561f 2528 Add trailing newline.
1cdfd0e5 2529 * doc/the-libgomp-abi/implementing-barrier-construct.rst:
3d3b561f 2530 Add trailing newline.
1cdfd0e5 2531 * doc/the-libgomp-abi/implementing-critical-construct.rst:
3d3b561f 2532 Add trailing newline.
1cdfd0e5 2533 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
3d3b561f 2534 Add trailing newline.
1cdfd0e5 2535 * doc/the-libgomp-abi/implementing-flush-construct.rst:
3d3b561f 2536 Add trailing newline.
1cdfd0e5 2537 * doc/the-libgomp-abi/implementing-for-construct.rst:
3d3b561f 2538 Add trailing newline.
1cdfd0e5 2539 * doc/the-libgomp-abi/implementing-master-construct.rst:
3d3b561f 2540 Add trailing newline.
1cdfd0e5 2541 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst:
3d3b561f 2542 Add trailing newline.
1cdfd0e5 2543 * doc/the-libgomp-abi/implementing-ordered-construct.rst:
3d3b561f 2544 Add trailing newline.
1cdfd0e5 2545 * doc/the-libgomp-abi/implementing-parallel-construct.rst:
3d3b561f 2546 Add trailing newline.
1cdfd0e5 2547 * doc/the-libgomp-abi/implementing-private-clause.rst:
3d3b561f 2548 Add trailing newline.
1cdfd0e5 2549 * doc/the-libgomp-abi/implementing-reduction-clause.rst:
3d3b561f 2550 Add trailing newline.
1cdfd0e5 2551 * doc/the-libgomp-abi/implementing-sections-construct.rst:
3d3b561f 2552 Add trailing newline.
1cdfd0e5 2553 * doc/the-libgomp-abi/implementing-single-construct.rst:
3d3b561f 2554 Add trailing newline.
1cdfd0e5 2555 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst:
3d3b561f 2556 Add trailing newline.
1cdfd0e5
GA
2557
25582022-11-09 Martin Liska <mliska@suse.cz>
2559
2560 * Makefile.in: Build info pages conditionally.
2561
25622022-11-09 Martin Liska <mliska@suse.cz>
2563
2564 * Makefile.in: Support --with-sphinx-build.
2565 * configure.ac: Likewise..
2566 * configure: Regenerate.
2567
25682022-11-09 Martin Liska <mliska@suse.cz>
2569
2570 * libgomp.texi: Removed.
2571
25722022-11-09 Martin Liska <mliska@suse.cz>
2573
2574 * Makefile.in: Support Sphinx based documentation.
2575
25762022-11-09 Martin Liska <mliska@suse.cz>
2577
2578 * doc/amd-radeon-gcn.rst: New file.
2579 * doc/conf.py: New file.
2580 * doc/copyright.rst: New file.
2581 * doc/cuda-streams-usage.rst: New file.
2582 * doc/enabling-openacc.rst: New file.
2583 * doc/enabling-openmp.rst: New file.
2584 * doc/first-invocation-nvidia-cublas-library-api.rst: New file.
2585 * doc/first-invocation-openacc-library-api.rst: New file.
2586 * doc/funding.rst: New file.
2587 * doc/general-public-license-3.rst: New file.
2588 * doc/gnu-free-documentation-license.rst: New file.
2589 * doc/implementation-status-and-implementation-defined-behavior.rst: New file.
2590 * doc/index.rst: New file.
2591 * doc/indices-and-tables.rst: New file.
2592 * doc/introduction.rst: New file.
2593 * doc/memory-allocation-with-libmemkind.rst: New file.
2594 * doc/nvptx.rst: New file.
2595 * doc/offload-target-specifics.rst: New file.
2596 * doc/openacc-environment-variables.rst: New file.
2597 * doc/openacc-environment-variables/accdevicenum.rst: New file.
2598 * doc/openacc-environment-variables/accdevicetype.rst: New file.
2599 * doc/openacc-environment-variables/accproflib.rst: New file.
2600 * doc/openacc-environment-variables/gccaccnotify.rst: New file.
2601 * doc/openacc-introduction.rst: New file.
2602 * doc/openacc-library-and-environment-variables.rst: New file.
2603 * doc/openacc-library-interoperability.rst: New file.
2604 * doc/openacc-profiling-interface.rst: New file.
2605 * doc/openacc-runtime-library-routines.rst: New file.
2606 * doc/openacc-runtime-library-routines/accasynctest.rst: New file.
2607 * doc/openacc-runtime-library-routines/accasynctestall.rst: New file.
2608 * doc/openacc-runtime-library-routines/accattach.rst: New file.
2609 * doc/openacc-runtime-library-routines/acccopyin.rst: New file.
2610 * doc/openacc-runtime-library-routines/acccopyout.rst: New file.
2611 * doc/openacc-runtime-library-routines/acccreate.rst: New file.
2612 * doc/openacc-runtime-library-routines/accdelete.rst: New file.
2613 * doc/openacc-runtime-library-routines/accdetach.rst: New file.
2614 * doc/openacc-runtime-library-routines/accdeviceptr.rst: New file.
2615 * doc/openacc-runtime-library-routines/accfree.rst: New file.
2616 * doc/openacc-runtime-library-routines/accgetcudastream.rst: New file.
2617 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst: New file.
2618 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst: New file.
2619 * doc/openacc-runtime-library-routines/accgetdevicenum.rst: New file.
2620 * doc/openacc-runtime-library-routines/accgetdevicetype.rst: New file.
2621 * doc/openacc-runtime-library-routines/accgetnumdevices.rst: New file.
2622 * doc/openacc-runtime-library-routines/accgetproperty.rst: New file.
2623 * doc/openacc-runtime-library-routines/acchostptr.rst: New file.
2624 * doc/openacc-runtime-library-routines/accinit.rst: New file.
2625 * doc/openacc-runtime-library-routines/accispresent.rst: New file.
2626 * doc/openacc-runtime-library-routines/accmalloc.rst: New file.
2627 * doc/openacc-runtime-library-routines/accmapdata.rst: New file.
2628 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst: New file.
2629 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst: New file.
2630 * doc/openacc-runtime-library-routines/accondevice.rst: New file.
2631 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst: New file.
2632 * doc/openacc-runtime-library-routines/accpresentorcreate.rst: New file.
2633 * doc/openacc-runtime-library-routines/accproflookup.rst: New file.
2634 * doc/openacc-runtime-library-routines/accprofregister.rst: New file.
2635 * doc/openacc-runtime-library-routines/accprofunregister.rst: New file.
2636 * doc/openacc-runtime-library-routines/accregisterlibrary.rst: New file.
2637 * doc/openacc-runtime-library-routines/accsetcudastream.rst: New file.
2638 * doc/openacc-runtime-library-routines/accsetdevicenum.rst: New file.
2639 * doc/openacc-runtime-library-routines/accsetdevicetype.rst: New file.
2640 * doc/openacc-runtime-library-routines/accshutdown.rst: New file.
2641 * doc/openacc-runtime-library-routines/accunmapdata.rst: New file.
2642 * doc/openacc-runtime-library-routines/accupdatedevice.rst: New file.
2643 * doc/openacc-runtime-library-routines/accupdateself.rst: New file.
2644 * doc/openacc-runtime-library-routines/accwait.rst: New file.
2645 * doc/openacc-runtime-library-routines/accwaitall.rst: New file.
2646 * doc/openacc-runtime-library-routines/accwaitallasync.rst: New file.
2647 * doc/openacc-runtime-library-routines/accwaitasync.rst: New file.
2648 * doc/openmp-context-selectors.rst: New file.
2649 * doc/openmp-environment-variables.rst: New file.
2650 * doc/openmp-environment-variables/gompcpuaffinity.rst: New file.
2651 * doc/openmp-environment-variables/gompdebug.rst: New file.
2652 * doc/openmp-environment-variables/gomprtemsthreadpools.rst: New file.
2653 * doc/openmp-environment-variables/gompspincount.rst: New file.
2654 * doc/openmp-environment-variables/gompstacksize.rst: New file.
2655 * doc/openmp-environment-variables/ompcancellation.rst: New file.
2656 * doc/openmp-environment-variables/ompdefaultdevice.rst: New file.
2657 * doc/openmp-environment-variables/ompdisplayenv.rst: New file.
2658 * doc/openmp-environment-variables/ompdynamic.rst: New file.
2659 * doc/openmp-environment-variables/ompmaxactivelevels.rst: New file.
2660 * doc/openmp-environment-variables/ompmaxtaskpriority.rst: New file.
2661 * doc/openmp-environment-variables/ompnested.rst: New file.
2662 * doc/openmp-environment-variables/ompnumteams.rst: New file.
2663 * doc/openmp-environment-variables/ompnumthreads.rst: New file.
2664 * doc/openmp-environment-variables/ompplaces.rst: New file.
2665 * doc/openmp-environment-variables/ompprocbind.rst: New file.
2666 * doc/openmp-environment-variables/ompschedule.rst: New file.
2667 * doc/openmp-environment-variables/ompstacksize.rst: New file.
2668 * doc/openmp-environment-variables/omptargetoffload.rst: New file.
2669 * doc/openmp-environment-variables/ompteamsthreadlimit.rst: New file.
2670 * doc/openmp-environment-variables/ompthreadlimit.rst: New file.
2671 * doc/openmp-environment-variables/ompwaitpolicy.rst: New file.
2672 * doc/openmp-implementation-specifics.rst: New file.
2673 * doc/openmp-implementation-status.rst: New file.
2674 * doc/openmp-implementation-status/openmp-45.rst: New file.
2675 * doc/openmp-implementation-status/openmp-50.rst: New file.
2676 * doc/openmp-implementation-status/openmp-51.rst: New file.
2677 * doc/openmp-implementation-status/openmp-52.rst: New file.
2678 * doc/openmp-runtime-library-routines.rst: New file.
2679 * doc/openmp-runtime-library-routines/ompdestroylock.rst: New file.
2680 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst: New file.
2681 * doc/openmp-runtime-library-routines/ompfulfillevent.rst: New file.
2682 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst: New file.
2683 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst: New file.
2684 * doc/openmp-runtime-library-routines/ompgetcancellation.rst: New file.
2685 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst: New file.
2686 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst: New file.
2687 * doc/openmp-runtime-library-routines/ompgetdynamic.rst: New file.
2688 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst: New file.
2689 * doc/openmp-runtime-library-routines/ompgetlevel.rst: New file.
2690 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst: New file.
2691 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst: New file.
2692 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst: New file.
2693 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst: New file.
2694 * doc/openmp-runtime-library-routines/ompgetnested.rst: New file.
2695 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst: New file.
2696 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst: New file.
2697 * doc/openmp-runtime-library-routines/ompgetnumteams.rst: New file.
2698 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst: New file.
2699 * doc/openmp-runtime-library-routines/ompgetprocbind.rst: New file.
2700 * doc/openmp-runtime-library-routines/ompgetschedule.rst: New file.
2701 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst: New file.
2702 * doc/openmp-runtime-library-routines/ompgetteamnum.rst: New file.
2703 * doc/openmp-runtime-library-routines/ompgetteamsize.rst: New file.
2704 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst: New file.
2705 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst: New file.
2706 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst: New file.
2707 * doc/openmp-runtime-library-routines/ompgetwtick.rst: New file.
2708 * doc/openmp-runtime-library-routines/ompgetwtime.rst: New file.
2709 * doc/openmp-runtime-library-routines/ompinfinal.rst: New file.
2710 * doc/openmp-runtime-library-routines/ompinitlock.rst: New file.
2711 * doc/openmp-runtime-library-routines/ompinitnestlock.rst: New file.
2712 * doc/openmp-runtime-library-routines/ompinparallel.rst: New file.
2713 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst: New file.
2714 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst: New file.
2715 * doc/openmp-runtime-library-routines/ompsetdynamic.rst: New file.
2716 * doc/openmp-runtime-library-routines/ompsetlock.rst: New file.
2717 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst: New file.
2718 * doc/openmp-runtime-library-routines/ompsetnested.rst: New file.
2719 * doc/openmp-runtime-library-routines/ompsetnestlock.rst: New file.
2720 * doc/openmp-runtime-library-routines/ompsetnumteams.rst: New file.
2721 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst: New file.
2722 * doc/openmp-runtime-library-routines/ompsetschedule.rst: New file.
2723 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst: New file.
2724 * doc/openmp-runtime-library-routines/omptestlock.rst: New file.
2725 * doc/openmp-runtime-library-routines/omptestnestlock.rst: New file.
2726 * doc/openmp-runtime-library-routines/ompunsetlock.rst: New file.
2727 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst: New file.
2728 * doc/reporting-bugs.rst: New file.
2729 * doc/the-libgomp-abi.rst: New file.
2730 * doc/the-libgomp-abi/implementing-atomic-construct.rst: New file.
2731 * doc/the-libgomp-abi/implementing-barrier-construct.rst: New file.
2732 * doc/the-libgomp-abi/implementing-critical-construct.rst: New file.
2733 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
2734 New file.
2735 * doc/the-libgomp-abi/implementing-flush-construct.rst: New file.
2736 * doc/the-libgomp-abi/implementing-for-construct.rst: New file.
2737 * doc/the-libgomp-abi/implementing-master-construct.rst: New file.
2738 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst: New file.
2739 * doc/the-libgomp-abi/implementing-ordered-construct.rst: New file.
2740 * doc/the-libgomp-abi/implementing-parallel-construct.rst: New file.
2741 * doc/the-libgomp-abi/implementing-private-clause.rst: New file.
2742 * doc/the-libgomp-abi/implementing-reduction-clause.rst: New file.
2743 * doc/the-libgomp-abi/implementing-sections-construct.rst: New file.
2744 * doc/the-libgomp-abi/implementing-single-construct.rst: New file.
2745 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst: New file.
2746
89d0a14a
JJ
27472022-11-04 Thomas Schwinge <thomas@codesourcery.com>
2748
2749 * libgomp-plugin.h (OFFLOAD_TARGET_TYPE_INTEL_MIC): Remove.
2750 * libgomp.texi (OpenMP Context Selectors): Remove Intel MIC
2751 documentation.
2752 * plugin/configfrag.ac <enable_offload_targets>
2753 [*-intelmic-* | *-intelmicemul-*]: Remove.
2754 * configure: Regenerate.
2755 * testsuite/lib/libgomp.exp (libgomp_init): Remove 'liboffloadmic'
2756 handling.
2757 (offload_target_to_openacc_device_type)
2758 [$offload_target = *-intelmic*]: Remove.
2759 (check_effective_target_offload_device_intel_mic)
2760 (check_effective_target_offload_device_any_intel_mic): Remove.
2761 * testsuite/libgomp.c-c++-common/on_device_arch.h
2762 (device_arch_intel_mic, on_device_arch_intel_mic, any_device_arch)
2763 (any_device_arch_intel_mic): Remove.
2764 * testsuite/libgomp.c-c++-common/target-45.c: Remove
2765 'offload_device_any_intel_mic' XFAIL.
2766 * testsuite/libgomp.fortran/target10.f90: Likewise.
2767
d29260ce
GA
27682022-11-03 Tobias Burnus <tobias@codesourcery.com>
2769
2770 * testsuite/libgomp.fortran/target-11.f90: New test.
2771 * testsuite/libgomp.fortran/target-13.f90: New test.
2772
58035eee
GA
27732022-11-02 Thomas Schwinge <thomas@codesourcery.com>
2774
2775 PR libgomp/106643
2776 PR fortran/96668
2777 * oacc-mem.c (goacc_enter_data_internal): Support
2778 OpenACC 'declare create' with Fortran allocatable arrays, part II.
2779 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
2780 Adjust.
2781 * testsuite/libgomp.oacc-fortran/pr106643-1.f90: New.
2782
27832022-11-02 Thomas Schwinge <thomas@codesourcery.com>
2784
2785 PR libgomp/106643
2786 * oacc-mem.c (goacc_enter_data_internal): Support
2787 OpenACC 'declare create' with Fortran allocatable arrays, part I.
2788 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-directive.f90:
2789 New.
2790 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
2791 New.
2792
27932022-11-02 Thomas Schwinge <thomas@codesourcery.com>
2794
2795 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-runtime.f90:
2796 New.
2797
27982022-11-02 Thomas Schwinge <thomas@codesourcery.com>
2799
2800 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-runtime.f90:
2801 New.
2802
28032022-11-02 Cesar Philippidis <cesar@codesourcery.com>
2804 Thomas Schwinge <thomas@codesourcery.com>
2805
2806 * testsuite/libgomp.oacc-fortran/declare-allocatable-1.f90: New.
2807
3055829a
GA
28082022-10-28 Julian Brown <julian@codesourcery.com>
2809 Thomas Schwinge <thomas@codesourcery.com>
2810
2811 PR middle-end/90115
2812 * testsuite/libgomp.oacc-fortran/declare-1.f90: Adjust scan output.
2813 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
2814 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
2815 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
2816 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
2817
4e939ae1
GA
28182022-10-24 Thomas Schwinge <thomas@codesourcery.com>
2819
2820 * plugin/plugin-nvptx.c (nvptx_open_device): Initialize
2821 'ptx_dev->rev_data'.
2822
28232022-10-24 Tobias Burnus <tobias@codesourcery.com>
2824
2825 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Remove
2826 'static' for this variable.
2827 * config/nvptx/libgomp-nvptx.h: New file.
2828 * config/nvptx/target.c: Include it.
2829 (GOMP_ADDITIONAL_ICVS): Declare extern var.
2830 (GOMP_REV_OFFLOAD_VAR): Declare var.
2831 (GOMP_target_ext): Handle reverse offload.
2832 * libgomp-plugin.h (GOMP_PLUGIN_target_rev): New prototype.
2833 * libgomp-plugin.c (GOMP_PLUGIN_target_rev): New, call ...
2834 * target.c (gomp_target_rev): ... this new stub function.
2835 * libgomp.h (gomp_target_rev): Declare.
2836 * libgomp.map (GOMP_PLUGIN_1.4): New; add GOMP_PLUGIN_target_rev.
2837 * plugin/cuda-lib.def (cuMemHostAlloc): Add.
2838 * plugin/plugin-nvptx.c: Include libgomp-nvptx.h.
2839 (struct ptx_device): Add rev_data member.
2840 (nvptx_open_device): Remove async_engines query, last used in
2841 r10-304-g1f4c5b9b; add unified-address assert check.
2842 (GOMP_OFFLOAD_get_num_devices): Claim unified address
2843 support.
2844 (GOMP_OFFLOAD_load_image): Free rev_fn_table if no
2845 offload functions exist. Make offload var available
2846 on host and device.
2847 (rev_off_dev_to_host_cpy, rev_off_host_to_dev_cpy): New.
2848 (GOMP_OFFLOAD_run): Handle reverse offload.
2849
10439719
GA
28502022-10-21 Thomas Schwinge <thomas@codesourcery.com>
2851
2852 PR tree-optimization/107195
2853 PR target/107344
2854 * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Restore SESE
2855 regions checking.
2856
47a6ae56
GA
28572022-10-20 Tobias Burnus <tobias@codesourcery.com>
2858
2859 * testsuite/lib/libgomp.exp (check_effective_target_offload_device_gcn):
2860 New.
2861 * testsuite/libgomp.c-c++-common/on_device_arch.h (device_arch_gcn,
2862 on_device_arch_gcn): New.
2863 * testsuite/libgomp.c-c++-common/requires-4a.c: New test; copied from
2864 requires-4.c but using heap-allocated memory.
2865
28662022-10-20 Thomas Schwinge <thomas@codesourcery.com>
2867
2868 PR target/105421
2869 * testsuite/libgomp.oacc-c-c++-common/private-big-1.c: New.
2870
6237663c
GA
28712022-10-17 Thomas Schwinge <thomas@codesourcery.com>
2872
2873 * testsuite/libgomp.c/reverse-offload-sm30.c: Fix nvptx-specific
2874 '-foffload-options' syntax.
2875
621a911d
GA
28762022-10-13 Tobias Burnus <tobias@codesourcery.com>
2877
2878 * testsuite/libgomp.fortran/task-7.f90: New test.
2879 * testsuite/libgomp.fortran/task-8.f90: New test.
2880 * testsuite/libgomp.fortran/task-in-explicit-1.f90: New test.
2881 * testsuite/libgomp.fortran/task-in-explicit-2.f90: New test.
2882 * testsuite/libgomp.fortran/task-in-explicit-3.f90: New test.
2883 * testsuite/libgomp.fortran/task-reduction-17.f90: New test.
2884 * testsuite/libgomp.fortran/task-reduction-18.f90: New test.
2885
781f477a
GA
28862022-10-12 Jakub Jelinek <jakub@redhat.com>
2887
2888 * libgomp.texi (OpenMP 5.2): Fix up allocator -> allocate directive
2889 in deprecation bullet.
2890
28912022-10-12 Jakub Jelinek <jakub@redhat.com>
2892
2893 * omp.h.in (omp_in_explicit_task): Declare.
2894 * omp_lib.h.in (omp_in_explicit_task): Likewise.
2895 * omp_lib.f90.in (omp_in_explicit_task): New interface.
2896 * libgomp.map (OMP_5.2): New symbol version, export
2897 omp_in_explicit_task and omp_in_explicit_task_.
2898 * task.c (omp_in_explicit_task): New function.
2899 * fortran.c (omp_in_explicit_task): Add ialias_redirect.
2900 (omp_in_explicit_task_): New function.
2901 * libgomp.texi (OpenMP 5.2): Mark omp_in_explicit_task as implemented.
2902 * testsuite/libgomp.c-c++-common/task-in-explicit-1.c: New test.
2903 * testsuite/libgomp.c-c++-common/task-in-explicit-2.c: New test.
2904 * testsuite/libgomp.c-c++-common/task-in-explicit-3.c: New test.
2905
29062022-10-12 Jakub Jelinek <jakub@redhat.com>
2907
2908 * task.c (gomp_create_artificial_team): Fix up handling of invocations
2909 from within explicit task.
2910 * target.c (GOMP_target_ext): Likewise.
2911 * testsuite/libgomp.c/task-7.c: New test.
2912 * testsuite/libgomp.c/task-8.c: New test.
2913 * testsuite/libgomp.c-c++-common/task-reduction-17.c: New test.
2914 * testsuite/libgomp.c-c++-common/task-reduction-18.c: New test.
2915
29162022-10-12 Martin Liska <mliska@suse.cz>
2917
2918 * configure: Regenerate.
2919
ab332cd7
GA
29202022-10-11 Olivier Hainque <hainque@adacore.com>
2921 Olivier Hainque <hainque@adacore.com>
2922
2923 * configure: Regenerate.
2924
966010b2
GA
29252022-10-05 Tobias Burnus <tobias@codesourcery.com>
2926
2927 * libgomp.texi (OpenMP 5.1 Impl. Status): Mark 'assume' as 'Y'.
2928
85872a69
GA
29292022-10-04 Jakub Jelinek <jakub@redhat.com>
2930
2931 * libgomp.texi (Support begin/end declare target syntax in C/C++):
2932 Mark as implemented.
2933
3a221b73
GA
29342022-09-30 Tobias Burnus <tobias@codesourcery.com>
2935
2936 PR fortran/105318
2937 * testsuite/libgomp.fortran/is_device_ptr-2.f90: New test.
2938
9e79a25b
GA
29392022-09-28 Tobias Burnus <tobias@codesourcery.com>
2940
2941 * libgomp.texi (OpenMP 5.1): Mark 'assume' as implemented
2942 for C/C++. Remove duplicated 'begin declare target' entry.
2943
28a61ecd
GA
29442022-09-24 Jakub Jelinek <jakub@redhat.com>
2945
2946 PR c/106981
2947 * testsuite/libgomp.c-c++-common/pr106981.c: New test.
2948
ff822367
GA
29492022-09-14 Julian Brown <julian@codesourcery.com>
2950
2951 * testsuite/libgomp.oacc-c-c++-common/deep-copy-15.c: New test.
2952 * testsuite/libgomp.oacc-c-c++-common/deep-copy-16.c: New test.
2953 * testsuite/libgomp.oacc-c++/deep-copy-17.C: New test.
2954 * testsuite/libgomp.oacc-c-c++-common/deep-copy-arrayofstruct.c: Move
2955 test to here, make "run" test.
2956
1995a022
GA
29572022-09-13 Jakub Jelinek <jakub@redhat.com>
2958
2959 PR libgomp/106906
2960 * env.c (get_icv_member_addr): Cast false to void * before assigning
2961 it to icv_addr[1], and comment the whole assignment out.
2962
29632022-09-13 Tobias Burnus <tobias@codesourcery.com>
2964
2965 * libgomp.texi (gcn): Move misplaced -march=sm_30 remark to ...
2966 (nvptx): ... here.
2967
b5f09bd7
GA
29682022-09-12 Tobias Burnus <tobias@codesourcery.com>
2969
2970 * libgomp.texi (Offload-Target Specifics: nvptx): Document
2971 that reverse offload requires >= -march=sm_35.
2972 * testsuite/libgomp.c-c++-common/requires-4.c: Build for nvptx
2973 with -misa=sm_35.
2974 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
2975 * testsuite/libgomp.c-c++-common/requires-6.c: Likewise.
2976 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: Likewise.
2977 * testsuite/libgomp.fortran/reverse-offload-1.f90: Likewise.
2978 * testsuite/libgomp.c/reverse-offload-sm30.c: New test.
2979
29802022-09-12 Tobias Burnus <tobias@codesourcery.com>
2981
2982 * libgomp.texi (OpenMP 5.1 Impl. Status): Add two new minor items.
2983 (OpenMP 5.2 Impl. Status): Improve omp/omx/ompx wording.
2984
29852022-09-12 Jakub Jelinek <jakub@redhat.com>
2986
2987 PR libgomp/106894
2988 * testsuite/libgomp.c-c++-common/icv-6.c: Include string.h.
2989 (main): Avoid tests for which corresponding non-_ALL suffixed variable
2990 is in the environment, or for OMP_NUM_TEAMS on the device
2991 OMP_NUM_TEAMS_DEV_?.
2992
5b3496e2
GA
29932022-09-10 Iain Sandoe <iain@sandoe.co.uk>
2994
2995 * env.c (initialize_env): Include libiberty environ.h.
2996
861d1a11
GA
29972022-09-09 Tobias Burnus <tobias@codesourcery.com>
2998
2999 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Read offload
3000 function address table '$offload_func_table' if rev_fn_table
3001 is not NULL.
3002
30032022-09-09 Tobias Burnus <tobias@codesourcery.com>
3004
3005 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Read
3006 .offload_func_table to populate rev_fn_table when requested.
3007
30082022-09-09 Tobias Burnus <tobias@codesourcery.com>
3009
3010 * libgomp-plugin.h (GOMP_OFFLOAD_load_image): Add
3011 'uint64_t **rev_fn_table' argument.
3012 * oacc-host.c (host_load_image): Likewise.
3013 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Likewise;
3014 currently unused.
3015 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
3016 * target.c (gomp_load_image_to_device): Update call but pass
3017 NULL for now.
3018
30192022-09-09 Jakub Jelinek <jakub@redhat.com>
3020
3021 PR libgomp/106894
3022 * env.c (initialize_env) <case PARSE_BIND>: Use char ** instead of
3023 char * for dest[1] initialization from params[1]. Formatting fixes.
3024
2e7ad70c
GA
30252022-09-08 Tobias Burnus <tobias@codesourcery.com>
3026
3027 PR fortran/106670
3028 * libgomp.texi (OpenMP 5.2): Add comment to ompx/omx entry.
3029
30302022-09-08 Tobias Burnus <tobias@codesourcery.com>
3031
3032 * libgomp.texi (OpenMP-Implementation Specifics): New; add libmemkind
3033 section; move OpenMP Context Selectors from ...
3034 (Offload-Target Specifics): ... here; add 'AMD Radeo (GCN)' and
3035 'nvptx' sections.
3036
30372022-09-08 Marcel Vollweiler <marcel@codesourcery.com>
3038
3039 * config/gcn/icv-device.c (omp_get_default_device): Return device-
3040 specific ICV.
3041 (omp_get_max_teams): Added for GCN devices.
3042 (omp_set_num_teams): Likewise.
3043 (ialias): Likewise.
3044 * config/nvptx/icv-device.c (omp_get_default_device): Return device-
3045 specific ICV.
3046 (omp_get_max_teams): Added for NVPTX devices.
3047 (omp_set_num_teams): Likewise.
3048 (ialias): Likewise.
3049 * env.c (struct gomp_icv_list): New struct to store entries of initial
3050 ICV values.
3051 (struct gomp_offload_icv_list): New struct to store entries of device-
3052 specific ICV values that are copied to the device and back.
3053 (struct gomp_default_icv_values): New struct to store default values of
3054 ICVs according to the OpenMP standard.
3055 (parse_schedule): Generalized for different variants of OMP_SCHEDULE.
3056 (print_env_var_error): Function that prints an error for invalid values
3057 for ICVs.
3058 (parse_unsigned_long_1): Removed getenv. Generalized.
3059 (parse_unsigned_long): Likewise.
3060 (parse_int_1): Likewise.
3061 (parse_int): Likewise.
3062 (parse_int_secure): Likewise.
3063 (parse_unsigned_long_list): Likewise.
3064 (parse_target_offload): Likewise.
3065 (parse_bind_var): Likewise.
3066 (parse_stacksize): Likewise.
3067 (parse_boolean): Likewise.
3068 (parse_wait_policy): Likewise.
3069 (parse_allocator): Likewise.
3070 (omp_display_env): Extended to output different variants of environment
3071 variables.
3072 (print_schedule): New helper function for omp_display_env which prints
3073 the values of run_sched_var.
3074 (print_proc_bind): New helper function for omp_display_env which prints
3075 the values of proc_bind_var.
3076 (enum gomp_parse_type): Collection of types used for parsing environment
3077 variables.
3078 (ENTRY): Preprocess string lengths of environment variables.
3079 (OMP_VAR_CNT): Preprocess table size.
3080 (OMP_HOST_VAR_CNT): Likewise.
3081 (INT_MAX_STR_LEN): Constant for the maximal number of digits of a device
3082 number.
3083 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
3084 (gomp_set_icv_flag): Sets a flag for a particular ICV.
3085 (print_device_specific_icvs): New helper function for omp_display_env to
3086 print device specific ICV values.
3087 (get_device_num): New helper function for parse_device_specific.
3088 Extracts the device number from an environment variable name.
3089 (get_icv_member_addr): Gets the memory address for a particular member
3090 of an ICV struct.
3091 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
3092 (initialize_icvs): New function to initialize a gomp_initial_icvs
3093 struct.
3094 (add_initial_icv_to_list): Adds an ICV struct to gomp_initial_icv_list.
3095 (startswith): Checks if a string starts with a given prefix.
3096 (initialize_env): Extended to parse the new syntax of environment
3097 variables.
3098 * icv-device.c (omp_get_max_teams): Added.
3099 (ialias): Likewise.
3100 (omp_set_num_teams): Likewise.
3101 * icv.c (omp_set_num_teams): Moved to icv-device.c.
3102 (omp_get_max_teams): Likewise.
3103 (ialias): Likewise.
3104 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Removed.
3105 (GOMP_ADDITIONAL_ICVS): New target-side struct that
3106 holds the designated ICVs of the target device.
3107 * libgomp.h (enum gomp_icvs): Collection of ICVs.
3108 (enum gomp_device_num): Definition of device numbers for _ALL, _DEV, and
3109 no suffix.
3110 (enum gomp_env_suffix): Collection of possible suffixes of environment
3111 variables.
3112 (struct gomp_initial_icvs): Contains all ICVs for which we need to store
3113 initial values.
3114 (struct gomp_default_icv):New struct to hold ICVs for which we need
3115 to store initial values.
3116 (struct gomp_icv_list): Definition of a linked list that is used for
3117 storing ICVs for the devices and also for _DEV, _ALL, and without
3118 suffix.
3119 (struct gomp_offload_icvs): New struct to hold ICVs that are copied to
3120 a device.
3121 (struct gomp_offload_icv_list): Definition of a linked list that holds
3122 device-specific ICVs that are copied to devices.
3123 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
3124 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
3125 * libgomp.texi: Updated.
3126 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Extended to read
3127 further ICVs from the offload image.
3128 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
3129 * target.c (gomp_get_offload_icv_item): Get a list item of
3130 gomp_offload_icv_list.
3131 (get_gomp_offload_icvs): New. Returns the ICV values
3132 depending on the device num and the variable hierarchy.
3133 (gomp_load_image_to_device): Extended to copy further ICVs to a device.
3134 * testsuite/libgomp.c-c++-common/icv-5.c: New test.
3135 * testsuite/libgomp.c-c++-common/icv-6.c: New test.
3136 * testsuite/libgomp.c-c++-common/icv-7.c: New test.
3137 * testsuite/libgomp.c-c++-common/icv-8.c: New test.
3138 * testsuite/libgomp.c-c++-common/omp-display-env-1.c: New test.
3139 * testsuite/libgomp.c-c++-common/omp-display-env-2.c: New test.
3140
31412022-09-08 Jakub Jelinek <jakub@redhat.com>
3142
3143 * libgomp.texi (OpenMP 5.2): Mention that omp_cur_iteration is now
3144 fully supported.
3145 * testsuite/libgomp.c/doacross-4.c: New test.
3146 * testsuite/libgomp.c/doacross-5.c: New test.
3147 * testsuite/libgomp.c/doacross-6.c: New test.
3148 * testsuite/libgomp.c/doacross-7.c: New test.
3149
47d2dcd1
GA
31502022-09-05 Tobias Burnus <tobias@codesourcery.com>
3151
3152 * libgomp.texi (OpenMP 5.2): Update doacross/omp_cur_iteration status.
3153
16f542d6
GA
31542022-08-26 Tobias Burnus <tobias@codesourcery.com>
3155
3156 * libgomp.texi (OpenMP 5.0): Mark 'ancestor' as implemented but
3157 refer to 'requires'.
3158 * testsuite/libgomp.c-c++-common/reverse-offload-1-aux.c: New test.
3159 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: New test.
3160 * testsuite/libgomp.fortran/reverse-offload-1-aux.f90: New test.
3161 * testsuite/libgomp.fortran/reverse-offload-1.f90: New test.
3162
0342f034
GA
31632022-08-17 Tobias Burnus <tobias@codesourcery.com>
3164
3165 PR middle-end/106548
3166 * testsuite/libgomp.c/linear-2.c: New test.
3167
31682022-08-17 Tobias Burnus <tobias@codesourcery.com>
3169
3170 * splay-tree.h: Fix splay_* macro unsetting if
3171 splay_tree_prefix is defined.
3172
b2bf0473
GA
31732022-07-29 Tobias Burnus <tobias@codesourcery.com>
3174
3175 * testsuite/libgomp.c-c++-common/pr106449-2.c: New test.
3176
31772022-07-29 Jakub Jelinek <jakub@redhat.com>
3178
3179 PR middle-end/106449
3180 * testsuite/libgomp.c-c++-common/pr106449.c: New test.
3181
43997608
GA
31822022-07-12 Tobias Burnus <tobias@codesourcery.com>
3183
3184 * target.c (gomp_target_init): Added tailing '\n' to gomp_debug.
3185
31862022-07-12 Thomas Schwinge <thomas@codesourcery.com>
3187
3188 PR middle-end/101551
3189 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: XFAIL
3190 'offloading_enabled' diagnostics issue.
3191
c72d4714
GA
31922022-07-11 Thomas Schwinge <thomas@codesourcery.com>
3193
3194 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Enhance
3195 '_Pragma' diagnostics verification.
3196
b53ebbc5
GA
31972022-07-10 Lewis Hyatt <lhyatt@gmail.com>
3198
3199 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Adapt for
3200 improved warning locations.
3201 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Likewise.
3202
0fe604a2
GA
32032022-07-08 Thomas Schwinge <thomas@codesourcery.com>
3204
3205 * testsuite/libgomp.c-c++-common/requires-1.c: Add 'dg-note's.
3206 * testsuite/libgomp.c-c++-common/requires-2.c: Likewise.
3207 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
3208 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
3209 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
3210
6345c414
GA
32112022-07-07 Thomas Schwinge <thomas@codesourcery.com>
3212
3213 * target.c (GOMP_offload_register, GOMP_offload_unregister):
3214 Denote as legacy entry points.
3215 * testsuite/lib/libgomp.exp
3216 (check_effective_target_offload_target_any): New proc.
3217 * testsuite/libgomp.c-c++-common/requires-1.c: Enable for
3218 'offload_target_any'.
3219 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
3220 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
3221 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
3222
32232022-07-07 Thomas Schwinge <thomas@codesourcery.com>
3224
3225 * testsuite/libgomp.c-c++-common/requires-4.c: Enhance testing.
3226 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
3227
32282022-07-07 Thomas Schwinge <thomas@codesourcery.com>
3229
3230 * testsuite/libgomp.c-c++-common/requires-3.c: Adjust.
3231
4bc92c3b
GA
32322022-07-06 Thomas Schwinge <thomas@codesourcery.com>
3233
3234 * target.c (GOMP_offload_register_ver): Clarify 'target_data' ->
3235 'data'.
3236 (GOMP_offload_unregister_ver): Likewise. Fix up 'target_data'.
3237
8467574d
GA
32382022-07-04 Tobias Burnus <tobias@codesourcery.com>
3239 Jakub Jelinek <jakub@redhat.com>
3240
3241 * libgomp.texi (OpenMP 5.2): Mark linear-clause change as 'Y'.
3242
32432022-07-04 Tobias Burnus <tobias@codesourcery.com>
3244 Chung-Lin Tang <cltang@codesourcery.com>
3245 Thomas Schwinge <thomas@codesourcery.com>
3246
3247 * libgomp-plugin.h (GOMP_OFFLOAD_get_num_devices): Add
3248 omp_requires_mask arg.
3249 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Likewise;
3250 return -1 when device available but omp_requires_mask != 0.
3251 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_get_num_devices): Likewise.
3252 * oacc-host.c (host_get_num_devices, host_openacc_get_property):
3253 Update call.
3254 * oacc-init.c (resolve_device, acc_init_1, acc_shutdown_1,
3255 goacc_attach_host_thread_to_device, acc_get_num_devices,
3256 acc_set_device_num, get_property_any): Likewise.
3257 * target.c (omp_requires_mask): New global var.
3258 (gomp_requires_to_name): New.
3259 (GOMP_offload_register_ver): Handle passed omp_requires_mask.
3260 (gomp_target_init): Handle omp_requires_mask.
3261 * libgomp.texi (OpenMP 5.0): Update requires impl. status.
3262 (OpenMP 5.1): Add a missed item.
3263 (OpenMP 5.2): Mark linear-clause change as supported in C/C++.
3264 * testsuite/libgomp.c-c++-common/requires-1-aux.c: New test.
3265 * testsuite/libgomp.c-c++-common/requires-1.c: New test.
3266 * testsuite/libgomp.c-c++-common/requires-2-aux.c: New test.
3267 * testsuite/libgomp.c-c++-common/requires-2.c: New test.
3268 * testsuite/libgomp.c-c++-common/requires-3-aux.c: New test.
3269 * testsuite/libgomp.c-c++-common/requires-3.c: New test.
3270 * testsuite/libgomp.c-c++-common/requires-4-aux.c: New test.
3271 * testsuite/libgomp.c-c++-common/requires-4.c: New test.
3272 * testsuite/libgomp.c-c++-common/requires-5-aux.c: New test.
3273 * testsuite/libgomp.c-c++-common/requires-5.c: New test.
3274 * testsuite/libgomp.c-c++-common/requires-6.c: New test.
3275 * testsuite/libgomp.c-c++-common/requires-7-aux.c: New test.
3276 * testsuite/libgomp.c-c++-common/requires-7.c: New test.
3277 * testsuite/libgomp.fortran/requires-1-aux.f90: New test.
3278 * testsuite/libgomp.fortran/requires-1.f90: New test.
3279
ed974488
GA
32802022-07-01 Tobias Burnus <tobias@codesourcery.com>
3281
3282 * libgomp.texi (OpenMP 5.2): Mark target enter/exit data
3283 with fromto as implemented.
3284
fb29fdea
GA
32852022-06-28 Martin Liska <mliska@suse.cz>
3286
3287 * acinclude.m4: Fix typo in mold linker detection.
3288 * Makefile.in: Regenerate.
3289 * configure: Regenerate.
3290
de89b078
GA
32912022-06-21 Jakub Jelinek <jakub@redhat.com>
3292 Paul Iannetta <piannetta@kalrayinc.com>
3293
3294 PR libgomp/106045
3295 * testsuite/libgomp.c/target-31.c: Add private (i) clause.
3296
5a66d7dd
GA
32972022-06-17 Martin Liska <mliska@suse.cz>
3298
3299 * libgomp.texi: Add table header for new features of
3300 OpenMP 5.2.
3301
499b9c5f
GA
33022022-06-15 Jakub Jelinek <jakub@redhat.com>
3303
3304 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c (main): Initialize
3305 q to ddress of an automatic variable. Use -5 instead of -1 in
3306 omp_get_mapped_ptr call. Add test with omp_initial_device.
3307 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90 (main): Use -5 instead
3308 of -1 in omp_get_mapped_ptr call. Add test with omp_initial_device.
3309 Renumber stop arguments afterwards.
3310
c3642271
GA
33112022-06-13 Jakub Jelinek <jakub@redhat.com>
3312
3313 * omp.h.in (omp_initial_device, omp_invalid_device): New enumerators.
3314 * omp_lib.f90.in (omp_initial_device, omp_invalid_device): New
3315 parameters.
3316 * omp_lib.h.in (omp_initial_device, omp_invalid_device): Likewise.
3317 * target.c (resolve_device): Add remapped argument, handle
3318 GOMP_DEVICE_ICV only if remapped is true (and clear remapped),
3319 for negative values, treat GOMP_DEVICE_FALLBACK as fallback only
3320 if remapped, otherwise treat omp_initial_device that way. For
3321 omp_invalid_device, always emit gomp_fatal, even when
3322 OMP_TARGET_OFFLOAD isn't mandatory.
3323 (GOMP_target, GOMP_target_ext, GOMP_target_data, GOMP_target_data_ext,
3324 GOMP_target_update, GOMP_target_update_ext,
3325 GOMP_target_enter_exit_data): Pass true as remapped argument to
3326 resolve_device.
3327 (omp_target_alloc, omp_target_free, omp_target_is_present,
3328 omp_target_memcpy_check, omp_target_associate_ptr,
3329 omp_target_disassociate_ptr, omp_get_mapped_ptr,
3330 omp_target_is_accessible): Pass false as remapped argument to
3331 resolve_device. Treat omp_initial_device the same as
3332 gomp_get_num_devices (). Don't bypass resolve_device calls if
3333 device_num is negative.
3334 (omp_pause_resource): Treat omp_initial_device the same as
3335 gomp_get_num_devices (). Call resolve_device.
3336 * icv-device.c (omp_set_default_device): Always set to device_num
3337 even when it is negative.
3338 * libgomp.texi: Document that Conforming device numbers,
3339 omp_initial_device and omp_invalid_device is implemented.
3340 * testsuite/libgomp.c/target-41.c (main): Add test with
3341 omp_initial_device.
3342 * testsuite/libgomp.c/target-45.c: New test.
3343 * testsuite/libgomp.c/target-46.c: New test.
3344 * testsuite/libgomp.c/target-47.c: New test.
3345 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c (main): Add
3346 test with omp_initial_device. Use -5 instead of -1 for negative value
3347 test.
3348 * testsuite/libgomp.fortran/target-is-accessible-1.f90 (main):
3349 Likewise. Reorder stop numbers.
3350
ef1e4d80
GA
33512022-06-10 Jakub Jelinek <jakub@redhat.com>
3352
3353 * allocator.c (gomp_init_memkind): Call dlopen with "libmemkind.so.0"
3354 rather than "libmemkind.so".
3355
33562022-06-10 Thomas Schwinge <thomas@codesourcery.com>
3357
3358 * plugin/Makefrag.am: Evaluate 'if PLUGIN_NVPTX_DYNAMIC' to true.
3359 * plugin/configfrag.ac (--with-cuda-driver)
3360 (--with-cuda-driver-include, --with-cuda-driver-lib)
3361 (CUDA_DRIVER_INCLUDE, CUDA_DRIVER_LIB, PLUGIN_NVPTX_CPPFLAGS)
3362 (PLUGIN_NVPTX_LDFLAGS, PLUGIN_NVPTX_LIBS, PLUGIN_NVPTX_DYNAMIC):
3363 Remove.
3364 * testsuite/libgomp-test-support.exp.in (cuda_driver_include)
3365 (cuda_driver_lib): Remove.
3366 * testsuite/lib/libgomp.exp (libgomp_init): Don't consider these.
3367 * Makefile.in: Regenerate.
3368 * configure: Likewise.
3369 * testsuite/Makefile.in: Likewise.
3370
e3bba42f
GA
33712022-06-09 Jakub Jelinek <jakub@redhat.com>
3372
3373 * config/linux/allocator.c: Fix up #include directive.
3374
33752022-06-09 Jakub Jelinek <jakub@redhat.com>
3376
3377 * allocator.c: Include dlfcn.h if LIBGOMP_USE_MEMKIND is defined.
3378 (enum gomp_memkind_kind): New type.
3379 (struct omp_allocator_data): Add memkind field if LIBGOMP_USE_MEMKIND
3380 is defined.
3381 (struct gomp_memkind_data): New type.
3382 (memkind_data, memkind_data_once): New variables.
3383 (gomp_init_memkind, gomp_get_memkind): New functions.
3384 (omp_init_allocator): Initialize data.memkind, don't fail for
3385 omp_high_bw_mem_space if libmemkind supports it.
3386 (omp_aligned_alloc, omp_free, omp_aligned_calloc, omp_realloc): Add
3387 memkind support of LIBGOMP_USE_MEMKIND is defined.
3388 * config/linux/allocator.c: New file.
3389
58b67140
GA
33902022-06-03 Tobias Burnus <tobias@codesourcery.com>
3391
3392 * libgomp.texi (OpenMP 5.2): Mark scope w/ firstprivate/allocate as Y.
3393 * testsuite/libgomp.fortran/scope-2.f90: New test.
3394
b168441c
GA
33952022-06-02 David Malcolm <dmalcolm@redhat.com>
3396
3397 * testsuite/lib/libgomp.exp: Add load_gcc_lib of scansarif.exp.
3398
820ead45
GA
33992022-05-31 Jakub Jelinek <jakub@redhat.com>
3400
3401 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add testcase for
3402 scope construct with allocate clause.
3403 * testsuite/libgomp.c-c++-common/allocate-3.c (foo): Likewise.
3404 * testsuite/libgomp.c-c++-common/scope-2.c: New test.
3405
37b3b5da
GA
34062022-05-28 Tobias Burnus <tobias@codesourcery.com>
3407
3408 * libgomp.texi (OpenMP 5.2): Mark 'enter' clause as supported.
3409 * testsuite/libgomp.fortran/declare-target-1.f90: Extend to test
3410 explicit 'to' and 'enter' clause.
3411 * testsuite/libgomp.fortran/declare-target-2.f90: Update accordingly.
3412
34132022-05-28 Jakub Jelinek <jakub@redhat.com>
3414
3415 PR libgomp/105745
3416 * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Don't define for
3417 defined(HAVE__ALIGNED_MALLOC) case.
3418 * alloc.c (gomp_aligned_alloc): Move defined(HAVE__ALIGNED_MALLOC)
3419 handling as last option before fallback instead of first.
3420 (gomp_aligned_free): For defined(HAVE__ALIGNED_MALLOC) call
3421 _aligned_free.
3422
d9176e64
GA
34232022-05-27 Jakub Jelinek <jakub@redhat.com>
3424
3425 * testsuite/libgomp.c-c++-common/target-40.c: Modify some existing to
3426 clauses to enter.
3427 * testsuite/libgomp.c/target-41.c: Likewise.
3428
34292022-05-27 Tobias Burnus <tobias@codesourcery.com>
3430
3431 * libgomp.texi (Other new OpenMP 5.1 features): Add
3432 'begin declare target'.
3433 (Other new OpenMP 5.2 features): New.
3434
3dff965c
GA
34352022-05-25 Jakub Jelinek <jakub@redhat.com>
3436
3437 * task.c (gomp_task_run_post_handle_dependers): If empty_task
3438 is the last task taskwait depend depends on, wake it up.
3439 Similarly if it is the last child of a taskgroup, use atomic
3440 store instead of decrement and awak taskgroup wait if any.
3441 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-2.c: New test.
3442
768f49a2
GA
34432022-05-24 Andrew Stubbs <ams@codesourcery.com>
3444
3445 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
3446 EF_AMDGPU_MACH_AMDGCN_GFX90a.
3447 (gcn_gfx90a_s): New.
3448 (isa_hsa_name): Support gfx90a.
3449 (isa_code): Likewise.
3450
34512022-05-24 Tobias Burnus <tobias@codesourcery.com>
3452
3453 PR c/105378
3454 * libgomp.texi (OpenMP 5.1): Set 'taskwait nowait' to 'Y'.
3455 * testsuite/libgomp.fortran/taskwait-depend-nowait-1.f90: New.
3456
34572022-05-24 Jakub Jelinek <jakub@redhat.com>
3458
3459 PR c/105378
3460 * libgomp_g.h (GOMP_taskwait_depend_nowait): Declare.
3461 * libgomp.map (GOMP_taskwait_depend_nowait): Export at GOMP_5.1.1.
3462 * task.c (empty_task): New function.
3463 (gomp_task_run_post_handle_depend_hash): Declare earlier.
3464 (gomp_task_run_post_handle_depend): Declare.
3465 (GOMP_task): Optimize fn == empty_task if there is nothing to wait
3466 for.
3467 (gomp_task_run_post_handle_dependers): Optimize task->fn == empty_task.
3468 (GOMP_taskwait_depend_nowait): New function.
3469 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-1.c: New test.
3470
168fc8bd
GA
34712022-05-23 Tobias Burnus <tobias@codesourcery.com>
3472
3473 PR fortran/104949
3474 * target.c (gomp_map_vars_internal, copy_firstprivate_data):
3475 Support attach for GOMP_MAP_FIRSTPRIVATE.
3476 * testsuite/libgomp.fortran/target-firstprivate-1.f90: New test.
3477 * testsuite/libgomp.fortran/target-firstprivate-2.f90: New test.
3478 * testsuite/libgomp.fortran/target-firstprivate-3.f90: New test.
3479
57f2ce6a
GA
34802022-05-20 Marcel Vollweiler <marcel@codesourcery.com>
3481
3482 * libgomp.map: Added omp_target_memcpy_async and
3483 omp_target_memcpy_rect_async.
3484 * libgomp.texi: Both functions are now supported.
3485 * omp.h.in: Added omp_target_memcpy_async and
3486 omp_target_memcpy_rect_async.
3487 * omp_lib.f90.in: Added interfaces for both new functions.
3488 * omp_lib.h.in: Likewise.
3489 * target.c (ialias_redirect): Added for GOMP_task.
3490 (omp_target_memcpy): Restructured into check and copy part.
3491 (omp_target_memcpy_check): New helper function for omp_target_memcpy and
3492 omp_target_memcpy_async that checks requirements.
3493 (omp_target_memcpy_copy): New helper function for omp_target_memcpy and
3494 omp_target_memcpy_async that performs the memcpy.
3495 (omp_target_memcpy_async_helper): New helper function that is used in
3496 omp_target_memcpy_async for the asynchronous task.
3497 (omp_target_memcpy_async): Added.
3498 (omp_target_memcpy_rect): Restructured into check and copy part.
3499 (omp_target_memcpy_rect_check): New helper function for
3500 omp_target_memcpy_rect and omp_target_memcpy_rect_async that checks
3501 requirements.
3502 (omp_target_memcpy_rect_copy): New helper function for
3503 omp_target_memcpy_rect and omp_target_memcpy_rect_async that performs
3504 the memcpy.
3505 (omp_target_memcpy_rect_async_helper): New helper function that is used
3506 in omp_target_memcpy_rect_async for the asynchronous task.
3507 (omp_target_memcpy_rect_async): Added.
3508 * task.c (ialias): Added for GOMP_task.
3509 * testsuite/libgomp.c-c++-common/target-memcpy-async-1.c: New test.
3510 * testsuite/libgomp.c-c++-common/target-memcpy-async-2.c: New test.
3511 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-1.c: New test.
3512 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-2.c: New test.
3513 * testsuite/libgomp.fortran/target-memcpy-async-1.f90: New test.
3514 * testsuite/libgomp.fortran/target-memcpy-async-2.f90: New test.
3515 * testsuite/libgomp.fortran/target-memcpy-rect-async-1.f90: New test.
3516 * testsuite/libgomp.fortran/target-memcpy-rect-async-2.f90: New test.
3517
1cda629f
GA
35182022-05-18 Tobias Burnus <tobias@codesourcery.com>
3519
3520 * libgomp.texi (OpenMP 5.1): Set 'inoutset' to Y.
3521 (OpenMP Context Selectors): Add missing comma.
3522 * testsuite/libgomp.fortran/depend-5.f90: Add inoutset test.
3523 * testsuite/libgomp.fortran/depend-6.f90: Likewise.
3524 * testsuite/libgomp.fortran/depend-7.f90: Likewise.
3525 * testsuite/libgomp.fortran/depend-inoutset-1.f90: New test.
3526
3d9439b1
GA
35272022-05-17 Jakub Jelinek <jakub@redhat.com>
3528
3529 * libgomp.texi (OpenMP 5.1): Remove "Not inside target regions"
3530 comment for omp_display_env feature.
3531
35322022-05-17 Tobias Burnus <tobias@codesourcery.com>
3533
3534 * libgomp.texi (Offload-Target Specifics): New chapter; add section
3535 to document OpenMP context selectors.
3536
35372022-05-17 Jakub Jelinek <jakub@redhat.com>
3538
3539 * libgomp.h (struct gomp_task_depend_entry): Change is_in type
3540 from bool to unsigned char.
3541 * task.c (gomp_task_handle_depend): Handle GOMP_DEPEND_INOUTSET.
3542 Ignore dependencies where
3543 task->depend[i].is_in && task->depend[i].is_in == ent->is_in
3544 rather than just task->depend[i].is_in && ent->is_in. Remember
3545 whether GOMP_DEPEND_IN loop is needed and guard the loop with that
3546 conditional.
3547 (gomp_task_maybe_wait_for_dependencies): Handle GOMP_DEPEND_INOUTSET.
3548 Ignore dependencies where elem.is_in && elem.is_in == ent->is_in
3549 rather than just elem.is_in && ent->is_in.
3550 * testsuite/libgomp.c-c++-common/depend-1.c (test): Add task with
3551 inoutset depend-kind.
3552 * testsuite/libgomp.c-c++-common/depend-2.c (test): Likewise.
3553 * testsuite/libgomp.c-c++-common/depend-3.c (test): Likewise.
3554 * testsuite/libgomp.c-c++-common/depend-inoutset-1.c: New test.
3555
35562022-05-17 Tobias Burnus <tobias@codesourcery.com>
3557
3558 * libgomp.texi (OpenMP Implementation Status): Add 5.2 table.
3559
35602022-05-17 Tobias Burnus <tobias@codesourcery.com>
3561
3562 * libgomp.texi (OpenMP 5.1): Set omp_all_memory to 'Y'.
3563 * testsuite/libgomp.fortran/depend-5.f90: New test.
3564 * testsuite/libgomp.fortran/depend-6.f90: New test.
3565 * testsuite/libgomp.fortran/depend-7.f90: New test.
3566
702bd11f
GA
35672022-05-16 Marcel Vollweiler <marcel@codesourcery.com>
3568
3569 * testsuite/libgomp.c++/target-has-device-addr-7.C: New test.
3570 * testsuite/libgomp.c++/target-has-device-addr-8.C: New test.
3571 * testsuite/libgomp.c++/target-has-device-addr-9.C: New test.
3572
9df4ffe4
GA
35732022-05-13 Tobias Burnus <tobias@codesourcery.com>
3574
3575 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
3576
35772022-05-13 Tobias Burnus <tobias@codesourcery.com>
3578
3579 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
3580
35812022-05-13 Thomas Schwinge <thomas@codesourcery.com>
3582
3583 * plugin/Makefrag.am (libgomp_plugin_nvptx_la_CPPFLAGS)
3584 [PLUGIN_NVPTX_DYNAMIC]: Don't append '$(PLUGIN_NVPTX_CPPFLAGS)'.
3585 (libgomp_plugin_nvptx_la_LDFLAGS) [PLUGIN_NVPTX_DYNAMIC]: Don't
3586 append '$(PLUGIN_NVPTX_LDFLAGS)'.
3587 * Makefile.in: Regenerate.
3588
49ace834
GA
35892022-05-12 Thomas Schwinge <thomas@codesourcery.com>
3590
3591 * Makefile.am (libgomp_la_LIBADD): Initialize.
3592 * plugin/configfrag.ac (DL_LIBS): New.
3593 (PLUGIN_GCN_LIBS): Remove.
3594 (PLUGIN_NVPTX_LIBS): Don't set in the 'PLUGIN_NVPTX_DYNAMIC' case.
3595 * plugin/Makefrag.am (libgomp_la_LIBADD)
3596 (libgomp_plugin_gcn_la_LIBADD): Consider '$(DL_LIBS)'.
3597 (libgomp_plugin_nvptx_la_LIBADD) <PLUGIN_NVPTX_DYNAMIC>: Likewise.
3598 * Makefile.in: Regenerate.
3599 * config.h.in: Likewise.
3600 * configure: Likewise.
3601 * testsuite/Makefile.in: Likewise.
3602
36032022-05-12 Thomas Schwinge <thomas@codesourcery.com>
3604
3605 * plugin/Makefrag.am: Handle 'PLUGIN_NVPTX_DYNAMIC'.
3606 * plugin/configfrag.ac (PLUGIN_NVPTX_DYNAMIC): Change
3607 'AC_DEFINE_UNQUOTED' into 'AM_CONDITIONAL'.
3608 * plugin/plugin-nvptx.c: Split 'PLUGIN_NVPTX_DYNAMIC' into
3609 'PLUGIN_NVPTX_INCLUDE_SYSTEM_CUDA_H' and
3610 'PLUGIN_NVPTX_LINK_LIBCUDA'.
3611 * Makefile.in: Regenerate.
3612 * config.h.in: Likewise.
3613 * configure: Likewise.
3614
36152022-05-12 Thomas Schwinge <thomas@codesourcery.com>
3616
3617 * plugin/configfrag.ac: Don't 'AC_SUBST' and 'AC_DEFINE_UNQUOTED'
3618 for 'PLUGIN_GCN', 'PLUGIN_NVPTX'.
3619 * Makefile.in: Regenerate.
3620 * config.h.in: Likewise.
3621 * configure: Likewise.
3622 * testsuite/Makefile.in: Likewise.
3623
36242022-05-12 Jakub Jelinek <jakub@redhat.com>
3625
3626 * libgomp.h (struct gomp_task): Add depend_all_memory member.
3627 * task.c (gomp_init_task): Initialize depend_all_memory.
3628 (gomp_task_handle_depend): Handle omp_all_memory.
3629 (gomp_task_run_post_handle_depend_hash): Clear
3630 parent->depend_all_memory if equal to current task.
3631 (gomp_task_maybe_wait_for_dependencies): Handle omp_all_memory.
3632 * testsuite/libgomp.c-c++-common/depend-1.c: New test.
3633 * testsuite/libgomp.c-c++-common/depend-2.c: New test.
3634 * testsuite/libgomp.c-c++-common/depend-3.c: New test.
3635
d0d513b5
GA
36362022-05-11 Thomas Schwinge <thomas@codesourcery.com>
3637
3638 * plugin/configfrag.ac: Remove '--with-hsa-runtime',
3639 '--with-hsa-runtime-include', '--with-hsa-runtime-lib' processing.
3640 * Makefile.in: Regenerate.
3641 * configure: Likewise.
3642 * testsuite/Makefile.in: Likewise.
3643
36442022-05-11 Thomas Schwinge <thomas@codesourcery.com>
3645
3646 * plugin/Makefrag.am (libgomp_plugin_gcn_la_CPPFLAGS): Don't
3647 consider 'PLUGIN_GCN_CPPFLAGS'.
3648 (libgomp_plugin_gcn_la_LDFLAGS): Don't consider
3649 'PLUGIN_GCN_LDFLAGS'.
3650 * plugin/configfrag.ac (PLUGIN_GCN_CPPFLAGS, PLUGIN_GCN_LDFLAGS):
3651 Remove.
3652 * Makefile.in: Regenerate.
3653 * configure: Likewise.
3654 * testsuite/Makefile.in: Likewise.
3655
36562022-05-11 Thomas Schwinge <thomas@codesourcery.com>
3657
3658 * plugin/configfrag.ac (HSA_RUNTIME_CPPFLAGS)
3659 (HSA_RUNTIME_LDFLAGS): Remove.
3660 * configure: Regenerate.
3661
36622022-05-11 Thomas Schwinge <thomas@codesourcery.com>
3663
3664 * testsuite/lib/libgomp.exp (libgomp_init): Don't
3665 'append always_ld_library_path ":$hsa_runtime_lib"'.
3666 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib): Don't set.
3667
e8778989
GA
36682022-05-10 Thomas Schwinge <thomas@codesourcery.com>
3669
3670 * testsuite/libgomp.fortran/use_device_addr-5.f90: Fix up
3671 multi-device testing.
3672
ea3fbfda
GA
36732022-05-06 Marcel Vollweiler <marcel@codesourcery.com>
3674
3675 * libgomp.map: Added omp_target_is_accessible.
3676 * libgomp.texi: Tagged omp_target_is_accessible as supported.
3677 * omp.h.in: Added omp_target_is_accessible.
3678 * omp_lib.f90.in: Added interface for omp_target_is_accessible.
3679 * omp_lib.h.in: Likewise.
3680 * target.c (omp_target_is_accessible): Added implementation of
3681 omp_target_is_accessible.
3682 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c: New test.
3683 * testsuite/libgomp.fortran/target-is-accessible-1.f90: New test.
3684
ab869e7f
GA
36852022-05-05 Sandra Loosemore <sandra@codesourcery.com>
3686
3687 * libgomp.texi (OpenMP 5.0): Feature is now fully supported.
3688
3e7db517
GA
36892022-05-04 Tobias Burnus <tobias@codesourcery.com>
3690
3691 * plugin/plugin-gcn.c (isa_matches_agent): Suggest -foffload-options.
3692
36932022-05-04 Tobias Burnus <tobias@codesourcery.com>
3694
3695 * testsuite/libgomp.fortran/use_device_addr-5.f90: New test.
3696
e66af28d
GA
36972022-05-03 Marcel Vollweiler <marcel@codesourcery.com>
3698
3699 * libgomp.map: Added omp_get_mapped_ptr.
3700 * libgomp.texi: Tagged omp_get_mapped_ptr as supported.
3701 * omp.h.in: Added omp_get_mapped_ptr.
3702 * omp_lib.f90.in: Added interface for omp_get_mapped_ptr.
3703 * omp_lib.h.in: Likewise.
3704 * target.c (omp_get_mapped_ptr): Added implementation of
3705 omp_get_mapped_ptr.
3706 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c: New test.
3707 * testsuite/libgomp.c-c++-common/get-mapped-ptr-2.c: New test.
3708 * testsuite/libgomp.c-c++-common/get-mapped-ptr-3.c: New test.
3709 * testsuite/libgomp.c-c++-common/get-mapped-ptr-4.c: New test.
3710 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90: New test.
3711 * testsuite/libgomp.fortran/get-mapped-ptr-2.f90: New test.
3712 * testsuite/libgomp.fortran/get-mapped-ptr-3.f90: New test.
3713 * testsuite/libgomp.fortran/get-mapped-ptr-4.f90: New test.
3714
6b6f53d8
GA
37152022-04-28 Thomas Schwinge <thomas@codesourcery.com>
3716
3717 PR fortran/104717
3718 * testsuite/libgomp.oacc-fortran/print-1.f90: Add OpenACC
3719 privatization scanning. For GCN offloading compilation, raise
3720 '-mgang-private-size'.
3721
01ad093b
GA
37222022-04-26 Jakub Jelinek <jakub@redhat.com>
3723
3724 PR libgomp/105358
3725 * work.c (gomp_init_work_share): Don't mask of adjustment for
3726 dynamic long long realignment if struct gomp_work_share has smaller
3727 alignof than long long.
3728 * loop.c (GOMP_loop_start): Don't use inline_ordered_team_ids if
3729 struct gomp_work_share has smaller alignof than long long or if
3730 sizeof (struct gomp_work_share) is smaller than
3731 INLINE_ORDERED_TEAM_IDS_OFF.
3732 * loop_ull.c (GOMP_loop_ull_start): Likewise.
3733 * sections.c (GOMP_sections2_start): Likewise.
3734
98de0da6
GA
37352022-04-25 Jakub Jelinek <jakub@redhat.com>
3736 Thomas Schwinge <thomas@codesourcery.com>
3737
3738 PR fortran/104717
3739 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Adjust.
3740
247bbed1
GA
37412022-04-13 Jakub Jelinek <jakub@redhat.com>
3742
3743 * libgomp.texi: Fix a typo - mutexinouset -> mutexinoutset.
3744
80eb8ec6
GA
37452022-04-06 Thomas Schwinge <thomas@codesourcery.com>
3746
3747 * plugin/cuda/cuda.h: Remove file.
3748 * plugin/plugin-nvptx.c [PLUGIN_NVPTX_DYNAMIC]: Include
3749 "cuda/cuda.h" instead of <cuda.h>.
3750 * plugin/configfrag.ac <PLUGIN_NVPTX_DYNAMIC>: Don't set
3751 'PLUGIN_NVPTX_CPPFLAGS'.
3752 * configure: Regenerate.
3753
9d84ed68
GA
37542022-04-05 Chung-Lin Tang <cltang@codesourcery.com>
3755
3756 * testsuite/libgomp.fortran/use_device_ptr-4.f90: New testcase.
3757
5e09bb1b
GA
37582022-04-04 Tom de Vries <tdevries@suse.de>
3759
3760 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Use
3761 on_device_arch_nvptx instead of offload_target_nvptx.
3762 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
3763
8af4270d
GA
37642022-04-01 Tom de Vries <tdevries@suse.de>
3765
3766 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Define
3767 and use REC_DEPTH.
3768 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
3769
37702022-04-01 Tom de Vries <tdevries@suse.de>
3771
3772 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: Fix
3773 num_workers check.
3774
9f774626
GA
37752022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
3776 Lulu Cheng <chenglulu@loongson.cn>
3777
3778 * configure.tgt: Add LoongArch triplet.
3779
aab0127d
GA
37802022-03-28 Tom de Vries <tdevries@suse.de>
3781
3782 * plugin/configfrag.ac: Use /$(libexecdir:\$(exec_prefix)/%=%)/
3783 instead of /libexec/.
3784 * configure: Regenerate.
3785
31e989a2
GA
37862022-03-25 Tom de Vries <tdevries@suse.de>
3787
3788 PR libgomp/105042
3789 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Reduce
3790 execution time.
3791 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Same.
3792 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Same.
3793
d1ca63a1
GA
37942022-03-23 Tobias Burnus <tobias@codesourcery.com>
3795
3796 PR middle-end/104285
3797 * testsuite/libgomp.c++/target-same-name-2-a.C: New test.
3798 * testsuite/libgomp.c++/target-same-name-2-b.C: New test.
3799 * testsuite/libgomp.c++/target-same-name-2.C: New test.
3800 * testsuite/libgomp.c-c++-common/target-same-name-1-a.c: New test.
3801 * testsuite/libgomp.c-c++-common/target-same-name-1-b.c: New test.
3802 * testsuite/libgomp.c-c++-common/target-same-name-1.c: New test.
3803
a2287813
GA
38042022-03-22 Tom de Vries <tdevries@suse.de>
3805
3806 PR target/104916
3807 PR target/104783
3808 * testsuite/libgomp.c/pr104783-2.c: New test.
3809
8ca61ad1
GA
38102022-03-18 Tobias Burnus <tobias@codesourcery.com>
3811
3812 PR fortran/103039
3813 * testsuite/libgomp.fortran/associate4.f90: New test.
3814
38152022-03-18 Tom de Vries <tdevries@suse.de>
3816
3817 PR target/104952
3818 * testsuite/libgomp.c/pr104952-1.c: New test.
3819 * testsuite/libgomp.c/pr104952-2.c: New test.
3820
38212022-03-18 Jakub Jelinek <jakub@redhat.com>
3822
3823 * config/linux/affinity.c (gomp_affinity_init_numa_domains): Move seen
3824 variable next to pl variable.
3825
e9ea3016
GA
38262022-03-17 Thomas Schwinge <thomas@codesourcery.com>
3827
3828 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
3829 Enhance.
3830 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
3831 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
3832
38332022-03-17 Thomas Schwinge <thomas@codesourcery.com>
3834
3835 PR middle-end/90115
3836 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Enhance.
3837 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
3838
9fc8f278
GA
38392022-03-16 Marcel Vollweiler <marcel@codesourcery.com>
3840
3841 * fortran.c (omp_set_num_teams_8_): Call omp_set_num_teams instead of
3842 omp_set_max_active_levels.
3843 * testsuite/libgomp.fortran/icv-8.f90: New test.
3844
38452022-03-16 Thomas Schwinge <thomas@codesourcery.com>
3846
3847 PR testsuite/102841
3848 * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Adjust.
3849
b9756c08
GA
38502022-03-13 Tobias Burnus <tobias@codesourcery.com>
3851
3852 * libgomp.texi: Fix typo.
3853
57eeedda
GA
38542022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3855
3856 PR middle-end/100280
3857 PR middle-end/104892
3858 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
3859 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise.
3860 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3861 Likewise.
3862 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
3863 Likewise.
3864 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
3865 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
3866 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
3867 Likewise.
3868
38692022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3870
3871 PR middle-end/104892
3872 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Point
3873 to PR104892.
3874 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise,
3875 enable '--param=openacc-kernels=decompose' and adjust.
3876 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
3877 Likewise.
3878 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
3879 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
3880 Likewise.
3881
38822022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3883
3884 PR middle-end/90115
3885 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Enhance.
3886 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c: Likewise.
3887 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
3888 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Likewise.
3889
38902022-03-12 Thomas Schwinge <thomas@codesourcery.com>
3891
3892 PR middle-end/100280
3893 PR middle-end/104086
3894 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
3895 Merge this...
3896 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
3897 ..., and this...
3898 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: ... into
3899 this, and adjust.
3900 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3901 Extend.
3902
5e28be89
GA
39032022-03-10 Hafiz Abid Qadeer <abidh@codesourcery.com>
3904
3905 * testsuite/libgomp.fortran/allocate-1.f90: Remove pool_size
3906 trait. Test last index in w and v array. Remove redundant
3907 assignment to V(1). Move alignment checks at the end of
3908 parallel region.
3909
39102022-03-10 Tom de Vries <tdevries@suse.de>
3911
3912 * testsuite/libgomp.c/pr104783.c: New test.
3913
39142022-03-10 Thomas Schwinge <thomas@codesourcery.com>
3915
3916 PR middle-end/90115
3917 PR middle-end/102330
3918 PR middle-end/104774
3919 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
3920 Enhance.
3921 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
3922 Adjust.
3923 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
3924 Likewise.
3925 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
3926 Likewise.
3927 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
3928 Likewise.
3929 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
3930 Likewise.
3931 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
3932 Likewise.
3933 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
3934 Likewise.
3935 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
3936 Likewise.
3937 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
3938 Likewise.
3939 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
3940 Likewise.
3941 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
3942 Likewise.
3943 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
3944 Likewise.
3945 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
3946 Likewise.
3947 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
3948 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
3949 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
3950
39512022-03-10 Thomas Schwinge <thomas@codesourcery.com>
3952
3953 PR middle-end/90115
3954 * testsuite/libgomp.oacc-fortran/routine-1.f90: Enhance.
3955 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
3956 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
3957 * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
3958
8d96e14c
GA
39592022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3960
3961 PR testsuite/104791
3962 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Fix
3963 expected diagnostics.
3964
39652022-03-04 Thomas Schwinge <thomas@codesourcery.com>
3966
3967 PR middle-end/104784
3968 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
3969 Test with '--param=openacc-kernels=decompose'.
3970 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
3971 Likewise.
3972 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
3973 Likewise.
3974 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
3975 Likewise.
3976 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
3977 Likewise.
3978 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
3979 Likewise.
3980 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
3981 Likewise.
3982 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
3983 Likewise.
3984 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
3985 Likewise.
3986 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
3987 Likewise.
3988 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
3989 Likewise.
3990 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
3991 Likewise.
3992 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
3993 Likewise.
3994 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
3995 Likewise.
3996 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
3997 Likewise.
3998 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
3999 Likewise.
4000 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
4001 Likewise.
4002 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
4003 Likewise.
4004 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
4005 Likewise.
4006 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
4007 Likewise.
4008 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
4009 Likewise.
4010 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
4011 Likewise.
4012 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
4013 Likewise.
4014 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
4015 Likewise.
4016 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
4017 Likewise.
4018 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
4019 Likewise.
4020 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
4021 Likewise.
4022 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
4023 Likewise.
4024 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
4025 Likewise.
4026 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
4027 Likewise.
4028 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
4029 Likewise.
4030 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
4031 Likewise.
4032 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
4033 Likewise.
4034
40352022-03-04 Thomas Schwinge <thomas@codesourcery.com>
4036
4037 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
4038 Test '-fopt-info-omp-all'.
4039 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
4040 Likewise.
4041 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
4042 Likewise.
4043 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
4044 Likewise.
4045 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
4046 Likewise.
4047 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
4048 Likewise.
4049 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
4050 Likewise.
4051 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
4052 Likewise.
4053 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
4054 Likewise.
4055 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
4056 Likewise.
4057 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
4058 Likewise.
4059 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
4060 Likewise.
4061 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
4062 Likewise.
4063 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
4064 Likewise.
4065 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
4066 Likewise.
4067 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
4068 Likewise.
4069 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
4070 Likewise.
4071 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
4072 Likewise.
4073 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
4074 Likewise.
4075 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
4076 Likewise.
4077 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
4078 Likewise.
4079 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
4080 Likewise.
4081 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
4082 Likewise.
4083 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
4084 Likewise.
4085 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
4086 Likewise.
4087 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
4088 Likewise.
4089 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
4090 Likewise.
4091 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
4092 Likewise.
4093 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
4094 Likewise.
4095 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
4096 Likewise.
4097 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
4098 Likewise.
4099 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
4100 Likewise.
4101 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
4102 Likewise.
4103
41042022-03-04 Thomas Schwinge <thomas@codesourcery.com>
4105
4106 PR middle-end/100280
4107 PR middle-end/104132
4108 PR middle-end/104133
4109 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4110 Extend.
4111
41122022-03-04 Thomas Schwinge <thomas@codesourcery.com>
4113
4114 PR middle-end/100280
4115 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
4116 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4117 Likewise.
4118
41192022-03-04 Thomas Schwinge <thomas@codesourcery.com>
4120
4121 PR middle-end/100280
4122 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
4123 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4124 Likewise.
4125
a35f1697
GA
41262022-02-28 Tom de Vries <tdevries@suse.de>
4127
4128 * testsuite/libgomp.c/declare-variant-3-sm30.c: Add -foffload=-mptx=_.
4129 * testsuite/libgomp.c/declare-variant-3-sm35.c: Same.
4130 * testsuite/libgomp.c/declare-variant-3-sm53.c: Same.
4131 * testsuite/libgomp.c/declare-variant-3-sm70.c: Same.
4132 * testsuite/libgomp.c/declare-variant-3-sm75.c: Same.
4133 * testsuite/libgomp.c/declare-variant-3-sm80.c: Same.
4134
756a6185
GA
41352022-02-24 Tom de Vries <tdevries@suse.de>
4136
4137 * testsuite/libgomp.c/declare-variant-3-sm30.c: New test.
4138 * testsuite/libgomp.c/declare-variant-3-sm35.c: New test.
4139 * testsuite/libgomp.c/declare-variant-3-sm53.c: New test.
4140 * testsuite/libgomp.c/declare-variant-3-sm70.c: New test.
4141 * testsuite/libgomp.c/declare-variant-3-sm75.c: New test.
4142 * testsuite/libgomp.c/declare-variant-3-sm80.c: New test.
4143 * testsuite/libgomp.c/declare-variant-3.h: New header file.
4144
2cfb33fc
GA
41452022-02-22 Thomas Schwinge <thomas@codesourcery.com>
4146
4147 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Fix OpenACC
4148 gang-redundant execution.
4149
41502022-02-22 Tom de Vries <tdevries@suse.de>
4151
4152 PR target/99555
4153 * config/nvptx/bar.c (generation_to_barrier): New function, copied
4154 from config/rtems/bar.c.
4155 (futex_wait, futex_wake): New function.
4156 (do_spin, do_wait): New function, copied from config/linux/wait.h.
4157 (gomp_barrier_wait_end, gomp_barrier_wait_last)
4158 (gomp_team_barrier_wake, gomp_team_barrier_wait_end):
4159 (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): Remove
4160 and replace with include of config/linux/bar.c.
4161 * config/nvptx/bar.h (gomp_barrier_t): Add fields waiters and lock.
4162 (gomp_barrier_init): Init new fields.
4163 * testsuite/libgomp.c-c++-common/task-detach-6.c: Remove nvptx-specific
4164 workarounds.
4165 * testsuite/libgomp.c/pr99555-1.c: Same.
4166 * testsuite/libgomp.fortran/task-detach-6.f90: Same.
4167
41682022-02-22 Tom de Vries <tdevries@suse.de>
4169
4170 PR testsuite/104146
4171 * testsuite/libgomp.c++/pr96390.C: Add additional-option
4172 -foffload=-Wa,--verify for nvptx.
4173 * testsuite/libgomp.c-c++-common/pr96390.c: Same.
4174
875e493b
GA
41752022-02-15 Tobias Burnus <tobias@codesourcery.com>
4176
4177 * testsuite/libgomp.fortran/depend-4.f90: New test.
4178
a645583d
GA
41792022-02-10 Tobias Burnus <tobias@codesourcery.com>
4180
4181 PR c++/102204
4182 * testsuite/libgomp.c++/target-virtual-1.C: New test.
4183
41842022-02-10 Marcel Vollweiler <marcel@codesourcery.com>
4185
4186 * libgomp.texi: Updated entry for HAS_DEVICE_ADDR.
4187 * target.c (copy_firstprivate_data): Copy only if host address is not
4188 NULL.
4189 * testsuite/libgomp.c++/target-has-device-addr-2.C: New test.
4190 * testsuite/libgomp.c++/target-has-device-addr-4.C: New test.
4191 * testsuite/libgomp.c++/target-has-device-addr-5.C: New test.
4192 * testsuite/libgomp.c++/target-has-device-addr-6.C: New test.
4193 * testsuite/libgomp.c-c++-common/target-has-device-addr-1.c: New test.
4194 * testsuite/libgomp.c/target-has-device-addr-3.c: New test.
4195 * testsuite/libgomp.fortran/target-has-device-addr-1.f90: New test.
4196 * testsuite/libgomp.fortran/target-has-device-addr-2.f90: New test.
4197 * testsuite/libgomp.fortran/target-has-device-addr-3.f90: New test.
4198 * testsuite/libgomp.fortran/target-has-device-addr-4.f90: New test.
4199
2a2fda2d
GA
42002022-02-08 Jakub Jelinek <jakub@redhat.com>
4201
4202 PR libgomp/104385
4203 * task.c (gomp_task_run_post_handle_dependers): If parent is NULL,
4204 clear task->parent.
4205 * testsuite/libgomp.c/pr104385.c: New test.
4206
3c1cbde1
GA
42072022-02-04 Tobias Burnus <tobias@codesourcery.com>
4208
4209 * testsuite/libgomp.fortran/allocate-1.f90: Remove spurious
4210 STOP of previous commit.
4211
42122022-02-04 Tobias Burnus <tobias@codesourcery.com>
4213
4214 * testsuite/libgomp.fortran/allocate-1.c (is_64bit_aligned): Renamed
4215 from is_64bit_aligned_.
4216 * testsuite/libgomp.fortran/allocate-1.f90: Fix interface decl
4217 and use it, more implicit none, remove unused argument.
4218
682ede39
GA
42192022-02-03 David Seifert <soap@gentoo.org>
4220 Jakub Jelinek <jakub@redhat.com>
4221
4222 * configure.ac: Support --disable-werror.
4223 * configure: Regenerate.
4224
ae7e4af9
GA
42252022-02-01 Tom de Vries <tdevries@suse.de>
4226
4227 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: Remove
4228 PR83812 workaround.
4229 * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: Same.
4230 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90: Same.
4231
42322022-02-01 Tom de Vries <tdevries@suse.de>
4233
4234 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Reduce
4235 num_workers for nvidia accelerator to fix libgomp error 'insufficient
4236 resources'.
4237 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
4238 Same.
4239 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Same.
4240
42412022-02-01 Tom de Vries <tdevries@suse.de>
4242
4243 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
4244 recursion depth.
4245 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
4246
1bb52662
GA
42472022-01-31 Martin Liska <mliska@suse.cz>
4248
4249 * acinclude.m4: Detect *_ld_is_mold and use it.
4250 * configure: Regenerate.
4251
99f17e99
GA
42522022-01-27 Tobias Burnus <tobias@codesourcery.com>
4253
4254 * libgomp.texi (OpenMP 5.0): Update implementation status.
4255
9dd44357
GA
42562022-01-21 Thomas Schwinge <thomas@codesourcery.com>
4257
4258 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Strengthen.
4259 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
4260 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
4261 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
4262 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
4263 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
4264 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
4265 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
4266 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
4267 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
4268 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
4269 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
4270 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
4271 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
4272 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
4273
fe1ad141
GA
42742022-01-19 Marcel Vollweiler <marcel@codesourcery.com>
4275
4276 * config/gcn/icv-device.c: Make GOMP_DEVICE_NUM_VAR public (remove
4277 "static") to make the device num available in the offload image.
4278
42792022-01-19 Martin Liska <mliska@suse.cz>
4280 Thomas Schwinge <thomas@codesourcery.com>
4281
4282 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update scanning
4283 patterns.
4284 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
4285 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
4286 Likewise.
4287 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
4288 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4289 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
4290 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
4291 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
4292 Likewise.
4293 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c:
4294 Likewise.
4295 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c:
4296 Likewise.
4297 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c:
4298 Likewise.
4299 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90:
4300 Likewise.
4301 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
4302 Likewise.
4303 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
4304 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
4305 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
4306
7a761ae6
GA
43072022-01-18 Martin Liska <mliska@suse.cz>
4308
4309 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update keyword
4310 in dg-warning.
4311 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
4312 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
4313 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
4314 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4315 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
4316 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
4317 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c: Likewise.
4318 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: Likewise.
4319 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: Likewise.
4320 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: Likewise.
4321 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Likewise.
4322 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: Likewise.
4323 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
4324 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
4325 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
4326
fc829782
GA
43272022-01-17 Thomas Schwinge <thomas@codesourcery.com>
4328
4329 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Extend.
4330 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
4331 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
4332
43332022-01-17 Julian Brown <julian@codesourcery.com>
4334 Thomas Schwinge <thomas@codesourcery.com>
4335
4336 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: New test.
4337 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: New test.
4338 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: New test.
4339
1e942d7c
GA
43402022-01-16 Kwok Cheung Yeung <kcy@codesourcery.com>
4341 Andrew Stubbs <ams@codesourcery.com>
4342
4343 * plugin/plugin-gcn.c (parse_target_attributes): Automatically set
4344 the number of teams and threads if necessary.
4345 (gcn_exec): Automatically set the number of gangs and workers if
4346 necessary.
4347
ad3f0d08
GA
43482022-01-13 Hafiz Abid Qadeer <abidh@codesourcery.com>
4349
4350 * testsuite/libgomp.fortran/allocate-1.c: New test.
4351 * testsuite/libgomp.fortran/allocate-1.f90: New test.
4352 * libgomp.texi: Remove string that says that allocate clause
4353 support is for C/C++ only.
4354
43552022-01-13 Thomas Schwinge <thomas@codesourcery.com>
4356
4357 * testsuite/libgomp.c-c++-common/on_device_arch.h
4358 (any_device_arch, any_device_arch_intel_mic): New.
4359 * testsuite/lib/libgomp.exp
4360 (check_effective_target_offload_device_any_intel_mic): New.
4361 * testsuite/libgomp.c-c++-common/target-45.c: Use it.
4362 * testsuite/libgomp.fortran/target10.f90: Likewise.
4363
43642022-01-13 Thomas Schwinge <thomas@codesourcery.com>
4365
4366 PR tree-optimization/102192
4367 * testsuite/libgomp.oacc-fortran/routine-10.f90: Document current
4368 '-Wuninitialized' diagnostics.
4369
43702022-01-13 Thomas Schwinge <thomas@codesourcery.com>
4371
4372 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Document
4373 current '-Wuninitialized' diagnostics.
4374 * testsuite/libgomp.oacc-fortran/data-5.f90: Likewise.
4375 * testsuite/libgomp.oacc-fortran/gemm-2.f90: Likewise.
4376 * testsuite/libgomp.oacc-fortran/gemm.f90: Likewise.
4377 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Likewise.
4378 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
4379 * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
4380 * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: Likewise.
4381 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
4382 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
4383 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
4384 * testsuite/libgomp.oacc-fortran/reference-reductions.f90:
4385 Likewise.
4386
43872022-01-13 Thomas Schwinge <thomas@codesourcery.com>
4388
4389 * testsuite/libgomp.c/address-space-1.c: Remove 'dg-xfail-run-if'
4390 for 'offload_device_intel_mic'.
4391
43922022-01-13 Julian Brown <julian@codesourcery.com>
4393 Thomas Schwinge <thomas@codesourcery.com>
4394
4395 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Remove GCN
4396 offloading execution XFAIL.
4397
43982022-01-13 Thomas Schwinge <thomas@codesourcery.com>
4399
4400 PR middle-end/100280
4401 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
4402 Update.
4403 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
4404 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4405 Likewise.
4406
44072022-01-13 Thomas Schwinge <thomas@codesourcery.com>
4408
4409 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
4410 Enhance.
4411 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
4412 Likewise.
4413 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Likewise.
4414 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
4415 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: Likewise.
4416 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: Likewise.
4417 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4418 Likewise.
4419 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
4420 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
4421 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
4422 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
4423
7d11b64b
GA
44242022-01-04 Tobias Burnus <tobias@codesourcery.com>
4425
4426 * testsuite/libgomp.c-c++-common/target-45.c: Iterate over all devices.
4427 * testsuite/libgomp.fortran/target10.f90: Likewise.
4428
44292022-01-04 Chung-Lin Tang <cltang@codesourcery.com>
4430
4431 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Change uses of STRINGX
4432 into XSTRING when looking for GOMP_DEVICE_NUM_VAR in offload image.
4433 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
4434
a4ae8c37
GA
44352022-01-03 Jakub Jelinek <jakub@redhat.com>
4436
4437 * libgomp.texi: Bump @copying's copyright year.
4438
7f1239cb
GA
44392021-12-13 Tobias Burnus <tobias@codesourcery.com>
4440
4441 * libgomp.texi (OpenMP 5.1): Set Fortran support for atomic to 'Y'.
4442 * testsuite/libgomp.fortran/atomic-19.f90: New test.
4443
0bceef16
GA
44442021-12-10 Andrew Stubbs <ams@codesourcery.com>
4445
4446 * plugin/plugin-gcn.c (struct gcn_image_desc): Remove global_variables.
4447 (GOMP_OFFLOAD_load_image): Locate the offload variables via the
4448 table, not individual symbols.
4449
4b4839e3
GA
44502021-12-09 Chung-Lin Tang <cltang@codesourcery.com>
4451
4452 * testsuite/libgomp.c++/target-lambda-1.C: Only run under
4453 "target offload_device_nonshared_as"
4454 * testsuite/libgomp.c++/target-this-3.C: Likewise.
4455 * testsuite/libgomp.c++/target-this-4.C: Likewise.
4456
641ff219
GA
44572021-12-08 Chung-Lin Tang <cltang@codesourcery.com>
4458
4459 * target.c (gomp_map_vars_existing): Make sure attached pointer is
4460 not overwritten during cross-host/device copying.
4461 (gomp_update): Likewise.
4462 (gomp_exit_data): Likewise.
4463 * testsuite/libgomp.c++/target-11.C: Adjust testcase.
4464 * testsuite/libgomp.c++/target-12.C: Likewise.
4465 * testsuite/libgomp.c++/target-15.C: Likewise.
4466 * testsuite/libgomp.c++/target-16.C: Likewise.
4467 * testsuite/libgomp.c++/target-17.C: Likewise.
4468 * testsuite/libgomp.c++/target-21.C: Likewise.
4469 * testsuite/libgomp.c++/target-23.C: Likewise.
4470 * testsuite/libgomp.c/target-23.c: Likewise.
4471 * testsuite/libgomp.c/target-29.c: Likewise.
4472 * testsuite/libgomp.c-c++-common/target-implicit-map-2.c: New testcase.
4473
44742021-12-08 Chung-Lin Tang <cltang@codesourcery.com>
4475
4476 PR middle-end/92120
4477 * libgomp.h (gomp_attach_pointer): Add bool parameter.
4478 * oacc-mem.c (acc_attach_async): Update call to gomp_attach_pointer.
4479 (goacc_enter_data_internal): Likewise.
4480 * target.c (gomp_map_vars_existing): Update assert condition to
4481 include GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION.
4482 (gomp_map_pointer): Add 'bool allow_zero_length_array_sections'
4483 parameter, add support for mapping a pointer with NULL target.
4484 (gomp_attach_pointer): Add 'bool allow_zero_length_array_sections'
4485 parameter, add support for attaching a pointer with NULL target.
4486 (gomp_map_vars_internal): Update calls to gomp_map_pointer and
4487 gomp_attach_pointer, add handling for
4488 GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION, and
4489 GOMP_MAP_POINTER_TO_ZERO_LENGTH_ARRAY_SECTION cases.
4490 * testsuite/libgomp.c++/target-23.C: New testcase.
4491 * testsuite/libgomp.c++/target-lambda-1.C: New testcase.
4492 * testsuite/libgomp.c++/target-lambda-2.C: New testcase.
4493 * testsuite/libgomp.c++/target-this-1.C: New testcase.
4494 * testsuite/libgomp.c++/target-this-2.C: New testcase.
4495 * testsuite/libgomp.c++/target-this-3.C: New testcase.
4496 * testsuite/libgomp.c++/target-this-4.C: New testcase.
4497 * testsuite/libgomp.c++/target-this-5.C: New testcase.
4498
70e4cb66
GA
44992021-12-04 Tobias Burnus <tobias@codesourcery.com>
4500
4501 * libgomp.texi (OpenMP 5.1): Update status.
4502
45032021-12-04 Tobias Burnus <tobias@codesourcery.com>
4504
4505 * libgomp.texi (OMP_PLACES): Extend description for OMP 5.1 changes.
4506
ea6ef320
GA
45072021-12-02 Chung-Lin Tang <cltang@codesourcery.com>
4508
4509 PR fortran/90030
4510 * testsuite/libgomp.oacc-fortran/pr90030.f90: New test.
4511 * testsuite/libgomp.fortran/pr90030.f90: New test.
4512
c177e806
GA
45132021-11-30 Kwok Cheung Yeung <kcy@codesourcery.com>
4514 Thomas Schwinge <thomas@codesourcery.com>
4515
4516 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Remove
4517 temporary skip.
4518
45192021-11-30 Cesar Philippidis <cesar@codesourcery.com>
4520 Thomas Schwinge <thomas@codesourcery.com>
4521
4522 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Temporarily
4523 skip.
4524
87cd82c8
GA
45252021-11-29 Richard Biener <rguenther@suse.de>
4526
4527 * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): Remove unreachable
4528 return.
4529
d9ca4b45
GA
45302021-11-24 Jakub Jelinek <jakub@redhat.com>
4531
4532 PR middle-end/103384
4533 * testsuite/libgomp.c/declare-variant-2.c: New test.
4534
483092d3
GA
45352021-11-18 David Edelsohn <dje.gcc@gmail.com>
4536
4537 * alloc.c (gomp_aligned_alloc): Fix typo.
4538
45392021-11-18 Jakub Jelinek <jakub@redhat.com>
4540
4541 PR libgomp/102838
4542 * libgomp.h (GOMP_USE_ALIGNED_WORK_SHARES): Define if
4543 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined and __AMDGCN__ is not.
4544 (struct gomp_work_share): Use GOMP_USE_ALIGNED_WORK_SHARES instead of
4545 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
4546 * work.c (alloc_work_share, gomp_work_share_start): Likewise.
4547 * team.c (gomp_new_team): If GOMP_USE_ALIGNED_WORK_SHARES, use
4548 gomp_aligned_alloc instead of team_malloc.
4549
45502021-11-18 Jakub Jelinek <jakub@redhat.com>
4551
4552 PR libgomp/102838
4553 * alloc.c (gomp_aligned_alloc): Prefer _aligned_alloc over
4554 memalign over posix_memalign over aligned_alloc over fallback
4555 with malloc instead of aligned_alloc over _aligned_alloc over
4556 posix_memalign over memalign over fallback with malloc. For
4557 aligned_alloc, round up size up to multiple of al.
4558
6b1695f4
GA
45592021-11-16 Jakub Jelinek <jakub@redhat.com>
4560
4561 * libgomp.texi (OpenMP 5.1): Mark thread_limit clause to target
4562 construct as implemented.
4563
e2b57363
GA
45642021-11-15 Tobias Burnus <tobias@codesourcery.com>
4565
4566 * testsuite/libgomp.fortran/thread-limit-1.f90: New test.
4567
45682021-11-15 Jakub Jelinek <jakub@redhat.com>
4569
4570 * task.c (gomp_create_target_task): Copy args array as well.
4571 * target.c (gomp_target_fallback): Add args argument.
4572 Set gomp_icv (true)->thread_limit_var if thread_limit is present.
4573 (GOMP_target): Adjust gomp_target_fallback caller.
4574 (GOMP_target_ext): Likewise.
4575 (gomp_target_task_fn): Likewise.
4576 * config/nvptx/team.c (gomp_nvptx_main): Set
4577 gomp_global_icv.thread_limit_var.
4578 * testsuite/libgomp.c-c++-common/thread-limit-1.c: New test.
4579
45802021-11-15 Jakub Jelinek <jakub@redhat.com>
4581
4582 * config/nvptx/team.c (__gomp_team_num): Define as
4583 __attribute__((shared)) var.
4584 (gomp_nvptx_main): Initialize __gomp_team_num to 0.
4585 * config/nvptx/target.c (__gomp_team_num): Declare as
4586 extern __attribute__((shared)) var.
4587 (GOMP_teams4): Use __gomp_team_num as the team number instead of
4588 %ctaid.x. If first, initialize it to %ctaid.x. If num_teams_lower
4589 is bigger than num_blocks, use num_teams_lower teams and arrange for
4590 bumping of __gomp_team_num if !first and returning false once we run
4591 out of teams.
4592 * config/nvptx/teams.c (__gomp_team_num): Declare as
4593 extern __attribute__((shared)) var.
4594 (omp_get_team_num): Return __gomp_team_num value instead of %ctaid.x.
4595
45962021-11-15 Jakub Jelinek <jakub@redhat.com>
4597
4598 * testsuite/libgomp.c/teams-5.c: New test.
4599
af2852b9
GA
46002021-11-12 Jakub Jelinek <jakub@redhat.com>
4601
4602 PR target/103201
4603 * config/gcn/icv-device.c (omp_get_num_teams, omp_get_team_num): Move
4604 to ...
4605 * config/gcn/teams.c: ... here. New file.
4606
46072021-11-12 Chung-Lin Tang <cltang@codesourcery.com>
4608
4609 * target.c (gomp_map_vars_existing): Add 'bool implicit' parameter, add
4610 implicit map handling to allow a "superset" existing map as valid case.
4611 (get_kind): Adjust to filter out GOMP_MAP_IMPLICIT bits in return value.
4612 (get_implicit): New function to extract implicit status.
4613 (gomp_map_fields_existing): Adjust arguments in calls to
4614 gomp_map_vars_existing, and add uses of get_implicit.
4615 (gomp_map_vars_internal): Likewise.
4616 * testsuite/libgomp.c-c++-common/target-implicit-map-1.c: New test.
4617
46182021-11-12 Jakub Jelinek <jakub@redhat.com>
4619
4620 * libgomp_g.h (GOMP_teams4): Declare.
4621 * libgomp.map (GOMP_5.1): Export GOMP_teams4.
4622 * target.c (GOMP_teams4): New function.
4623 * config/nvptx/target.c (GOMP_teams): Remove.
4624 (GOMP_teams4): New function.
4625 * config/gcn/target.c (GOMP_teams): Remove.
4626 (GOMP_teams4): New function.
4627 * testsuite/libgomp.c/teams-4.c (main): Expect exactly 2
4628 teams instead of <= 2.
4629 * testsuite/libgomp.c-c++-common/teams-2.c: New test.
4630
b39265d4
GA
46312021-11-11 Tobias Burnus <tobias@codesourcery.com>
4632
4633 * testsuite/libgomp.fortran/teams-1.f90: New test.
4634
46352021-11-11 Jakub Jelinek <jakub@redhat.com>
4636
4637 * libgomp.h (struct gomp_thread): Add num_teams and team_num members.
4638 * team.c (struct gomp_thread_start_data): Likewise.
4639 (gomp_thread_start): Initialize thr->num_teams and thr->team_num.
4640 (gomp_team_start): Initialize start_data->num_teams and
4641 start_data->team_num. Update nthr->num_teams and nthr->team_num.
4642 * teams.c (gomp_num_teams, gomp_team_num): Remove.
4643 (GOMP_teams_reg): Set and restore thr->num_teams and thr->team_num
4644 instead of gomp_num_teams and gomp_team_num.
4645 (omp_get_num_teams): Use thr->num_teams + 1 instead of gomp_num_teams.
4646 (omp_get_team_num): Use thr->team_num instead of gomp_team_num.
4647 * testsuite/libgomp.c/teams-4.c: New test.
4648
46492021-11-11 Jakub Jelinek <jakub@redhat.com>
4650
4651 * testsuite/libgomp.c-c++-common/teams-1.c: New test.
4652
c9b1334e
GA
46532021-11-09 Thomas Schwinge <thomas@codesourcery.com>
4654
4655 * env.c (parse_gomp_openacc_dim): Restore parsing.
4656
0ef94462
GA
46572021-10-30 Tobias Burnus <tobias@codesourcery.com>
4658
4659 PR middle-end/102972
4660 * testsuite/libgomp.c-c++-common/icv-3.c: Nest API calls inside
4661 parallel construct.
4662 * testsuite/libgomp.c-c++-common/icv-4.c: Likewise.
4663 * testsuite/libgomp.c/target-3.c: Likewise.
4664 * testsuite/libgomp.c/target-5.c: Likewise.
4665 * testsuite/libgomp.c/target-6.c: Likewise.
4666 * testsuite/libgomp.c/target-teams-1.c: Likewise.
4667 * testsuite/libgomp.c/teams-1.c: Likewise.
4668 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
4669 * testsuite/libgomp.c/thread-limit-3.c: Likewise.
4670 * testsuite/libgomp.c/thread-limit-4.c: Likewise.
4671 * testsuite/libgomp.c/thread-limit-5.c: Likewise.
4672 * testsuite/libgomp.fortran/icv-3.f90: Likewise.
4673 * testsuite/libgomp.fortran/icv-4.f90: Likewise.
4674 * testsuite/libgomp.fortran/teams1.f90: Likewise.
4675
4c61300f
GA
46762021-10-29 Aldy Hernandez <aldyh@redhat.com>
4677
4678 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for threading changes.
4679 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
4680
04a2cf3f
GA
46812021-10-27 Jakub Jelinek <jakub@redhat.com>
4682
4683 * libgomp.texi (OpenMP 5.0): Mention that Non-rectangular loop nests
4684 aren't implemented for Fortran yet.
4685
46862021-10-27 Jakub Jelinek <jakub@redhat.com>
4687
4688 * testsuite/libgomp.c/loop-26.c: New test.
4689 * testsuite/libgomp.c/loop-27.c: New test.
4690
b621508d
GA
46912021-10-25 Tobias Burnus <tobias@codesourcery.com>
4692
4693 PR testsuite/102910
4694 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Use __builtin_alloca
4695 instead of #include <alloca.h> + alloca.
4696
ae5c5406
GA
46972021-10-21 Chung-Lin Tang <cltang@codesourcery.com>
4698
4699 * libgomp.texi (Support of strictly structured blocks in Fortran):
4700 Adjust to 'Y'.
4701 * testsuite/libgomp.fortran/task-reduction-16.f90: Adjust testcase.
4702
674dda6b
GA
47032021-10-20 Chung-Lin Tang <cltang@codesourcery.com>
4704
4705 * testsuite/libgomp.fortran/target-in-reduction-1.f90: New test.
4706 * testsuite/libgomp.fortran/target-in-reduction-2.f90: New test.
4707
47082021-10-20 Jakub Jelinek <jakub@redhat.com>
4709
4710 PR libgomp/102838
4711 * libgomp.h (struct gomp_work_share_1st_cacheline): New type.
4712 (struct gomp_work_share): Only use aligned(64) attribute if
4713 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined, otherwise just
4714 add padding before lock to ensure lock is at offset 64 bytes
4715 into the structure.
4716 (gomp_workshare_struct_check1, gomp_workshare_struct_check2):
4717 New poor man's static assertions.
4718 * work.c (gomp_work_share_start): Use gomp_aligned_alloc instead of
4719 gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
4720
47212021-10-20 Aldy Hernandez <aldyh@redhat.com>
4722 Richard Biener <rguenther@suse.de>
4723
4724 * testsuite/libgomp.graphite/force-parallel-5.c: Remove xfail.
4725
ce4d1f63
GA
47262021-10-18 Jakub Jelinek <jakub@redhat.com>
4727
4728 * config/linux/affinity.c (gomp_affinity_init_numa_domains): Add
4729 && gomp_places_list_len < count after nfirst <= nlast loop condition.
4730
47312021-10-18 Tobias Burnus <tobias@codesourcery.com>
4732
4733 PR fortran/102086
4734 PR fortran/92189
4735 PR fortran/92621
4736 PR fortran/101308
4737 PR fortran/101309
4738 PR fortran/101635
4739 PR fortran/92482
4740 * testsuite/libgomp.fortran/optional-bind-c.f90: New test.
4741
93d183a5
GA
47422021-10-15 Jakub Jelinek <jakub@redhat.com>
4743
4744 * testsuite/libgomp.c/affinity-1.c (struct places): Change name field
4745 type from char [50] to const char *.
4746 (places_array): Add a testcase for simplified syntax place followed
4747 by length or length and stride.
4748
47492021-10-15 Jakub Jelinek <jakub@redhat.com>
4750
4751 * env.c (parse_one_place): Handle non-negative-number the same
4752 as { non-negative-number }. Reject even !number:1 and
4753 !number:1:stride or !place:1 or !place:1:stride instead of just
4754 length other than 1.
4755 * libgomp.texi (OpenMP 5.1): Document OMP_PLACES syntax extensions
4756 and OMP_NUM_TEAMS/OMP_TEAMS_THREAD_LIMIT and
4757 omp_{set_num,get_max}_teams/omp_{s,g}et_teams_thread_limit features
4758 as implemented.
4759 * testsuite/libgomp.c/affinity-1.c: Add a test for the 5.1 place
4760 simplified syntax.
4761
47622021-10-15 Jakub Jelinek <jakub@redhat.com>
4763
4764 * env.c (parse_schedule): For strtoul or strtoull calls which don't
4765 clearly reject return value 0 as invalid handle the case where end
4766 pointer is the same as first argument as invalid.
4767 (parse_unsigned_long_1): Likewise.
4768 (parse_one_place): Likewise.
4769 (parse_places_var): Likewise.
4770 (parse_stacksize): Likewise.
4771 (parse_spincount): Likewise.
4772 (parse_affinity): Likewise.
4773 (parse_gomp_openacc_dim): Likewise. Avoid strict aliasing violation.
4774 Make code valid C89.
4775 * config/linux/affinity.c (gomp_affinity_find_last_cache_level):
4776 For strtoul calls which don't clearly reject return value 0 as
4777 invalid handle the case where end pointer is the same as first
4778 argument as invalid.
4779 (gomp_affinity_init_level_1): Likewise.
4780 (gomp_affinity_init_numa_domains): Likewise.
4781 * config/rtems/proc.c (parse_thread_pools): Likewise.
4782
47832021-10-15 Jakub Jelinek <jakub@redhat.com>
4784
4785 * config/linux/affinity.c (gomp_affinity_init_level_1): For level 1
4786 after creating count places clean up and return immediately.
4787 * testsuite/libgomp.c/places-6.c: New test.
4788 * testsuite/libgomp.c/places-7.c: New test.
4789 * testsuite/libgomp.c/places-8.c: New test.
4790 * testsuite/libgomp.c/places-9.c: New test.
4791 * testsuite/libgomp.c/places-10.c: New test.
4792
47932021-10-15 Jakub Jelinek <jakub@redhat.com>
4794
4795 * env.c (parse_places_var): Handle numa_domains as level 5.
4796 * config/linux/affinity.c (gomp_affinity_init_numa_domains): New
4797 function.
4798 (gomp_affinity_init_level): Use it instead of
4799 gomp_affinity_init_level_1 for level == 5.
4800 * testsuite/libgomp.c/places-5.c: New test.
4801
48022021-10-15 Jakub Jelinek <jakub@redhat.com>
4803
4804 * env.c (parse_places_var): Handle ll_caches as level 4.
4805 * config/linux/affinity.c (gomp_affinity_find_last_cache_level): New
4806 function.
4807 (gomp_affinity_init_level_1): Handle level 4 as logical cpus sharing
4808 last level cache.
4809 (gomp_affinity_init_level): Likewise.
4810 * testsuite/libgomp.c/places-1.c: New test.
4811 * testsuite/libgomp.c/places-2.c: New test.
4812 * testsuite/libgomp.c/places-3.c: New test.
4813 * testsuite/libgomp.c/places-4.c: New test.
4814
5d5885c9
GA
48152021-10-14 Kwok Cheung Yeung <kcy@codesourcery.com>
4816
4817 * libgomp.texi (OpenMP 5.0): Update entry for declare variant
4818 directive.
4819
48202021-10-14 Kwok Cheung Yeung <kcy@codesourcery.com>
4821
4822 * testsuite/libgomp.fortran/declare-variant-1.f90: New test.
4823
52055987
GA
48242021-10-12 Julian Brown <julian@codesourcery.com>
4825
4826 * target.c (gomp_copy_host2dev): Release device lock on cbuf
4827 error path.
4828
48292021-10-12 Tobias Burnus <tobias@codesourcery.com>
4830
4831 * testsuite/libgomp.fortran/icv-3.f90: New.
4832 * testsuite/libgomp.fortran/icv-4.f90: New.
4833
48342021-10-12 Jakub Jelinek <jakub@redhat.com>
4835
4836 * libgomp.texi (omp_get_max_teams, omp_get_teams_thread_limit,
4837 omp_set_num_teams, omp_set_teams_thread_limit, OMP_NUM_TEAMS,
4838 OMP_TEAMS_THREAD_LIMIT): Document.
4839
48402021-10-12 Jakub Jelinek <jakub@redhat.com>
4841
4842 * libgomp.texi (omp_get_device_num): Move @node before omp_get_dynamic
4843 to avoid makeinfo warnings.
4844
48452021-10-12 Jakub Jelinek <jakub@redhat.com>
4846
4847 * testsuite/libgomp.c-c++-common/icv-3.c: New test.
4848 * testsuite/libgomp.c-c++-common/icv-4.c: New test.
4849
48502021-10-12 Jakub Jelinek <jakub@redhat.com>
4851
4852 PR libgomp/102628
4853 PR libgomp/102668
4854 * testsuite/libgomp.c-c++-common/alloc-9.c (main): Decrease
4855 allocation sizes from 420 to 320 and from 768 to 568.
4856 * testsuite/libgomp.fortran/alloc-11.f90: Likewise.
4857 * testsuite/libgomp.fortran/alloc-1.F90: Change expected alignment
4858 for cr from 16 to 4.
4859
48602021-10-12 Jakub Jelinek <jakub@redhat.com>
4861
4862 * testsuite/libgomp.c/scan-11.c: Remove option -fvect-cost-model=cheap.
4863 * testsuite/libgomp.c/scan-12.c: Likewise.
4864 * testsuite/libgomp.c/scan-13.c: Likewise.
4865 * testsuite/libgomp.c/scan-14.c: Likewise.
4866 * testsuite/libgomp.c/scan-15.c: Likewise.
4867 * testsuite/libgomp.c/scan-16.c: Likewise.
4868 * testsuite/libgomp.c/scan-17.c: Likewise.
4869 * testsuite/libgomp.c/scan-18.c: Likewise.
4870 * testsuite/libgomp.c/scan-19.c: Likewise.
4871 * testsuite/libgomp.c/scan-20.c: Likewise.
4872 * testsuite/libgomp.c/scan-21.c: Likewise.
4873 * testsuite/libgomp.c/scan-22.c: Likewise.
4874 * testsuite/libgomp.c++/scan-9.C: Likewise.
4875 * testsuite/libgomp.c++/scan-10.C: Likewise.
4876 * testsuite/libgomp.c++/scan-11.C: Likewise.
4877 * testsuite/libgomp.c++/scan-12.C: Likewise.
4878 * testsuite/libgomp.c++/scan-13.C: Likewise.
4879 * testsuite/libgomp.c++/scan-14.C: Likewise.
4880 * testsuite/libgomp.c++/scan-15.C: Likewise.
4881 * testsuite/libgomp.c++/scan-16.C: Likewise.
4882
48832021-10-12 Kewen Lin <linkw@linux.ibm.com>
4884
4885 * testsuite/libgomp.graphite/force-parallel-8.c: Add --param max-stores-to-sink=0.
4886
732d7638
GA
48872021-10-11 Marcel Vollweiler <marcel@codesourcery.com>
4888
4889 * allocator.c (omp_init_allocator): Replace omp_atv_sequential with
4890 omp_atv_serialized.
4891 * omp.h.in: Add deprecated flag for omp_atv_sequential.
4892 * omp_lib.f90.in: Add deprecated flag for omp_atv_sequential.
4893 * testsuite/libgomp.c-c++-common/alloc-10.c: New test.
4894 * testsuite/libgomp.fortran/alloc-12.f90: New test.
4895
48962021-10-11 Jakub Jelinek <jakub@redhat.com>
4897
4898 * omp.h.in (omp_set_num_teams, omp_get_max_teams,
4899 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
4900 * omp_lib.f90.in (omp_set_num_teams, omp_get_max_teams,
4901 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
4902 * omp_lib.h.in (omp_set_num_teams, omp_get_max_teams,
4903 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
4904 * libgomp.h (gomp_nteams_var, gomp_teams_thread_limit_var): Declare.
4905 * libgomp.map (OMP_5.1): Export omp_get_max_teams{,_},
4906 omp_get_teams_thread_limit{,_}, omp_set_num_teams{,_,_8_} and
4907 omp_set_teams_thread_limit{,_,_8_}.
4908 * icv.c (omp_set_num_teams, omp_get_max_teams,
4909 omp_set_teams_thread_limit, omp_get_teams_thread_limit): New
4910 functions.
4911 * env.c (gomp_nteams_var, gomp_teams_thread_limit_var): Define.
4912 (omp_display_env): Print OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT.
4913 (initialize_env): Handle OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT env
4914 vars.
4915 * teams.c (GOMP_teams_reg): If thread_limit is not specified, use
4916 gomp_teams_thread_limit_var as fallback if not zero. If num_teams
4917 is not specified, use gomp_nteams_var.
4918 * fortran.c (omp_set_num_teams, omp_get_max_teams,
4919 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Add
4920 ialias_redirect.
4921 (omp_set_num_teams_, omp_set_num_teams_8_, omp_get_max_teams_,
4922 omp_set_teams_thread_limit_, omp_set_teams_thread_limit_8_,
4923 omp_get_teams_thread_limit_): New functions.
4924
c9db17b8
GA
49252021-10-09 liuhongt <hongtao.liu@intel.com>
4926
4927 * testsuite/libgomp.c++/scan-10.C: Add option -fvect-cost-model=cheap.
4928 * testsuite/libgomp.c++/scan-11.C: Ditto.
4929 * testsuite/libgomp.c++/scan-12.C: Ditto.
4930 * testsuite/libgomp.c++/scan-13.C: Ditto.
4931 * testsuite/libgomp.c++/scan-14.C: Ditto.
4932 * testsuite/libgomp.c++/scan-15.C: Ditto.
4933 * testsuite/libgomp.c++/scan-16.C: Ditto.
4934 * testsuite/libgomp.c++/scan-9.C: Ditto.
4935 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: Ditto.
4936 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: Ditto.
4937 * testsuite/libgomp.c/scan-11.c: Ditto.
4938 * testsuite/libgomp.c/scan-12.c: Ditto.
4939 * testsuite/libgomp.c/scan-13.c: Ditto.
4940 * testsuite/libgomp.c/scan-14.c: Ditto.
4941 * testsuite/libgomp.c/scan-15.c: Ditto.
4942 * testsuite/libgomp.c/scan-16.c: Ditto.
4943 * testsuite/libgomp.c/scan-17.c: Ditto.
4944 * testsuite/libgomp.c/scan-18.c: Ditto.
4945 * testsuite/libgomp.c/scan-19.c: Ditto.
4946 * testsuite/libgomp.c/scan-20.c: Ditto.
4947 * testsuite/libgomp.c/scan-21.c: Ditto.
4948 * testsuite/libgomp.c/scan-22.c: Ditto.
4949
49502021-10-09 Jakub Jelinek <jakub@redhat.com>
4951
4952 * libgomp.texi (OpenMP 5.1): Mention implemented support for
4953 structured block sequences in C/C++. Mention support for
4954 unconstrained/reproducible modifiers on order clause.
4955 Mention partial (C/C++ only) support of extentensions to atomics
4956 construct. Mention partial (C/C++ on clause only) support of
4957 align/allocator modifiers on allocate clause.
4958
e3e07b89
GA
49592021-10-02 Tobias Burnus <tobias@codesourcery.com>
4960
4961 * testsuite/libgomp.fortran/order-reproducible-1.f90: New test
4962 based on libgomp.c-c++-common/order-reproducible-1.c.
4963 * testsuite/libgomp.fortran/order-reproducible-2.f90: Likewise.
4964 * testsuite/libgomp.fortran/my-usleep.c: New test.
4965
9d116bcc
GA
49662021-10-01 Tobias Burnus <tobias@codesourcery.com>
4967
4968 * testsuite/libgomp.fortran/alloc-10.f90: Fix alignment check.
4969 * testsuite/libgomp.fortran/alloc-7.f90: Fix array access.
4970 * testsuite/libgomp.fortran/alloc-8.f90: Likewise.
4971 * testsuite/libgomp.fortran/alloc-11.f90: New test for omp_realloc,
4972 based on libgomp.c-c++-common/alloc-9.c.
4973
49742021-10-01 Jakub Jelinek <jakub@redhat.com>
4975
4976 * testsuite/libgomp.c-c++-common/order-reproducible-1.c: New test.
4977 * testsuite/libgomp.c-c++-common/order-reproducible-2.c: New test.
4978
49792021-10-01 Jakub Jelinek <jakub@redhat.com>
4980
4981 * affinity-fmt.c (omp_get_team_num, omp_get_num_teams): Add
4982 ialias_redirect.
4983 * env.c (handle_omp_display_env): Use ialias_call.
4984 * icv-device.c: Move ialias right below each function.
4985 (omp_get_device_num): Use ialias_call.
4986 * fortran.c (omp_fulfill_event): Add ialias_redirect.
4987 * icv.c (omp_get_active_level): Add ialias_redirect.
4988
49892021-10-01 Jakub Jelinek <jakub@redhat.com>
4990
4991 * omp.h.in (omp_aligned_alloc, omp_aligned_calloc): Add
4992 __alloc_align__ (1) attribute.
4993 * testsuite/libgomp.c-c++-common/alloc-9.c: New test.
4994
24679983
GA
49952021-09-30 Tobias Burnus <tobias@codesourcery.com>
4996
4997 * testsuite/libgomp.fortran/alloc-7.f90: Add dg-prune-output
4998 for -fintrinsic-modules-path= warning of the C compiler.
4999 * testsuite/libgomp.fortran/alloc-9.f90: Likewise.
5000 * testsuite/libgomp.fortran/alloc-10.f90: Likewise.
5001
50022021-09-30 Tobias Burnus <tobias@codesourcery.com>
5003
5004 * libgomp.texi (OpenMP 5.1): Set implementation status to Y for
5005 omp_aligned_{,c}alloc and omp_{c,re}alloc routines.
5006 * omp_lib.f90.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
5007 omp_realloc): Add.
5008 * omp_lib.h.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
5009 omp_realloc): Add.
5010 * testsuite/libgomp.fortran/alloc-10.f90: New test.
5011 * testsuite/libgomp.fortran/alloc-6.f90: New test.
5012 * testsuite/libgomp.fortran/alloc-7.c: New test.
5013 * testsuite/libgomp.fortran/alloc-7.f90: New test.
5014 * testsuite/libgomp.fortran/alloc-8.f90: New test.
5015 * testsuite/libgomp.fortran/alloc-9.f90: New test.
5016
50172021-09-30 Jakub Jelinek <jakub@redhat.com>
5018
5019 * omp.h.in (omp_aligned_alloc, omp_calloc, omp_aligned_calloc,
5020 omp_realloc): New prototypes.
5021 (omp_alloc): Move after omp_free prototype, add __malloc__ (omp_free)
5022 attribute.
5023 * allocator.c: Include string.h.
5024 (omp_aligned_alloc): No longer static, add ialias. Add new_alignment
5025 variable and use it instead of alignment so that when retrying the old
5026 alignment is used again. Don't retry if new alignment is the same
5027 as old alignment, unless allocator had pool size.
5028 (omp_alloc, GOMP_alloc, GOMP_free): Use ialias_call.
5029 (omp_aligned_calloc, omp_calloc, omp_realloc): New functions.
5030 * libgomp.map (OMP_5.0.2): Export omp_aligned_alloc, omp_calloc,
5031 omp_aligned_calloc and omp_realloc.
5032 * testsuite/libgomp.c-c++-common/alloc-4.c (main): Add
5033 omp_aligned_alloc, omp_calloc and omp_aligned_calloc tests.
5034 * testsuite/libgomp.c-c++-common/alloc-5.c: New test.
5035 * testsuite/libgomp.c-c++-common/alloc-6.c: New test.
5036 * testsuite/libgomp.c-c++-common/alloc-7.c: New test.
5037 * testsuite/libgomp.c-c++-common/alloc-8.c: New test.
5038
fd133479
GA
50392021-09-28 Tobias Burnus <tobias@codesourcery.com>
5040
5041 PR libgomp/96661
5042 * configure.ac: Only check for int-type = 2*size_t support when
5043 building with Fortran support.
5044 * configure: Regenerate.
5045
50462021-09-28 Thomas Schwinge <thomas@codesourcery.com>
5047
5048 * testsuite/libgomp.oacc-fortran/if-1.f90: Adjust.
5049 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
5050
cf966403
GA
50512021-09-27 Aldy Hernandez <aldyh@redhat.com>
5052
5053 * team.c: Initialize start_data.
5054 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
5055 * testsuite/libgomp.graphite/force-parallel-8.c: Adjust.
5056
50572021-09-27 Tobias Burnus <tobias@codesourcery.com>
5058
5059 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Change
5060 dg-message back to dg-note.
5061
50622021-09-27 Tobias Burnus <tobias@codesourcery.com>
5063
5064 PR fortran/94070
5065 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Update
5066 expected dg-note output.
5067
e4777439
GA
50682021-09-22 Tobias Burnus <tobias@codesourcery.com>
5069
5070 PR fortran/55534
5071 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Revert
5072 r12-3722 by removing -Wno-missing-include-dirs.
5073 * testsuite/libgomp.oacc-fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
5074
50752021-09-22 Jakub Jelinek <jakub@redhat.com>
5076
5077 * testsuite/libgomp.c-c++-common/allocate-2.c: New test.
5078 * testsuite/libgomp.c-c++-common/allocate-3.c: New test.
5079
2c41dd82
GA
50802021-09-21 Tobias Burnus <tobias@codesourcery.com>
5081
5082 PR fortran/55534
5083 * testsuite/libgomp.fortran/fortran.exp: Add -Wno-missing-include-dirs
5084 to ALWAYS_CFLAGS.
5085 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
5086
cf74e7b5
GA
50872021-09-18 Jakub Jelinek <jakub@redhat.com>
5088
5089 * testsuite/libgomp.c++/default-1.C: New test.
5090 * testsuite/libgomp.c-c++-common/default-1.c: New test.
5091 * libgomp.texi (OpenMP 5.1): Mark "private and firstprivate argument
5092 to default clause in C and C++" as implemented.
5093
0a4cb439
GA
50942021-09-17 Julian Brown <julian@codesourcery.com>
5095
5096 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Update.
5097
50982021-09-17 Julian Brown <julian@codesourcery.com>
5099
5100 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: New test.
5101
51022021-09-17 Jakub Jelinek <jakub@redhat.com>
5103
5104 * libgomp.texi (OpenMP 5.1): Spelling fix,
5105 declare variante -> declare variant.
5106
51072021-09-17 Jakub Jelinek <jakub@redhat.com>
5108
5109 * testsuite/libgomp.c-c++-common/atomic-19.c: Drop c effective target.
5110 Use /* */ comments instead of //.
5111 * testsuite/libgomp.c-c++-common/atomic-20.c: Likewise.
5112 * testsuite/libgomp.c-c++-common/atomic-21.c: Likewise.
5113 * testsuite/libgomp.c++/atomic-16.C: New test.
5114 * testsuite/libgomp.c++/atomic-17.C: New test.
5115
a26206ec
GA
51162021-09-10 Jakub Jelinek <jakub@redhat.com>
5117
5118 * testsuite/libgomp.c-c++-common/atomic-19.c: New test.
5119 * testsuite/libgomp.c-c++-common/atomic-20.c: New test.
5120 * testsuite/libgomp.c-c++-common/atomic-21.c: New test.
5121
b2748138
GA
51222021-09-07 Tobias Burnus <tobias@codesourcery.com>
5123
5124 * libgomp.texi (OpenMP Implementation Status): Extend
5125 OpenMP 5.0 section.
5126 (OpenACC Profiling Interface): Fix typo.
5127
51282021-09-07 Tobias Burnus <tobias@codesourcery.com>
5129
5130 * libgomp.texi (Enabling OpenMP): Refer to OMP spec in general
5131 not to 4.5; link to new section.
5132 (OpenMP Implementation Status): New.
5133
9f99555f
GA
51342021-09-06 Thomas Schwinge <thomas@codesourcery.com>
5135
5136 * testsuite/libgomp.c/target-43.c: '-latomic' for nvptx offloading.
5137
7b739540
GA
51382021-09-03 Tobias Burnus <tobias@codesourcery.com>
5139
5140 * testsuite/libgomp.c-c++-common/error-1.c: Use \r\n not \n\r in
5141 dg-output.
5142 * testsuite/libgomp.fortran/error-1.f90: Likewise.
5143
38b19c5b
GA
51442021-08-23 Thomas Schwinge <thomas@codesourcery.com>
5145 Jakub Jelinek <jakub@redhat.com>
5146
5147 * testsuite/libgomp.c/address-space-1.c: New file.
5148
51492021-08-23 Thomas Schwinge <thomas@codesourcery.com>
5150
5151 * testsuite/lib/libgomp.exp
5152 (check_effective_target_offload_target_intelmic): Remove 'proc'.
5153 (check_effective_target_offload_device_intel_mic): New 'proc'.
5154 * testsuite/libgomp.c-c++-common/on_device_arch.h
5155 (device_arch_intel_mic, on_device_arch_intel_mic): New.
5156 * testsuite/libgomp.c-c++-common/target-45.c: Use that for
5157 'dg-xfail-run-if'.
5158 * testsuite/libgomp.fortran/target10.f90: Likewise.
5159
51602021-08-23 Tobias Burnus <tobias@codesourcery.com>
5161
5162 * testsuite/libgomp.fortran/taskloop-4-a.f90: New test.
5163 * testsuite/libgomp.fortran/taskloop-4.f90: New test.
5164 * testsuite/libgomp.fortran/taskloop-5-a.f90: New test.
5165 * testsuite/libgomp.fortran/taskloop-5.f90: New test.
5166
51672021-08-23 Jakub Jelinek <jakub@redhat.com>
5168
5169 * taskloop.c (GOMP_taskloop): Handle GOMP_TASK_FLAG_STRICT.
5170 * testsuite/libgomp.c-c++-common/taskloop-4.c (main): Fix up comment.
5171 * testsuite/libgomp.c-c++-common/taskloop-5.c: New test.
5172
5b2876f9
GA
51732021-08-22 Thomas Schwinge <thomas@codesourcery.com>
5174
5175 * config/nvptx/error.c (fwrite, exit): Override, too.
5176 * testsuite/libgomp.c-c++-common/error-1.c: Add a minimum amount
5177 of offloading testing.
5178 * testsuite/libgomp.fortran/error-1.f90: Likewise.
5179
7c9e1645
GA
51802021-08-20 Tobias Burnus <tobias@codesourcery.com>
5181
5182 * testsuite/libgomp.fortran/error-1.f90: New test.
5183
51842021-08-20 Jakub Jelinek <jakub@redhat.com>
5185
5186 * libgomp.map (GOMP_5.1): Add GOMP_error and GOMP_warning.
5187 * libgomp_g.h (GOMP_warning, GOMP_error): Declare.
5188 * error.c (GOMP_warning, GOMP_error): New functions.
5189 * testsuite/libgomp.c-c++-common/error-1.c: New test.
5190
6e529985
GA
51912021-08-18 Tobias Burnus <tobias@codesourcery.com>
5192
5193 * omp_lib.f90.in (omp_alloc, omp_free, omp_target_alloc,
5194 omp_target_free. omp_target_is_present, omp_target_memcpy,
5195 omp_target_memcpy_rect, omp_target_associate_ptr,
5196 omp_target_disassociate_ptr): Add interface.
5197 * omp_lib.h.in (omp_alloc, omp_free, omp_target_alloc,
5198 omp_target_free. omp_target_is_present, omp_target_memcpy,
5199 omp_target_memcpy_rect, omp_target_associate_ptr,
5200 omp_target_disassociate_ptr): Add interface.
5201 * testsuite/libgomp.fortran/alloc-1.F90: Remove local
5202 interface block for omp_alloc + omp_free.
5203 * testsuite/libgomp.fortran/alloc-4.f90: Likewise.
5204 * testsuite/libgomp.fortran/refcount-1.f90: New test.
5205 * testsuite/libgomp.fortran/target-12.f90: New test.
5206
52072021-08-18 Jakub Jelinek <jakub@redhat.com>
5208
5209 * testsuite/libgomp.c-c++-common/nothing-1.c: New test.
5210
2d14d64b
GA
52112021-08-17 Tobias Burnus <tobias@codesourcery.com>
5212
5213 * testsuite/libgomp.fortran/scope-1.f90: New test.
5214 * testsuite/libgomp.fortran/task-reduction-16.f90: New test.
5215
52162021-08-17 Jakub Jelinek <jakub@redhat.com>
5217
5218 * Makefile.am (libgomp_la_SOURCES): Add scope.c
5219 * Makefile.in: Regenerated.
5220 * libgomp_g.h (GOMP_scope_start): Declare.
5221 * libgomp.map: Add GOMP_scope_start@@GOMP_5.1.
5222 * scope.c: New file.
5223 * testsuite/libgomp.c-c++-common/scope-1.c: New test.
5224 * testsuite/libgomp.c-c++-common/task-reduction-16.c: New test.
5225
9d1d9fc8
GA
52262021-08-16 Thomas Schwinge <thomas@codesourcery.com>
5227
5228 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Address
5229 '?:' issues.
5230
52312021-08-16 Tobias Burnus <tobias@codesourcery.com>
5232
5233 * testsuite/libgomp.fortran/masked-1.f90: New test.
5234
261512fa
GA
52352021-08-13 Thomas Schwinge <thomas@codesourcery.com>
5236
5237 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Adjust.
5238
72be20e2
GA
52392021-08-12 Jakub Jelinek <jakub@redhat.com>
5240
5241 * testsuite/libgomp.c-c++-common/masked-1.c: New test.
5242
52432021-08-12 Tobias Burnus <tobias@codesourcery.com>
5244
5245 * env.c (parse_bind_var): Accept 'primary' as alias for
5246 'master'.
5247 (omp_display_env): Add TODO comment to
5248 change 'master' to 'primary' in proc_bind for OpenMP 5.1.
5249 * libgomp.texi: Change 'master thread' to 'primary thread'
5250 in line with OpenMP 5.1.
5251 (omp_get_proc_bind): Add omp_proc_bind_primary and note that
5252 omp_proc_bind_master is an alias of it.
5253 (OMP_PROC_BIND): Mention 'PRIMARY'.
5254 * omp.h.in (__GOMP_DEPRECATED_5_1): Define.
5255 (omp_proc_bind_primary): Add.
5256 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
5257 * omp_lib.f90.in (omp_proc_bind_primary): Add.
5258 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
5259 * omp_lib.h.in (omp_proc_bind_primary): Add.
5260 * testsuite/libgomp.c/affinity-1.c: Check that
5261 'primary' works and is identical to 'master'.
5262
37768150
GA
52632021-08-09 Julian Brown <julian@codesourcery.com>
5264 Kwok Cheung Yeung <kcy@codesourcery.com>
5265 Thomas Schwinge <thomas@codesourcery.com>
5266
5267 * plugin/plugin-gcn.c (gcn_exec): Change default number of workers to
5268 16.
5269 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
5270 [acc_device_radeon]: Update.
5271 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c
5272 [ACC_DEVICE_TYPE_radeon]: Likewise.
5273 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
5274 [acc_device_radeon]: Likewise.
5275 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c
5276 [ACC_DEVICE_TYPE_radeon]: Likewise.
5277 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: XFAIL for
5278 'openacc_radeon_accel_selected' and '-O0'.
5279 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
5280
8ebf4fb5
GA
52812021-08-05 Chung-Lin Tang <cltang@codesourcery.com>
5282
5283 * icv-device.c (omp_get_device_num): New API function, host side.
5284 * fortran.c (omp_get_device_num_): New interface function.
5285 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Define macro symbol.
5286 * libgomp.map (OMP_5.0.2): New version space with omp_get_device_num,
5287 omp_get_device_num_.
5288 * libgomp.texi (omp_get_device_num): Add documentation for new API
5289 function.
5290 * omp.h.in (omp_get_device_num): Add declaration.
5291 * omp_lib.f90.in (omp_get_device_num): Likewise.
5292 * omp_lib.h.in (omp_get_device_num): Likewise.
5293 * target.c (gomp_load_image_to_device): If additional entry for device
5294 number exists at end of returned entries from 'load_image_func' hook,
5295 copy the assigned device number over to the device variable.
5296 * config/gcn/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
5297 (omp_get_device_num): New API function, device side.
5298 * plugin/plugin-gcn.c ("symcat.h"): Add include.
5299 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
5300 at end of returned 'target_table' entries.
5301 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
5302 (omp_get_device_num): New API function, device side.
5303 * plugin/plugin-nvptx.c ("symcat.h"): Add include.
5304 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
5305 at end of returned 'target_table' entries.
5306 * testsuite/lib/libgomp.exp
5307 (check_effective_target_offload_target_intelmic): New function for
5308 testing for intelmic offloading.
5309 * testsuite/libgomp.c-c++-common/target-45.c: New test.
5310 * testsuite/libgomp.fortran/target10.f90: New test.
5311
4d17ca1b
GA
53122021-07-30 Thomas Schwinge <thomas@codesourcery.com>
5313 Ulrich Drepper <drepper@redhat.com>
5314
5315 * fortran.c (omp_display_env_, omp_display_env_8_): Only
5316 '#ifndef LIBGOMP_OFFLOADED_ONLY'.
5317
53182021-07-29 Thomas Schwinge <thomas@codesourcery.com>
5319 Julian Brown <julian@codesourcery.com>
5320 Kwok Cheung Yeung <kcy@codesourcery.com>
5321
5322 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c:
5323 's%oaccdevlow%oaccloops%g'.
5324 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
5325 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
5326 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c:
5327 Likewise.
5328 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c:
5329 Likewise.
5330 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c:
5331 Likewise.
5332 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c:
5333 Likewise.
5334 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c:
5335 Likewise.
5336 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c:
5337 Likewise.
5338 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c:
5339 Likewise.
5340 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c:
5341 Likewise.
5342 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
5343
872c1a56
ML
53442021-07-29 Aldy Hernandez <aldyh@redhat.com>
5345
5346 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for
5347 threader.
5348 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
5349
af3f12e6
GA
53502021-07-27 Ulrich Drepper <drepper@gmail.com>
5351
5352 * env.c (wait_policy, stacksize): New static variables,
5353 move out of handle_omp_display_env.
5354 (omp_display_env): New function. The meat of the old
5355 handle_omp_display_env function.
5356 (handle_omp_display_env): Change to not take parameters
5357 and instead use the global variables. Only perform
5358 parsing, defer to omp_display_env for the implementation.
5359 (initialize_env): Remove local variables wait_policy and
5360 stacksize. Don't pass parameters to handle_omp_display_env.
5361 * fortran.c: Add ialias_redirect for omp_display_env.
5362 (omp_display_env_, omp_display_env_8_): New functions.
5363 * libgomp.map (OMP_5.1): New version. Add omp_display_env,
5364 omp_display_env_, and omp_display_env_8_.
5365 * omp.h.in: Declare omp_display_env.
5366 * omp_lib.f90.in: Likewise.
5367 * omp_lib.h.in: Likewise.
5368
53692021-07-27 Thomas Schwinge <thomas@codesourcery.com>
5370 Julian Brown <julian@codesourcery.com>
5371
5372 * target.c (gomp_coalesce_buf_add): Update comment.
5373 (gomp_copy_host2dev, gomp_map_vars_internal): Don't expect to see
5374 'aq && cbuf'.
5375 (gomp_map_vars_internal): Only 'if (!aq)', do
5376 'gomp_coalesce_buf_add'.
5377 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Remove
5378 XFAIL.
5379
53802021-07-27 Julian Brown <julian@codesourcery.com>
5381 Thomas Schwinge <thomas@codesourcery.com>
5382
5383 * libgomp.h (gomp_copy_host2dev): Update prototype.
5384 * oacc-mem.c (memcpy_tofrom_device, update_dev_host): Add new
5385 argument to gomp_copy_host2dev (false).
5386 * plugin/plugin-gcn.c (struct copy_data): Remove free_src field.
5387 (copy_data): Don't free src.
5388 (queue_push_copy): Remove free_src handling.
5389 (GOMP_OFFLOAD_dev2dev): Update call to queue_push_copy.
5390 (GOMP_OFFLOAD_openacc_async_host2dev): Remove source-data
5391 snapshotting.
5392 (GOMP_OFFLOAD_openacc_async_dev2host): Update call to
5393 queue_push_copy.
5394 * target.c (goacc_device_copy_async): Add SRCADDR_ORIG parameter.
5395 (gomp_copy_host2dev): Add EPHEMERAL parameter. Snapshot source
5396 data when true, and set up deferred freeing of temporary buffer.
5397 (gomp_copy_dev2host): Update call to goacc_device_copy_async.
5398 (gomp_map_vars_existing, gomp_map_pointer, gomp_attach_pointer)
5399 (gomp_detach_pointer, gomp_map_vars_internal, gomp_update): Update
5400 calls to gomp_copy_host2dev with appropriate ephemeral argument.
5401 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: Remove
5402 XFAIL.
5403
54042021-07-27 Thomas Schwinge <thomas@codesourcery.com>
5405 Tom de Vries <tom@codesourcery.com>
5406
5407 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: New file.
5408 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Likewise.
5409
54102021-07-27 Thomas Schwinge <thomas@codesourcery.com>
5411
5412 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Clarify
5413 sequencing of 'async' data copying vs. profiling events.
5414 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
5415 Likewise.
5416
54172021-07-27 Thomas Schwinge <thomas@codesourcery.com>
5418 Julian Brown <julian@codesourcery.com>
5419
5420 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: Fix OpenACC
5421 'async'/'wait' issue.
5422 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: Likewise.
5423 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: Likewise.
5424 * testsuite/libgomp.oacc-fortran/lib-16.f90: Likewise.
5425
419c6c68
GA
54262021-07-21 Thomas Schwinge <thomas@codesourcery.com>
5427 Joseph Myers <joseph@codesourcery.com>
5428 Cesar Philippidis <cesar@codesourcery.com>
5429
5430 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c: New
5431 file.
5432 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
5433 Likewise.
5434 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2_2.c:
5435 Likewise.
5436 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
5437
92d45509
GA
54382021-07-20 Thomas Schwinge <thomas@codesourcery.com>
5439
5440 PR target/101484
5441 * configure.tgt [amdgcn*-*-*] (XCFLAGS): Add
5442 '-Wno-error=array-bounds'.
5443 * config/gcn/team.c: Remove '-Werror=array-bounds' work-around.
5444 * libgomp.h [__AMDGCN__]: Likewise.
5445
21ea2f93
GA
54462021-07-19 Thomas Schwinge <thomas@codesourcery.com>
5447
5448 PR target/101484
5449 * config/gcn/team.c: Apply '-Werror=array-bounds' work-around.
5450 * libgomp.h [__AMDGCN__]: Likewise.
5451
0e775456
GA
54522021-07-13 Jakub Jelinek <jakub@redhat.com>
5453 Florian Weimer <fweimer@redhat.com>
5454
5455 * config/linux/sem.h: Don't include limits.h.
5456 (SEM_WAIT): Define to -__INT_MAX__ - 1 instead of INT_MIN.
5457 * config/linux/affinity.c: Include limits.h.
5458
bea7c16a
GA
54592021-07-01 Jakub Jelinek <jakub@redhat.com>
5460
5461 PR middle-end/94366
5462 * testsuite/libgomp.c-c++-common/pr94366.c: New test.
5463
6bc18203
GA
54642021-06-29 Tobias Burnus <tobias@codesourcery.com>
5465
5466 PR other/67300
5467 * testsuite/libgomp.c-c++-common/reduction-16.c: Replace
5468 -foffload=nvptx-none= by -foffload-options=nvptx-none= to
5469 avoid disabling other offload targets.
5470 * testsuite/libgomp.c-c++-common/reduction-5.c: Likewise.
5471 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
5472 * testsuite/libgomp.c/target-44.c: Likewise.
5473
54742021-06-29 Tobias Burnus <tobias@codesourcery.com>
5475
5476 * testsuite/libgomp.fortran/defaultmap-8.f90 (bar): Determine whether
5477 target has shared memory and disable some scalar pointer/allocatable
5478 checks if not as firstprivate does not work.
5479
90708f87
GA
54802021-06-25 Chung-Lin Tang <cltang@codesourcery.com>
5481
5482 PR testsuite/101114
5483 * testsuite/libgomp.c-c++-common/struct-elem-5.c:
5484 Add "target offload_device_nonshared_as" condition for enabling test.
5485
9aa8327e
GA
54862021-06-24 Jakub Jelinek <jakub@redhat.com>
5487
5488 * testsuite/libgomp.c-c++-common/target-in-reduction-1.c: New test.
5489 * testsuite/libgomp.c-c++-common/target-in-reduction-2.c: New test.
5490 * testsuite/libgomp.c++/target-in-reduction-1.C: New test.
5491 * testsuite/libgomp.c++/target-in-reduction-2.C: New test.
5492
fcf617f0
GA
54932021-06-23 Jakub Jelinek <jakub@redhat.com>
5494
5495 PR middle-end/101167
5496 * testsuite/libgomp.c-c++-common/task-reduction-15.c: New test.
5497
688359a2
GA
54982021-06-17 Chung-Lin Tang <cltang@codesourcery.com>
5499
5500 * hashtab.h (htab_clear): New function with initialization code
5501 factored out from...
5502 (htab_create): ...here, adjust to use htab_clear function.
5503 * libgomp.h (REFCOUNT_SPECIAL): New symbol to denote range of
5504 special refcount values, add comments.
5505 (REFCOUNT_INFINITY): Adjust definition to use REFCOUNT_SPECIAL.
5506 (REFCOUNT_LINK): Likewise.
5507 (REFCOUNT_STRUCTELEM): New special refcount range for structure
5508 element siblings.
5509 (REFCOUNT_STRUCTELEM_P): Macro for testing for structure element
5510 sibling maps.
5511 (REFCOUNT_STRUCTELEM_FLAG_FIRST): Flag to indicate first sibling.
5512 (REFCOUNT_STRUCTELEM_FLAG_LAST): Flag to indicate last sibling.
5513 (REFCOUNT_STRUCTELEM_FIRST_P): Macro to test _FIRST flag.
5514 (REFCOUNT_STRUCTELEM_LAST_P): Macro to test _LAST flag.
5515 (struct splay_tree_key_s): Add structelem_refcount and
5516 structelem_refcount_ptr fields into a union with dynamic_refcount.
5517 Add comments.
5518 (gomp_map_vars): Delete declaration.
5519 (gomp_map_vars_async): Likewise.
5520 (gomp_unmap_vars): Likewise.
5521 (gomp_unmap_vars_async): Likewise.
5522 (goacc_map_vars): New declaration.
5523 (goacc_unmap_vars): Likewise.
5524 * oacc-mem.c (acc_map_data): Adjust to use goacc_map_vars.
5525 (goacc_enter_datum): Likewise.
5526 (goacc_enter_data_internal): Likewise.
5527 * oacc-parallel.c (GOACC_parallel_keyed): Adjust to use goacc_map_vars
5528 and goacc_unmap_vars.
5529 (GOACC_data_start): Adjust to use goacc_map_vars.
5530 (GOACC_data_end): Adjust to use goacc_unmap_vars.
5531 * target.c (hash_entry_type): New typedef.
5532 (htab_alloc): New function hook for hashtab.h.
5533 (htab_free): Likewise.
5534 (htab_hash): Likewise.
5535 (htab_eq): Likewise.
5536 (hashtab.h): Add file include.
5537 (gomp_increment_refcount): New function.
5538 (gomp_decrement_refcount): Likewise.
5539 (gomp_map_vars_existing): Add refcount_set parameter, adjust to use
5540 gomp_increment_refcount.
5541 (gomp_map_fields_existing): Add refcount_set parameter, adjust calls
5542 to gomp_map_vars_existing.
5543 (gomp_map_vars_internal): Add refcount_set parameter, add local openmp_p
5544 variable to guard OpenMP specific paths, adjust calls to
5545 gomp_map_vars_existing, add structure element sibling splay_tree_key
5546 sequence creation code, adjust Fortran map case to avoid increment
5547 under OpenMP.
5548 (gomp_map_vars): Adjust to static, add refcount_set parameter, manage
5549 local refcount_set if caller passed in NULL, adjust call to
5550 gomp_map_vars_internal.
5551 (gomp_map_vars_async): Adjust and rename into...
5552 (goacc_map_vars): ...this new function, adjust call to
5553 gomp_map_vars_internal.
5554 (gomp_remove_splay_tree_key): New function with code factored out from
5555 gomp_remove_var_internal.
5556 (gomp_remove_var_internal): Add code to handle removing multiple
5557 splay_tree_key sequence for structure elements, adjust code to use
5558 gomp_remove_splay_tree_key for splay-tree key removal.
5559 (gomp_unmap_vars_internal): Add refcount_set parameter, adjust to use
5560 gomp_decrement_refcount.
5561 (gomp_unmap_vars): Adjust to static, add refcount_set parameter, manage
5562 local refcount_set if caller passed in NULL, adjust call to
5563 gomp_unmap_vars_internal.
5564 (gomp_unmap_vars_async): Adjust and rename into...
5565 (goacc_unmap_vars): ...this new function, adjust call to
5566 gomp_unmap_vars_internal.
5567 (GOMP_target): Manage refcount_set and adjust calls to gomp_map_vars and
5568 gomp_unmap_vars.
5569 (GOMP_target_ext): Likewise.
5570 (gomp_target_data_fallback): Adjust call to gomp_map_vars.
5571 (GOMP_target_data): Likewise.
5572 (GOMP_target_data_ext): Likewise.
5573 (GOMP_target_end_data): Adjust call to gomp_unmap_vars.
5574 (gomp_exit_data): Add refcount_set parameter, adjust to use
5575 gomp_decrement_refcount, adjust to queue splay-tree keys for removal
5576 after main loop.
5577 (GOMP_target_enter_exit_data): Manage refcount_set and adjust calls to
5578 gomp_map_vars and gomp_exit_data.
5579 (gomp_target_task_fn): Likewise.
5580 * testsuite/libgomp.c-c++-common/refcount-1.c: New testcase.
5581 * testsuite/libgomp.c-c++-common/struct-elem-1.c: New testcase.
5582 * testsuite/libgomp.c-c++-common/struct-elem-2.c: New testcase.
5583 * testsuite/libgomp.c-c++-common/struct-elem-3.c: New testcase.
5584 * testsuite/libgomp.c-c++-common/struct-elem-4.c: New testcase.
5585 * testsuite/libgomp.c-c++-common/struct-elem-5.c: New testcase.
5586
ede6c356
GA
55872021-06-15 Tobias Burnus <tobias@codesourcery.com>
5588
5589 PR fortran/92568
5590 * testsuite/libgomp.fortran/defaultmap-8.f90: New test.
5591
43c35d0d
GA
55922021-06-10 Andrew Stubbs <ams@codesourcery.com>
5593 Thomas Schwinge <thomas@codesourcery.com>
5594
5595 * libgomp.map (GOACC_2.0.2): New symbol version.
5596 * libgomp_g.h (GOACC_enter_data, GOACC_exit_data) New prototypes.
5597 * oacc-mem.c (GOACC_enter_data, GOACC_exit_data) New functions.
5598
55992021-06-10 Thomas Schwinge <thomas@codesourcery.com>
5600 Andrew Stubbs <ams@codesourcery.com>
5601
5602 * oacc-mem.c (goacc_enter_exit_data_internal): New function,
5603 extracted from...
5604 (GOACC_enter_exit_data): ... here.
5605 (GOACC_declare): Use it.
5606
56072021-06-10 Thomas Schwinge <thomas@codesourcery.com>
5608
5609 * oacc-parallel.c (GOACC_declare): Move...
5610 * oacc-mem.c: ... here.
5611 * libgomp_g.h: Adjust.
5612
56132021-06-10 Andrew Stubbs <ams@codesourcery.com>
5614 Thomas Schwinge <thomas@codesourcery.com>
5615
5616 * oacc-parallel.c (GOACC_declare): Clean up 'GOMP_MAP_POINTER'
5617 handling.
5618
56192021-06-10 Jakub Jelinek <jakub@redhat.com>
5620
5621 PR tree-optimization/100981
5622 * testsuite/libgomp.fortran/pr100981-2.f90 (cdcdot): Initialize
5623 dsdotr and dsdoti to 0.
5624
4f625f47
GA
56252021-06-09 H.J. Lu <hjl.tools@gmail.com>
5626
5627 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -march=i486
5628 if atomic compare-and-swap is supported on 'int'.
5629
56302021-06-09 Richard Biener <rguenther@suse.de>
5631
5632 PR tree-optimization/100981
5633 * testsuite/libgomp.fortran/pr100981-2.f90: New testcase.
5634
c6038721
GA
56352021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5636
5637 * plugin/plugin-gcn.c (gcn_exec): Force 'num_workers (1)'
5638 unconditionally.
5639 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
5640 Update.
5641 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
5642 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
5643
56442021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5645
5646 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Enable for all but
5647 '-DACC_MEM_SHARED=0'.
5648 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
5649 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
5650 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
5651 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
5652 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
5653 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
5654 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
5655 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
5656 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
5657 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
5658 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
5659 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
5660 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
5661 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
5662 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Add
5663 'acc_device_radeon' testing.
5664 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
5665 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
5666 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
5667 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Enable for all.
5668 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
5669 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
5670 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
5671 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
5672 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
5673 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
5674 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Improve checking
5675 for non-'openacc_nvidia_accel_selected'.
5676 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
5677 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Clarify that "Not
5678 all implement this checking".
5679 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
5680 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
5681 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
5682 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
5683 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
5684
56852021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5686
5687 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Simplify.
5688 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: Update.
5689
56902021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5691
5692 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Fix
5693 for 'acc_device_radeon'.
5694
56952021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5696
5697 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Enhance
5698 for non-'acc_device_nvidia'.
5699
57002021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5701
5702 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Add
5703 'acc_device_radeon' testing.
5704 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
5705 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
5706 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
5707
57082021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5709
5710 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Don't
5711 require 'openacc_nvidia_accel_selected'. Fix up for
5712 'ACC_DEVICE_TYPE_radeon'.
5713
57142021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5715
5716 * testsuite/libgomp.oacc-c++/declare-1.C: Don't require
5717 'openacc_nvidia_accel_selected'.
5718 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
5719
57202021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5721
5722 * testsuite/lib/libgomp.exp
5723 (check_effective_target_openacc_radeon_accel_selected):
5724 Streamline.
5725
57262021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5727
5728 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Revert
5729 PR80547 workaround.
5730
57312021-06-08 Thomas Schwinge <thomas@codesourcery.com>
5732
5733 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
5734 <acc_device_nvidia>: Update comment.
5735
48166757
GA
57362021-05-28 Tobias Burnus <tobias@codesourcery.com>
5737
5738 * testsuite/libgomp.fortran/depend-iterator-2.f90: New test.
5739
cd62d089
GA
57402021-05-27 Jakub Jelinek <jakub@redhat.com>
5741
5742 * testsuite/lib/libgomp.exp (check_effective_target_openacc_cuda,
5743 check_effective_target_openacc_cublas,
5744 check_effective_target_openacc_cudart): New.
5745 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Require effective
5746 target openacc_cublas.
5747 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
5748 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
5749 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Require effective
5750 target openacc_cuda.
5751 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
5752 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
5753 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
5754 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
5755 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
5756 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
5757 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
5758 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
5759 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Likewise.
5760 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
5761 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
5762 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
5763 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
5764 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
5765 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
5766 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
5767 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Require effective
5768 targets openacc_cublas and openacc_cudart.
5769 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
5770 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
5771 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
5772 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
5773 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c:
5774 Require effective target openacc_cudart.
5775 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Add -DUSE_CUDA_H
5776 for effective target openacc_cuda and add && defined USE_CUDA_H to
5777 preprocessor conditionals. Guard -lcuda also on openacc_cuda
5778 effective target.
5779
01c59ef2
GA
57802021-05-26 Jakub Jelinek <jakub@redhat.com>
5781
5782 PR libgomp/100573
5783 * config/nvptx/target.c (GOMP_target_ext, GOMP_target_data_ext,
5784 GOMP_target_end_data, GOMP_target_update_ext,
5785 GOMP_target_enter_exit_data): New dummy entrypoints.
5786 * config/gcn/target.c (GOMP_target_ext, GOMP_target_data_ext,
5787 GOMP_target_end_data, GOMP_target_update_ext,
5788 GOMP_target_enter_exit_data): Likewise.
5789 * testsuite/libgomp.c-c++-common/for-3.c (DO_PRAGMA, OMPTEAMS,
5790 OMPFROM, OMPTO): Define.
5791 (main): Remove #pragma omp target teams around all the tests.
5792 * testsuite/libgomp.c-c++-common/target-41.c: New test.
5793 * testsuite/libgomp.c-c++-common/target-42.c: New test.
5794
2bc6dace
GA
57952021-05-25 Jakub Jelinek <jakub@redhat.com>
5796
5797 PR middle-end/99928
5798 * testsuite/libgomp.c-c++-common/reduction-17.c: New test.
5799
637569df
GA
58002021-05-24 Tobias Burnus <tobias@codesourcery.com>
5801
5802 PR fortran/86470
5803 * testsuite/libgomp.fortran/class-firstprivate-1.f90: New test.
5804 * testsuite/libgomp.fortran/class-firstprivate-2.f90: New test.
5805 * testsuite/libgomp.fortran/class-firstprivate-3.f90: New test.
5806
15d30d2f
GA
58072021-05-22 Thomas Schwinge <thomas@codesourcery.com>
5808
5809 PR testsuite/90115
5810 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Prune
5811 uninteresting/varying diagnostics.
5812
2832d51b
GA
58132021-05-21 Thomas Schwinge <thomas@codesourcery.com>
5814
5815 PR middle-end/90115
5816 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Update.
5817 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
5818
58192021-05-21 Thomas Schwinge <thomas@codesourcery.com>
5820
5821 PR middle-end/90115
5822 * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: New
5823 file.
5824 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
5825 * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Likewise.
5826 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
5827 Likewise.
5828 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
5829 Likewise.
5830 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
5831 Likewise.
5832 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
5833 Likewise.
5834 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
5835 Likewise.
5836 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
5837 Likewise.
5838 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
5839 Likewise.
5840 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
5841 Likewise.
5842 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
5843 Likewise.
5844 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
5845 Likewise.
5846 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
5847 Likewise.
5848 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
5849 Likewise.
5850 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
5851 Likewise.
5852 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
5853 Likewise.
5854 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
5855 Likewise.
5856 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
5857 Likewise.
5858 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
5859 Likewise.
5860 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
5861 Likewise.
5862 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
5863 Likewise.
5864 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
5865 Likewise.
5866 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
5867 Likewise.
5868 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
5869 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
5870 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
5871 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
5872 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
5873 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
5874 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
5875 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
5876 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
5877 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
5878 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
5879 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
5880 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
5881 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
5882 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
5883 Likewise.
5884 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c:
5885 Likewise.
5886 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c:
5887 Likewise.
5888 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
5889 Likewise.
5890 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
5891 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
5892 Likewise.
5893 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
5894 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
5895 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
5896 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
5897 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
5898 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
5899 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
5900 Likewise.
5901 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
5902 Likewise.
5903 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
5904 Likewise.
5905 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
5906 Likewise.
5907 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
5908 Likewise.
5909 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
5910 Likewise.
5911 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
5912 Likewise.
5913 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
5914 Likewise.
5915 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
5916 Likewise.
5917 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
5918 Likewise.
5919 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
5920 Likewise.
5921 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
5922 Likewise.
5923 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
5924 Likewise.
5925 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
5926 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
5927 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
5928 Likewise.
5929 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
5930 Likewise.
5931 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
5932 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
5933 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
5934
59352021-05-21 Julian Brown <julian@codesourcery.com>
5936 Chung-Lin Tang <cltang@codesourcery.com>
5937 Thomas Schwinge <thomas@codesourcery.com>
5938
5939 PR middle-end/90115
5940 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c: New
5941 test.
5942 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
5943 Likewise.
5944 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
5945 Likewise.
5946
59472021-05-21 Thomas Schwinge <thomas@codesourcery.com>
5948
5949 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Don't skip
5950 for nvptx offloading.
5951
59522021-05-21 Tobias Burnus <tobias@codesourcery.com>
5953
5954 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: New.
5955
65f32e5d
GA
59562021-05-19 Thomas Schwinge <thomas@codesourcery.com>
5957
5958 PR target/83812
5959 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: New.
5960
59612021-05-19 Julian Brown <julian@codesourcery.com>
5962
5963 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: New.
5964
a8daf9a1
GA
59652021-05-18 Thomas Schwinge <thomas@codesourcery.com>
5966
5967 * testsuite/lib/libgomp.exp
5968 (check_effective_target_offload_target_nvptx): Don't shadow global
5969 'offload_targets' variable.
5970
59712021-05-18 Thomas Schwinge <thomas@codesourcery.com>
5972
5973 * testsuite/libgomp.c-c++-common/reduction-5.c: Restrict
5974 '-latomic' to nvptx offloading compilation.
5975 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
5976
59772021-05-18 Thomas Schwinge <thomas@codesourcery.com>
5978
5979 * testsuite/libgomp.c/target-44.c: Restrict '-latomic' to nvptx
5980 offloading compilation.
5981
a7ffc1ef
GA
59822021-05-17 Kwok Cheung Yeung <kcy@codesourcery.com>
5983
5984 * task.c (omp_fulfill_event): Call gomp_team_barrier_set_task_pending
5985 if new tasks generated.
5986 * testsuite/libgomp.c-c++-common/task-detach-13.c: New.
5987
87a7d10c
GA
59882021-05-14 Tobias Burnus <tobias@codesourcery.com>
5989
5990 * testsuite/libgomp.fortran/parallel-master.f90: New test.
5991
f9af11c7
GA
59922021-05-13 Martin Liska <mliska@suse.cz>
5993
5994 PR testsuite/100569
5995 * testsuite/libgomp.c/omp-nested-3.c: Prune new LTO warning.
5996 * testsuite/libgomp.c/pr46032-2.c: Likewise.
5997 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c: Likewise.
5998 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c: Likewise.
5999
0ff3a0f2
GA
60002021-05-12 Tobias Burnus <tobias@codesourcery.com>
6001
6002 * testsuite/libgomp.c-c++-common/task-detach-12.c: New test.
6003 * testsuite/libgomp.fortran/task-detach-12.f90: New test.
6004
037e3661
GA
60052021-05-11 Jakub Jelinek <jakub@redhat.com>
6006
6007 PR middle-end/100471
6008 * taskloop.c (GOMP_taskloop): If GOMP_TASK_FLAG_REDUCTION and not
6009 GOMP_TASK_FLAG_NOGROUP, when doing early return clear the task
6010 reduction pointer.
6011 * testsuite/libgomp.c/task-reduction-4.c: New test.
6012
62d87a32
GA
60132021-05-07 Tobias Burnus <tobias@codesourcery.com>
6014 Tom de Vries <tdevries@suse.de>
6015
6016 * testsuite/libgomp.c-c++-common/reduction-5.c: New test, testing
6017 complex/floating-point || + && reduction with 'omp target'.
6018 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
6019
99e8df7a
GA
60202021-05-04 Tobias Burnus <tobias@codesourcery.com>
6021
6022 * testsuite/libgomp.c-c++-common/reduction-1.c: New test.
6023 * testsuite/libgomp.c-c++-common/reduction-2.c: New test.
6024 * testsuite/libgomp.c-c++-common/reduction-3.c: New test.
6025 * testsuite/libgomp.c-c++-common/reduction-4.c: New file.
6026
60272021-05-04 Tobias Burnus <tobias@codesourcery.com>
6028
6029 PR testsuite/100397
6030 * testsuite/libgomp.fortran/depobj-1.f90 (dep2, dep3): Move var
6031 declaration to scope of non-'depend'-guarded assignment to avoid races.
6032
e690396d
GA
60332021-05-03 Tom de Vries <tdevries@suse.de>
6034
6035 PR target/100321
6036 * testsuite/libgomp.c/target-44.c: New test.
6037
9326049e
GA
60382021-04-30 Roman Zhuykov <zhroma@ispras.ru>
6039
6040 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-3.c: New test.
6041
3c8e539d
GA
60422021-04-29 Tom de Vries <tdevries@suse.de>
6043
6044 * testsuite/libgomp.c/pr81778.c: New test.
6045
60462021-04-29 Tom de Vries <tdevries@suse.de>
6047
6048 PR target/100232
6049 * testsuite/libgomp.c/target-43.c: New file.
6050
e4ff4ffb
GA
60512021-04-28 Jakub Jelinek <jakub@redhat.com>
6052 Tobias Burnus <tobias@codesourcery.com>
6053
6054 * configure.ac (OFFLOAD_DEFAULTED): AC_DEFINE if offload-defaulted.
6055 * target.c (gomp_load_plugin_for_device): If set and if a plugin
6056 can't be dlopened, silently assume it has no devices.
6057 * Makefile.in: Regenerate.
6058 * config.h.in: Regenerate.
6059 * configure: Regenerate.
6060
c0fa3f2f
GA
60612021-04-26 Tobias Burnus <tobias@codesourcery.com>
6062
6063 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
6064 Use [Ww]arning in dg-bogus as FE diagnostic and default
6065 diagnostic differ and the result depends on ENABLE_OFFLOAD.
6066 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
6067 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
6068 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
6069
60702021-04-26 Tobias Burnus <tobias@codesourcery.com>
6071
6072 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
6073 Correct spelling in dg-bogus to match -Wopenacc-parallelism.
6074 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
6075 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
6076 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
6077
60782021-04-26 Thomas Schwinge <thomas@codesourcery.com>
6079 Nathan Sidwell <nathan@codesourcery.com>
6080 Tom de Vries <vries@codesourcery.com>
6081 Julian Brown <julian@codesourcery.com>
6082 Kwok Cheung Yeung <kcy@codesourcery.com>
6083
6084 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Specify
6085 '-Wopenacc-parallelism', and match diagnostics, as appropriate.
6086 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
6087 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
6088 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
6089 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
6090 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c:
6091 Likewise.
6092 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
6093 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
6094 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
6095 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
6096 Likewise.
6097 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
6098 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
6099 Likewise.
6100 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
6101 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
6102 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
6103 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
6104 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
6105 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
6106 Likewise.
6107 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
6108 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
6109 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
6110 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
6111 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
6112 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
6113 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
6114 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
6115 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
6116 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
6117 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
6118
61192021-04-26 Thomas Schwinge <thomas@codesourcery.com>
6120
6121 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Don't
6122 compile with '-w'.
6123 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
6124 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
6125 Likewise.
6126 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
6127 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: Likewise.
6128 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
6129 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
6130 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
6131 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
6132 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
6133
e3948473
GA
61342021-04-22 Richard Biener <rguenther@suse.de>
6135
6136 * testsuite/libgomp.c-c++-common/reduction-16.c: Use -latomic
6137 only on nvptx-none.
6138
c1ef0c92
GA
61392021-04-21 Tobias Burnus <tobias@codesourcery.com>
6140
6141 * testsuite/libgomp.fortran/depobj-1.f90: Use omp_lib's
6142 omp_depend_kind instead of defining it as 16.
6143
61442021-04-21 Tobias Burnus <tobias@codesourcery.com>
6145
6146 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
6147 New, based on check_effective_target_offload_target_nvptx.
6148 (check_effective_target_offload_target_nvptx): Call it.
6149 (check_effective_target_offload_target_amdgcn): New.
6150 * testsuite/libgomp.c-c++-common/function-not-offloaded.c:
6151 Require target offload_target_nvptx || offload_target_amdgcn.
6152 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: Likewise.
6153 * testsuite/libgomp.c/pr86416-1.c: Likewise.
6154 * testsuite/libgomp.c/pr86416-2.c: Likewise.
6155
61562021-04-21 Tobias Burnus <tobias@codesourcery.com>
6157
6158 * testsuite/libgomp.fortran/depobj-1.f90: New test.
6159
6e81e015
GA
61602021-04-19 Thomas Schwinge <thomas@codesourcery.com>
6161
6162 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
6163 '-fopenacc-kernels=[...]' -> '--param=openacc-kernels=[...]'.
6164 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
6165 Likewise.
6166 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
6167 Likewise.
6168 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
6169
ee351f7f
GA
61702021-04-15 Thomas Schwinge <thomas@codesourcery.com>
6171
6172 PR target/99555
6173 * testsuite/lib/libgomp.exp
6174 (check_effective_target_offload_device_nvptx): New.
6175 * testsuite/libgomp.c/pr99555-1.c <nvptx offload device>: Until
6176 resolved, make sure that we exit quickly, with error status,
6177 XFAILed.
6178 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise.
6179 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
6180
df3b1289
GA
61812021-04-14 Jakub Jelinek <jakub@redhat.com>
6182
6183 PR testsuite/100071
6184 * testsuite/libgomp.fortran/alloc-1.F90: Call c_f_pointer after last
6185 cp = omp_alloc with cp, p arguments instead of cq, q and call
6186 c_f_pointer after last cq = omp_alloc with cq, q.
6187
a0ecde22
GA
61882021-04-11 Hafiz Abid Qadeer <abidh@codesourcery.com>
6189
6190 PR middle-end/98088
6191 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Add check
6192 for loop with GT/GE condition.
6193 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
6194
3115aba8
GA
61952021-04-09 Thomas Schwinge <thomas@codesourcery.com>
6196
6197 PR middle-end/84991
6198 PR middle-end/84992
6199 PR middle-end/90779
6200 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: New.
6201
62022021-04-09 Jakub Jelinek <jakub@redhat.com>
6203
6204 PR libgomp/99984
6205 * team.c (gomp_thread_start): Call pthread_setspecific for
6206 !(defined HAVE_TLS || defined USE_EMUTLS) only after local_thr
6207 has been initialized to avoid false positive warning.
6208
65374af2
GA
62092021-03-29 Tobias Burnus <tobias@codesourcery.com>
6210
6211 PR target/99555
6212 * testsuite/lib/on_device_arch.c: Move to ...
6213 * testsuite/libgomp.c-c++-common/on_device_arch.h: ... here.
6214 * testsuite/libgomp.fortran/on_device_arch.c: New file;
6215 #include on_device_arch.h.
6216 * testsuite/libgomp.c-c++-common/task-detach-6.c: #include
6217 on_device_arch.h instead of using dg-additional-source.
6218 * testsuite/libgomp.c/pr99555-1.c: Likewise.
6219 * testsuite/libgomp.fortran/task-detach-6.f90: Update to use
6220 on_device_arch.c without relative paths.
6221
4493b1c1
GA
62222021-03-25 Thomas Schwinge <thomas@codesourcery.com>
6223
6224 * plugin/plugin-gcn.c (init_environment_variables): Don't prepend
6225 the 'HSA_RUNTIME_LIB' path to 'libhsa-runtime64.so'.
6226 * plugin/configfrag.ac (HSA_RUNTIME_LIB): Clean up.
6227 * config.h.in: Regenerate.
6228 * configure: Likewise.
6229
62302021-03-25 Thomas Schwinge <thomas@codesourcery.com>
6231
6232 PR target/99555
6233 * testsuite/lib/on_device_arch.c: New file.
6234 * testsuite/libgomp.c/pr99555-1.c: Likewise.
6235 * testsuite/libgomp.c-c++-common/task-detach-6.c: Until resolved,
6236 skip for nvptx offloading, with error status.
6237 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
6238
62392021-03-25 Thomas Schwinge <thomas@codesourcery.com>
6240
6241 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
6242 OpenACC 'serial' construct diagnostic for nvptx offloading.
6243
3c5b6d24
GA
62442021-03-15 Tobias Burnus <tobias@codesourcery.com>
6245
6246 PR c++/99509
6247 * testsuite/libgomp.c-c++-common/declare_target-1.c: New test.
6248
6da2762a
GA
62492021-03-12 Tobias Burnus <tobias@codesourcery.com>
6250
6251 PR fortran/98858
6252 * testsuite/libgomp.fortran/use_device_ptr-3.f90: New test.
6253
67f10d28
GA
62542021-03-04 Jakub Jelinek <jakub@redhat.com>
6255
6256 * configure.ac: Add AC_CHECK_SIZEOF([void *]).
6257 * plugin/configfrag.ac: Check $ac_cv_sizeof_void_p value instead of
6258 checking of -m32 or -mx32 options on the command line.
6259 * config.h.in: Regenerated.
6260 * configure: Regenerated.
6261
ec9dc4fa
GA
62622021-02-27 Iain Sandoe <iain@sandoe.co.uk>
6263
6264 * testsuite/libgomp.c-c++-common/pr96390.c: Require alias
6265 support from the target.
6266
daa68844
GA
62672021-02-25 Kwok Cheung Yeung <kcy@codesourcery.com>
6268 Jakub Jelinek <jakub@redhat.com>
6269
6270 PR libgomp/98738
6271 * libgomp.h (enum gomp_task_kind): Add GOMP_TASK_DETACHED.
6272 (struct gomp_task): Replace detach and completion_sem fields with
6273 union containing completion_sem and detach_team. Add deferred_p
6274 field.
6275 (struct gomp_team): Remove task_detach_queue.
6276 * task.c: Include assert.h.
6277 (gomp_init_task): Initialize deferred_p and completion_sem fields.
6278 Rearrange initialization order of fields.
6279 (task_fulfilled_p): Delete.
6280 (GOMP_task): Use address of task as the event handle. Remove
6281 initialization of detach field. Initialize deferred_p field.
6282 Use automatic local for completion_sem. Initialize detach_team field
6283 for deferred tasks.
6284 (gomp_barrier_handle_tasks): Remove handling of task_detach_queue.
6285 Set kind of suspended detach task to GOMP_TASK_DETACHED and
6286 decrement task_running_count. Move finish_cancelled block out of
6287 else branch. Relocate call to gomp_team_barrier_done.
6288 (GOMP_taskwait): Handle tasks with completion events that have not
6289 been fulfilled.
6290 (GOMP_taskgroup_end): Likewise.
6291 (omp_fulfill_event): Use address of task as event handle. Post to
6292 completion_sem for undeferred tasks. Clear detach_team if task
6293 has not finished. For finished tasks, handle post-execution tasks,
6294 call gomp_team_barrier_wake if necessary, and free task.
6295 * team.c (gomp_new_team): Remove initialization of task_detach_queue.
6296 (free_team): Remove free of task_detach_queue.
6297 * testsuite/libgomp.c-c++-common/task-detach-1.c: Fix formatting.
6298 * testsuite/libgomp.c-c++-common/task-detach-2.c: Fix formatting.
6299 * testsuite/libgomp.c-c++-common/task-detach-3.c: Fix formatting.
6300 * testsuite/libgomp.c-c++-common/task-detach-4.c: Fix formatting.
6301 * testsuite/libgomp.c-c++-common/task-detach-5.c: Fix formatting.
6302 Change data-sharing of detach events on enclosing parallel to private.
6303 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise. Remove
6304 taskwait directive.
6305 * testsuite/libgomp.c-c++-common/task-detach-7.c: New.
6306 * testsuite/libgomp.c-c++-common/task-detach-8.c: New.
6307 * testsuite/libgomp.c-c++-common/task-detach-9.c: New.
6308 * testsuite/libgomp.c-c++-common/task-detach-10.c: New.
6309 * testsuite/libgomp.c-c++-common/task-detach-11.c: New.
6310 * testsuite/libgomp.fortran/task-detach-1.f90: Fix formatting.
6311 * testsuite/libgomp.fortran/task-detach-2.f90: Fix formatting.
6312 * testsuite/libgomp.fortran/task-detach-3.f90: Fix formatting.
6313 * testsuite/libgomp.fortran/task-detach-4.f90: Fix formatting.
6314 * testsuite/libgomp.fortran/task-detach-5.f90: Fix formatting.
6315 Change data-sharing of detach events on enclosing parallel to private.
6316 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise. Remove
6317 taskwait directive.
6318 * testsuite/libgomp.fortran/task-detach-7.f90: New.
6319 * testsuite/libgomp.fortran/task-detach-8.f90: New.
6320 * testsuite/libgomp.fortran/task-detach-9.f90: New.
6321 * testsuite/libgomp.fortran/task-detach-10.f90: New.
6322 * testsuite/libgomp.fortran/task-detach-11.f90: New.
6323
2f5765cf
GA
63242021-02-22 Tobias Burnus <tobias@codesourcery.com>
6325
6326 PR fortran/99171
6327 * testsuite/libgomp.fortran/dummy-procs-1.f90: New test.
6328
acc0ee5c
GA
63292021-02-17 Julian Brown <julian@codesourcery.com>
6330
6331 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Remove
6332 expected errors.
6333
63342021-02-17 Julian Brown <julian@codesourcery.com>
6335
6336 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: New test.
6337 * testsuite/libgomp.oacc-fortran/update-dt-array.f90: Likewise.
6338
0c5cdb31
GA
63392021-02-11 Uroš Bizjak <ubizjak@gmail.com>
6340
6341 * config/linux/x86/futex.h (__futex_wait):
6342 Revert output type back to long.
6343 (__futex_wake): Ditto.
6344 (futex_wait): Update for revert.
6345 (futex_wake): Ditto.
6346
63472021-02-11 Uroš Bizjak <ubizjak@gmail.com>
6348
6349 * config/linux/x86/futex.h (__futex_wait): New static inline
6350 wrapper function. Correct output type to int and
6351 timeout type to void *.
6352 (__futex_wake): New static inline wrapper function.
6353 Correct output type to int.
6354 (futex_wait): Use __futex_wait.
6355 (futex_wake): Use __futex_wake.
6356
4b37c3ea
GA
63572021-02-10 Julian Brown <julian@codesourcery.com>
6358
6359 PR fortran/98979
6360 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Add expected
6361 errors.
6362
a19dd5e6
GA
63632021-02-04 Julian Brown <julian@codesourcery.com>
6364
6365 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: New test.
6366
9faaa807
GA
63672021-02-03 Andrew Stubbs <ams@codesourcery.com>
6368
6369 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
6370 EF_AMDGPU_MACH_AMDGCN_GFX908.
6371 (gcn_gfx908_s): New constant string.
6372 (isa_hsa_name): Add gfx908.
6373 (isa_code): Add gfx908.
6374
161e4c08
GA
63752021-01-25 Kwok Cheung Yeung <kcy@codesourcery.com>
6376
6377 * libgomp.texi (omp_fulfill_event): New entry.
6378
b93d0e36
GA
63792021-01-20 Jakub Jelinek <jakub@redhat.com>
6380
6381 * task.c (GOMP_task): Rename priority argument to priority_arg,
6382 add priority automatic variable and modify that variable. Instead of
6383 clearing detach argument when GOMP_TASK_FLAG_DETACH bit is not set,
6384 check flags for that bit.
6385
f35a4f96
GA
63862021-01-19 Tobias Burnus <tobias@codesourcery.com>
6387
6388 PR fortran/98476
6389 * testsuite/libgomp.fortran/is_device_ptr-1.f90: New test.
6390
ef1f8ee6
GA
63912021-01-18 Andreas Schwab <schwab@suse.de>
6392
6393 * configure.tgt (riscv64*-*-linux*): Add linux to config_path.
6394
63952021-01-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
6396
6397 * config/rtems/sem.h (gomp_sem_getcount): New function.
6398
63992021-01-18 Jakub Jelinek <jakub@redhat.com>
6400
6401 * config/linux/sem.h (gomp_sem_getcount): New function.
6402 * config/posix/sem.h (gomp_sem_getcount): New function.
6403 * config/posix/sem.c (gomp_sem_getcount): New function.
6404 * config/accel/sem.h (gomp_sem_getcount): New function.
6405 * task.c (task_fulfilled_p): Use gomp_sem_getcount.
6406 (omp_fulfill_event): Likewise.
6407
59cf67d1
GA
64082021-01-16 Kwok Cheung Yeung <kcy@codesourcery.com>
6409
6410 * fortran.c (omp_fulfill_event_): New.
6411 * libgomp.h (struct gomp_task): Add detach and completion_sem fields.
6412 (struct gomp_team): Add task_detach_queue and task_detach_count
6413 fields.
6414 * libgomp.map (OMP_5.0.1): Add omp_fulfill_event and omp_fulfill_event_.
6415 * libgomp_g.h (GOMP_task): Add extra argument.
6416 * omp.h.in (enum omp_event_handle_t): New.
6417 (omp_fulfill_event): New.
6418 * omp_lib.f90.in (omp_event_handle_kind): New.
6419 (omp_fulfill_event): New.
6420 * omp_lib.h.in (omp_event_handle_kind): New.
6421 (omp_fulfill_event): Declare.
6422 * priority_queue.c (priority_tree_find): New.
6423 (priority_list_find): New.
6424 (priority_queue_find): New.
6425 * priority_queue.h (priority_queue_predicate): New.
6426 (priority_queue_find): New.
6427 * task.c (gomp_init_task): Initialize detach field.
6428 (task_fulfilled_p): New.
6429 (GOMP_task): Add detach argument. Ignore detach argument if
6430 GOMP_TASK_FLAG_DETACH not set in flags. Initialize completion_sem
6431 field. Copy address of completion_sem into detach argument and
6432 into the start of the data record. Wait for detach event if task
6433 not deferred.
6434 (gomp_barrier_handle_tasks): Queue tasks with unfulfilled events.
6435 Remove completed tasks and requeue dependent tasks.
6436 (omp_fulfill_event): New.
6437 * team.c (gomp_new_team): Initialize task_detach_queue and
6438 task_detach_count fields.
6439 (free_team): Free task_detach_queue field.
6440 * testsuite/libgomp.c-c++-common/task-detach-1.c: New testcase.
6441 * testsuite/libgomp.c-c++-common/task-detach-2.c: New testcase.
6442 * testsuite/libgomp.c-c++-common/task-detach-3.c: New testcase.
6443 * testsuite/libgomp.c-c++-common/task-detach-4.c: New testcase.
6444 * testsuite/libgomp.c-c++-common/task-detach-5.c: New testcase.
6445 * testsuite/libgomp.c-c++-common/task-detach-6.c: New testcase.
6446 * testsuite/libgomp.fortran/task-detach-1.f90: New testcase.
6447 * testsuite/libgomp.fortran/task-detach-2.f90: New testcase.
6448 * testsuite/libgomp.fortran/task-detach-3.f90: New testcase.
6449 * testsuite/libgomp.fortran/task-detach-4.f90: New testcase.
6450 * testsuite/libgomp.fortran/task-detach-5.f90: New testcase.
6451 * testsuite/libgomp.fortran/task-detach-6.f90: New testcase.
6452
2f7f0d32
GA
64532021-01-15 Jakub Jelinek <jakub@redhat.com>
6454
6455 PR target/70454
6456 * configure.tgt: For i?86 and x86_64 determine if -march=i486 needs to
6457 be added through preprocessor check on
6458 __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4.
6459
5fff80fd
GA
64602021-01-14 Thomas Schwinge <thomas@codesourcery.com>
6461
6462 PR libgomp/65099
6463 * plugin/configfrag.ac (PLUGIN_NVPTX): Restrict to supported
6464 configurations.
6465 * configure: Regenerate.
6466 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Remove 64-bit
6467 check.
6468
651b8a50
GA
64692021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
6470
6471 * configure: Re-generate.
6472
64732021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
6474
6475 * configure: Re-generate.
6476
64772021-01-05 Julian Brown <julian@codesourcery.com>
6478
6479 * plugin/plugin-nvptx.c (SOFTSTACK_CACHE_LIMIT): New define.
6480 (struct ptx_device): Add omp_stacks struct.
6481 (nvptx_open_device): Initialise cached-stacks housekeeping info.
6482 (nvptx_close_device): Free cached stacks block and mutex.
6483 (nvptx_stacks_free): New function.
6484 (nvptx_alloc): Add SUPPRESS_ERRORS parameter.
6485 (GOMP_OFFLOAD_alloc): Add strategies for freeing soft-stacks block.
6486 (nvptx_stacks_alloc): Rename to...
6487 (nvptx_stacks_acquire): This. Cache stacks block between runs if same
6488 size or smaller is required.
6489 (nvptx_stacks_free): Remove.
6490 (GOMP_OFFLOAD_run): Call nvptx_stacks_acquire and lock stacks block
6491 during kernel execution.
6492
b6dd195a
GA
64932021-01-01 Jakub Jelinek <jakub@redhat.com>
6494
6495 * libgomp.texi: Bump @copying's copyright year.
6496
2d3425a5
GA
64972020-12-28 Gerald Pfeifer <gerald@pfeifer.com>
6498
6499 * libgomp.texi (Top): Avoid bad "up" link.
6500
b1a2242e
GA
65012020-12-18 Jakub Jelinek <jakub@redhat.com>
6502
6503 * testsuite/libgomp.c/task-6.c: New test.
6504
ca2bd949
GA
65052020-12-09 Andrew Stubbs <ams@codesourcery.com>
6506
6507 * plugin/plugin-gcn.c: Include hsa_ext_amd.h.
6508 (HSA_AMD_AGENT_INFO_COMPUTE_UNIT_COUNT): Delete redundant definition.
6509
f6e8e279
GA
65102020-12-08 Tobias Burnus <tobias@codesourcery.com>
6511
6512 * testsuite/libgomp.fortran/scan-1.f90: New test.
6513
6e1edf48
GA
65142020-12-05 Iain Sandoe <iain@sandoe.co.uk>
6515
6516 PR target/97865
6517 * configure: Regenerate.
6518
a9625c50
GA
65192020-11-29 John David Anglin <danglin@gcc.gnu.org>
6520
6521 * configure: Regenerate.
6522
360258da
GA
65232020-11-25 Thomas Schwinge <thomas@codesourcery.com>
6524
6525 * testsuite/libgomp.oacc-c++/cache-1.C: New.
6526 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Update.
6527
65282020-11-25 Andrew Stubbs <ams@codesourcery.com>
6529
6530 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Adjust
6531 expected results.
6532
1e2c9a27
GA
65332020-11-24 Andrew Stubbs <ams@codesourcery.com>
6534
6535 * plugin/plugin-gcn.c: Don't redefine relocations if elf.h has them.
6536 (reserved): Delete unused define.
6537
65382020-11-24 Thomas Schwinge <thomas@codesourcery.com>
6539
6540 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Avoid
6541 Tcl 8.5-specific behavior.
6542 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
6543
25bb75f8
GA
65442020-11-18 Kwok Cheung Yeung <kcy@codesourcery.com>
6545
6546 * env.c (gomp_global_icv): Remove nest_var field. Add
6547 max_active_levels_var field.
6548 (gomp_max_active_levels_var): Remove.
6549 (parse_boolean): Return true on success.
6550 (handle_omp_display_env): Express OMP_NESTED in terms of
6551 max_active_levels_var. Change format specifier for
6552 max_active_levels_var.
6553 (initialize_env): Set max_active_levels_var from
6554 OMP_MAX_ACTIVE_LEVELS, OMP_NESTED, OMP_NUM_THREADS and
6555 OMP_PROC_BIND.
6556 * icv.c (omp_set_nested): Express in terms of
6557 max_active_levels_var.
6558 (omp_get_nested): Likewise.
6559 (omp_set_max_active_levels): Use max_active_levels_var field instead
6560 of gomp_max_active_levels_var.
6561 (omp_get_max_active_levels): Likewise.
6562 * libgomp.h (struct gomp_task_icv): Remove nest_var field. Add
6563 max_active_levels_var field.
6564 (gomp_supported_active_levels): Set to UCHAR_MAX.
6565 (gomp_max_active_levels_var): Delete.
6566 * libgomp.texi (omp_get_nested): Update documentation.
6567 (omp_set_nested): Likewise.
6568 (OMP_MAX_ACTIVE_LEVELS): Likewise.
6569 (OMP_NESTED): Likewise.
6570 (OMP_NUM_THREADS): Likewise.
6571 (OMP_PROC_BIND): Likewise.
6572 * parallel.c (gomp_resolve_num_threads): Replace reference
6573 to nest_var with max_active_levels_var. Use max_active_levels_var
6574 field instead of gomp_max_active_levels_var.
6575
65762020-11-18 Tobias Burnus <tobias@codesourcery.com>
6577
6578 * testsuite/libgomp.c/usleep.h (fallback_usleep): Renamed from
6579 nvptx_usleep; use also for device={arch(gcn)}.
6580
faab61b5
GA
65812020-11-14 Jakub Jelinek <jakub@redhat.com>
6582
6583 * testsuite/libgomp.c-c++-common/allocate-1.c (struct S): New type.
6584 (foo): Add tests for non-VLA private and firstprivate clauses on
6585 omp task.
6586 (bar): Likewise. Remove taking of address from private/firstprivate
6587 variables.
6588 * testsuite/libgomp.c++/allocate-1.C (struct S): New type.
6589 (foo): Add p, q, px and s arguments. Add tests for array reductions
6590 and for non-VLA private and firstprivate clauses on omp task.
6591 (bar): Removed.
6592 (main): Adjust foo caller. Don't call bar.
6593
77f67db2
GA
65942020-11-13 Gergö Barany <gergo@codesourcery.com>
6595 Thomas Schwinge <thomas@codesourcery.com>
6596
6597 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
6598 New.
6599 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
6600 Likewise.
6601 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
6602 Likewise.
6603 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
6604 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
6605
66062020-11-13 Gergö Barany <gergo@codesourcery.com>
6607 Thomas Schwinge <thomas@codesourcery.com>
6608
6609 PR fortran/94358
6610 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: New.
6611
66122020-11-13 Jakub Jelinek <jakub@redhat.com>
6613
6614 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add tests
6615 for array reductions.
6616 (main): Adjust foo callers.
6617
a5a11525
GA
66182020-11-12 Jakub Jelinek <jakub@redhat.com>
6619
6620 * libgomp.map (GOMP_alloc, GOMP_free): Export at GOMP_5.0.1.
6621 * omp.h.in (omp_alloc): Add malloc and alloc_size attributes.
6622 * libgomp_g.h (GOMP_alloc, GOMP_free): Declare.
6623 * allocator.c (omp_aligned_alloc): New for now static function,
6624 add alignment argument and handle it.
6625 (omp_alloc): Reimplement using omp_aligned_alloc.
6626 (GOMP_alloc, GOMP_free): New functions.
6627 (omp_free): Add ialias.
6628 * testsuite/libgomp.c-c++-common/allocate-1.c: New test.
6629 * testsuite/libgomp.c++/allocate-1.C: New test.
6630
66312020-11-12 Thomas Schwinge <thomas@codesourcery.com>
6632
6633 PR fortran/97782
6634 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Adjust.
6635
bb622641
GA
66362020-11-10 Chung-Lin Tang <cltang@codesourcery.com>
6637
6638 * libgomp.h (enum gomp_map_vars_kind): Adjust enum values to be bit-flag
6639 usable.
6640 * oacc-mem.c (acc_map_data): Adjust gomp_map_vars argument flags to
6641 'GOMP_MAP_VARS_OPENACC | GOMP_MAP_VARS_ENTER_DATA'.
6642 (goacc_enter_datum): Likewise for call to gomp_map_vars_async.
6643 (goacc_enter_data_internal): Likewise.
6644 * target.c (gomp_map_vars_internal):
6645 Change checks of GOMP_MAP_VARS_ENTER_DATA to use bit-and (&). Adjust use
6646 of gomp_attach_pointer for OpenMP cases.
6647 (gomp_exit_data): Add handling of GOMP_MAP_DETACH.
6648 (GOMP_target_enter_exit_data): Add handling of GOMP_MAP_ATTACH.
6649 * testsuite/libgomp.c-c++-common/ptr-attach-1.c: New testcase.
6650
0cfd9109
GA
66512020-11-05 Ulrich Drepper <drepper@redhat.com>
6652 Kwok Cheung Yeung <kcy@codesourcery.com>
6653
6654 * Makefile.am (%.mod): Add -cpp and -fopenmp to compile flags.
6655 * Makefile.in: Regenerate.
6656 * fortran.c: Wrap uses of omp_set_nested and omp_get_nested with
6657 pragmas to ignore -Wdeprecated-declarations warnings.
6658 * icv.c: Likewise.
6659 * omp.h.in (__GOMP_DEPRECATED_5_0): Define.
6660 Mark omp_lock_hint_* enum values, omp_lock_hint_t, omp_set_nested,
6661 and omp_get_nested with __GOMP_DEPRECATED_5_0.
6662 * omp_lib.f90.in: Mark omp_get_nested and omp_set_nested as
6663 deprecated.
6664 * testsuite/libgomp.c++/affinity-1.C: Add -Wno-deprecated-declarations
6665 to test options.
6666 * testsuite/libgomp.c/affinity-1.c: Likewise.
6667 * testsuite/libgomp.c/affinity-2.c: Likewise.
6668 * testsuite/libgomp.c/appendix-a/a.15.1.c: Likewise.
6669 * testsuite/libgomp.c/lib-1.c: Likewise.
6670 * testsuite/libgomp.c/nested-1.c: Likewise.
6671 * testsuite/libgomp.c/nested-2.c: Likewise.
6672 * testsuite/libgomp.c/nested-3.c: Likewise.
6673 * testsuite/libgomp.c/pr32362-1.c: Likewise.
6674 * testsuite/libgomp.c/pr32362-2.c: Likewise.
6675 * testsuite/libgomp.c/pr32362-3.c: Likewise.
6676 * testsuite/libgomp.c/pr35549.c: Likewise.
6677 * testsuite/libgomp.c/pr42942.c: Likewise.
6678 * testsuite/libgomp.c/pr61200.c: Likewise.
6679 * testsuite/libgomp.c/sort-1.c: Likewise.
6680 * testsuite/libgomp.c/target-5.c: Likewise.
6681 * testsuite/libgomp.c/target-6.c: Likewise.
6682 * testsuite/libgomp.c/teams-1.c: Likewise.
6683 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
6684 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
6685 * testsuite/libgomp.c/thread-limit-4.c: Likewise.
6686 * testsuite/libgomp.fortran/affinity1.f90: Likewise.
6687 * testsuite/libgomp.fortran/lib1.f90: Likewise.
6688 * testsuite/libgomp.fortran/lib2.f: Likewise.
6689 * testsuite/libgomp.fortran/nested1.f90: Likewise.
6690 * testsuite/libgomp.fortran/teams1.f90: Likewise.
6691
88ce3d5f
GA
66922020-11-02 Thomas Schwinge <thomas@codesourcery.com>
6693
6694 PR target/85486
6695 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: Simplify and enhance.
6696 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
6697 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
6698
66992020-11-02 Thomas Schwinge <thomas@codesourcery.com>
6700
6701 PR testsuite/80219
6702 PR testsuite/85303
6703 * testsuite/lib/libgomp.exp (libgomp_init): Set
6704 'gcc_warning_prefix', 'gcc_error_prefix'.
6705
67062020-10-30 Jakub Jelinek <jakub@redhat.com>
6707
6708 * target.c (gomp_map_vars_internal): Use FIELD_TGT_EMPTY macro
6709 even in field_tgt_clear initializer.
6710
e93aae4a
GA
67112020-10-28 Jakub Jelinek <jakub@redhat.com>
6712
6713 * testsuite/libgomp.c/target-42.c: New test.
6714
67152020-10-28 Jakub Jelinek <jakub@redhat.com>
6716 Tom de Vries <tdevries@suse.de>
6717
6718 PR testsuite/81690
6719 * testsuite/libgomp.c/usleep.h: New file.
6720 * testsuite/libgomp.c/target-32.c: Include usleep.h.
6721 (main): Use tgt_usleep instead of usleep.
6722 * testsuite/libgomp.c/thread-limit-2.c: Include usleep.h.
6723 (main): Use tgt_usleep instead of usleep.
6724
67252020-10-28 Jakub Jelinek <jakub@redhat.com>
6726
6727 PR lto/96680
6728 * testsuite/libgomp.c/declare-variant-1.c: New test.
6729
56ddd5e2
GA
67302020-10-22 Jakub Jelinek <jakub@redhat.com>
6731
6732 * testsuite/libgomp.c/target-41.c: New test.
6733
67342020-10-22 Jakub Jelinek <jakub@redhat.com>
6735
6736 * icv.c (omp_get_initial_device): Remove including corresponding
6737 ialias.
6738 * icv-device.c (omp_get_initial_device): New function. Return
6739 gomp_get_num_devices (). Add ialias.
6740 * target.c (resolve_device): Don't fail with
6741 OMP_TARGET_OFFLOAD=mandatory if device_id is equal to
6742 gomp_get_num_devices ().
6743 (omp_target_alloc, omp_target_free, omp_target_is_present,
6744 omp_target_memcpy, omp_target_memcpy_rect, omp_target_associate_ptr,
6745 omp_target_disassociate_ptr, omp_pause_resource): Use
6746 gomp_get_num_devices () instead of GOMP_DEVICE_HOST_FALLBACK on the
6747 first use in the functions, in uses dominated by the
6748 gomp_get_num_devices call use num_devices_openmp instead.
6749 * libgomp.texi (omp_get_initial_device): Document.
6750 * config/gcn/icv-device.c (omp_get_initial_device): New function.
6751 Add ialias.
6752 * config/nvptx/icv-device.c (omp_get_initial_device): Likewise.
6753 * testsuite/libgomp.c/target-40.c: New test.
6754
67552020-10-21 Jakub Jelinek <jakub@redhat.com>
6756
6757 * env.c (parse_target_offload): Change new_offload var type to int,
6758 preinitialize to -1, remove found var and test new_offload != -1
6759 instead of found.
6760
e2e04288
GA
67612020-10-20 Jakub Jelinek <jakub@redhat.com>
6762
6763 * target.c (gomp_target_init): Inside of the function, use automatic
6764 variables corresponding to num_devices, num_devices_openmp and devices
6765 global variables and update the globals only at the end of the
6766 function.
6767
67682020-10-20 Kwok Cheung Yeung <kcy@codesourcery.com>
6769
6770 * env.c (gomp_target_offload_var): New.
6771 (parse_target_offload): New.
6772 (handle_omp_display_env): Print value of OMP_TARGET_OFFLOAD.
6773 (initialize_env): Parse OMP_TARGET_OFFLOAD.
6774 * libgomp.h (gomp_target_offload_t): New.
6775 (gomp_target_offload_var): New.
6776 * libgomp.texi (OMP_TARGET_OFFLOAD): New section.
6777 * target.c (resolve_device): Generate error if device not found and
6778 offloading is mandatory.
6779 (gomp_target_fallback): Generate error if offloading is mandatory.
6780 (GOMP_target): Add argument in call to gomp_target_fallback.
6781 (GOMP_target_ext): Likewise.
6782 (gomp_target_data_fallback): Generate error if offloading is mandatory.
6783 (GOMP_target_data): Add argument in call to gomp_target_data_fallback.
6784 (GOMP_target_data_ext): Likewise.
6785 (gomp_target_task_fn): Add argument in call to gomp_target_fallback.
6786 (gomp_target_init): Return early if offloading is disabled.
6787
b85d5dc5
GA
67882020-10-15 Kwok Cheung Yeung <kcy@codesourcery.com>
6789
6790 * libgomp.texi (omp_get_max_active_levels): Modify description.
6791 (omp_get_supported_active_levels): Make descriptions consistent.
6792
b2698c21
GA
67932020-10-14 Jakub Jelinek <jakub@redhat.com>
6794
6795 * libgomp.texi (omp_get_supported_active_levels): Fix a typo.
6796
bdd74cc2
GA
67972020-10-13 Kwok Cheung Yeung <kcy@codesourcery.com>
6798
6799 * env.c (gomp_max_active_levels_var): Initialize to
6800 gomp_supported_active_levels.
6801 (initialize_env): Limit gomp_max_active_levels_var to be at most
6802 equal to gomp_supported_active_levels.
6803 * fortran.c (omp_get_supported_active_levels): Add ialias_redirect.
6804 (omp_get_supported_active_levels_): New.
6805 * icv.c (omp_set_max_active_levels): Limit gomp_max_active_levels_var
6806 to at most equal to gomp_supported_active_levels.
6807 (omp_get_supported_active_levels): New.
6808 * libgomp.h (gomp_supported_active_levels): New.
6809 * libgomp.map (OMP_5.0.1): Add omp_get_supported_active_levels and
6810 omp_get_supported_active_levels_.
6811 * libgomp.texi (omp_get_supported_active_levels): New.
6812 (omp_set_max_active_levels): Update. Add reference to
6813 omp_get_supported_active_levels.
6814 * omp.h.in (omp_get_supported_active_levels): New.
6815 * omp_lib.f90.in (omp_get_supported_active_levels): New.
6816 * omp_lib.h.in (omp_get_supported_active_levels): New.
6817 * testsuite/libgomp.c/lib-2.c (main): Check omp_get_max_active_levels
6818 against omp_get_supported_active_levels.
6819 * testsuite/libgomp.fortran/lib4.f90 (lib4): Likewise.
6820
2baa36d4
GA
68212020-10-11 Clement Chigot <clement.chigot@atos.net>
6822
6823 * config/t-aix: Delete and recreate libgomp before creating
6824 FAT library.
6825
da9df699
GA
68262020-10-08 Tom de Vries <tdevries@suse.de>
6827
6828 PR libgomp/81802
6829 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_run): Report launch
6830 dimensions.
6831
8e97b905
GA
68322020-10-06 Tom de Vries <tdevries@suse.de>
6833
6834 * testsuite/libgomp.oacc-fortran/declare-5.f90: Add xfail for PR92790.
6835
68362020-10-06 Tom de Vries <tdevries@suse.de>
6837
6838 PR middle-end/90861
6839 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Remove xfail.
6840
7e9282ae
GA
68412020-10-05 Tom de Vries <tdevries@suse.de>
6842
6843 PR fortran/95654
6844 * testsuite/libgomp.fortran/pr95654.f90: New test.
6845
b0b9b8f0
GA
68462020-10-02 Tobias Burnus <tobias@codesourcery.com>
6847
6848 * Makefile.in: Regenerate with automake 1.15.1.
6849 * aclocal.m4: Likewise.
6850 * configure: Likewise.
6851 * testsuite/Makefile.in: Likewise.
6852
660bfe61
GA
68532020-09-30 Andrew Stubbs <ams@codesourcery.com>
6854
6855 * parallel.c (gomp_resolve_num_threads): Ignore nest_var on nvptx
6856 and amdgcn targets.
6857
68582020-09-30 Tobias Burnus <tobias@codesourcery.com>
6859
6860 * testsuite/libgomp.fortran/declare-target-3.f90: New test.
6861
93bca37c
GA
68622020-09-29 Andrew Stubbs <ams@codesourcery.com>
6863
6864 * config/gcn/bar.c (gomp_barrier_wait_end): Skip the barrier if the
6865 total number of threads is one.
6866 (gomp_team_barrier_wake): Likewise.
6867 (gomp_team_barrier_wait_end): Likewise.
6868 (gomp_team_barrier_wait_cancel_end): Likewise.
6869 * config/nvptx/bar.c (gomp_barrier_wait_end): Likewise.
6870 (gomp_team_barrier_wake): Likewise.
6871 (gomp_team_barrier_wait_end): Likewise.
6872 (gomp_team_barrier_wait_cancel_end): Likewise.
6873 * testsuite/libgomp.c-c++-common/nested-parallel-unbalanced.c: New test.
6874
e84761c6
GA
68752020-09-28 Tobias Burnus <tobias@codesourcery.com>
6876
6877 PR middle-end/96390
6878 * testsuite/libgomp.c++/pr96390.C: New test.
6879 * testsuite/libgomp.c-c++-common/pr96390.c: New test.
6880
4383c595
GA
68812020-09-27 Clement Chigot <clement.chigot@atos.net>
6882
6883 * config/t-aix: Use $(AR) without -X32_64.
6884
cdd8f031
GA
68852020-09-25 Jakub Jelinek <jakub@redhat.com>
6886
6887 * testsuite/libgomp.c/loop-25.c: New test.
6888
521d2711
GA
68892020-09-22 Tobias Burnus <tobias@codesourcery.com>
6890
6891 PR fortran/95654
6892 * testsuite/libgomp.fortran/pr66199-5.f90: Make stop codes unique.
6893
68942020-09-22 Tom de Vries <tdevries@suse.de>
6895
6896 * plugin/plugin-nvptx.c (link_ptx): Print elog if cuLinkComplete call
6897 fails.
6898
ecde1b0a
GA
68992020-09-16 Nathan Sidwell <nathan@acm.org>
6900
6901 * testsuite/libgomp.c++/udr-3.C: Add missing ctor.
6902
9f7ab8c5
GA
69032020-09-15 Tobias Burnus <tobias@codesourcery.com>
6904
6905 PR fortran/96668
6906 * target.c (gomp_map_vars_internal): Initialize has_nullptr.
6907
69082020-09-15 Tobias Burnus <tobias@codesourcery.com>
6909
6910 PR fortran/96668
6911 * libgomp.h (struct target_var_desc): Add has_null_ptr_assoc member.
6912 * target.c (gomp_map_vars_existing): Add always_to_flag flag.
6913 (gomp_map_vars_existing): Update call to it.
6914 (gomp_map_fields_existing): Likewise
6915 (gomp_map_vars_internal): Update PSET handling such that if a nullptr is
6916 now allocated or if GOMP_MAP_POINTER is used PSET is updated and pointer
6917 remapped.
6918 (GOMP_target_enter_exit_data): Hanlde GOMP_MAP_ALWAYS_POINTER like
6919 GOMP_MAP_POINTER.
6920 * testsuite/libgomp.fortran/map-alloc-ptr-1.f90: New test.
6921 * testsuite/libgomp.fortran/map-alloc-ptr-2.f90: New test.
6922
50a71cd0
GA
69232020-09-14 Tom de Vries <tdevries@suse.de>
6924
6925 * config/nvptx/atomic.c: New file. Add
6926 __sync_val_compare_and_swap_16.
6927 * testsuite/libgomp.c-c++-common/reduction-16.c: Add -latomic for
6928 target offload_target_nvptx.
6929
31a05046
GA
69302020-09-08 Julian Brown <julian@codesourcery.com>
6931
6932 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c: Remove
6933 iteration-ordering assumptions.
6934
69352020-09-08 Julian Brown <julian@codesourcery.com>
6936
6937 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Fix race condition.
6938 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
6939
5b9a3d2a
GA
69402020-08-20 Chung-Lin Tang <cltang@codesourcery.com>
6941
6942 * plugin/plugin-nvptx.c (nvptx_free):
6943 Change "GOMP_PLUGIN_acc_thread () == NULL" test into check of
6944 CUDA_ERROR_NOT_PERMITTED status for cuMemGetAddressRange. Adjust
6945 comments.
6946
69472020-08-20 Tobias Burnus <tobias@codesourcery.com>
6948
6949 * testsuite/libgomp.fortran/lastprivate-conditional-10.f90: New test.
6950
b3cb5606
GA
69512020-08-13 Kwok Cheung Yeung <kcy@codesourcery.com>
6952
6953 * testsuite/libgomp.c-c++-common/reduction-16.c: New.
6954
69552020-08-13 Jakub Jelinek <jakub@redhat.com>
6956
6957 * testsuite/libgomp.c/loop-22.c (main): Add some further tests.
6958 * testsuite/libgomp.c/loop-23.c (main): Likewise.
6959 * testsuite/libgomp.c/loop-24.c: New test.
6960
bc0ca715
GA
69612020-08-08 Jakub Jelinek <jakub@redhat.com>
6962 Tobias Burnus <tobias@codesourcery.com>
6963
6964 PR fortran/93553
6965 * testsuite/libgomp.fortran/pr93553.f90: New test.
6966
aa5ea20c
GA
69672020-08-05 Jakub Jelinek <jakub@redhat.com>
6968
6969 * testsuite/libgomp.c/loop-22.c: New test.
6970 * testsuite/libgomp.c/loop-23.c: New test.
6971
69722020-08-05 Jakub Jelinek <jakub@redhat.com>
6973
6974 PR middle-end/96459
6975 * testsuite/libgomp.c/teams-3.c: New test.
6976 * testsuite/libgomp.c-c++-common/for-2.h (OMPTEAMS): Define to nothing
6977 if not defined yet.
6978 (N(test)): Use it before all N(f*) calls.
6979 * testsuite/libgomp.c-c++-common/for-14.c (DO_PRAGMA, OMPTEAMS): Define.
6980 (main): Don't call all test_* functions from within
6981 #pragma omp teams reduction(|:err), call them directly.
6982
abba2591
GA
69832020-08-04 Tom de Vries <tdevries@suse.de>
6984
6985 PR target/96428
6986 * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: New test.
6987 * testsuite/libgomp.oacc-fortran/pr96628-part2.f90: New test.
6988
6a1ad710
GA
69892020-08-03 Julian Brown <julian@codesourcery.com>
6990 Thomas Schwinge <thomas@codesourcery.com>
6991
6992 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Don't run for
6993 shared-memory devices. Extend with further checking.
6994
69952020-08-03 Martin Jambor <mjambor@suse.cz>
6996
6997 * plugin/Makefrag.am: Remove configuration of HSA plugin.
6998 * aclocal.m4: Regenerated.
6999 * Makefile.in: Regenerated.
7000 * config.h.in: Regenerated.
7001 * configure: Regenerated.
7002 * plugin/configfrag.ac: Likewise.
7003 * plugin/hsa_ext_finalize.h: Removed.
7004 * plugin/plugin-hsa.c: Likewise.
7005 * testsuite/Makefile.in: Regenerated.
7006 * testsuite/lib/libgomp.exp
7007 (offload_target_to_openacc_device_type): Remove hsa case.
7008 (check_effective_target_hsa_offloading_selected_nocache): Removed
7009 (check_effective_target_hsa_offloading_selected): Likewise.
7010 (libgomp_init): Do not add -Wno-hsa to additional_flags.
7011 * testsuite/libgomp.hsa.c/alloca-1.c: Removed test.
7012 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
7013 * testsuite/libgomp.hsa.c/bits-insns.c: Likewise.
7014 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
7015 * testsuite/libgomp.hsa.c/c.exp: Likewise.
7016 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
7017 * testsuite/libgomp.hsa.c/complex-align-2.c: Likewise.
7018 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
7019 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
7020 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
7021 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
7022 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
7023 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
7024 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
7025 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
7026 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
7027 * testsuite/libgomp.hsa.c/pr82416.c: Likewise.
7028 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
7029 * testsuite/libgomp.hsa.c/staticvar.c: Likewise.
7030 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
7031 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
7032 * testsuite/libgomp.hsa.c/switch-sbr-2.c: Likewise.
7033 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
7034 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
7035
e71dab87
GA
70362020-07-27 Julian Brown <julian@codesourcery.com>
7037 Thomas Schwinge <thomas@codesourcery.com>
7038
7039 * libgomp.h (struct target_var_desc): Rename do_detach field to
7040 is_attach.
7041 * oacc-mem.c (goacc_exit_datum_1): Add assert. Don't set finalize for
7042 GOMP_MAP_FORCE_DETACH. Update checking to use is_attach field.
7043 (goacc_enter_data_internal): Don't affect reference counts
7044 for attach mappings.
7045 (goacc_exit_data_internal): Don't affect reference counts for detach
7046 mappings.
7047 * target.c (gomp_map_vars_existing): Don't affect reference counts for
7048 attach mappings.
7049 (gomp_map_vars_internal): Set renamed is_attach flag unconditionally to
7050 mark attach mappings.
7051 (gomp_unmap_vars_internal): Use is_attach flag to prevent affecting
7052 reference count for attach mappings.
7053 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-1.c: New test.
7054 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
7055 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
7056 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Mark
7057 test as shouldfail.
7058 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust to fail
7059 gracefully in no-finalize mode.
7060 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-3.c: New file.
7061
53256ee3
GA
70622020-07-24 Thomas Schwinge <thomas@codesourcery.com>
7063
7064 * testsuite/libgomp.oacc-c++/c++.exp: Unset 'offload_target' after
7065 use.
7066 * testsuite/libgomp.oacc-c/c.exp: Likewise.
7067 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
7068
9bb403dc
GA
70692020-07-23 Julian Brown <julian@codesourcery.com>
7070 Thomas Schwinge <thomas@codesourcery.com>
7071
7072 * target.c (gomp_unmap_vars_internal): Remove unnecessary forcing of
7073 finalization for detach operation.
7074 * testsuite/libgomp.oacc-c-c++-common/structured-detach-underflow.c:
7075 New test.
7076
70772020-07-23 Tobias Burnus <tobias@codesourcery.com>
7078
7079 * configure.ac: Add OMP_DEPEND_KIND and OMP_INT128_SIZE.
7080 * libgomp_f.h.in (omp_check_defines): Check whether
7081 sizeof of determined Fortran kind and C typedef match.
7082 * omp_lib.f90.in: Add omp_depened_kind.
7083 * omp_lib.h.in: Likewise; fix omp_alloctrait_key_kind.
7084 * configure: Regenerate.
7085 * Makefile.in: Regenerate.
7086 * testsuite/Makefile.in: Regenerate.
7087
3ea9abca
GA
70882020-07-22 Tobias Burnus <tobias@codesourcery.com>
7089
7090 * testsuite/libgomp.c-c++-common/critical-hint-1.c: New; moved from
7091 gcc/testsuite/c-c++-common/gomp/.
7092 * testsuite/libgomp.c-c++-common/critical-hint-2.c: Likewise.
7093 * testsuite/libgomp.fortran/critical-hint-1.f90: New; moved
7094 from gcc/testsuite/gfortran.dg/gomp/.
7095 * testsuite/libgomp.fortran/critical-hint-2.f90: Likewise.
7096
70972020-07-22 Tobias Burnus <tobias@codesourcery.com>
7098
7099 * omp_lib.f90.in: Add omp_sync_hint_* and omp_sync_hint_kind.
7100 * omp_lib.h.in: Likewise.
7101
aeb34e15
GA
71022020-07-18 H.J. Lu <hjl.tools@gmail.com>
7103
7104 PR target/95620
7105 * testsuite/libgomp.c/pr95620.c: New test.
7106
96686b3f
GA
71072020-07-16 Julian Brown <julian@codesourcery.com>
7108 Thomas Schwinge <thomas@codesourcery.com>
7109
7110 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: New test.
7111 * testsuite/libgomp.oacc-fortran/attach-descriptor-2.f90: New test.
7112
fe8185b5
GA
71132020-07-15 Tobias Burnus <tobias@codesourcery.com>
7114
7115 * testsuite/libgomp.fortran/alloc-1.F90: Use c_size_t to
7116 avoid conversion on 32bit systems from 32bit to 64bit due
7117 to -fdefault-integer-8.
7118
71192020-07-15 Tobias Burnus <tobias@codesourcery.com>
7120
7121 * testsuite/libgomp.fortran/struct-elem-map-1.f90: Remove unused
7122 variables; add character(kind=4) tests; update TODO comment.
7123
71242020-07-15 Tobias Burnus <tobias@codesourcery.com>
7125
7126 * allocator.c: Add ialias for omp_init_allocator and
7127 omp_destroy_allocator.
7128 * configure.ac: Set INTPTR_T_KIND.
7129 * configure: Regenerate.
7130 * Makefile.in: Regenerate.
7131 * testsuite/Makefile.in: Regenerate.
7132 * fortran.c (omp_init_allocator_, omp_destroy_allocator_,
7133 omp_set_default_allocator_, omp_get_default_allocator_): New
7134 functions and ialias_redirect.
7135 * icv.c: Add ialias for omp_set_default_allocator and
7136 omp_get_default_allocator.
7137 * libgomp.map (OMP_5.0.1): Add omp_init_allocator_,
7138 omp_destroy_allocator_, omp_set_default_allocator_ and
7139 omp_get_default_allocator_.
7140 * omp_lib.f90.in: Add allocator traits parameters, declare
7141 allocator routines and add related kind parameters.
7142 * omp_lib.h.in: Likewise.
7143 * testsuite/libgomp.c-c++-common/alloc-2.c: Fix sizeof.
7144 * testsuite/libgomp.fortran/alloc-1.F90: New test.
7145 * testsuite/libgomp.fortran/alloc-2.F90: New test.
7146 * testsuite/libgomp.fortran/alloc-3.F: New test.
7147 * testsuite/libgomp.fortran/alloc-4.f90: New test.
7148 * testsuite/libgomp.fortran/alloc-5.f90: New test.
7149
8ca07a30
GA
71502020-07-14 Tom de Vries <tom@codesourcery.com>
7151 Cesar Philippidis <cesar@codesourcery.com>
7152 Thomas Schwinge <thomas@codesourcery.com>
7153 Kwok Cheung Yeung <kcy@codesourcery.com>
7154
7155 * oacc-init.c (acc_init_state_lock, acc_init_state, acc_init_thread):
7156 New variable.
7157 (acc_init_1): Set acc_init_thread to pthread_self (). Set
7158 acc_init_state to initializing at the start, and to initialized at the
7159 end.
7160 (self_initializing_p): New function.
7161 (acc_get_device_type): Return acc_device_none if called by thread that
7162 is currently executing acc_init_1.
7163 * libgomp.texi (acc_get_device_type): Update documentation.
7164 (Implementation Status and Implementation-Defined Behavior): Likewise.
7165 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-2.c: New.
7166
71672020-07-14 David Edelsohn <dje.gcc@gmail.com>
7168
7169 * config/t-aix: Set BITS from compiler cpp macro.
7170
71712020-07-14 Tobias Burnus <tobias@codesourcery.com>
7172
7173 * testsuite/libgomp.fortran/struct-elem-map-1.f90: New test.
7174
71752020-07-14 Tobias Burnus <tobias@codesourcery.com>
7176
7177 PR fortran/67311
7178 * testsuite/libgomp.fortran/target-map-1.f90: New test.
7179
71802020-07-14 Jakub Jelinek <jakub@redhat.com>
7181
7182 * testsuite/libgomp.c/loop-21.c: New test.
7183
ea69fcf9
GA
71842020-07-13 Julian Brown <julian@codesourcery.com>
7185 Thomas Schwinge <thomas@codesourcery.com>
7186
7187 * testsuite/libgomp.oacc-fortran/dynamic-pointer-1.f90: New test.
7188
86536295
GA
71892020-07-10 Julian Brown <julian@codesourcery.com>
7190 Thomas Schwinge <thomas@codesourcery.com>
7191
7192 * libgomp.h (struct splay_tree_key_s): Change virtual_refcount to
7193 dynamic_refcount.
7194 (struct gomp_device_descr): Remove GOMP_MAP_VARS_OPENACC_ENTER_DATA.
7195 * oacc-mem.c (acc_map_data): Substitute virtual_refcount for
7196 dynamic_refcount.
7197 (acc_unmap_data): Update comment.
7198 (goacc_map_var_existing, goacc_enter_datum): Adjust for
7199 dynamic_refcount semantics.
7200 (goacc_exit_datum_1, goacc_exit_datum): Re-add some error checking.
7201 Adjust for dynamic_refcount semantics.
7202 (goacc_enter_data_internal): Implement "present" case of dynamic
7203 memory-map handling here. Update "non-present" case for
7204 dynamic_refcount semantics.
7205 (goacc_exit_data_internal): Use goacc_exit_datum_1.
7206 * target.c (gomp_map_vars_internal): Remove
7207 GOMP_MAP_VARS_OPENACC_ENTER_DATA handling. Update for dynamic_refcount
7208 handling.
7209 (gomp_unmap_vars_internal): Remove virtual_refcount handling.
7210 (gomp_load_image_to_device): Substitute dynamic_refcount for
7211 virtual_refcount.
7212 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Remove XFAILs.
7213 * testsuite/libgomp.oacc-c-c++-common/refcounting-1.c: New test.
7214 * testsuite/libgomp.oacc-c-c++-common/refcounting-2.c: New test.
7215 * testsuite/libgomp.oacc-c-c++-common/struct-3-1-1.c: New test.
7216 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Remove XFAILs and
7217 trace output.
7218 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Remove
7219 trace output.
7220 * testsuite/libgomp.oacc-fortran/dynamic-incr-structural-1.f90: New
7221 test.
7222 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
7223 Remove stale comment.
7224 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Remove XFAILs.
7225 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
7226 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
7227 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
7228 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
7229 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Adjust XFAIL.
7230
72312020-07-10 Julian Brown <julian@codesourcery.com>
7232 Thomas Schwinge <thomas@codesourcery.com>
7233
7234 * oacc-mem.c (goacc_map_var_existing): New function.
7235 (goacc_enter_datum): Use above function.
7236 (goacc_exit_datum_1): New function.
7237 (goacc_exit_datum): Use above function.
7238
3f8ca9cb
GA
72392020-07-09 Julian Brown <julian@codesourcery.com>
7240 Thomas Schwinge <thomas@codesourcery.com>
7241
7242 PR middle-end/95270
7243 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: New test.
7244 * testsuite/libgomp.oacc-c-c++-common/pr95270-2.c: New test.
7245
72462020-07-09 Julian Brown <julian@codesourcery.com>
7247
7248 * oacc-mem.c (find_group_last): Group data-movement clauses
7249 (GOMP_MAP_TO_PSET, GOMP_MAP_TO, etc.) together with a subsequent
7250 GOMP_MAP_ATTACH. Allow standalone GOMP_MAP_ATTACH also.
7251
72522020-07-09 Jakub Jelinek <jakub@redhat.com>
7253
7254 * testsuite/libgomp.c/loop-19.c: New test.
7255 * testsuite/libgomp.c/loop-20.c: New test.
7256
72572020-07-09 Jakub Jelinek <jakub@redhat.com>
7258
7259 * omp.h.in (omp_alloctrait_value_t): Change omp_atv_default from
7260 2 to -1. Add omp_atv_serialized and define omp_atv_sequential using
7261 it. Remove __omp_alloctrait_value_max__.
7262 * allocator.c (omp_init_allocator): Handle omp_atv_default for
7263 omp_atk_alignment and omp_atk_pool_size.
7264
b991c834
GA
72652020-07-03 Thomas Schwinge <thomas@codesourcery.com>
7266
7267 * oacc-mem.c (goacc_exit_data_internal): Revert always-copyfrom
7268 behavior for 'GOMP_MAP_FORCE_FROM'.
7269 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Adjust XFAIL.
7270
72712020-07-03 Thomas Schwinge <thomas@codesourcery.com>
7272
7273 * oacc-mem.c (goacc_exit_data_internal): Remove
7274 'GOMP_MAP_ALWAYS_FROM' handling.
7275
46fbb6c6
GA
72762020-06-30 Thomas Schwinge <thomas@codesourcery.com>
7277
7278 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Replace fragile
7279 'scan-assembler' with 'scan-offload-rtl'.
7280 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
7281 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
7282 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: Likewise.
7283 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: Likewise.
7284
72852020-06-30 Thomas Schwinge <thomas@codesourcery.com>
7286
7287 * target.c (gomp_map_vars_existing): Assert 'kind !=
7288 GOMP_MAP_ATTACH'.
7289 (gomp_map_vars_internal): Clean up.
7290
9a33c41f
GA
72912020-06-27 Jakub Jelinek <jakub@redhat.com>
7292
7293 * testsuite/libgomp.c/loop-17.c: New test.
7294 * testsuite/libgomp.c/loop-18.c: New test.
7295
c9c05f73
GA
72962020-06-26 Marek Polacek <polacek@redhat.com>
7297
7298 * testsuite/libgomp.c++/atomic-3.C: Use -std=gnu++14.
7299
4543acc8
GA
73002020-06-23 Alexandre Oliva <oliva@adacore.com>
7301
7302 * testsuite/lib/libgomp.exp: Load gcc lib scanoffload.exp.
7303 * testsuite/lib/libgomp-dg.exp: Drop now-obsolete -save-temps.
7304
605a8f3b
GA
73052020-06-22 David Edelsohn <dje.gcc@gmail.com>
7306
7307 * Makefile.am: Use -include.
7308 * Makefile.in: Regenerate.
7309
f86e11a2
GA
73102020-06-21 David Edelsohn <dje.gcc@gmail.com>
7311
7312 * Makefile.am (tmake_file): Build and install AIX-style FAT libraries.
7313 * Makefile.in: Regenerate
7314 * configure.ac (tmake_file): Substitute.
7315 * configure: Regenerate.
7316 * configure.tgt (powerpc-ibm-aix*): Define tmake_file.
7317 * config/t-aix: New file.
7318
aff95ee7
GA
73192020-06-17 Thomas Schwinge <thomas@codesourcery.com>
7320
7321 PR lto/94848
7322 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: Add
7323 'dg-do run'.
7324
73252020-06-17 Andrew Stubbs <ams@codesourcery.com>
7326
7327 * plugin/plugin-gcn.c (init_environment_variables): Use ".so.1"
7328 variant for HSA_RUNTIME_LIB name.
7329 (find_executable_symbol_1): Delete.
7330 (find_executable_symbol): Delete.
7331 (init_kernel_properties): Add ".kd" suffix to symbol names.
7332 (find_load_offset): Delete.
7333 (create_and_finalize_hsa_program): Remove relocation handling.
7334
56638b9b
GA
73352020-06-16 Tobias Burnus <tobias@codesourcery.com>
7336
7337 * testsuite/libgomp.oacc-fortran/routine-10.f90: New test.
7338
2c455ae0
GA
73392020-06-08 Tobias Burnus <tobias@codesourcery.com>
7340
7341 PR lto/94848
7342 PR middle-end/95551
7343 * testsuite/libgomp.fortran/target-var.f90: New test.
7344
1a59f3db
GA
73452020-06-05 Thomas Schwinge <thomas@codesourcery.com>
7346 Julian Brown <julian@codesourcery.com>
7347
7348 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>: Explain
7349 special handling.
7350
73512020-06-05 Thomas Schwinge <thomas@codesourcery.com>
7352 Julian Brown <julian@codesourcery.com>
7353
7354 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
7355 Simplify.
7356
73572020-06-05 Julian Brown <julian@codesourcery.com>
7358
7359 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: New test.
7360 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: New test.
7361
3add3425
GA
73622020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7363
7364 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
7365 Evaluate 'copyfrom' individually for each entry.
7366 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: Update.
7367
73682020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7369
7370 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
7371 Evaluate 'finalize' individually for each entry.
7372 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: New file.
7373 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: Remove
7374 file.
7375
73762020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7377
7378 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: Fix 'sizeof'
7379 usage.
7380 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: Likewise.
7381
73822020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7383 Julian Brown <julian@codesourcery.com>
7384
7385 * oacc-mem.c (goacc_exit_datum): Repair 'is_tgt_unmapped'
7386 checking.
7387 (acc_unmap_data, goacc_exit_data_internal): Restore
7388 'is_tgt_unmapped' checking.
7389 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: New
7390 file.
7391 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust.
7392 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
7393 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
7394 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
7395 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
7396 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
7397
73982020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7399 Julian Brown <julian@codesourcery.com>
7400
7401 * oacc-mem.c (acc_unmap_data): Don't open-code 'gomp_remove_var'.
7402
74032020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7404
7405 PR libgomp/92854
7406 * oacc-mem.c (acc_unmap_data): Remove 'tgt' reference counting.
7407
74082020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7409
7410 PR libgomp/92854
7411 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: Extend some
7412 more.
7413
74142020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7415 Julian Brown <julian@codesourcery.com>
7416
7417 * oacc-mem.c (goacc_enter_datum): Use 'tgt' returned from
7418 'gomp_map_vars'.
3d3b561f 7419 (acc_map_data): Clean up accordingly.
3add3425
GA
7420
74212020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7422
7423 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: XFAIL behavior
7424 of over-eager 'finalize' clause.
7425 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: New
7426 file.
7427 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
7428 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
7429 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
7430 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
7431 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
7432 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-2.f90: Likewise.
7433 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
7434 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-2.f90: Likewise.
7435
74362020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7437
7438 * oacc-mem.c (goacc_exit_data_internal): Unlock on error path.
7439
74402020-06-04 Julian Brown <julian@codesourcery.com>
7441
7442 * oacc-mem.c (acc_attach_async): Add missing gomp_mutex_unlock on
7443 error path.
7444 (goacc_detach_internal): Likewise.
7445
74462020-06-04 Thomas Schwinge <thomas@codesourcery.com>
7447
7448 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Initialize before
7449 the checkpoint.
7450 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
7451 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
7452 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
7453 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
7454 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
7455
a9312a79
GA
74562020-06-02 Jakub Jelinek <jakub@redhat.com>
7457
7458 * allocator.c (omp_free): Fix up build if HAVE_SYNC_BUILTINS is not
7459 defined.
7460
945b53cc
GA
74612020-05-30 Jakub Jelinek <jakub@redhat.com>
7462
7463 * testsuite/libgomp.c-c++-common/alloc-4.c: New test.
7464
74652020-05-30 Jakub Jelinek <jakub@redhat.com>
7466
7467 * allocator.c (omp_alloc): For size == 0, return NULL early.
7468
885ef72f
GA
74692020-05-29 H.J. Lu <hjl.tools@gmail.com>
7470
7471 PR bootstrap/95413
7472 * configure: Regenerated.
7473
8df7ee67
TK
74742020-05-23 Thomas Koenig <tkoenig@gcc.gnu.org>
7475
7476 PR libfortran/95191
7477 * testsuite/libgomp.fortran/async_io_9.f90: New test.
7478
800bcc8c
JJ
74792020-05-19 Jakub Jelinek <jakub@redhat.com>
7480
7481 * omp.h.in (omp_uintptr_t): New typedef.
7482 (__GOMP_UINTPTR_T_ENUM): Define.
7483 (omp_memspace_handle_t, omp_allocator_handle_t, omp_alloctrait_key_t,
7484 omp_alloctrait_value_t, omp_alloctrait_t): New typedefs.
7485 (__GOMP_DEFAULT_NULL_ALLOCATOR): Define.
7486 (omp_init_allocator, omp_destroy_allocator, omp_set_default_allocator,
7487 omp_get_default_allocator, omp_alloc, omp_free): Declare.
7488 * libgomp.h (struct gomp_team_state): Add def_allocator field.
7489 (gomp_def_allocator): Declare.
7490 * libgomp.map (OMP_5.0.1): Export omp_set_default_allocator,
7491 omp_get_default_allocator, omp_init_allocator, omp_destroy_allocator,
7492 omp_alloc and omp_free.
7493 * team.c (gomp_team_start): Copy over ts.def_allocator.
7494 * env.c (gomp_def_allocator): New variable.
7495 (parse_wait_policy): Adjust function comment.
7496 (parse_allocator): New function.
7497 (handle_omp_display_env): Print OMP_ALLOCATOR.
7498 (initialize_env): Call parse_allocator.
7499 * Makefile.am (libgomp_la_SOURCES): Add allocator.c.
7500 * allocator.c: New file.
7501 * icv.c (omp_set_default_allocator, omp_get_default_allocator): New
7502 functions.
7503 * testsuite/libgomp.c-c++-common/alloc-1.c: New test.
7504 * testsuite/libgomp.c-c++-common/alloc-2.c: New test.
7505 * testsuite/libgomp.c-c++-common/alloc-3.c: New test.
7506 * Makefile.in: Regenerated.
7507
4c1a5d8b
L
75082020-05-15 H.J. Lu <hongjiu.lu@intel.com>
7509
7510 PR bootstrap/95147
7511 * configure: Regenerated.
7512
cdc34b50
TK
75132020-05-14 Thomas Koenig <tkoenig@gcc.gnu.org>
7514
7515 PR libfortran/95119
7516 * testsuite/libgomp.fortran/close_errors_1.f90: New test.
7517
75182020-05-14 H.J. Lu <hongjiu.lu@intel.com>
7519
7520 * configure: Regenerated.
7521
75222020-05-14 Jakub Jelinek <jakub@redhat.com>
7523
7524 * testsuite/libgomp.c-c++-common/target-40.c: New test.
7525
f884bef2
TB
75262020-05-13 Tobias Burnus <tobias@codesourcery.com>
7527
7528 PR fortran/94690
7529 * testsuite/libgomp.fortran/pr66199-3.f90: New.
7530 * testsuite/libgomp.fortran/pr66199-4.f90: New.
7531 * testsuite/libgomp.fortran/pr66199-5.f90: New.
7532 * testsuite/libgomp.fortran/pr66199-6.f90: New.
7533 * testsuite/libgomp.fortran/pr66199-7.f90: New.
7534 * testsuite/libgomp.fortran/pr66199-8.f90: New.
7535 * testsuite/libgomp.fortran/pr66199-9.f90: New.
7536
dc703151
JJ
75372020-05-12 Jakub Jelinek <jakub@redhat.com>
7538
7539 * testsuite/libgomp.c/target-39.c: New test.
7540
b9dc11b6
TS
75412020-04-29 Thomas Schwinge <thomas@codesourcery.com>
7542
a5d0bc12
TS
7543 * config/accel/openacc.f90 (acc_device_current): Set to '-1'.
7544 * openacc.f90 (acc_device_current): Likewise.
7545 * openacc.h (acc_device_current): Likewise.
7546 * openacc_lib.h (acc_device_current): Likewise.
7547
7f198924
TS
7548 PR target/94282
7549 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Remove
7550 'dg-allow-blank-lines-in-output'.
7551
4912a04f
TS
7552 * oacc-init.c (get_openacc_name): Handle 'gcn'.
7553 * testsuite/lib/libgomp.exp
7554 (offload_target_to_openacc_device_type) [amdgcn*]: Return
7555 'radeon'. Adjust all users.
7556 (check_effective_target_openacc_amdgcn_accel_present): Rename
7557 to...
7558 (check_effective_target_openacc_radeon_accel_present): ... this.
7559 Adjust all users.
7560 (check_effective_target_openacc_amdgcn_accel_selected): Rename to...
7561 (check_effective_target_openacc_radeon_accel_selected): ... this.
7562 Adjust all users.
7563
b9dc11b6
TS
7564 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Add
7565 'dg-do run'.
7566
966de09b
AS
75672020-04-23 Andrew Stubbs <ams@codesourcery.com>
7568
7569 PR other/94629
7570
7571 * plugin/plugin-gcn.c (init_hsa_context): Check return value from
7572 hsa_iterate_agents.
7573 (GOMP_OFFLOAD_init_device): Check return values from both calls to
7574 hsa_agent_iterate_regions.
7575
3f5d94c1
TS
75762020-04-20 Thomas Schwinge <thomas@codesourcery.com>
7577
7578 PR middle-end/94635
7579 * testsuite/libgomp.fortran/target-enter-data-2.F90: Add 'dg-do
7580 run'.
7581
85d8c05a
TB
75822020-04-20 Tobias Burnus <tobias@codesourcery.com>
7583
7584 PR middle-end/94120
7585 * testsuite/libgomp.oacc-c++/declare-pr94120.C: Fix 'declare copy(out)'
7586 test case.
7587
af557050
TB
75882020-04-17 Tobias Burnus <tobias@codesourcery.com>
7589
7590 PR middle-end/94635
7591 * testsuite/libgomp.fortran/target-enter-data-2.F90: New.
7592
af4c9257
TS
75932020-04-13 Thomas Schwinge <thomas@codesourcery.com>
7594
7595 PR libgomp/92843
7596 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
7597 Rename to...
7598 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1-lib.c:
7599 ... this.
7600 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
7601 Rename to...
7602 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1.c:
7603 ... this.
7604 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
7605 Rename to...
7606 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2-lib.c:
7607 ... this.
7608 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
7609 Rename to...
7610 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2.c:
7611 ... this.
7612 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
7613 Rename to...
7614 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3-lib.c:
7615 ... this.
7616 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
7617 Rename to...
7618 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3.c:
7619 ... this.
7620 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
7621 Rename to...
7622 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4-lib.c:
7623 ... this.
7624 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
7625 Rename to...
7626 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
7627 ... this.
7628 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
7629 Rename to...
7630 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5-lib.c:
7631 ... this.
7632 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
7633 Rename to...
7634 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5.c:
7635 ... this.
7636 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
7637 Rename to...
7638 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6-lib.c:
7639 ... this.
7640 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
7641 Rename to...
7642 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6.c:
7643 ... this.
7644 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
7645 Rename to...
7646 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7-lib.c:
7647 ... this.
7648 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
7649 Rename to...
7650 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7.c:
7651 ... this.
7652 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
7653 Rename to...
7654 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8-lib.c:
7655 ... this.
7656 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c::
7657 Rename to...
7658 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8.c:
7659 ... this.
7660
be9862dd
JB
76612020-04-10 Julian Brown <julian@codesourcery.com>
7662 Thomas Schwinge <thomas@codesourcery.com>
7663
7664 PR libgomp/92843
7665 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
7666 New file.
7667 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
7668 Likewise.
7669 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
7670 Likewise.
7671 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
7672 Likewise.
7673 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
7674 Likewise.
7675 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
7676 Likewise.
7677 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
7678 Likewise.
7679 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
7680 Likewise.
7681 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
7682 Likewise.
7683 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
7684 Likewise.
7685 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
7686 Likewise.
7687 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
7688 Likewise.
7689 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
7690 Likewise.
7691 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
7692 Likewise.
7693 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
7694 Likewise.
7695 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c:
7696 Likewise.
7697
6b816a5f
TS
76982020-04-10 Thomas Schwinge <thomas@codesourcery.com>
7699
7700 * testsuite/libgomp.fortran/target-enter-data-1.f90: Add 'dg-do
7701 run'.
7702
13e41d8b
TB
77032020-04-08 Tobias Burnus <tobias@codesourcery.com>
7704
7705 PR middle-end/94120
7706 * libgomp.oacc-c++/declare-pr94120.C: New.
7707
749bd22d
MR
77082020-04-06 Maciej W. Rozycki <macro@wdc.com>
7709
7710 * configure.ac: Add testsuite/libgomp-site-extra.exp to output
7711 files.
7712 * configure: Regenerate.
7713 * testsuite/libgomp-site-extra.exp.in: New file.
7714 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): Remove
7715 variable.
7716 * testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): New
7717 variable.
7718 * testsuite/Makefile.in: Regenerate.
7719
2b1e849b
TS
77202020-04-03 Thomas Schwinge <thomas@codesourcery.com>
7721
7722 PR tree-optimization/89713
7723 PR c/94392
7724 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Again expect
7725 'bar.sync'.
7726 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
7727
689418b9
TB
77282020-03-31 Tobias Burnus <tobias@codesourcery.com>
7729
7730 * target.c (GOMP_target_enter_exit_data): Handle PSET/MAP_POINTER.
7731 * testsuite/libgomp.fortran/target-enter-data-1.f90: New.
7732
c2211a60
TB
77332020-03-24 Tobias Burnus <tobias@codesourcery.com>
7734
7735 PR libgomp/81689
7736 * testsuite/libgomp.c/target-link-1.c: Remove xfail.
7737
4897bb00
TB
77382020-03-20 Tobias Burnus <tobias@codesourcery.com>
7739
7740 PR libgomp/94251
7741 * target.c (gomp_load_image_to_device): Fix link
7742 variable handling.
7743
02f7334a
JJ
77442020-03-19 Jakub Jelinek <jakub@redhat.com>
7745
7746 PR c++/93931
7747 * testsuite/libgomp.c++/pr93931.C: New test.
7748
bb83e069
TB
77492020-03-19 Tobias Burnus <tobias@codesourcery.com>
7750
7751 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Add
7752 dg-allow-blank-lines-in-output.
7753
26cbcfe5
TB
77542020-03-18 Julian Brown <julian@codesourcery.com>
7755 Tobias Burnus <tobias@codesourcery.com>
7756
7757 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Really make
7758 it work concurrently.
7759
4da92887
TB
77602020-03-18 Tobias Burnus <tobias@codesourcery.com>
7761
7762 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: Add
7763 #define DO_LONG_DOUBLE; set to 1, except for nvidia + gcn.
7764 * libgomp.oacc-c-c++-common/firstprivate-mappings-1.c: Likewise.
7765
9c3cdb43
JJ
77662020-03-14 Jakub Jelinek <jakub@redhat.com>
7767
7768 PR middle-end/93566
7769 * testsuite/libgomp.c/pr93566.c: New test.
7770
83d45e1d
FH
77712020-02-21 Frederik Harwath <frederik@codesourcery.com>
7772
7773 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Adapt to
7774 changes from 2020-02-19, i.e. use integer(c_size_t) instead of
7775 integer(acc_device_property) for the type of the return value of
7776 acc_get_property.
7777
8d1a1cb1
TB
77782020-02-19 Tobias Burnus <tobias@codesourcery.com>
7779
7780 * .gitattributes: New; whitespace handling for Fortran's openacc_lib.h.
7781 * config/accel/openacc.f90 (openacc_kinds): Add acc_device_current.
7782 (openacc_internal, acc_on_device_h): Fix argument name; minor cleanup.
7783 * libgomp.texi (Enabling OpenACC): No longer mark as experimental.
7784 (acc_set_device_num): Fix Fortran argument name, use same name for C.
7785 (acc_get_property): Update Fortran interface to post-OpenACC 3.0
7786 corrections; add note about the previous interface and named constant.
7787 (OpenACC library and environment variables): Fix two typos.
7788 * openacc.f90: Use for all procedures the argument names from the spec
7789 as for …_h they are user visible.
7790 (openacc_kinds): Rename acc_device_property to
7791 acc_device_property_kinds and change value to int32 ; and update users.
7792 Re-add acc_device_property for for backward compatibility.
7793 (acc_get_property_string_h): Clean up as acc_device_property_kind
7794 changed.
7795 (acc_get_property_h): Likewise and return c_size_t instead of
7796 acc_device_property.
7797 (openacc): Also export acc_device_property_kinds.
7798 (acc_async_test_h, acc_async_test_all_h, acc_on_device_h,
7799 acc_is_present_32_h, acc_is_present_64_h): Simplify logical-return-value
7800 handling; check against /= 0 instead of == 1 to match C.
7801 * openacc_lib.h: Use for all procedures the argument names from the spec
7802 as for …_h they are user visible. Place !GCC$ into the first column to
7803 be active also for fixed-form souce form.
7804 (acc_device_current, acc_device_property_kind, acc_device_property,
7805 acc_property_memory, acc_property_free_memory, acc_property_name,
7806 acc_property_vendor, acc_property_driver): New named constants.
7807 (acc_get_property, acc_get_property_string): New generic interface.
7808
2d9eb4e4
FH
78092020-02-13 Frederik Harwath <frederik@codesourcery.com>
7810
7811 PR libgomp/93481
7812 * plugin/plugin-nvptx.c: Remove GOMP_OFFLOAD_async_run stub.
7813 * target.c (gomp_load_plugin_for_device): Make "async_run" loading
7814 optional.
7815 (gomp_target_task_fn): Assert "devicep->async_run_func".
7816 (clear_unsupported_flags): New function to remove unsupported flags
7817 (right now only GOMP_TARGET_FLAG_NOWAIT) that can be be ignored.
7818 (GOMP_target_ext): Apply clear_unsupported_flags to flags.
7819 * testsuite/libgomp.c/target-33.c:
7820 Remove xfail for offload_target_nvptx.
7821 * testsuite/libgomp.c/target-34.c: Likewise.
fd789c81
FH
7822
78232020-02-10 Frederik Harwath <frederik@codesourcery.com>
7824
7825 * testsuite/libgomp.c/target-33.c: Add xfail for execution on
7826 offload_target_nvptx, cf. https://gcc.gnu.org/PR81688.
7827 * testsuite/libgomp.c/target-34.c: Likewise.
7828 * testsuite/libgomp.c/target-link-1.c: Add xfail for
7829 offload_target_nvptx, cf. https://gcc.gnu.org/PR81689.
7830
9bc3b95d
JJ
78312020-02-09 Jakub Jelinek <jakub@redhat.com>
7832
7833 * testsuite/libgomp.c/target-38.c: New test.
7834
cb3f0648
JJ
78352020-02-06 Jakub Jelinek <jakub@redhat.com>
7836
7837 PR libgomp/93515
7838 * testsuite/libgomp.c-c++-common/pr93515.c: New test.
7839
91bc3c98
TB
78402020-02-05 Tobias Burnus <tobias@codesourcery.com>
7841
7842 * testsuite/lib/libgomp.exp
7843 (check_effective_target_offload_target_nvptx): Pass flags as 'options'
7844 and not as 'source' argument to libgomp_target_compile.
7845
591f869a
AS
78462020-02-03 Andrew Stubbs <ams@codesourcery.com>
7847
7848 * plugin/plugin-gcn.c (EF_AMDGPU_MACH_AMDGCN_GFX801): Remove.
7849 (gcn_gfx801_s): Remove.
7850 (isa_hsa_name): Remove gfx801.
7851 (isa_gcc_name): Remove gfx801/carizzo.
7852 (isa_code): Remove gfx801.
7853
e464fc90
TB
78542020-02-03 Julian Brown <julian@codesourcery.com>
7855 Tobias Burnus <tobias@codesourcery.com>
7856
7857 * libgomp.texi (OpenACC Runtime Library Routines): Document *_async
7858 and *_finalize variants; document acc_attach and acc_detach; update
7859 references from OpenACC 2.0 to 2.6.
7860 * openacc.f90 (openacc_version): Update to 201711.
7861 * openacc_lib.h (openacc_version): Update to 201711.
7862 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Update expected
7863 openacc_version to 201711.
7864 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
7865
5a28e272
KCY
78662020-01-31 Kwok Cheung Yeung <kcy@codesourcery.com>
7867
7868 * plugin/plugin-gcn.c (struct hsa_kernel_description): Add sgpr_count
7869 and vgpr_count fields.
7870 (struct kernel_info): Add a field for a hsa_kernel_description.
7871 (run_kernel): Reduce the number of threads/workers if the requested
7872 number would require too many VGPRs.
7873 (init_basic_kernel_info): Initialize description field with
7874 the hsa_kernel_description entry for the kernel.
7875
5ab5d81b
TB
78762020-01-29 Tobias Burnus <tobias@codesourcery.com>
7877
7878 PR bootstrap/93409
7879 * plugin/configfrag.ac (enable_offload_targets): Skip
7880 HSA and GCN plugin besides -m32 also for -mx32.
7881 * configure: Regenerate.
7882
989a5fb3
FH
78832020-01-29 Frederik Harwath <frederik@codesourcery.com>
7884
7885 * oacc-init.c (name_of_acc_device_t): Handle acc_device_radeon.
2e5ea579
FH
7886
78872020-01-29 Frederik Harwath <frederik@codesourcery.com>
7888
7889 * plugin-gcn.c (struct agent_info): Add fields "name" and
7890 "vendor_name" ...
7891 (GOMP_OFFLOAD_init_device): ... and init from here.
7892 (struct hsa_context_info): Add field "driver_version_s" ...
7893 (init_hsa_contest): ... and init from here.
7894 (GOMP_OFFLOAD_openacc_get_property): Replace stub with a proper
7895 implementation.
7896 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
7897 Enable test execution for amdgcn and host offloading targets.
7898 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Likewise.
7899 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
7900 (expect_device_properties): Split function into ...
7901 (expect_device_string_properties): ... this new function ...
7902 (expect_device_memory): ... and this new function.
7903 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c:
7904 Add test.
7905
278c3214
JB
79062020-01-28 Julian Brown <julian@codesourcery.com>
7907
7908 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: Remove test from here.
7909 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: Don't use mixed
7910 component/non-component variable refs in a single directive.
7911 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: Likewise.
7912
e8e66971
MR
79132020-01-24 Maciej W. Rozycki <macro@wdc.com>
7914
7915 * configure.ac: Handle `--with-toolexeclibdir='.
7916 * Makefile.in: Regenerate.
7917 * aclocal.m4: Regenerate.
7918 * configure: Regenerate.
7919 * testsuite/Makefile.in: Regenerate.
7920
9e424d97
FH
79212020-01-24 Frederik Harwath <frederik@codesourcery.com>
7922
7923 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
7924 (expect_device_properties): Remove "expected_free_mem" argument,
7925 change "expected_total_mem" argument type to size_t;
7926 change types of acc_get_property results to size_t,
7927 adapt format strings.
7928 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
7929 Use %zu instead of %zd to print size_t values.
7930 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: Adapt and
7931 rename to ...
7932 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c: ... this.
7933 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: Adapt and
7934 rename to ...
7935 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-host.c: ... this.
7936
14e5e746
AS
79372020-01-23 Andrew Stubbs <ams@codesourcery.com>
7938
7939 * plugin/plugin-gcn.c (parse_target_attributes): Use correct mask for
7940 the device id.
7941
09e0ad62
AS
79422020-01-20 Andrew Stubbs <ams@codesourcery.com>
7943
7944 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Skip test on gcn.
7945 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c (main):
7946 Adjust test dimensions for amdgcn.
7947 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c (main): Adjust
7948 gang/worker/vector expectations dynamically.
7949 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c
7950 (main): Likewise.
7951 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c (main): Likewise.
7952 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c (main): Likewise.
7953 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c (main): Likewise.
7954 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c (main): Likewise.
7955 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c (main): Likewise.
7956 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c (main): Likewise.
7957 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c (main): Likewise.
7958 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c (main): Likewise.
7959 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
7960 (acc_gang): Recognise acc_device_radeon.
7961 (acc_worker): Likewise.
7962 (acc_vector): Likewise.
7963 (main): Set expectations for amdgcn.
7964 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c
7965 (main): Adjust gang/worker/vector expectations dynamically.
7966 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c (main): Likewise.
7967 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c (main): Likewise.
7968 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c (main): Likewise.
7969 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Set expectations
7970 for amdgcn.
7971
6687d13a
AS
79722020-01-17 Andrew Stubbs <ams@codesourcery.com>
7973
7974 * config/accel/openacc.f90 (openacc_kinds): Rename acc_device_gcn to
7975 acc_device_radeon.
7976 (openacc): Likewise.
7977 * openacc.f90 (openacc_kinds): Likewise.
7978 (openacc): Likewise.
7979 * openacc.h (acc_device_t): Likewise.
7980 * openacc_lib.h: Likewise.
7981 * testsuite/lib/libgomp.exp
7982 (check_effective_target_openacc_amdgcn_accel_present): Likewise.
7983 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
7984 (cb_compute_construct_end): Likewise.
7985 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
7986 (cb_enqueue_launch_start): Likewise.
7987 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
7988 (cb_enter_data_end): Likewise.
7989 (cb_exit_data_start): Likewise.
7990 (cb_exit_data_end): Likewise.
7991 (cb_compute_construct_end): Likewise.
7992 (cb_enqueue_launch_start): Likewise.
7993 (cb_enqueue_launch_end): Likewise.
7994 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c
7995 (main): Likewise.
7996
b3b75e66
TS
79972020-01-10 Thomas Schwinge <thomas@codesourcery.com>
7998
6fc0385c
TS
7999 * libgomp-plugin.h (enum goacc_property): New. Adjust all users
8000 to use this instead of 'enum gomp_device_property'.
8001 (GOMP_OFFLOAD_get_property): Rename to...
8002 (GOMP_OFFLOAD_openacc_get_property): ... this. Adjust all users.
8003 * libgomp.h (struct gomp_device_descr): Move
8004 'GOMP_OFFLOAD_openacc_get_property'...
8005 (struct acc_dispatch_t): ... here. Adjust all users.
8006 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): Remove.
8007
b3b75e66
TS
8008 * target.c (gomp_map_vars_internal)
8009 <GOMP_MAP_USE_DEVICE_PTR_IF_PRESENT>: Clean up/elaborate code
8010 paths.
8011
91df4397
JJ
80122020-01-10 Jakub Jelinek <jakub@redhat.com>
8013
8014 PR libgomp/93219
8015 * libgomp.h (gomp_print_string): Change return type from void to int.
8016 * affinity-fmt.c (gomp_print_string): Likewise. Return true if
8017 not all characters have been written.
8018
df2c0d36
TB
80192020-01-08 Tobias Burnus <tobias@codesourcery.com>
8020
8021 * libgomp.texi: Fix typos, use https.
8022
f760c0c7
TB
80232020-01-03 Tobias Burnus <tobias@codesourcery.com>
8024
8025 * testsuite/libgomp.fortran/optional-map.f90: Add test for
8026 unallocated/disassociated actual arguments to nonallocatable/nonpointer
8027 dummy arguments; those are/shall be regarded as absent arguments.
8028 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
8029 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: New.
8030
7e7065b9
JJ
80312020-01-01 Jakub Jelinek <jakub@redhat.com>
8032
8d9254fc
JJ
8033 Update copyright years.
8034
7e7065b9
JJ
8035 * libgomp.texi: Bump @copying's copyright year.
8036
2c829799
AM
80372019-12-31 Ayush Mittal <ayush.m@samsung.com>
8038
8039 PR libgomp/93065
8040 * oacc-init.c (goacc_runtime_deinitialize): New function.
8041
e9dcb75e
JJ
80422019-12-28 Jakub Jelinek <jakub@redhat.com>
8043
8044 PR bootstrap/93074
8045 * plugin/cuda/cuda.h (cuDeviceGetName, cuDriverGetVersion): Declare.
8046 (cuDeviceTotalMem, cuMemGetInfo): Likewise. Define to *_v2.
8047
6c84c8bf
MR
80482019-12-22 Maciej W. Rozycki <macro@codesourcery.com>
8049 Frederik Harwath <frederik@codesourcery.com>
8050 Thomas Schwinge <tschwinge@codesourcery.com>
8051
8052 * libgomp.h (gomp_device_descr): Add `get_property_func' member.
8053 * libgomp-plugin.h (gomp_device_property_value): New union.
8054 (gomp_device_property_value): New prototype.
8055 * openacc.h (acc_device_t): Add `acc_device_current' enumeration
8056 constant.
8057 (acc_device_property_t): New enum.
8058 (acc_get_property, acc_get_property_string): New prototypes.
8059 * oacc-init.c (acc_get_device_type): Also assert that result
8060 is not `acc_device_current'.
8061 (get_property_any, acc_get_property, acc_get_property_string):
8062 New functions.
8063 * openacc.f90 (openacc_kinds): Add `acc_device_current' and
8064 `acc_property_memory', `acc_property_free_memory',
8065 `acc_property_name', `acc_property_vendor' and
8066 `acc_property_driver' constants. Add `acc_device_property' data
8067 type.
8068 (openacc_internal): Add `acc_get_property' and
8069 `acc_get_property_string' interfaces. Add `acc_get_property_h',
8070 `acc_get_property_string_h', `acc_get_property_l' and
8071 `acc_get_property_string_l'.
8072 * oacc-host.c (host_get_property): New function.
8073 (host_dispatch): Wire it.
8074 * target.c (gomp_load_plugin_for_device): Handle `get_property'.
8075 * libgomp.map (OACC_2.6): Add `acc_get_property', `acc_get_property_h_',
8076 `acc_get_property_string' and `acc_get_property_string_h_' symbols.
8077 * libgomp.texi (OpenACC Runtime Library Routines): Add
8078 `acc_get_property'.
8079 (acc_get_property): New node.
8080 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_property): New
8081 function (stub).
8082 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): New function.
8083 * plugin/plugin-nvptx.c (CUDA_CALLS): Add `cuDeviceGetName',
8084 `cuDeviceTotalMem', `cuDriverGetVersion' and `cuMemGetInfo'
8085 calls.
8086 (GOMP_OFFLOAD_get_property): New function.
8087 (struct ptx_device): Add new field "name".
8088 (cuda_driver_version_s): Add new static variable ...
8089 (nvptx_init): ... and init from here.
8090
8091 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c: New test.
8092 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: New test.
8093 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: New test.
8094 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c: New file
8095 with test helper functions.
8096
8097 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: New test.
8098
c8e759b4
MR
80992019-12-22 Maciej W. Rozycki <macro@wdc.com>
8100
8101 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): New
8102 variable.
8103
b092fb3b
TS
81042019-12-21 Thomas Schwinge <thomas@codesourcery.com>
8105
8106 * target.c (gomp_map_vars_internal): Restore 'omp declare target
8107 link' handling.
8108
9be3ac5d
JB
81092019-12-19 Julian Brown <julian@codesourcery.com>
8110
8111 * testsuite/libgomp.oacc-fortran/class-ptr-param.f95: New test.
8112 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: New test.
8113 * testsuite/libgomp.oacc-fortran/classtypes-2.f95: New test.
8114
02817027
JB
81152019-12-19 Julian Brown <julian@codesourcery.com>
8116 Cesar Philippidis <cesar@codesourcery.com>
8117
8118 * testsuite/libgomp.oacc-fortran/deep-copy-1.f90: New test.
8119 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: New test.
8120 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: New test.
8121 * testsuite/libgomp.oacc-fortran/deep-copy-4.f90: New test.
8122 * testsuite/libgomp.oacc-fortran/deep-copy-5.f90: New test.
8123 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: New test.
8124 * testsuite/libgomp.oacc-fortran/deep-copy-7.f90: New test.
8125 * testsuite/libgomp.oacc-fortran/deep-copy-8.f90: New test.
8126 * testsuite/libgomp.oacc-fortran/derived-type-1.f90: New test.
8127 * testsuite/libgomp.oacc-fortran/derivedtype-1.f95: New test.
8128 * testsuite/libgomp.oacc-fortran/derivedtype-2.f95: New test.
8129 * testsuite/libgomp.oacc-fortran/multidim-slice.f95: New test.
8130 * testsuite/libgomp.oacc-fortran/update-2.f90: New test.
8131
c2eb021f
JB
81322019-12-19 Julian Brown <julian@codesourcery.com>
8133
8134 * testsuite/libgomp.oacc-c-c++-common/deep-copy-1.c: New test.
8135 * testsuite/libgomp.oacc-c-c++-common/deep-copy-2.c: New test.
8136 * testsuite/libgomp.oacc-c-c++-common/deep-copy-4.c: New test.
8137 * testsuite/libgomp.oacc-c-c++-common/deep-copy-6.c: New test.
8138 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: New test.
8139 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: New test.
8140 * testsuite/libgomp.oacc-c-c++-common/deep-copy-9.c: New test.
8141 * testsuite/libgomp.oacc-c-c++-common/deep-copy-10.c: New test.
8142 * testsuite/libgomp.oacc-c-c++-common/deep-copy-11.c: New test.
8143 * testsuite/libgomp.oacc-c-c++-common/deep-copy-14.c: New test.
8144 * testsuite/libgomp.oacc-c++/deep-copy-12.C: New test.
8145 * testsuite/libgomp.oacc-c++/deep-copy-13.C: New test.
8146
8e7e71ff
JB
81472019-12-19 Julian Brown <julian@codesourcery.com>
8148
8149 * libgomp.h (struct target_var_desc): Add do_detach flag.
8150 * oacc-init.c (acc_shutdown_1): Free aux block if present.
8151 * oacc-mem.c (find_group_last): Add SIZES parameter. Support
8152 struct components. Tidy up and add some new checks.
8153 (goacc_enter_data_internal): Update call to find_group_last.
8154 (goacc_exit_data_internal): Support detach operations and
8155 GOMP_MAP_STRUCT.
8156 (GOACC_enter_exit_data): Handle initial GOMP_MAP_STRUCT or
8157 GOMP_MAP_FORCE_PRESENT in finalization detection code. Handle
8158 attach/detach in enter/exit data detection code.
8159 * target.c (gomp_map_vars_existing): Initialise do_detach field of
8160 tgt_var_desc.
8161 (gomp_map_vars_internal): Support attach.
8162 (gomp_unmap_vars_internal): Support detach.
8163
5d5be7bf
JB
81642019-12-19 Julian Brown <julian@codesourcery.com>
8165 Thomas Schwinge <thomas@codesourcery.com>
8166
8167 * libgomp.h (struct splay_tree_aux): Add attach_count field.
8168 (gomp_attach_pointer, gomp_detach_pointer): Add prototypes.
8169 * libgomp.map (OACC_2.6): New section. Add acc_attach,
8170 acc_attach_async, acc_detach, acc_detach_async, acc_detach_finalize,
8171 acc_detach_finalize_async.
8172 * oacc-mem.c (acc_attach_async, acc_attach, goacc_detach_internal,
8173 acc_detach, acc_detach_async, acc_detach_finalize,
8174 acc_detach_finalize_async): New functions.
8175 * openacc.h (acc_attach, acc_attach_async, acc_detach,
8176 (acc_detach_async, acc_detach_finalize, acc_detach_finalize_async): Add
8177 prototypes.
8178 * target.c (gomp_attach_pointer, gomp_detach_pointer): New functions.
8179 (gomp_remove_var_internal): Free attachment counts if present.
8180 * testsuite/libgomp.oacc-c-c++-common/deep-copy-3.c: New test.
8181 * testsuite/libgomp.oacc-c-c++-common/deep-copy-5.c: New test.
8182
5bcd470b
JB
81832019-12-19 Julian Brown <julian@codesourcery.com>
8184 Cesar Philippidis <cesar@codesourcery.com>
8185
8186 * libgomp.h (gomp_map_val): Add prototype.
8187 * oacc-parallel.c (GOACC_parallel_keyed): Use gomp_map_val instead of
8188 open-coding device-address calculation.
8189 * target.c (gomp_map_val): Make global. Use OFFSET_POINTER in
8190 non-present case.
8191
378da98f
JB
81922019-12-19 Julian Brown <julian@codesourcery.com>
8193
8194 * libgomp.h (struct splay_tree_key_s): Substitute dynamic_refcount
8195 field for virtual_refcount.
8196 (enum gomp_map_vars_kind): Add GOMP_MAP_VARS_OPENACC_ENTER_DATA.
8197 (gomp_free_memmap): Remove prototype.
8198 * oacc-init.c (acc_shutdown_1): Iteratively call gomp_remove_var
8199 instead of calling gomp_free_memmap.
8200 * oacc-mem.c (acc_map_data): Use virtual_refcount instead of
8201 dynamic_refcount.
8202 (acc_unmap_data): Open code instead of forcing target_mem_desc's
8203 to_free field to NULL then calling gomp_unmap_vars. Handle
8204 REFCOUNT_INFINITY on target blocks.
8205 (goacc_enter_data): Rename to...
8206 (goacc_enter_datum): ...this. Remove MAPNUM parameter and special
8207 handling for mapping groups. Use virtual_refcount instead of
8208 dynamic_refcount. Use GOMP_MAP_VARS_OPENACC_ENTER_DATA for
8209 map_map_vars_async call. Re-do lookup for target pointer return value.
8210 (acc_create, acc_create_async, acc_copyin, acc_copyin_async): Call
8211 renamed goacc_enter_datum function.
8212 (goacc_exit_data): Rename to...
8213 (goacc_exit_datum): ...this. Update for virtual_refcount semantics.
8214 (acc_delete, acc_delete_async, acc_delete_finalize,
8215 acc_delete_finalize_async, acc_copyout, acc_copyout_async,
8216 acc_copyout_finalize, acc_copyout_finalize_async): Call renamed
8217 goacc_exit_datum function.
8218 (gomp_acc_remove_pointer, find_pointer): Remove functions.
8219 (find_group_last, goacc_enter_data_internal, goacc_exit_data_internal):
8220 New functions.
8221 (GOACC_enter_exit_data): Use goacc_enter_data_internal and
8222 goacc_exit_data_internal helper functions.
8223 * target.c (gomp_map_vars_internal): Handle
8224 GOMP_MAP_VARS_OPENACC_ENTER_DATA. Update for virtual_refcount
8225 semantics.
8226 (gomp_unmap_vars_internal): Update for virtual_refcount semantics.
8227 (gomp_load_image_to_device, omp_target_associate_ptr): Zero-initialise
8228 virtual_refcount field instead of dynamic_refcount.
8229 (gomp_free_memmap): Remove function.
8230 * testsuite/libgomp.oacc-c-c++-common/unmap-infinity-1.c: New test.
8231 * testsuite/libgomp.c-c++-common/unmap-infinity-2.c: New test.
8232 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Add XFAIL.
8233
2a656a93
JB
82342019-12-19 Julian Brown <julian@codesourcery.com>
8235 Thomas Schwinge <thomas@codesourcery.com>
8236
8237 * libgomp.h (struct splay_tree_aux): New.
8238 (struct splay_tree_key_s): Replace link_key field with aux pointer.
8239 * target.c (gomp_map_vars_internal): Adjust for link_key being moved
8240 to aux struct.
8241 (gomp_remove_var_internal): Free aux block if present.
8242 (gomp_load_image_to_device): Zero-initialise aux field instead of
8243 link_key field.
8244 (omp_target_associate_pointer): Zero-initialise aux field.
8245
601399c0
JJ
82462019-12-18 Jakub Jelinek <jakub@redhat.com>
8247
8248 PR middle-end/86416
8249 * testsuite/libgomp.c/pr86416-1.c (main): Use L suffixes rather than
8250 q or none.
8251 * testsuite/libgomp.c/pr86416-2.c (main): Use Q suffixes rather than
8252 L or none.
8253
a6163563
JB
82542019-12-19 Julian Brown <julian@codesourcery.com>
8255 Maciej W. Rozycki <macro@codesourcery.com>
8256 Tobias Burnus <tobias@codesourcery.com>
8257 Thomas Schwinge <thomas@codesourcery.com>
8258
8259 * target.c (gomp_map_vars_async): Support GOMP_MAP_NO_ALLOC.
8260 * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: New test.
8261 * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: New test.
8262 * testsuite/libgomp.oacc-c-c++-common/no_create-3.c: New test.
8263 * testsuite/libgomp.oacc-c-c++-common/no_create-4.c: New test.
8264 * testsuite/libgomp.oacc-c-c++-common/no_create-5.c: New test.
8265 * testsuite/libgomp.oacc-fortran/no_create-1.f90: New test.
8266 * testsuite/libgomp.oacc-fortran/no_create-2.f90: New test.
8267 * testsuite/libgomp.oacc-fortran/no_create-3.F90: New test.
8268
6278b549
TS
82692019-12-18 Thomas Schwinge <thomas@codesourcery.com>
8270
77ce5555
TS
8271 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
8272 called...
8273 (goacc_insert_pointer): ... from here, "present" case.
8274 (goacc_insert_pointer): Inline function into...
8275 (GOACC_enter_exit_data): ... here, and simplify.
8276
9444a299
TS
8277 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
8278 called...
8279 (goacc_insert_pointer): ... from here, "not present" case.
8280
5031b619
TS
8281 * oacc-mem.c (goacc_remove_pointer): Refactor interface. Adjust
8282 all users.
8283
1a79b578
TS
8284 * oacc-mem.c (GOACC_enter_exit_data): Refactor code to call
8285 'goacc_enter_data', 'goacc_exit_data'.
8286
34cfe31e
TS
8287 * oacc-mem.c (delete_copyout): Refactor into...
8288 (goacc_exit_data): ... this. Adjust all users.
8289
aaf0e9d7
TS
8290 * oacc-mem.c (present_create_copy): Refactor into...
8291 (goacc_enter_data): ... this. Adjust all users.
8292
83d1d065
TS
8293 * target.c (gomp_unmap_vars_internal): Add a safeguard to
8294 'gomp_remove_var'.
8295
cc3f11f5
TS
8296 * target.c (gomp_to_device_kind_p): Handle 'GOMP_MAP_FORCE_FROM'
8297 like 'GOMP_MAP_FROM'.
8298
ddb25eb9
TS
8299 PR libgomp/92726
8300 PR libgomp/92970
8301 PR libgomp/92984
8302 * oacc-mem.c (delete_copyout): No-op behavior if 'lookup_host'
8303 fails.
8304 (GOACC_enter_exit_data): Simplify accordingly.
8305 * testsuite/libgomp.oacc-c-c++-common/pr92970-1.c: New file,
8306 subsuming...
8307 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: ... this file...
8308 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: ..., and this
8309 file.
8310 * testsuite/libgomp.oacc-c-c++-common/pr92984-1.c: New file,
8311 subsuming...
8312 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: ... this file...
8313 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: ..., and this
8314 file.
8315 * testsuite/libgomp.oacc-c-c++-common/pr92726-1.c: New file,
8316 subsuming...
8317 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: ... this file.
8318
32128577
TS
8319 * oacc-mem.c (GOACC_enter_exit_data): Simplify 'exit data'
8320 'finalize' handling.
8321
ba40277f
TS
8322 PR libgomp/92848
8323 * oacc-mem.c (acc_map_data, present_create_copy)
8324 (goacc_insert_pointer): Use 'GOMP_MAP_VARS_ENTER_DATA'.
8325 (acc_unmap_data, delete_copyout, goacc_remove_pointer): Adjust.
8326 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Remove.
8327 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-a.c: New file
8328 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-p.c: Likewise.
8329 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-a.c: Likewise.
8330 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-p.c: Likewise.
8331 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
8332 Remove "XFAIL"s.
8333
6278b549
TS
8334 * target.c (gomp_unmap_tgt): Make it 'static'.
8335 * libgomp.h (gomp_unmap_tgt): Remove.
8336
c80c9e26
TB
83372019-12-18 Tobias Burnus <tobias@codesourcery.com>
8338
8339 PR middle-end/86416
8340 * testsuite/libgomp.c/pr86416-1.c: New.
8341 * testsuite/libgomp.c/pr86416-2.c: New.
8342
0b8499a4
TB
83432019-12-17 Tobias Burnus <tobias@codesourcery.com>
8344
8345 * config/accel/openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark
8346 all symbols as public except for the 'use …, only' imported symbol,
8347 which is private.
8348 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
8349 all symbols from module openacc_kinds as PUBLIC
8350 * openacc.f90: Add comment with crossref to that file and openmp_lib.h;
8351 fix comment typo.
8352 * openacc_lib.h (acc_device_gcn): Add this PARAMETER.
8353
1cbd94e8
JB
83542019-12-13 Julian Brown <julian@codesourcery.com>
8355
8356 PR libgomp/92881
8357
8358 * libgomp.h (gomp_remove_var_async): Add prototype.
8359 * oacc-mem.c (delete_copyout): Call gomp_remove_var_async instead of
8360 gomp_remove_var.
8361 * target.c (gomp_unref_tgt): Change return type to bool, indicating
8362 whether target_mem_desc was unmapped.
8363 (gomp_unref_tgt_void): New.
8364 (gomp_remove_var): Reimplement in terms of...
8365 (gomp_remove_var_internal): ...this new helper function.
8366 (gomp_remove_var_async): New, implemented using above helper function.
8367 (gomp_unmap_vars_internal): Use gomp_unref_tgt_void instead of
8368 gomp_unref_tgt.
8369
26b74ed0
AS
83702019-12-13 Andrew Stubbs <ams@codesourcery.com>
8371
8372 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Handle gcn.
8373 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
8374 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c: Likewise.
8375 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Likewise.
8376 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c:
8377 Likewise.
8378 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Disable on GCN.
8379 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Likewise.
8380
7858bb96
TB
83812019-12-13 Tobias Burnus <tobias@codesourcery.com>
8382
8383 * openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark all symbols
8384 as public except for the 'use …, only' imported symbol, which is
8385 private.
8386 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
8387 all symbols from module openacc_kinds as PUBLIC; add missing PUBLIC
8388 attributes for acc_copyout_finalize and acc_delete_finalize.
8389
f8ac7d8f
JJ
83902019-12-11 Jakub Jelinek <jakub@redhat.com>
8391
8392 PR fortran/92899
8393 * testsuite/libgomp.fortran/atomic1.f90: New test.
8394
3d1b5e71
TS
83952019-12-11 Thomas Schwinge <thomas@codesourcery.com>
8396
d6e8c01c
TS
8397 PR libgomp/92843
8398 * oacc-mem.c (present_create_copy, delete_copyout): Fix dynamic
8399 reference counting for structured 'REFCOUNT_INFINITY'. Add some
8400 assertions.
8401 (goacc_insert_pointer, goacc_remove_pointer): Adjust accordingly.
8402 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: New file.
8403 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Fix OpenACC.
8404 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
8405 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
8406
57963e39
TS
8407 * oacc-parallel.c (find_pointer, GOACC_enter_exit_data): Move...
8408 * oacc-mem.c: ... here.
8409 (gomp_acc_insert_pointer, gomp_acc_remove_pointer): Rename to
8410 'goacc_insert_pointer', 'goacc_remove_pointer', and make 'static'.
8411 * libgomp.h (gomp_acc_insert_pointer, gomp_acc_remove_pointer):
8412 Remove.
8413 * libgomp_g.h: Update.
8414
c5578b56
TS
8415 * oacc-parallel.c (GOACC_wait, goacc_wait): Move...
8416 * oacc-async.c: ... here.
8417 * oacc-int.h (goacc_wait): Declare.
8418 * libgomp_g.h: Update
8419
3d1b5e71
TS
8420 PR libgomp/92854
8421 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-1.c:
8422 New file.
8423 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-2.c:
8424 Likewise.
8425 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-3.c:
8426 Likewise.
8427 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-1.c:
8428 Likewise.
8429 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-2.c:
8430 Likewise.
8431 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-3.c:
8432 Likewise.
8433
5e939438
TS
84342019-12-11 Thomas Schwinge <thomas@codesourcery.com>
8435 Julian Brown <julian@codesourcery.com>
8436
8437 * target.c (gomp_load_image_to_device, omp_target_associate_ptr):
8438 Initialize 'dynamic_refcount' whenever we initialize 'refcount'.
8439
93d90219
TB
84402019-12-11 Tobias Burnus <tobias@codesourcery.com>
8441
8442 * omp_lib.h.in: Fix spelling of function declaration
8443 omp_get_cancell(l)ation.
8444 * libgomp.texi (acc_is_present, acc_async_test, acc_async_test_all):
8445 Fix typos.
8446 * env.c: Fix comment typos.
8447 * oacc-host.c: Likewise.
8448 * ordered.c: Likewise.
8449 * task.c: Likewise.
8450 * team.c: Likewise.
8451 * config/gcn/task.c: Likewise.
8452 * config/gcn/team.c: Likewise.
8453 * config/nvptx/task.c: Likewise.
8454 * config/nvptx/team.c: Likewise.
8455 * plugin/plugin-gcn.c: Likewise.
8456 * testsuite/libgomp.fortran/jacobi.f: Likewise.
8457 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
8458 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: Likewise.
8459
a0221aee
TB
84602019-12-11 Tobias Burnus <tobias@codesourcery.com>
8461
8462 * testsuite/libgomp.oacc-fortran/optional-cache.f95: Add 'dg-do run'.
8463 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Remove
8464 unnecessary 'dg-additional-options "-w"'.
8465
47afc7b4
TS
84662019-12-09 Thomas Schwinge <thomas@codesourcery.com>
8467 Julian Brown <julian@codesourcery.com>
8468
8469 PR libgomp/92116
8470 PR libgomp/92877
8471
8472 * oacc-mem.c (lookup_dev): Reimplement. Adjust all users.
8473 * libgomp.h (struct acc_dispatch_t): Remove 'data_environ' member.
8474 Adjust all users.
8475 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
8476 Remove XFAIL.
8477 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
8478 Likewise.
8479 * testsuite/libgomp.oacc-c-c++-common/pr92877-1.c: New file.
8480
b5859e40
TS
84812019-12-09 Thomas Schwinge <thomas@codesourcery.com>
8482
cec41816
TS
8483 PR libgomp/92503
8484 * oacc-mem.c (acc_free): Error out instead of 'acc_unmap_data'.
8485 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-1.c: New
8486 file.
8487 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-2.c:
8488 Likewise.
8489 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3-2.c:
8490 Likewise.
8491 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3.c:
8492 Likewise.
8493 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
8494 Likewise.
8495 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
8496 Likewise.
8497 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
8498 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
8499 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
8500 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
8501 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
8502 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
8503 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
8504 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
8505 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
8506 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
8507
e103542b
TS
8508 PR libgomp/92840
8509 * oacc-mem.c (acc_map_data): Clarify reference counting behavior.
8510 (acc_unmap_data): Add error case for 'REFCOUNT_INFINITY'.
8511 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-1.c:
8512 New file.
8513 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-2.c:
8514 Likewise.
8515 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-3.c:
8516 Likewise.
8517 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
8518 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Adjust.
8519
41f36f22
TS
8520 PR libgomp/92511
8521 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: Remove
8522 this file...
8523 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: ..., and
8524 this file...
8525 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: ..., and this
8526 file...
8527 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: ..., and this
8528 file...
8529 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
8530 ... with their content moved into, and extended in this new file.
8531 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-a.c:
8532 New file.
8533 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-p.c:
8534 Likewise.
8535 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-a.c:
8536 Likewise.
8537 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-2.c:
8538 Likewise.
8539
6effebe1
TS
8540 * testsuite/libgomp.oacc-c-c++-common/map-data-1.c: New file.
8541
7d020473
TS
8542 PR libgomp/92854
8543 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: New file.
8544
1e1fb715
TS
8545 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New file.
8546
b5859e40
TS
8547 * target.c (gomp_exit_data): Use 'gomp_remove_var'.
8548
11586ed9
TB
85492019-12-09 Tobias Burnus <tobias@codesourcery.com>
8550
8551 * testsuite/libgomp.fortran/use_device_addr-3.f90: Make 'stop' codes
8552 unique.
8553 * testsuite/libgomp.fortran/use_device_addr-4.f90: Ditto.
8554 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
8555 * testsuite/libgomp.oacc-fortran/declare-5.f90: Ditto.
8556 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90:
8557 Ditto.
8558 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: Ditto.
8559 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: Ditto.
8560
3ad4a03a
KCY
85612019-12-06 Kwok Cheung Yeung <kcy@codesourcery.com>
8562
8563 * config/accel/proc.c (omp_get_num_procs): Apply ialias macro.
8564
6e4d01d6
TB
85652019-12-06 Tobias Burnus <tobias@codesourcery.com>
8566 Kwok Cheung Yeung <kcy@codesourcery.com>
8567
8568 * oacc-mem.c (update_dev_host, gomp_acc_insert_pointer): Just return
8569 if input it a NULL pointer.
8570 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Remove; dependent on
8571 diagnostic of NULL pointer.
8572 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Ditto.
8573 * testsuite/libgomp.fortran/optional-map.f90: New.
8574 * testsuite/libgomp.fortran/use_device_addr-1.f90
8575 (test_dummy_opt_callee_1_absent): New.
8576 (test_dummy_opt_call_1): Call it.
8577 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
8578 * testsuite/libgomp.fortran/use_device_addr-3.f90: Likewise.
8579 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
8580 * testsuite/libgomp.oacc-fortran/optional-cache.f95: New.
8581 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90: New.
8582 * testsuite/libgomp.oacc-fortran/optional-data-copyin.f90: New.
8583 * testsuite/libgomp.oacc-fortran/optional-data-copyout.f90: New.
8584 * testsuite/libgomp.oacc-fortran/optional-data-enter-exit.f90: New.
8585 * testsuite/libgomp.oacc-fortran/optional-declare.f90: New.
8586 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: New.
8587 * testsuite/libgomp.oacc-fortran/optional-host_data.f90: New.
8588 * testsuite/libgomp.oacc-fortran/optional-nested-calls.f90: New.
8589 * testsuite/libgomp.oacc-fortran/optional-private.f90: New.
8590 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: New.
8591 * testsuite/libgomp.oacc-fortran/optional-update-device.f90: New.
8592 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: New.
8593
ad80ec46
TB
85942019-12-05 Tobias Burnus <tobias@codesourcery.com>
8595
8596 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Also don't
8597 expect dg-output of 'Error termination.' for GCN.
8598 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
8599 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
8600
a8a5f4cc
JJ
86012019-12-04 Jakub Jelinek <jakub@redhat.com>
8602
8603 PR fortran/92756
8604 * testsuite/libgomp.fortran/teams1.f90: New test.
8605 * testsuite/libgomp.fortran/teams2.f90: New test.
8606
d8f0024b
FH
86072019-12-03 Frederik Harwath <frederik@codesourcery.com>
8608
8609 * oacc-init.c (acc_known_device_type): Add function.
8610 (unknown_device_type_error): Add function.
8611 (name_of_acc_device_t): Change to call unknown_device_type_error
8612 on unknown type.
8613 (resolve_device): Use acc_known_device_type.
8614 (acc_init): Fail if acc_device_t argument is not valid.
8615 (acc_shutdown): Likewise.
8616 (acc_get_num_devices): Likewise.
8617 (acc_set_device_type): Likewise.
8618 (acc_get_device_num): Likewise.
8619 (acc_set_device_num): Likewise.
8620 (acc_on_device): Add comment that argument validity is not checked.
8621
83caa34e
AS
86222019-12-03 Andrew Stubbs <ams@codesourcery.com>
8623
8624 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
8625 Recognize amdgcn.
8626 (check_effective_target_openacc_amdgcn_accel_present): New proc.
8627 (check_effective_target_openacc_amdgcn_accel_selected): New proc.
8628 * testsuite/libgomp.oacc-c++/c++.exp: Add support for amdgcn.
8629 * testsuite/libgomp.oacc-c/c.exp: Likewise.
8630 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
8631
00484365
SN
86322019-12-03 Szabolcs Nagy <szabolcs.nagy@arm.com>
8633
8634 PR libgomp/91938
8635 * configure.tgt: Avoid IE tls on *-*-musl*.
8636
9909a059
TB
86372019-11-29 Tobias Burnus <tobias@codesourcery.com>
8638
8639 * testsuite/libgomp.oacc-fortran/declare-5.f90: Extend by
8640 adding a common-block test case.
8641
b3f44388
JJ
86422019-11-29 Jakub Jelinek <jakub@redhat.com>
8643
8644 PR c++/60228
8645 * testsuite/libgomp.c++/udr-20.C: New test.
8646 * testsuite/libgomp.c++/udr-21.C: New test.
8647
b1a73b48
TS
86482019-11-27 Thomas Schwinge <thomas@codesourcery.com>
8649
8650 * testsuite/lib/libgomp.exp
8651 (check_effective_target_offload_target_nvptx): New proc.
8652 * testsuite/libgomp.fortran/target-print-1.f90: Use it with
8653 'dg-skip-if'.
8654 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
8655 * testsuite/libgomp.fortran/target-print-1-nvptx.f90: New file.
8656 * testsuite/libgomp.oacc-fortran/print-1-nvptx.f90: Likewise.
8657
b8e72446
RO
86582019-11-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8659
8660 * testsuite/libgomp.c/pr39591-1.c: Rename err to e.
8661 * testsuite/libgomp.c/pr39591-2.c: Likewise.
8662 * testsuite/libgomp.c/pr39591-3.c: Likewise.
8663 * testsuite/libgomp.c/private-1.c: Likewise.
8664 * testsuite/libgomp.c/task-1.c: Likewise.
8665 * testsuite/libgomp.c/task-5.c: Renamed err to serr.
8666
d88b27da
JB
86672019-11-20 Julian Brown <julian@codesourcery.com>
8668
8669 * plugin/plugin-gcn.c (wait_for_queue_nonfull): Don't lock/unlock
8670 aq->mutex here.
8671 (queue_push_launch): Lock aq->mutex before calling
8672 wait_for_queue_nonfull.
8673 (queue_push_callback): Likewise.
8674 (queue_push_asyncwait): Likewise.
8675 (queue_push_placeholder): Likewise.
8676
8d2f4ddf
JB
86772019-11-20 Julian Brown <julian@codesourcery.com>
8678
8679 * plugin/plugin-gcn.c (hsa_memory_copy_wrapper): New.
8680 (copy_data, GOMP_OFFLOAD_host2dev): Use above function.
8681 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_dev2dev): Check hsa_memory_copy
8682 return code.
8683
e307b05f
JB
86842019-11-20 Julian Brown <julian@codesourcery.com>
8685
8686 PR libgomp/92511
8687
8688 * oacc-mem.c (present_create_copy): Fix device pointer return value in
8689 case of "present" subarray. Use tgt->tgt_start instead of tgt->to_free
8690 in non-present/create case.
8691 (delete_copyout): Change error condition to fail only on copies outside
8692 of mapped block. Adjust error message accordingly.
8693 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: New test.
8694 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: New test.
8695 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Adjust expected error
8696 message.
8697 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
8698 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Allow test to pass now.
8699 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
8700
83115e9e
MR
87012019-11-20 Maciej W. Rozycki <macro@wdc.com>
8702
8703 * testsuite/lib/libgomp.exp (libgomp_init): Add flags to find
8704 libatomic in build-tree testing.
8705
a1289887
MR
87062019-11-18 Maciej W. Rozycki <macro@wdc.com>
8707
8708 * testsuite/Makefile.in: Regenerate.
8709
8916ba87
AS
87102019-11-15 Andrew Stubbs <ams@codesourcery.com>
8711
8712 * testsuite/libgomp.c/target-print-1.c: New file.
8713 * testsuite/libgomp.fortran/target-print-1.f90: New file.
8714 * testsuite/libgomp.oacc-c/print-1.c: New file.
8715 * testsuite/libgomp.oacc-fortran/print-1.f90: New file.
8716
237957cc
AS
87172019-11-13 Andrew Stubbs <ams@codesourcery.com>
8718 Kwok Cheung Yeung <kcy@codesourcery.com>
8719 Julian Brown <julian@codesourcery.com>
8720 Tom de Vries <tom@codesourcery.com>
8721
8722 * plugin/Makefrag.am: Add amdgcn plugin support.
8723 * plugin/configfrag.ac: Likewise.
8724 * plugin/plugin-gcn.c: New file.
8725 * configure: Regenerate.
8726 * Makefile.in: Regenerate.
8727 * testsuite/Makefile.in: Regenerate.
8728
cee16451
AS
87292019-11-13 Andrew Stubbs <ams@codesourcery.com>
8730
8731 * config/gcn/team.c (gomp_gcn_enter_kernel): Set up the team arena
8732 and use team_malloc variants.
8733 (gomp_gcn_exit_kernel): Use team_free.
8734 * libgomp.h (TEAM_ARENA_SIZE): Define.
8735 (TEAM_ARENA_START): Define.
8736 (TEAM_ARENA_FREE): Define.
8737 (TEAM_ARENA_END): Define.
8738 (team_malloc): New function.
8739 (team_malloc_cleared): New function.
8740 (team_free): New function.
8741 * team.c (gomp_new_team): Initialize and use team_malloc.
8742 (free_team): Use team_free.
8743 (gomp_free_thread): Use team_free.
8744 (gomp_pause_host): Use team_free.
8745 * work.c (gomp_init_work_share): Use team_malloc.
8746 (gomp_fini_work_share): Use team_free.
8747
fa499995
AS
87482019-11-13 Andrew Stubbs <ams@codesourcery.com>
8749 Kwok Cheung Yeung <kcy@codesourcery.com>
8750 Julian Brown <julian@codesourcery.com>
8751 Tom de Vries <tom@codesourcery.com>
8752
8753 * Makefile.am (libgomp_la_SOURCES): Add oacc-target.c.
8754 * Makefile.in: Regenerate.
8755 * config.h.in (PLUGIN_GCN): Add new undef.
8756 * config/accel/openacc.f90 (acc_device_gcn): New parameter.
8757 * config/gcn/affinity-fmt.c: New file.
8758 * config/gcn/bar.c: New file.
8759 * config/gcn/bar.h: New file.
8760 * config/gcn/doacross.h: New file.
8761 * config/gcn/icv-device.c: New file.
8762 * config/gcn/oacc-target.c: New file.
8763 * config/gcn/simple-bar.h: New file.
8764 * config/gcn/target.c: New file.
8765 * config/gcn/task.c: New file.
8766 * config/gcn/team.c: New file.
8767 * config/gcn/time.c: New file.
8768 * configure.ac: Add amdgcn*-*-*.
8769 * configure: Regenerate.
8770 * configure.tgt: Add amdgcn*-*-*.
8771 * libgomp-plugin.h (offload_target_type): Add OFFLOAD_TARGET_TYPE_GCN.
8772 * libgomp.h (gcn_thrs): Add amdgcn variant.
8773 (set_gcn_thrs): Likewise.
8774 (gomp_thread): Likewise.
8775 * oacc-int.h (goacc_thread): Likewise.
8776 * oacc-target.c: New file.
8777 * openacc.f90 (acc_device_gcn): New parameter.
8778 * openacc.h (acc_device_t): Add acc_device_gcn.
8779 * team.c (gomp_free_pool_helper): Add amdgcn support.
8780
d2903ce0
AS
87812019-11-13 Andrew Stubbs <ams@codesourcery.com>
8782 Julian Brown <julian@codesourcery.com>
8783
8784 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_async_construct): Add int
8785 parameter.
8786 * oacc-async.c (lookup_goacc_asyncqueue): Pass device number to the
8787 queue constructor.
8788 * oacc-host.c (host_openacc_async_construct): Add device parameter.
8789 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_openacc_async_construct): Add
8790 device parameter.
8791
b3d14b3a
AS
87922019-11-13 Andrew Stubbs <ams@codesourcery.com>
8793
8794 * configure.tgt (nvptx*-*-*): Add "accel" directory.
8795 * config/nvptx/libgomp-plugin.c: Move ...
8796 * config/accel/libgomp-plugin.c: ... to here.
8797 * config/nvptx/lock.c: Move ...
8798 * config/accel/lock.c: ... to here.
8799 * config/nvptx/mutex.c: Move ...
8800 * config/accel/mutex.c: ... to here.
8801 * config/nvptx/mutex.h: Move ...
8802 * config/accel/mutex.h: ... to here.
8803 * config/nvptx/oacc-async.c: Move ...
8804 * config/accel/oacc-async.c: ... to here.
8805 * config/nvptx/oacc-cuda.c: Move ...
8806 * config/accel/oacc-cuda.c: ... to here.
8807 * config/nvptx/oacc-host.c: Move ...
8808 * config/accel/oacc-host.c: ... to here.
8809 * config/nvptx/oacc-init.c: Move ...
8810 * config/accel/oacc-init.c: ... to here.
8811 * config/nvptx/oacc-mem.c: Move ...
8812 * config/accel/oacc-mem.c: ... to here.
8813 * config/nvptx/oacc-plugin.c: Move ...
8814 * config/accel/oacc-plugin.c: ... to here.
8815 * config/nvptx/omp-lock.h: Move ...
8816 * config/accel/omp-lock.h: ... to here.
8817 * config/nvptx/openacc.f90: Move ...
8818 * config/accel/openacc.f90: ... to here.
8819 * config/nvptx/pool.h: Move ...
8820 * config/accel/pool.h: ... to here.
8821 * config/nvptx/proc.c: Move ...
8822 * config/accel/proc.c: ... to here.
8823 * config/nvptx/ptrlock.c: Move ...
8824 * config/accel/ptrlock.c: ... to here.
8825 * config/nvptx/ptrlock.h: Move ...
8826 * config/accel/ptrlock.h: ... to here.
8827 * config/nvptx/sem.c: Move ...
8828 * config/accel/sem.c: ... to here.
8829 * config/nvptx/sem.h: Move ...
8830 * config/accel/sem.h: ... to here.
8831 * config/nvptx/thread-stacksize.h: Move ...
8832 * config/accel/thread-stacksize.h: ... to here.
8833
62aee289
MR
88342019-11-12 Maciej W. Rozycki <macro@codesourcery.com>
8835 Tobias Burnus <tobias@codesourcery.com>
8836 Frederik Harwath <frederik@codesourcery.com>
8837 Thomas Schwinge <thomas@codesourcery.com>
8838
8839 libgomp/
8840 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New test.
8841 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: New test.
8842 * testsuite/libgomp.oacc-fortran/parallel-dims.f89: New test.
8843
a2c26c50
TB
88442019-11-11 Tobias Burnus <tobias@codesourcery.com>
8845 Kwok Cheung Yeung <kcy@codesourcery.com>
8846
8847 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90: Extend.
8848 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: New.
8849
6d4868f3
TS
88502019-11-11 Thomas Schwinge <thomas@codesourcery.com>
8851
bfa1837b
TS
8852 * testsuite/libgomp.fortran/target9.f90: Specify 'dg-do run'.
8853
6d4868f3
TS
8854 * testsuite/libgomp.fortran/use_device_addr-3.f90: Specify 'dg-do
8855 run'.
8856 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
8857 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Likewise.
8858
5d183d17
FH
88592019-11-06 Thomas Schwinge <thomas@codesourcery.com>
8860
8861 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c:
8862 Add expected warnings about missing reduction clauses.
8863 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
8864 Likewise.
8865 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c:
8866 Likewise.
8867 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
8868 Likewise.
8869
d8f03b03
TB
88702019-11-04 Tobias Burnus <tobias@codesourcery.com>
8871
8872 * testsuite/libgomp.fortran/pr66199-1.f90: Remove
8873 'dg-do run' (implies torture test) as 'dg-options "O2"' is used.
8874 * testsuite/libgomp.fortran/pr66199-2.f90: Ditto.
8875 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
8876 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
8877 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
8878
12fd2ec5
TB
88792019-11-04 Tobias Burnus <tobias@codesourcery.com>
8880
8881 PR fortran/92305
8882 * testsuite/libgomp.fortran/allocatable2.f90: Use
8883 unique numbers with 'stop'.
8884 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
8885 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
8886 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Ditto.
8887 * testsuite/libgomp.oacc-fortran/lib-15.f90: Ditto.
8888 * testsuite/libgomp.oacc-fortran/pset-1.f90: Ditto.
8889
92e63bd2
TB
88902019-11-01 Tobias Burnus <tobias@codesourcery.com>
8891
8892 * testsuite/libgomp.fortran/use_device_addr-1.f90 (test_nullptr_1,
8893 test_dummy_opt_nullptr_callee_1): Add present but unallocated test.
8894 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
8895 * testsuite/libgomp.fortran/use_device_addr-3.f90: New.
8896 * testsuite/libgomp.fortran/use_device_addr-4.f90: New.
8897 * testsuite/testsuite/libgomp.fortran/use_device_ptr-1.f90: New.
8898
91ae0a46
TB
88992019-10-30 Tobias Burnus <tobias@codesourcery.com>
8900
8901 * testsuite/libgomp.fortran/target9.f90: New.
8902
c425e66b
TB
89032019-10-30 Tobias Burnus <tobias@codesourcery.com>
8904
8905 * testsuite/libgomp.fortran/aligned1.f03: Replace 'STOP' by 'stop'.
8906 * testsuite/libgomp.fortran/alloc-comp-1.f90: Ditto.
8907 * testsuite/libgomp.fortran/alloc-comp-2.f90: Ditto.
8908 * testsuite/libgomp.fortran/alloc-comp-3.f90: Ditto.
8909 * testsuite/libgomp.fortran/allocatable1.f90: Ditto.
8910 * testsuite/libgomp.fortran/allocatable10.f90: Ditto.
8911 * testsuite/libgomp.fortran/allocatable11.f90: Ditto.
8912 * testsuite/libgomp.fortran/allocatable12.f90: Ditto.
8913 * testsuite/libgomp.fortran/allocatable2.f90: Ditto.
8914 * testsuite/libgomp.fortran/allocatable3.f90: Ditto.
8915 * testsuite/libgomp.fortran/allocatable4.f90: Ditto.
8916 * testsuite/libgomp.fortran/allocatable5.f90: Ditto.
8917 * testsuite/libgomp.fortran/allocatable6.f90: Ditto.
8918 * testsuite/libgomp.fortran/allocatable7.f90: Ditto.
8919 * testsuite/libgomp.fortran/allocatable8.f90: Ditto.
8920 * testsuite/libgomp.fortran/allocatable9.f90: Ditto.
8921 * testsuite/libgomp.fortran/associate1.f90: Ditto.
8922 * testsuite/libgomp.fortran/associate2.f90: Ditto.
8923 * testsuite/libgomp.fortran/associate3.f90: Ditto.
8924 * testsuite/libgomp.fortran/async_io_4.f90: Ditto.
8925 * testsuite/libgomp.fortran/async_io_5.f90: Ditto.
8926 * testsuite/libgomp.fortran/async_io_6.f90: Ditto.
8927 * testsuite/libgomp.fortran/async_io_7.f90: Ditto.
8928 * testsuite/libgomp.fortran/cancel-do-1.f90: Ditto.
8929 * testsuite/libgomp.fortran/cancel-do-2.f90: Ditto.
8930 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Ditto.
8931 * testsuite/libgomp.fortran/cancel-sections-1.f90: Ditto.
8932 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Ditto.
8933 * testsuite/libgomp.fortran/character1.f90: Ditto.
8934 * testsuite/libgomp.fortran/character2.f90: Ditto.
8935 * testsuite/libgomp.fortran/collapse1.f90: Ditto.
8936 * testsuite/libgomp.fortran/collapse2.f90: Ditto.
8937 * testsuite/libgomp.fortran/collapse3.f90: Ditto.
8938 * testsuite/libgomp.fortran/collapse4.f90: Ditto.
8939 * testsuite/libgomp.fortran/crayptr1.f90: Ditto.
8940 * testsuite/libgomp.fortran/crayptr2.f90: Ditto.
8941 * testsuite/libgomp.fortran/crayptr3.f90: Ditto.
8942 * testsuite/libgomp.fortran/declare-simd-1.f90: Ditto.
8943 * testsuite/libgomp.fortran/declare-simd-3.f90: Ditto.
8944 * testsuite/libgomp.fortran/declare-target-2.f90: Ditto.
8945 * testsuite/libgomp.fortran/depend-1.f90: Ditto.
8946 * testsuite/libgomp.fortran/depend-2.f90: Ditto.
8947 * testsuite/libgomp.fortran/depend-3.f90: Ditto.
8948 * testsuite/libgomp.fortran/do1.f90: Ditto.
8949 * testsuite/libgomp.fortran/do2.f90: Ditto.
8950 * testsuite/libgomp.fortran/do_concurrent_5.f90: Ditto.
8951 * testsuite/libgomp.fortran/doacross1.f90: Ditto.
8952 * testsuite/libgomp.fortran/doacross2.f90: Ditto.
8953 * testsuite/libgomp.fortran/doacross3.f90: Ditto.
8954 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Ditto.
8955 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Ditto.
8956 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Ditto.
8957 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Ditto.
8958 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Ditto.
8959 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Ditto.
8960 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Ditto.
8961 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Ditto.
8962 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Ditto.
8963 * testsuite/libgomp.fortran/examples-4/device-1.f90: Ditto.
8964 * testsuite/libgomp.fortran/examples-4/device-2.f90: Ditto.
8965 * testsuite/libgomp.fortran/examples-4/device-3.f90: Ditto.
8966 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Ditto.
8967 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Ditto.
8968 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Ditto.
8969 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Ditto.
8970 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Ditto.
8971 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Ditto.
8972 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Ditto.
8973 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Ditto.
8974 * testsuite/libgomp.fortran/examples-4/target-1.f90: Ditto.
8975 * testsuite/libgomp.fortran/examples-4/target-2.f90: Ditto.
8976 * testsuite/libgomp.fortran/examples-4/target-3.f90: Ditto.
8977 * testsuite/libgomp.fortran/examples-4/target-4.f90: Ditto.
8978 * testsuite/libgomp.fortran/examples-4/target-5.f90: Ditto.
8979 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Ditto.
8980 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Ditto.
8981 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Ditto.
8982 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Ditto.
8983 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Ditto.
8984 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Ditto.
8985 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Ditto.
8986 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Ditto.
8987 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Ditto.
8988 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Ditto.
8989 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Ditto.
8990 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Ditto.
8991 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Ditto.
8992 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Ditto.
8993 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Ditto.
8994 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Ditto.
8995 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Ditto.
8996 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Ditto.
8997 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Ditto.
8998 * testsuite/libgomp.fortran/lastprivate1.f90: Ditto.
8999 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
9000 * testsuite/libgomp.fortran/lib1.f90: Ditto.
9001 * testsuite/libgomp.fortran/lib4.f90: Ditto.
9002 * testsuite/libgomp.fortran/lock-1.f90: Ditto.
9003 * testsuite/libgomp.fortran/lock-2.f90: Ditto.
9004 * testsuite/libgomp.fortran/nested1.f90: Ditto.
9005 * testsuite/libgomp.fortran/nestedfn1.f90: Ditto.
9006 * testsuite/libgomp.fortran/nestedfn2.f90: Ditto.
9007 * testsuite/libgomp.fortran/nestedfn3.f90: Ditto.
9008 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
9009 * testsuite/libgomp.fortran/nestedfn5.f90: Ditto.
9010 * testsuite/libgomp.fortran/omp_atomic1.f90: Ditto.
9011 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
9012 * testsuite/libgomp.fortran/omp_atomic3.f90: Ditto.
9013 * testsuite/libgomp.fortran/omp_atomic4.f90: Ditto.
9014 * testsuite/libgomp.fortran/omp_atomic5.f90: Ditto.
9015 * testsuite/libgomp.fortran/omp_cond1.f: Ditto.
9016 * testsuite/libgomp.fortran/omp_cond2.f: Ditto.
9017 * testsuite/libgomp.fortran/omp_cond3.F90: Ditto.
9018 * testsuite/libgomp.fortran/omp_cond4.F90: Ditto.
9019 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
9020 * testsuite/libgomp.fortran/omp_parse2.f90: Ditto.
9021 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
9022 * testsuite/libgomp.fortran/omp_parse4.f90: Ditto.
9023 * testsuite/libgomp.fortran/openmp_version-1.f: Ditto.
9024 * testsuite/libgomp.fortran/openmp_version-2.f90: Ditto.
9025 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Ditto.
9026 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Ditto.
9027 * testsuite/libgomp.fortran/pointer1.f90: Ditto.
9028 * testsuite/libgomp.fortran/pointer2.f90: Ditto.
9029 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
9030 * testsuite/libgomp.fortran/pr27395-1.f90: Ditto.
9031 * testsuite/libgomp.fortran/pr27395-2.f90: Ditto.
9032 * testsuite/libgomp.fortran/pr27416-1.f90: Ditto.
9033 * testsuite/libgomp.fortran/pr27916-1.f90: Ditto.
9034 * testsuite/libgomp.fortran/pr27916-2.f90: Ditto.
9035 * testsuite/libgomp.fortran/pr28390.f: Ditto.
9036 * testsuite/libgomp.fortran/pr29629.f90: Ditto.
9037 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
9038 * testsuite/libgomp.fortran/pr33880.f90: Ditto.
9039 * testsuite/libgomp.fortran/pr34020.f90: Ditto.
9040 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
9041 * testsuite/libgomp.fortran/pr42162.f90: Ditto.
9042 * testsuite/libgomp.fortran/pr46753.f90: Ditto.
9043 * testsuite/libgomp.fortran/pr48894.f90: Ditto.
9044 * testsuite/libgomp.fortran/pr49792-1.f90: Ditto.
9045 * testsuite/libgomp.fortran/pr49792-2.f90: Ditto.
9046 * testsuite/libgomp.fortran/pr63938-1.f90: Ditto.
9047 * testsuite/libgomp.fortran/pr63938-2.f90: Ditto.
9048 * testsuite/libgomp.fortran/pr65597.f90: Ditto.
9049 * testsuite/libgomp.fortran/pr66199-1.f90: Ditto.
9050 * testsuite/libgomp.fortran/pr71014.f90: Ditto.
9051 * testsuite/libgomp.fortran/pr81304.f90: Ditto.
9052 * testsuite/libgomp.fortran/pr81841.f90: Ditto.
9053 * testsuite/libgomp.fortran/pr84418-1.f90: Ditto.
9054 * testsuite/libgomp.fortran/pr84418-2.f90: Ditto.
9055 * testsuite/libgomp.fortran/procptr1.f90: Ditto.
9056 * testsuite/libgomp.fortran/recursion1.f90: Ditto.
9057 * testsuite/libgomp.fortran/reduction1.f90: Ditto.
9058 * testsuite/libgomp.fortran/reduction2.f90: Ditto.
9059 * testsuite/libgomp.fortran/reduction3.f90: Ditto.
9060 * testsuite/libgomp.fortran/reduction4.f90: Ditto.
9061 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
9062 * testsuite/libgomp.fortran/reduction6.f90: Ditto.
9063 * testsuite/libgomp.fortran/reference1.f90: Ditto.
9064 * testsuite/libgomp.fortran/reference2.f90: Ditto.
9065 * testsuite/libgomp.fortran/retval1.f90: Ditto.
9066 * testsuite/libgomp.fortran/retval2.f90: Ditto.
9067 * testsuite/libgomp.fortran/sharing1.f90: Ditto.
9068 * testsuite/libgomp.fortran/sharing2.f90: Ditto.
9069 * testsuite/libgomp.fortran/simd1.f90: Ditto.
9070 * testsuite/libgomp.fortran/simd2.f90: Ditto.
9071 * testsuite/libgomp.fortran/simd3.f90: Ditto.
9072 * testsuite/libgomp.fortran/simd4.f90: Ditto.
9073 * testsuite/libgomp.fortran/simd5.f90: Ditto.
9074 * testsuite/libgomp.fortran/simd6.f90: Ditto.
9075 * testsuite/libgomp.fortran/simd7.f90: Ditto.
9076 * testsuite/libgomp.fortran/stack.f90: Ditto.
9077 * testsuite/libgomp.fortran/strassen.f90: Ditto.
9078 * testsuite/libgomp.fortran/tabs1.f90: Ditto.
9079 * testsuite/libgomp.fortran/tabs2.f: Ditto.
9080 * testsuite/libgomp.fortran/target1.f90: Ditto.
9081 * testsuite/libgomp.fortran/target2.f90: Ditto.
9082 * testsuite/libgomp.fortran/target3.f90: Ditto.
9083 * testsuite/libgomp.fortran/target4.f90: Ditto.
9084 * testsuite/libgomp.fortran/target5.f90: Ditto.
9085 * testsuite/libgomp.fortran/target6.f90: Ditto.
9086 * testsuite/libgomp.fortran/target7.f90: Ditto.
9087 * testsuite/libgomp.fortran/target8.f90: Ditto.
9088 * testsuite/libgomp.fortran/task1.f90: Ditto.
9089 * testsuite/libgomp.fortran/task2.f90: Ditto.
9090 * testsuite/libgomp.fortran/task3.f90: Ditto.
9091 * testsuite/libgomp.fortran/task4.f90: Ditto.
9092 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
9093 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
9094 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
9095 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
9096 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
9097 * testsuite/libgomp.fortran/threadprivate1.f90: Ditto.
9098 * testsuite/libgomp.fortran/threadprivate2.f90: Ditto.
9099 * testsuite/libgomp.fortran/threadprivate3.f90: Ditto.
9100 * testsuite/libgomp.fortran/threadprivate4.f90: Ditto.
9101 * testsuite/libgomp.fortran/udr1.f90: Ditto.
9102 * testsuite/libgomp.fortran/udr10.f90: Ditto.
9103 * testsuite/libgomp.fortran/udr11.f90: Ditto.
9104 * testsuite/libgomp.fortran/udr12.f90: Ditto.
9105 * testsuite/libgomp.fortran/udr13.f90: Ditto.
9106 * testsuite/libgomp.fortran/udr14.f90: Ditto.
9107 * testsuite/libgomp.fortran/udr15.f90: Ditto.
9108 * testsuite/libgomp.fortran/udr2.f90: Ditto.
9109 * testsuite/libgomp.fortran/udr3.f90: Ditto.
9110 * testsuite/libgomp.fortran/udr4.f90: Ditto.
9111 * testsuite/libgomp.fortran/udr5.f90: Ditto.
9112 * testsuite/libgomp.fortran/udr6.f90: Ditto.
9113 * testsuite/libgomp.fortran/udr7.f90: Ditto.
9114 * testsuite/libgomp.fortran/udr8.f90: Ditto.
9115 * testsuite/libgomp.fortran/udr9.f90: Ditto.
9116 * testsuite/libgomp.fortran/vla1.f90: Ditto.
9117 * testsuite/libgomp.fortran/vla2.f90: Ditto.
9118 * testsuite/libgomp.fortran/vla3.f90: Ditto.
9119 * testsuite/libgomp.fortran/vla4.f90: Ditto.
9120 * testsuite/libgomp.fortran/vla5.f90: Ditto.
9121 * testsuite/libgomp.fortran/vla6.f90: Ditto.
9122 * testsuite/libgomp.fortran/vla7.f90: Ditto.
9123 * testsuite/libgomp.fortran/vla8.f90: Ditto.
9124 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
9125 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
9126
01509e2f
TB
91272019-10-30 Tobias Burnus <tobias@codesourcery.com>
9128
9129 * testsuite/libgomp.fortran/target-simd.f90: Use stop not abort.
9130 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90:
9131 Ditto; add 'dg-do run' for torture testing.
9132 * testsuite/libgomp.fortran/lastprivate1.f90: Add 'dg-do run'.
9133 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
9134 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
9135 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
9136 * testsuite/libgomp.fortran/pr28390.f: Ditto.
9137 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
9138 * testsuite/libgomp.fortran/pr90779.f90: Ditto.
9139 * testsuite/libgomp.fortran/task2.f90: Ditto.
9140 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
9141 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
9142 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
9143 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
9144 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
9145 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
9146
ffbdd78a
TB
91472019-10-28 Tobias Burnus <tobias@codesourcery.com>
9148
9149 * testsuite/libgomp.oacc-fortran/abort-1.f90: Add 'dg-do run'.
9150 * testsuite/libgomp.oacc-fortran/abort-2.f90: Ditto.
9151 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Ditto.
9152 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f90: Ditto.
9153 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f90: Ditto.
9154 * testsuite/libgomp.oacc-fortran/lib-1.f90: Ditto.
9155 * testsuite/libgomp.oacc-fortran/common-block-1.f90:
9156 Use 'stop' not abort().
9157 * testsuite/libgomp.oacc-fortran/common-block-2.f90: Ditto.
9158 * testsuite/libgomp.oacc-fortran/common-block-3.f90: Ditto.
9159 * testsuite/libgomp.oacc-fortran/data-1.f90: Ditto.
9160 * testsuite/libgomp.oacc-fortran/data-2.f90: Ditto.
9161 * testsuite/libgomp.oacc-fortran/data-5.f90: Ditto.
9162 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Ditto.
9163 * testsuite/libgomp.oacc-fortran/gemm-2.f90: Ditto.
9164 * testsuite/libgomp.oacc-fortran/gemm.f90: Ditto.
9165 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Ditto.
9166 * testsuite/libgomp.oacc-fortran/host_data-3.f90: Ditto.
9167 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Ditto.
9168 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Ditto.
9169 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Ditto.
9170 * testsuite/libgomp.oacc-fortran/kernels-independent.f90: Ditto.
9171 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Ditto.
9172 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Ditto.
9173 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
9174 Ditto.
9175 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
9176 Ditto.
9177 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
9178 Ditto.
9179 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
9180 Ditto.
9181 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
9182 Ditto.
9183 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-1.f90:
9184 Ditto.
9185 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-2.f90:
9186 Ditto.
9187 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-1.f90:
9188 Ditto.
9189 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-2.f90:
9190 Ditto.
9191 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-3.f90:
9192 Ditto.
9193 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-4.f90:
9194 Ditto.
9195 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-5.f90:
9196 Ditto.
9197 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-6.f90:
9198 Ditto.
9199 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-7.f90:
9200 Ditto.
9201 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Ditto.
9202 * testsuite/libgomp.oacc-fortran/lib-12.f90: Ditto.
9203 * testsuite/libgomp.oacc-fortran/lib-13.f90: Ditto.
9204 * testsuite/libgomp.oacc-fortran/lib-14.f90: Ditto.
9205 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
9206 Likewise and also add 'dg-do run'.
9207 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
9208 Ditto.
9209
ec084613
CP
92102019-10-25 Cesar Philippidis <cesar@codesourcery.com>
9211 Tobias Burnus <tobias@codesourcery.com>
9212
9213 * testsuite/libgomp.oacc-fortran/common-block-1.f90: New test.
9214 * testsuite/libgomp.oacc-fortran/common-block-2.f90: New test.
9215 * testsuite/libgomp.oacc-fortran/common-block-3.f90: New test.
9216
77ef3394
JJ
92172019-10-14 Jakub Jelinek <jakub@redhat.com>
9218
9219 PR libgomp/92081
9220 * testsuite/libgomp.fortran/target-simd.f90: Iterate from 1 rather
9221 than 0.
9222
08c14aaa
TB
92232019-10-11 Tobias Burnus <tobias@codesourcery.com>
9224
9225 * testsuite/libgomp.fortran/use_device_addr-1.f90: New.
9226 * testsuite/libgomp.fortran/use_device_addr-2.f90: New.
9227
6bbead0c
TS
92282019-10-09 Thomas Schwinge <thomas@codesourcery.com>
9229
9230 PR middle-end/92036
9231 * testsuite/libgomp.oacc-c-c++-common/data-firstprivate-1.c: New
9232 file.
9233
eba3dee8
TB
92342019-10-09 Tobias Burnus <tobias@codesourcery.com>
9235
9236 PR testsuite/91884
9237 * testsuite/libgomp.fortran/fortran.exp: Conditionally
9238 add -lquadmath.
9239 * testsuite/libgomp.oacc-fortran/fortran.exp: Ditto.
9240
7d48e14f
JJ
92412019-10-09 Jakub Jelinek <jakub@redhat.com>
9242
9243 PR libgomp/92028
9244 * target.c (gomp_map_vars_internal): Readd the previous
9245 GOMP_MAP_USE_DEVICE_PTR handling code in the first loop,
9246 though do that just in the !not_found_cnt case.
9247
65b67cf3
TB
92482019-10-08 Tobias Burnus <tobias@codesourcery.com>
9249
9250 * gfortran.dg/gomp/target-simd.f90: New.
9251
6c7e076b
JB
92522019-10-02 Julian Brown <julian@codesourcery.com>
9253 Cesar Philippidis <cesar@codesourcery.com>
9254
9255 * libgomp.h (OFFSET_INLINED, OFFSET_POINTER, OFFSET_STRUCT): Define.
9256 * target.c (FIELD_TGT_EMPTY): Define.
9257 (gomp_map_val): Use OFFSET_* macros instead of magic constants. Write
9258 as switch instead of list of ifs.
9259 (gomp_map_vars_internal): Use OFFSET_* and FIELD_TGT_EMPTY macros.
9260
d61bff85
AT
92612019-10-02 Andreas Tobler <andreast@gcc.gnu.org>
9262
9263 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: Remove alloca.h
9264 include. Replace alloca () with __builtin_alloca ().
9265 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Likewise.
9266
810f316d
JJ
92672019-10-01 Jakub Jelinek <jakub@redhat.com>
9268
9269 * configure.ac: Remove GCC_HEADER_STDINT(gstdint.h).
9270 * libgomp.h: Include <stdint.h> instead of "gstdint.h".
9271 * oacc-parallel.c: Don't include "libgomp_g.h".
9272 * plugin/plugin-hsa.c: Include <stdint.h> instead of "gstdint.h".
9273 * plugin/plugin-nvptx.c: Don't include "gstdint.h".
9274 * aclocal.m4: Regenerated.
9275 * config.h.in: Regenerated.
9276 * configure: Regenerated.
9277 * Makefile.in: Regenerated.
9278
d7f9ee98
KCY
92792019-09-30 Kwok Cheung Yeung <kcy@codesourcery.com>
9280
9281 * libgomp_g.h: Include stdint.h instead of gstdint.h.
9282
e9085da5
MR
92832019-09-27 Maciej W. Rozycki <macro@wdc.com>
9284
9285 * configure: Regenerate.
9286
c28712be
TB
92872019-09-13 Tobias Burnus <tobias@codesourcery.com>
9288
9289 * plugin/plugin-hsa.c (hsa_warn, hsa_fatal, hsa_error): Ensure
9290 string is initialized.
9291
3c086f8d
FW
92922019-09-06 Florian Weimer <fweimer@redhat.com>
9293
9294 * configure: Regenerate.
9295
c6c2d1bc
CLT
92962019-09-03 Chung-Lin Tang <cltang@codesourcery.com>
9297
9298 PR other/79543
9299 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Fix GNU ld --version
9300 scanning to conform to the GNU Coding Standards.
9301 * configure: Regenerate.
9302
5cb72d83
JJ
93032019-08-28 Jakub Jelinek <jakub@redhat.com>
9304
9305 PR libgomp/91530
9306 * testsuite/libgomp.c/scan-21.c: New test.
9307 * testsuite/libgomp.c/scan-22.c: New test.
9308
0ad7981c
JJ
93092019-08-27 Jakub Jelinek <jakub@redhat.com>
9310
9311 PR libgomp/91530
9312 * testsuite/libgomp.c/scan-11.c: Add -msse2 option for sse2_runtime
9313 targets.
9314 * testsuite/libgomp.c/scan-12.c: Likewise.
9315 * testsuite/libgomp.c/scan-13.c: Likewise.
9316 * testsuite/libgomp.c/scan-14.c: Likewise.
9317 * testsuite/libgomp.c/scan-15.c: Likewise.
9318 * testsuite/libgomp.c/scan-16.c: Likewise.
9319 * testsuite/libgomp.c/scan-17.c: Likewise.
9320 * testsuite/libgomp.c/scan-18.c: Likewise.
9321 * testsuite/libgomp.c/scan-19.c: Likewise.
9322 * testsuite/libgomp.c/scan-20.c: Likewise.
9323 * testsuite/libgomp.c++/scan-9.C: Likewise.
9324 * testsuite/libgomp.c++/scan-10.C: Likewise.
9325 * testsuite/libgomp.c++/scan-11.C: Likewise.
9326 * testsuite/libgomp.c++/scan-12.C: Likewise.
9327 * testsuite/libgomp.c++/scan-14.C: Likewise.
9328 * testsuite/libgomp.c++/scan-15.C: Likewise.
9329 * testsuite/libgomp.c++/scan-13.C: Likewise. Use sse2_runtime
9330 instead of i?86-*-* x86_64-*-* as target for scan-tree-dump-times.
9331 * testsuite/libgomp.c++/scan-16.C: Likewise.
9332
1e67491a
TK
93332019-08-17 Thomas Koenig <tkoenig@gcc.gnu.org>
9334
9335 PR fortran/91473
9336 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add
9337 -std=legacy so invalid code in the test case is accepted.
9338
393fdeb1
TK
93392019-08-12 Thomas Koenig <tkoenig@gcc.gnu.org>
9340
9341 PR fortran/91422
9342 * testsuite/libgomp.oacc-fortran/routine-7.f90: Correct array
9343 dimension.
9344
8860d270
JJ
93452019-08-08 Jakub Jelinek <jakub@redhat.com>
9346
9347 * target.c (gomp_map_vars_internal): For GOMP_MAP_USE_DEVICE_PTR
9348 perform the lookup in the first loop only if !not_found_cnt, otherwise
9349 perform lookups for it in the second loop guarded with
9350 if (not_found_cnt || has_firstprivate).
9351 * testsuite/libgomp.c/target-37.c: New test.
9352 * testsuite/libgomp.c++/target-22.C: New test.
9353
398e3feb
JJ
93542019-08-07 Jakub Jelinek <jakub@redhat.com>
9355
9356 * testsuite/libgomp.c/target-18.c (struct S): New type.
9357 (foo): Use use_device_addr clause instead of use_device_ptr clause
9358 where required by OpenMP 5.0, add further tests for both use_device_ptr
9359 and use_device_addr clauses.
9360 * testsuite/libgomp.c++/target-9.C (struct S): New type.
9361 (foo): Use use_device_addr clause instead of use_device_ptr clause
9362 where required by OpenMP 5.0, add further tests for both use_device_ptr
9363 and use_device_addr clauses. Add t and u arguments.
9364 (main): Adjust caller.
9365
d81ab49d
JJ
93662019-08-06 Jakub Jelinek <jakub@redhat.com>
9367
9368 * testsuite/libgomp.c++/loop-13.C: New test.
9369 * testsuite/libgomp.c++/loop-14.C: New test.
9370 * testsuite/libgomp.c++/loop-15.C: New test.
9371
c3ac76aa
JJ
93722019-07-31 Jakub Jelinek <jakub@redhat.com>
9373
9374 PR middle-end/91301
9375 * testsuite/libgomp.c++/for-27.C: New test.
9376
8dc63166
SK
93772019-07-23 Steven G. Kargl <kargl@gcc.gnu.org>
9378
393fdeb1 9379 * testsuite/libgomp.fortran/reduction4.f90: Update BOZ usage.
8dc63166 9380 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
393fdeb1 9381
554a530f
JJ
93822019-07-20 Jakub Jelinek <jakub@redhat.com>
9383
9384 * testsuite/libgomp.c-c++-common/loop-1.c: New test.
9385
6cda84b5
JJ
93862019-07-08 Jakub Jelinek <jakub@redhat.com>
9387
9388 * testsuite/libgomp.c++/scan-13.C: Replace xfail with target x86.
9389 * testsuite/libgomp.c++/scan-16.C: Likewise.
9390
1f52d1a8
JJ
93912019-07-06 Jakub Jelinek <jakub@redhat.com>
9392
6f67abcd
JJ
9393 * testsuite/libgomp.c/scan-19.c: New test.
9394 * testsuite/libgomp.c/scan-20.c: New test.
9395
1f52d1a8
JJ
9396 * testsuite/libgomp.c/scan-11.c: New test.
9397 * testsuite/libgomp.c/scan-12.c: New test.
9398 * testsuite/libgomp.c/scan-13.c: New test.
9399 * testsuite/libgomp.c/scan-14.c: New test.
9400 * testsuite/libgomp.c/scan-15.c: New test.
9401 * testsuite/libgomp.c/scan-16.c: New test.
9402 * testsuite/libgomp.c/scan-17.c: New test.
9403 * testsuite/libgomp.c/scan-18.c: New test.
9404 * testsuite/libgomp.c++/scan-9.C: New test.
9405 * testsuite/libgomp.c++/scan-10.C: New test.
9406 * testsuite/libgomp.c++/scan-11.C: New test.
9407 * testsuite/libgomp.c++/scan-12.C: New test.
9408 * testsuite/libgomp.c++/scan-13.C: New test.
9409 * testsuite/libgomp.c++/scan-14.C: New test.
9410 * testsuite/libgomp.c++/scan-15.C: New test.
9411 * testsuite/libgomp.c++/scan-16.C: New test.
9412
2f03073f
JJ
94132019-07-04 Jakub Jelinek <jakub@redhat.com>
9414
9415 * testsuite/libgomp.c/scan-9.c: New test.
9416 * testsuite/libgomp.c/scan-10.c: New test.
9417
2f6bb511
JJ
94182019-07-03 Jakub Jelinek <jakub@redhat.com>
9419
9420 * testsuite/libgomp.c++/scan-1.C: New test.
9421 * testsuite/libgomp.c++/scan-2.C: New test.
9422 * testsuite/libgomp.c++/scan-3.C: New test.
9423 * testsuite/libgomp.c++/scan-4.C: New test.
9424 * testsuite/libgomp.c++/scan-5.C: New test.
9425 * testsuite/libgomp.c++/scan-6.C: New test.
9426 * testsuite/libgomp.c++/scan-7.C: New test.
9427 * testsuite/libgomp.c++/scan-8.C: New test.
9428 * testsuite/libgomp.c/scan-1.c: New test.
9429 * testsuite/libgomp.c/scan-2.c: New test.
9430 * testsuite/libgomp.c/scan-3.c: New test.
9431 * testsuite/libgomp.c/scan-4.c: New test.
9432 * testsuite/libgomp.c/scan-5.c: New test.
9433 * testsuite/libgomp.c/scan-6.c: New test.
9434 * testsuite/libgomp.c/scan-7.c: New test.
9435 * testsuite/libgomp.c/scan-8.c: New test.
9436
bd194a51
TS
94372019-06-18 Thomas Schwinge <thomas@codesourcery.com>
9438
85fca03a
TS
9439 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: New file.
9440 * testsuite/libgomp.oacc-c-c++-common/firstprivate-mappings-1.c:
9441 Likewise.
9442
bd194a51
TS
9443 * testsuite/libgomp.fortran/allocatable3.f90: Add missing results
9444 check.
9445
6652161e
CP
94462019-06-18 Cesar Philippidis <cesar@codesourcery.com>
9447
9448 * testsuite/libgomp.oacc-fortran/allocatable-array-1.f90: New
9449 file.
9450
3a37d6f6
TS
94512019-06-18 Thomas Schwinge <thomas@codesourcery.com>
9452
4017da8d
TS
9453 PR fortran/90743
9454 * oacc-parallel.c (GOACC_parallel_keyed): Handle NULL mapping
9455 case.
9456 * testsuite/libgomp.fortran/target-allocatable-1-1.f90: New file.
9457 * testsuite/libgomp.fortran/target-allocatable-1-2.f90: Likewise.
9458 * testsuite/libgomp.oacc-fortran/allocatable-1-1.f90: Likewise.
9459 * testsuite/libgomp.oacc-fortran/allocatable-1-2.f90: Likewise.
9460
6f7c1f65
TS
9461 PR testsuite/90861
9462 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Update.
9463
3a37d6f6
TS
9464 PR middle-end/90862
9465 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Update.
9466
f45ce17d
TV
94672019-06-16 Tom de Vries <tdevries@suse.de>
9468
9469 PR tree-optimization/89376
9470 * testsuite/libgomp.oacc-c-c++-common/pr89376.c: New test.
9471
00908992
TV
94722019-06-15 Tom de Vries <tdevries@suse.de>
9473
9474 PR tree-optimization/89713
9475 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Expect no bar.sync.
9476 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Same.
9477
211b7533
JJ
94782019-06-15 Jakub Jelinek <jakub@redhat.com>
9479
9480 PR middle-end/90779
9481 * testsuite/libgomp.c/pr90779.c: New test.
9482 * testsuite/libgomp.fortran/pr90779.f90: New test.
9483
120a01d1
TV
94842019-06-15 Tom de Vries <tdevries@suse.de>
9485
9486 PR tree-optimization/90009
9487 * testsuite/libgomp.oacc-c-c++-common/pr90009.c: New test.
9488
c29c92c7
FX
94892019-06-13 Feng Xue <fxue@os.amperecomputing.com>
9490
9491 PR tree-optimization/89713
9492 * testsuite/libgomp.oacc-c-c++-common/pr84955-1.c: New test.
9493
ce9c4ec3
JJ
94942019-06-11 Jakub Jelinek <jakub@redhat.com>
9495
9496 PR target/90811
9497 * testsuite/libgomp.c/pr90811.c: New test.
9498
28b3a77c
JJ
94992019-06-05 Jakub Jelinek <jakub@redhat.com>
9500
9501 * testsuite/libgomp.c++/lastprivate-conditional-1.C: New test.
9502 * testsuite/libgomp.c++/lastprivate-conditional-2.C: New test.
9503
7855700e
JJ
95042019-06-04 Jakub Jelinek <jakub@redhat.com>
9505
9506 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: New test.
9507 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: New test.
9508 * testsuite/libgomp.c-c++-common/lastprivate-conditional-9.c: New test.
9509 * testsuite/libgomp.c-c++-common/lastprivate-conditional-10.c: New test.
9510
a7155c2e
RO
95112019-05-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
9512
9513 * configure.ac: Call AX_COUNT_CPUS.
9514 Substitute CPU_COUNT.
9515 * testsuite/Makefile.am (check-am): Use CPU_COUNT as processor
9516 count fallback.
9517 * aclocal.m4: Regenerate.
9518 * configure: Regenerate.
9519 * Makefile.in, testsuite/Makefile.in: Regenerate.
9520
7e47198b
JJ
95212019-05-29 Jakub Jelinek <jakub@redhat.com>
9522
9523 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: Rename
9524 to ...
9525 * testsuite/libgomp.c-c++-common/lastprivate-conditional-4.c: ... this.
9526 * testsuite/libgomp.c-c++-common/lastprivate-conditional-5.c: New test.
9527 * testsuite/libgomp.c-c++-common/lastprivate-conditional-6.c: New test.
9528
fcfb8032
JJ
95292019-05-27 Jakub Jelinek <jakub@redhat.com>
9530
8e7757ba
JJ
9531 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: New test.
9532
36c7a3ff
JJ
9533 * testsuite/libgomp.c-c++-common/lastprivate-conditional-3.c: New test.
9534
fcfb8032
JJ
9535 PR libgomp/90641
9536 * work.c (gomp_init_work_share): Instead of aligning final ordered
9537 value to multiples of long long alignment, align to that the
9538 first part (ordered team ids) and if inline_ordered_team_ids
9539 is not on a long long alignment boundary within the structure,
9540 use __alignof__ (long long) - 1 pad size always.
9541 * loop.c (GOMP_loop_start): Fix *mem computation if
9542 inline_ordered_team_ids is not aligned on long long alignment boundary
9543 within the structure.
9544 * loop-ull.c (GOMP_loop_ull_start): Likewise.
9545 * sections.c (GOMP_sections2_start): Likewise.
9546
b5c26449
JJ
95472019-05-24 Jakub Jelinek <jakub@redhat.com>
9548
6c7ae8c5
JJ
9549 * testsuite/libgomp.c-c++-common/lastprivate-conditional-1.c: New test.
9550 * testsuite/libgomp.c-c++-common/lastprivate-conditional-2.c: New test.
9551
b5c26449
JJ
9552 PR libgomp/90585
9553 * plugin/plugin-hsa.c: Include gstdint.h. Include inttypes.h only if
9554 HAVE_INTTYPES_H is defined.
9555 (print_uint64_t): New typedef.
9556 (PRIu64): Define if HAVE_INTTYPES_H is not defined.
9557 (print_kernel_dispatch, run_kernel): Use PRIu64 macro instead of
9558 "lu", cast uint64_t HSA_DEBUG and fprintf arguments to print_uint64_t.
9559 (release_kernel_dispatch): Likewise. Cast shadow->debug to uintptr_t
9560 before casting to void *.
9561 * plugin/plugin-nvptx.c: Include gstdint.h instead of stdint.h.
9562 * oacc-mem.c: Don't include config.h nor stdint.h.
9563 * target.c: Don't include config.h.
9564 * oacc-cuda.c: Likewise.
9565 * oacc-host.c: Don't include stdint.h.
9566
3e03ed66
JJ
95672019-05-20 Jakub Jelinek <jakub@redhat.com>
9568
9569 PR libgomp/90527
9570 * alloc.c (_GNU_SOURCE): Define.
9571
5fae049d
TS
95722019-05-17 Thomas Schwinge <thomas@codesourcery.com>
9573
9574 * acc_prof.h: New file.
9575 * oacc-profiling.c: Likewise.
9576 * Makefile.am (nodist_libsubinclude_HEADERS, libgomp_la_SOURCES):
9577 Add these, respectively.
9578 * Makefile.in: Regenerate.
9579 * env.c (initialize_env): Call goacc_profiling_initialize.
9580 * oacc-plugin.c (GOMP_PLUGIN_goacc_thread)
9581 (GOMP_PLUGIN_goacc_profiling_dispatch): New functions.
9582 * oacc-plugin.h (GOMP_PLUGIN_goacc_thread)
9583 (GOMP_PLUGIN_goacc_profiling_dispatch): Declare.
9584 * libgomp.map (OACC_2.5.1): Add acc_prof_lookup,
9585 acc_prof_register, acc_prof_unregister, and acc_register_library.
9586 (GOMP_PLUGIN_1.3): Add GOMP_PLUGIN_goacc_profiling_dispatch, and
9587 GOMP_PLUGIN_goacc_thread.
9588 * oacc-int.h (struct goacc_thread): Add prof_info, api_info,
9589 prof_callbacks_enabled members.
9590 (goacc_prof_enabled, goacc_profiling_initialize)
9591 (_goacc_profiling_dispatch_p, _goacc_profiling_setup_p)
9592 (goacc_profiling_dispatch): Declare.
9593 (GOACC_PROF_ENABLED, GOACC_PROFILING_DISPATCH_P)
9594 (GOACC_PROFILING_SETUP_P): Define.
9595 * oacc-async.c (acc_async_test, acc_async_test_all, acc_wait)
9596 (acc_wait_async, acc_wait_all, acc_wait_all_async): Update for
9597 OpenACC Profiling Interface.
9598 * oacc-cuda.c (acc_get_current_cuda_device)
9599 (acc_get_current_cuda_context, acc_get_cuda_stream)
9600 (acc_set_cuda_stream): Likewise.
9601 * oacc-init.c (acc_init_1, goacc_attach_host_thread_to_device)
9602 (acc_init, acc_set_device_type, acc_get_device_type)
9603 (acc_get_device_num, goacc_lazy_initialize): Likewise.
9604 * oacc-mem.c (acc_malloc, acc_free, memcpy_tofrom_device)
9605 (acc_deviceptr, acc_hostptr, acc_is_present, acc_map_data)
9606 (acc_unmap_data, present_create_copy, delete_copyout)
9607 (update_dev_host): Likewise.
9608 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_data_start)
9609 (GOACC_data_end, GOACC_enter_exit_data, GOACC_update, GOACC_wait):
9610 Likewise.
9611 * plugin/plugin-nvptx.c (nvptx_exec, nvptx_alloc, nvptx_free)
9612 (GOMP_OFFLOAD_openacc_exec, GOMP_OFFLOAD_openacc_async_exec):
9613 Likewise.
9614 * libgomp.texi: Update.
9615 * testsuite/libgomp.oacc-c-c++-common/acc_prof-dispatch-1.c: New
9616 file.
9617 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Likewise.
9618 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
9619 Likewise.
9620 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
9621 Likewise.
9622 * testsuite/libgomp.oacc-c-c++-common/acc_prof-valid_bytes-1.c:
9623 Likewise.
9624 * testsuite/libgomp.oacc-c-c++-common/acc_prof-version-1.c:
9625 Likewise.
9626
1f4c5b9b
CLT
96272019-05-13 Chung-Lin Tang <cltang@codesourcery.com>
9628
9629 * libgomp-plugin.h (struct goacc_asyncqueue): Declare.
9630 (struct goacc_asyncqueue_list): Likewise.
9631 (goacc_aq): Likewise.
9632 (goacc_aq_list): Likewise.
9633 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
9634 (GOMP_OFFLOAD_openacc_async_test): Remove.
9635 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
9636 (GOMP_OFFLOAD_openacc_async_wait): Remove.
9637 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
9638 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
9639 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
9640 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
9641 (GOMP_OFFLOAD_openacc_exec): Adjust declaration.
9642 (GOMP_OFFLOAD_openacc_cuda_get_stream): Likewise.
9643 (GOMP_OFFLOAD_openacc_cuda_set_stream): Likewise.
9644 (GOMP_OFFLOAD_openacc_async_exec): Declare.
9645 (GOMP_OFFLOAD_openacc_async_construct): Declare.
9646 (GOMP_OFFLOAD_openacc_async_destruct): Declare.
9647 (GOMP_OFFLOAD_openacc_async_test): Declare.
9648 (GOMP_OFFLOAD_openacc_async_synchronize): Declare.
9649 (GOMP_OFFLOAD_openacc_async_serialize): Declare.
9650 (GOMP_OFFLOAD_openacc_async_queue_callback): Declare.
9651 (GOMP_OFFLOAD_openacc_async_host2dev): Declare.
9652 (GOMP_OFFLOAD_openacc_async_dev2host): Declare.
9653
9654 * libgomp.h (struct acc_dispatch_t): Define 'async' sub-struct.
9655 (gomp_acc_insert_pointer): Adjust declaration.
9656 (gomp_copy_host2dev): New declaration.
9657 (gomp_copy_dev2host): Likewise.
9658 (gomp_map_vars_async): Likewise.
9659 (gomp_unmap_tgt): Likewise.
9660 (gomp_unmap_vars_async): Likewise.
9661 (gomp_fini_device): Likewise.
9662
9663 * oacc-async.c (get_goacc_thread): New function.
9664 (get_goacc_thread_device): New function.
9665 (lookup_goacc_asyncqueue): New function.
9666 (get_goacc_asyncqueue): New function.
9667 (acc_async_test): Adjust code to use new async design.
9668 (acc_async_test_all): Likewise.
9669 (acc_wait): Likewise.
9670 (acc_wait_async): Likewise.
9671 (acc_wait_all): Likewise.
9672 (acc_wait_all_async): Likewise.
9673 (goacc_async_free): New function.
9674 (goacc_init_asyncqueues): Likewise.
9675 (goacc_fini_asyncqueues): Likewise.
9676 * oacc-cuda.c (acc_get_cuda_stream): Adjust code to use new async
9677 design.
9678 (acc_set_cuda_stream): Likewise.
9679 * oacc-host.c (host_openacc_exec): Adjust parameters, remove 'async'.
9680 (host_openacc_register_async_cleanup): Remove.
9681 (host_openacc_async_exec): New function.
9682 (host_openacc_async_test): Adjust parameters.
9683 (host_openacc_async_test_all): Remove.
9684 (host_openacc_async_wait): Remove.
9685 (host_openacc_async_wait_async): Remove.
9686 (host_openacc_async_wait_all): Remove.
9687 (host_openacc_async_wait_all_async): Remove.
9688 (host_openacc_async_set_async): Remove.
9689 (host_openacc_async_synchronize): New function.
9690 (host_openacc_async_serialize): New function.
9691 (host_openacc_async_host2dev): New function.
9692 (host_openacc_async_dev2host): New function.
9693 (host_openacc_async_queue_callback): New function.
9694 (host_openacc_async_construct): New function.
9695 (host_openacc_async_destruct): New function.
9696 (struct gomp_device_descr host_dispatch): Remove initialization of old
93d90219 9697 interface, add initialization of new async sub-struct.
1f4c5b9b
CLT
9698 * oacc-init.c (acc_shutdown_1): Adjust to use gomp_fini_device.
9699 (goacc_attach_host_thread_to_device): Remove old async code usage.
9700 * oacc-int.h (goacc_init_asyncqueues): New declaration.
9701 (goacc_fini_asyncqueues): Likewise.
9702 (goacc_async_copyout_unmap_vars): Likewise.
9703 (goacc_async_free): Likewise.
9704 (get_goacc_asyncqueue): Likewise.
9705 (lookup_goacc_asyncqueue): Likewise.
9706 * oacc-mem.c (memcpy_tofrom_device): Adjust code to use new async
9707 design.
9708 (present_create_copy): Adjust code to use new async design.
9709 (delete_copyout): Likewise.
9710 (update_dev_host): Likewise.
9711 (gomp_acc_insert_pointer): Add async parameter, adjust code to use new
9712 async design.
9713 (gomp_acc_remove_pointer): Adjust code to use new async design.
9714 * oacc-parallel.c (GOACC_parallel_keyed): Adjust code to use new async
9715 design.
9716 (GOACC_enter_exit_data): Likewise.
9717 (goacc_wait): Likewise.
9718 (GOACC_update): Likewise.
9719 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Change to assert fail
9720 when called, warn as obsolete in comment.
9721 * target.c (goacc_device_copy_async): New function.
9722 (gomp_copy_host2dev): Remove 'static', add goacc_asyncqueue parameter,
9723 add goacc_device_copy_async case.
9724 (gomp_copy_dev2host): Likewise.
9725 (gomp_map_vars_existing): Add goacc_asyncqueue parameter, adjust code.
9726 (gomp_map_pointer): Likewise.
9727 (gomp_map_fields_existing): Likewise.
9728 (gomp_map_vars_internal): New always_inline function, renamed from
9729 gomp_map_vars.
9730 (gomp_map_vars): Implement by calling gomp_map_vars_internal.
9731 (gomp_map_vars_async): Implement by calling gomp_map_vars_internal,
9732 passing goacc_asyncqueue argument.
9733 (gomp_unmap_tgt): Remove static, add attribute_hidden.
9734 (gomp_unref_tgt): New function.
9735 (gomp_unmap_vars_internal): New always_inline function, renamed from
9736 gomp_unmap_vars.
9737 (gomp_unmap_vars): Implement by calling gomp_unmap_vars_internal.
9738 (gomp_unmap_vars_async): Implement by calling
9739 gomp_unmap_vars_internal, passing goacc_asyncqueue argument.
9740 (gomp_fini_device): New function.
9741 (gomp_exit_data): Adjust gomp_copy_dev2host call.
9742 (gomp_load_plugin_for_device): Remove old interface, adjust to load
9743 new async interface.
9744 (gomp_target_fini): Adjust code to call gomp_fini_device.
9745
9746 * plugin/plugin-nvptx.c (struct cuda_map): Remove.
9747 (struct ptx_stream): Remove.
9748 (struct nvptx_thread): Remove current_stream field.
9749 (cuda_map_create): Remove.
9750 (cuda_map_destroy): Remove.
9751 (map_init): Remove.
9752 (map_fini): Remove.
9753 (map_pop): Remove.
9754 (map_push): Remove.
9755 (struct goacc_asyncqueue): Define.
9756 (struct nvptx_callback): Define.
9757 (struct ptx_free_block): Define.
9758 (struct ptx_device): Remove null_stream, active_streams, async_streams,
9759 stream_lock, and next fields.
9760 (enum ptx_event_type): Remove.
9761 (struct ptx_event): Remove.
9762 (ptx_event_lock): Remove.
9763 (ptx_events): Remove.
9764 (init_streams_for_device): Remove.
9765 (fini_streams_for_device): Remove.
9766 (select_stream_for_async): Remove.
9767 (nvptx_init): Remove ptx_events and ptx_event_lock references.
9768 (nvptx_attach_host_thread_to_device): Remove CUDA_ERROR_NOT_PERMITTED
9769 case.
9770 (nvptx_open_device): Add free_blocks initialization, remove
9771 init_streams_for_device call.
9772 (nvptx_close_device): Remove fini_streams_for_device call, add
9773 free_blocks destruct code.
9774 (event_gc): Remove.
9775 (event_add): Remove.
9776 (nvptx_exec): Adjust parameters and code.
9777 (nvptx_free): Likewise.
9778 (nvptx_host2dev): Remove.
9779 (nvptx_dev2host): Remove.
9780 (nvptx_set_async): Remove.
9781 (nvptx_async_test): Remove.
9782 (nvptx_async_test_all): Remove.
9783 (nvptx_wait): Remove.
9784 (nvptx_wait_async): Remove.
9785 (nvptx_wait_all): Remove.
9786 (nvptx_wait_all_async): Remove.
9787 (nvptx_get_cuda_stream): Remove.
9788 (nvptx_set_cuda_stream): Remove.
9789 (GOMP_OFFLOAD_alloc): Adjust code.
9790 (GOMP_OFFLOAD_free): Likewise.
9791 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
9792 (GOMP_OFFLOAD_openacc_exec): Adjust parameters and code.
9793 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
9794 (GOMP_OFFLOAD_openacc_async_wait): Remove.
9795 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
9796 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
9797 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
9798 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
9799 (cuda_free_argmem): New function.
9800 (GOMP_OFFLOAD_openacc_async_exec): New plugin hook function.
9801 (GOMP_OFFLOAD_openacc_create_thread_data): Adjust code.
9802 (GOMP_OFFLOAD_openacc_cuda_get_stream): Adjust code.
9803 (GOMP_OFFLOAD_openacc_cuda_set_stream): Adjust code.
9804 (GOMP_OFFLOAD_openacc_async_construct): New plugin hook function.
9805 (GOMP_OFFLOAD_openacc_async_destruct): New plugin hook function.
9806 (GOMP_OFFLOAD_openacc_async_test): Remove and re-implement.
9807 (GOMP_OFFLOAD_openacc_async_synchronize): New plugin hook function.
9808 (GOMP_OFFLOAD_openacc_async_serialize): New plugin hook function.
9809 (GOMP_OFFLOAD_openacc_async_queue_callback): New plugin hook function.
9810 (cuda_callback_wrapper): New function.
9811 (cuda_memcpy_sanity_check): New function.
9812 (GOMP_OFFLOAD_host2dev): Remove and re-implement.
9813 (GOMP_OFFLOAD_dev2host): Remove and re-implement.
9814 (GOMP_OFFLOAD_openacc_async_host2dev): New plugin hook function.
9815 (GOMP_OFFLOAD_openacc_async_dev2host): New plugin hook function.
9816
da2d30c1
TS
98172019-05-07 Thomas Schwinge <thomas@codesourcery.com>
9818
9819 PR target/87835
9820 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Update.
9821
2bbbfa4e
TS
98222019-05-06 Thomas Schwinge <thomas@codesourcery.com>
9823
9824 * oacc-parallel.c: Add comments to legacy entry points (GCC 5).
9825
bbf1efe1
KB
98262019-03-27 Kevin Buettner <kevinb@redhat.com>
9827
9828 * team.c (gomp_team_start): Initialize pool->threads[0].
9829
1241136c
TS
98302019-02-22 Thomas Schwinge <thomas@codesourcery.com>
9831
b03d721a
TS
9832 * testsuite/libgomp.oacc-c++/c++.exp: Specify
9833 "-foffload=$offload_target".
9834 * testsuite/libgomp.oacc-c/c.exp: Likewise.
9835 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
9836 * testsuite/lib/libgomp.exp
9837 (check_effective_target_openacc_nvidia_accel_configured): Remove,
9838 as (conceptually) merged into
9839 check_effective_target_openacc_nvidia_accel_selected. Adjust all
9840 users.
9841
0a0384b4
TS
9842 * plugin/configfrag.ac: Populate and AC_SUBST offload_targets.
9843 * testsuite/libgomp-test-support.exp.in: Adjust.
9844 * testsuite/lib/libgomp.exp: Likewise. Don't populate
9845 openacc_device_types_s.
9846 (offload_target_to_openacc_device_type): New proc.
9847 * testsuite/libgomp.oacc-c++/c++.exp: Adjust.
9848 * testsuite/libgomp.oacc-c/c.exp: Likewise.
9849 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
9850 * Makefile.in: Regenerate.
9851 * configure: Likewise.
9852 * testsuite/Makefile.in: Likewise.
9853
ee332b4a
TS
9854 * plugin/configfrag.ac: Populate and AC_SUBST offload_plugins
9855 instead of offload_targets, and AC_DEFINE_UNQUOTED OFFLOAD_PLUGINS
9856 instead of OFFLOAD_TARGETS.
9857 * target.c (gomp_target_init): Adjust.
9858 * testsuite/libgomp-test-support.exp.in: Likewise.
9859 * testsuite/lib/libgomp.exp: Likewise. Populate
9860 openacc_device_types_s instead of offload_targets_s_openacc.
9861 (check_effective_target_openacc_nvidia_accel_selected)
9862 (check_effective_target_openacc_host_selected): Adjust.
9863 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
9864 * testsuite/libgomp.oacc-c/c.exp: Likewise.
9865 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
9866 * Makefile.in: Regenerate.
9867 * config.h.in: Likewise.
9868 * configure: Likewise.
9869 * testsuite/Makefile.in: Likewise.
9870
1241136c
TS
9871 * testsuite/lib/libgomp.exp: Error out for unknown offload target.
9872 * testsuite/libgomp.oacc-c++/c++.exp: Likewise. Report if
9873 "offloading: supported, but hardware not accessible".
9874 * testsuite/libgomp.oacc-c/c.exp: Likewise.
9875 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
9876
19695f4d
CLT
98772019-02-19 Chung-Lin Tang <cltang@codesourcery.com>
9878
9879 PR c/87924
9880 * oacc-parallel.c (GOACC_parallel_keyed): Remove condition on call to
9881 goacc_wait().
9882 (goacc_wait): Handle ACC_ASYNC_NOVAL case, remove goacc_thread() call
9883 and related adjustment.
9884
8b44f8ec
JJ
98852019-01-30 Jakub Jelinek <jakub@redhat.com>
9886
9887 PR c++/88988
9888 * testsuite/libgomp.c++/pr88988.C: New test.
9889
be3a87e7
JJ
98902019-01-28 Jakub Jelinek <jakub@redhat.com>
9891
9892 PR middle-end/89002
9893 * testsuite/libgomp.c/pr89002.c: New test.
9894
497ef4d7
RB
98952019-01-28 Richard Biener <rguenther@suse.de>
9896
9897 PR testsuite/89064
9898 PR tree-optimization/86865
9899 * testsuite/libgomp.graphite/force-parallel-5.c: XFAIL.
9900
738c56d4
TV
99012019-01-24 Tom de Vries <tdevries@suse.de>
9902
9903 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_fini_device): Free ptx_devices
9904 once instantiated_devices drops to 0.
9905
4a75460b
TV
99062019-01-23 Tom de Vries <tdevries@suse.de>
9907
9908 PR target/PR88946
9909 * plugin/plugin-nvptx.c (cuda_map_destroy): Use CUDA_CALL_NOCHECK for
9910 cuMemFree.
9911 (nvptx_exec): Don't call map_push if mapnum == 0.
9912 * testsuite/libgomp.oacc-c-c++-common/pr88946.c: New test.
9913
4fef8e4d
TV
99142019-01-23 Tom de Vries <tdevries@suse.de>
9915
9916 PR target/88941
9917 PR target/88939
9918 * plugin/plugin-nvptx.c (cuda_map_destroy): Handle map->active case.
9919 (map_fini): Remove "assert (!s->map->active)".
9920 * testsuite/libgomp.oacc-c-c++-common/pr88941.c: New test.
9921
2ee6cb22
TV
99222019-01-23 Tom de Vries <tdevries@suse.de>
9923
9924 PR target/87835
9925 * plugin/plugin-nvptx.c (map_push): Fix adding of allocated element.
9926 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: New test.
9927
d41d952c
TV
99282019-01-15 Tom de Vries <tdevries@suse.de>
9929
9930 PR target/80547
9931 * testsuite/libgomp.oacc-c-c++-common/gang-reduction-var-assignment.c:
9932 New test.
9933
efb56ae8
TV
99342019-01-12 Tom de Vries <tdevries@suse.de>
9935
9936 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: New test.
9937 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c: New test.
9938 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c: New test.
9939 * testsuite/libgomp.oacc-fortran/gemm-2.f90: New test.
9940
2c2ff168
TV
99412019-01-12 Tom de Vries <tdevries@suse.de>
9942
9943 * plugin/plugin-nvptx.c (nvptx_exec): Update error message.
9944
a1057758
TV
99452019-01-12 Tom de Vries <tdevries@suse.de>
9946
9947 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: New test.
9948 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c: New test.
9949 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c: New test.
9950
56314b77
TV
99512019-01-12 Tom de Vries <tdevries@suse.de>
9952
9953 PR target/85486
9954 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: New test.
9955 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: New test.
9956
b39e4366
TV
99572019-01-12 Tom de Vries <tdevries@suse.de>
9958
9959 PR target/85381
9960 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: New test.
9961 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: New test.
9962
2cb7a501
TV
99632019-01-12 Tom de Vries <tdevries@suse.de>
9964
9965 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: New test.
9966 * testsuite/libgomp.oacc-fortran/gemm.f90: New test.
9967 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-10.c: New test.
9968
8e77f71e
TV
99692019-01-12 Tom de Vries <tdevries@suse.de>
9970
9971 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: New test.
9972 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c: New test.
9973 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c: New test.
9974
52d22ece
TV
99752019-01-12 Tom de Vries <tdevries@suse.de>
9976
9977 * plugin/plugin-nvptx.c (nvptx_exec): Update insufficient hardware
9978 resources diagnostic.
9979
2b9d9e39
TV
99802019-01-12 Tom de Vries <tdevries@suse.de>
9981
9982 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: Expect
9983 vector length to be 128.
9984 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Expect vector
9985 length 2097152 to be reduced to 1024 instead of 32.
9986
4102bda6
TS
99872019-01-11 Thomas Schwinge <thomas@codesourcery.com>
9988 James Norris <jnorris@codesourcery.com>
9989
9990 * libgomp.texi: Better distinguish OpenACC and OpenMP "Runtime
9991 Library Routines", and "Environment Variables".
9992
052aaace
TV
99932019-01-11 Tom de Vries <tdevries@suse.de>
9994
9995 * plugin/plugin-nvptx.c (nvptx_exec): Prevent vector_length 64 and
9996 num_workers 16.
9997
9390f916
TV
99982019-01-11 Tom de Vries <tdevries@suse.de>
9999
10000 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Remove
10001 -foffload=-w.
10002 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Same.
10003 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Same.
10004 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Same.
10005 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Same.
10006
2c3e7ad2
TV
100072019-01-11 Tom de Vries <tdevries@suse.de>
10008
10009 * testsuite/libgomp.oacc-c-c++-common/insufficient-resources.c: New
10010 test.
10011
e222497d
NS
100122019-01-10 Nathan Sidwell <nathan@acm.org>
10013 Julian Brown <julian@codesourcery.com>
10014
10015 PR lto/71959
10016 * testsuite/libgomp.oacc-c++/pr71959-aux.cc: New.
10017 * testsuite/libgomp.oacc-c++/pr71959.C: New.
10018
cb87fec3
SH
100192019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
10020
10021 * config/rtems/bar.c: Include "../linux/bar.c" and delete copy
10022 and paste code.
10023
30b4d0d0
SH
100242019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
10025
10026 * config/rtems/affinity-fmt.c: New file. Include affinity-fmt.c,
10027 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
10028 write.
10029
5d0bc70a
TV
100302019-01-09 Tom de Vries <tdevries@suse.de>
10031
10032 PR target/88756
10033 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (ng, nw, vl): Use
10034 #define instead of "const int".
10035 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c (ng, nw, vl): Same.
10036 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c (ng, nw, vl): Same.
10037 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (ng, nw, vl): Same.
10038 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c (ng, nw, vl): Same.
10039
2c372e81
TV
100402019-01-09 Tom de Vries <tdevries@suse.de>
10041
10042 * plugin/plugin-nvptx.c (nvptx_exec): Make sure to launch with at least
10043 one worker.
10044
43493c97
TV
100452019-01-07 Tom de Vries <tdevries@suse.de>
10046
10047 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: Fix
10048 GOMP_OPENACC_DIM argument.
10049
5c571497
TV
100502019-01-03 Tom de Vries <tdevries@suse.de>
10051
10052 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: New test.
10053 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: New test.
10054
a5544970
JJ
100552019-01-01 Jakub Jelinek <jakub@redhat.com>
10056
10057 Update copyright years.
10058
3f27508c
JJ
100592019-01-01 Jakub Jelinek <jakub@redhat.com>
10060
10061 * libgomp.texi: Bump @copying's copyright year.
10062
59d5960c
TS
100632018-12-28 Thomas Schwinge <thomas@codesourcery.com>
10064
10065 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_parallel)
10066 (GOACC_data_start, GOACC_enter_exit_data, GOACC_update)
10067 (GOACC_declare): Redefine the "device" argument to "flags".
10068
a44c1790
TS
100692018-12-28 Thomas Schwinge <thomas@codesourcery.com>
10070 Cesar Philippidis <cesar@codesourcery.com>
10071
10072 * target.c (struct gomp_coalesce_chunk): New structure.
10073 (struct gomp_coalesce_buf): Update the chunks member to use that
10074 type. Adjust all users.
10075
a152954e
TV
100762018-12-19 Tom de Vries <tdevries@suse.de>
10077
10078 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: New test.
10079 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: New test.
10080 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: New test.
10081
49188cd1
TV
100822018-12-19 Tom de Vries <tdevries@suse.de>
10083
10084 * testsuite/lib/libgomp.exp: Add load_lib of scanoffloadrtl.exp.
10085 * testsuite/libgomp.oacc-c-c++-common/nvptx-merged-loop.c: Move from
10086 gcc/testsuite/gcc.dg/goacc.
10087 * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Same.
10088
c759830b
TS
100892018-12-14 Thomas Schwinge <thomas@codesourcery.com>
10090 Chung-Lin Tang <cltang@codesourcery.com>
10091
10092 * oacc-mem.c (acc_present_or_create): Remove definition and change
10093 to alias of acc_create.
10094 (acc_present_or_copyin): Remove definition and change to alias of
10095 acc_copyin.
10096 * oacc-parallel.c (GOACC_enter_exit_data): Call acc_create instead
10097 of acc_present_or_create.
10098 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Remove.
10099 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
10100 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
10101 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
10102 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
10103 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
10104 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
10105 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
10106 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
10107 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
10108 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
10109 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
10110 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
10111 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
10112 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
10113 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
10114
7de562ee
TS
101152018-12-14 Thomas Schwinge <thomas@codesourcery.com>
10116
f847198e
TS
10117 PR libgomp/88495
10118 * plugin/plugin-nvptx.c (nvptx_wait_async): Don't refuse
10119 "identical parameters".
10120 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Update.
10121 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Remove.
10122
c8ab8aab
TS
10123 PR libgomp/88484
10124 * oacc-parallel.c (GOACC_wait): Correct handling for "async >= 0".
10125 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: New file.
10126
1404af62
TS
10127 PR libgomp/88407
10128 * plugin/plugin-nvptx.c (nvptx_async_test, nvptx_wait)
10129 (nvptx_wait_async): Unseen async-argument is a no-op.
10130 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Update.
10131 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Likewise.
10132 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
10133 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
10134 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
10135 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Merge into...
10136 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: ... this. Update.
10137 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Merge into...
10138 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: ... this. Update
10139
7de562ee
TS
10140 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Revise.
10141 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
10142
17469af7
CLT
101432018-12-14 Chung-Lin Tang <cltang@codesourcery.com>
10144
10145 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Adjust.
10146 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
10147 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
10148
18c247cc
TS
101492018-12-14 Thomas Schwinge <thomas@codesourcery.com>
10150
10151 PR libgomp/88370
10152 * libgomp.texi (acc_get_current_cuda_context, acc_get_cuda_stream)
10153 (acc_set_cuda_stream): Clarify.
10154 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
10155 "async_valid_p".
10156 * plugin/plugin-nvptx.c (nvptx_set_cuda_stream): Refuse "async ==
10157 acc_async_sync".
10158 * testsuite/libgomp.oacc-c-c++-common/acc_set_cuda_stream-1.c: New file.
10159 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Likewise.
10160 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Update.
10161 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
10162
b0aba46c
TV
101632018-12-14 Tom de Vries <tdevries@suse.de>
10164
10165 * testsuite/libgomp.c-c++-common/function-not-offloaded-aux.c: New test.
10166 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: New test.
10167 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: New test.
10168 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c: New test.
10169 * testsuite/libgomp.oacc-c-c++-common/variable-not-offloaded.c: New test.
10170
fe0827ee
TV
101712018-12-13 Tom de Vries <tdevries@suse.de>
10172
10173 * affinity-fmt.c (gomp_print_string): New function, factored out of ...
10174 (omp_display_affinity, gomp_display_affinity_thread): ... here, and ...
10175 * fortran.c (omp_display_affinity_): ... here.
10176 * libgomp.h (gomp_print_string): Declare.
10177 * config/nvptx/affinity-fmt.c: New file. Include affinity-fmt.c,
10178 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
10179 write.
10180
a51f8c92
JJ
101812018-12-13 Jakub Jelinek <jakub@redhat.com>
10182
10183 PR libgomp/88460
10184 * testsuite/libgomp.c++/for-24.C (results): Include it in
10185 omp declare target region.
10186 (main): Use map (always, tofrom: results) instead of
10187 map (tofrom: results).
10188
a6ef2ac9
JJ
101892018-12-12 Jakub Jelinek <jakub@redhat.com>
10190
7a289b7d
JJ
10191 PR fortran/88463
10192 * testsuite/libgomp.fortran/pr88463-1.f90: New test.
10193 * testsuite/libgomp.fortran/pr88463-2.f90: New test.
10194
a6ef2ac9
JJ
10195 * testsuite/libgomp.c-c++-common/for-16.c: New test.
10196
9c47a019
AS
101972018-12-12 Andreas Schwab <schwab@suse.de>
10198
10199 * config/linux/ia64/futex.h (sys_futex0): Don't mark r12 as
10200 clobbered.
10201
d0cbb206
TK
102022018-12-09 Thomas Koenig <tkoenig@gcc.gnu.org>
10203
10204 PR fortran/88411
10205 * testsuite/libgomp.fortran/async_io_8.f90: New test.
10206
84ca08d2
TS
102072018-12-09 Thomas Schwinge <thomas@codesourcery.com>
10208 Jakub Jelinek <jakub@redhat.com>
10209
10210 * target.c (gomp_map_vars): Call gomp_copy_host2dev instead of
10211 devicep->host2dev_func.
10212
6997628d
JJ
102132018-12-08 Jakub Jelinek <jakub@redhat.com>
10214
10215 PR libgomp/87995
10216 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: Require
10217 tls_runtime effective target.
10218 (t): New threadprivate variable.
10219 (main): Set t in threads which execute iterations of the worksharing
10220 loop. Propagate that to the task after the loop and don't abort
10221 if the current taskgroup hasn't been cancelled.
10222
daa8c1d7
JJ
102232018-12-02 Jakub Jelinek <jakub@redhat.com>
10224
4a82df9a
JJ
10225 * testsuite/libgomp.c/task-reduction-3.c: New test.
10226
daa8c1d7
JJ
10227 * testsuite/libgomp.c-c++-common/cancel-taskgroup-4.c: New test.
10228
fe570ff8
CP
102292018-11-30 Cesar Philippidis <cesar@codesourcery.com>
10230
10231 PR libgomp/88288
10232 * oacc-parallel.c (GOACC_parallel_keyed): Add offset to devaddrs.
10233 * testsuite/libgomp.oacc-c-c++-common/pr88288.c: New test.
10234
c223608f
TS
102352018-11-30 Thomas Schwinge <thomas@codesourcery.com>
10236
10237 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: New file.
10238
fc60283c
RB
102392018-10-19 Richard Biener <rguenther@suse.de>
10240
10241 PR tree-optimization/88182
10242 * testsuite/libgomp.c++/pr88182.C: Move to g++.dg/gomp.
10243
ffcf3b79
JJ
102442018-11-26 Jakub Jelinek <jakub@redhat.com>
10245
10246 * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Drop dejagnu.
10247 (RUNTEST): Don't define.
10248 (RUNTESTDEFAULTFLAGS): Add.
10249 (check-DEJAGNU, site.exp, distclean-DEJAGNU): New goals.
10250 (distclean-am): Depend on distclean-DEJAGNU.
10251 (check-am): If -j% option is present in MFLAGS and if
10252 `getconf _NPROCESSORS_ONLN` is more than 8, export OMP_NUM_THREADS=8.
10253 (.PHONY): Add check-DEJAGNU and distclean-DEJAGNU.
10254 * testsuite/Makefile.in: Regenerated.
10255
ef6e6914
RB
102562018-11-26 Richard Biener <rguenther@suse.de>
10257
10258 PR tree-optimization/88182
10259 * testsuite/libgomp.c++/pr88182.C: New testcase.
10260
72d3bb76
JJ
102612018-11-20 Jakub Jelinek <jakub@redhat.com>
10262
10263 PR bootstrap/88106
10264 * config/mingw32/affinity-fmt.c: New file.
10265
207286c3
JJ
102662018-11-09 Jakub Jelinek <jakub@redhat.com>
10267
9666c522
JJ
10268 * affinity-fmt.c: Include inttypes.h if HAVE_INTTYPES_H.
10269 (gomp_display_affinity): Use __builtin_choose_expr to handle
10270 properly handle argument having integral, or pointer or some other
10271 type. If inttypes.h is available and PRIx64 is defined, use PRIx64
10272 with uint64_t type instead of %llx and unsigned long long.
10273
207286c3
JJ
10274 * testsuite/libgomp.c-c++-common/task-reduction-13.c: New test.
10275 * testsuite/libgomp.c-c++-common/task-reduction-14.c: New test.
10276
2033f45b
RO
102772018-11-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
10278
10279 * affinity.c: Include <string.h>, <stdio.h>.
10280 (gomp_display_affinity_place): Remove cpusetp.
10281 * teams.c: Include <limits.h>.
10282
28567c40
JJ
102832018-11-08 Jakub Jelinek <jakub@redhat.com>
10284
8991d779
JJ
10285 * testsuite/libgomp.c-c++-common/task-reduction-8.c (bar): Add
10286 in_reduction clause for s[0].
10287
28567c40
JJ
10288 * affinity.c (gomp_display_affinity_place): New function.
10289 * affinity-fmt.c: New file.
10290 * alloc.c (gomp_aligned_alloc, gomp_aligned_free): New functions.
10291 * config/linux/affinity.c (gomp_display_affinity_place): New function.
10292 * config/nvptx/icv-device.c (omp_get_num_teams, omp_get_team_num):
10293 Move these functions to ...
10294 * config/nvptx/teams.c: ... here. New file.
10295 * config/nvptx/target.c (omp_pause_resource, omp_pause_resource_all):
10296 New functions.
10297 * config/nvptx/team.c (gomp_team_start, gomp_pause_host): New
10298 functions.
10299 * configure.ac: Check for aligned_alloc, posix_memalign, memalign
10300 and _aligned_malloc.
10301 (HAVE_UNAME, HAVE_GETHOSTNAME, HAVE_GETPID): Add new tests.
10302 * configure.tgt: Add -DUSING_INITIAL_EXEC_TLS to XCFLAGS for Linux.
10303 * env.c (gomp_display_affinity_var, gomp_affinity_format_var,
10304 gomp_affinity_format_len): New variables.
10305 (parse_schedule): Parse monotonic and nonmonotonic modifiers in
10306 OMP_SCHEDULE variable. Set GFS_MONOTONIC for monotonic schedules.
10307 (handle_omp_display_env): Display monotonic/nonmonotonic schedule
10308 modifiers. Display (non-default) chunk sizes. Print
10309 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT.
10310 (initialize_env): Don't call pthread_attr_setdetachstate. Handle
10311 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT env vars.
10312 * fortran.c: Include stdio.h and string.h.
10313 (omp_pause_resource, omp_pause_resource_all): Add ialias_redirect.
10314 (omp_get_schedule_, omp_get_schedule_8_): Mask off GFS_MONOTONIC bit.
10315 (omp_set_affinity_format_, omp_get_affinity_format_,
10316 omp_display_affinity_, omp_capture_affinity_, omp_pause_resource_,
10317 omp_pause_resource_all_): New functions.
10318 * icv.c (omp_set_schedule): Mask off omp_sched_monotonic bit in
10319 switch.
10320 * icv-device.c (omp_get_num_teams, omp_get_team_num): Move these
10321 functions to ...
10322 * teams.c: ... here. New file.
10323 * libgomp_g.h: Include gstdint.h.
10324 (GOMP_loop_nonmonotonic_runtime_start,
10325 GOMP_loop_maybe_nonmonotonic_runtime_start, GOMP_loop_start,
10326 GOMP_loop_ordered_start, GOMP_loop_nonmonotonic_runtime_next,
10327 GOMP_loop_maybe_nonmonotonic_runtime_next, GOMP_loop_doacross_start,
10328 GOMP_parallel_loop_nonmonotonic_runtime,
10329 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
10330 GOMP_loop_ull_nonmonotonic_runtime_start,
10331 GOMP_loop_ull_maybe_nonmonotonic_runtime_start, GOMP_loop_ull_start,
10332 GOMP_loop_ull_ordered_start, GOMP_loop_ull_nonmonotonic_runtime_next,
10333 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
10334 GOMP_loop_ull_doacross_start, GOMP_parallel_reductions,
10335 GOMP_taskwait_depend, GOMP_taskgroup_reduction_register,
10336 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
10337 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
10338 GOMP_teams_reg): Declare.
10339 * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Define unless
10340 gomp_aligned_alloc uses fallback implementation.
10341 (gomp_aligned_alloc, gomp_aligned_free): Declare.
10342 (enum gomp_schedule_type): Add GFS_MONOTONIC.
10343 (struct gomp_doacross_work_share): Add extra field.
10344 (struct gomp_work_share): Add task_reductions field.
10345 (struct gomp_taskgroup): Add workshare and reductions fields.
10346 (GOMP_NEEDS_THREAD_HANDLE): Define if needed.
10347 (gomp_thread_handle): New typedef.
10348 (gomp_display_affinity_place, gomp_set_affinity_format,
10349 gomp_display_string, gomp_display_affinity,
10350 gomp_display_affinity_thread): Declare.
10351 (gomp_doacross_init, gomp_doacross_ull_init): Add size_t argument.
10352 (gomp_parallel_reduction_register, gomp_workshare_taskgroup_start,
10353 gomp_workshare_task_reduction_register): Declare.
10354 (gomp_team_start): Add taskgroup argument.
10355 (gomp_pause_host): Declare.
10356 (gomp_init_work_share, gomp_work_share_start): Change bool argument
10357 to size_t.
10358 (gomp_thread_self, gomp_thread_to_pthread_t): New inline functions.
10359 * libgomp.map (GOMP_5.0): Export GOMP_loop_start,
10360 GOMP_loop_ordered_start, GOMP_loop_doacross_start,
10361 GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
10362 GOMP_loop_ull_doacross_start,
10363 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
10364 GOMP_loop_maybe_nonmonotonic_runtime_next,
10365 GOMP_loop_maybe_nonmonotonic_runtime_start,
10366 GOMP_loop_nonmonotonic_runtime_next,
10367 GOMP_loop_nonmonotonic_runtime_start,
10368 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
10369 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
10370 GOMP_loop_ull_nonmonotonic_runtime_next,
10371 GOMP_loop_ull_nonmonotonic_runtime_start,
10372 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
10373 GOMP_parallel_loop_nonmonotonic_runtime, GOMP_parallel_reductions,
10374 GOMP_taskgroup_reduction_register,
10375 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
10376 GOMP_teams_reg and GOMP_taskwait_depend.
10377 (OMP_5.0): Export omp_pause_resource{,_all}{,_},
10378 omp_{capture,display}_affinity{,_}, and
10379 omp_[gs]et_affinity_format{,_}.
10380 * loop.c: Include string.h.
10381 (GOMP_loop_runtime_next): Add ialias.
10382 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
10383 (gomp_loop_static_start, gomp_loop_dynamic_start,
10384 gomp_loop_guided_start, gomp_loop_ordered_static_start,
10385 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
10386 gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
10387 gomp_loop_doacross_guided_start): Adjust gomp_work_share_start
10388 or gomp_doacross_init callers.
10389 (gomp_adjust_sched, GOMP_loop_start, GOMP_loop_ordered_start,
10390 GOMP_loop_doacross_start): New functions.
10391 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
10392 GOMP_loop_doacross_runtime_start, GOMP_parallel_loop_runtime_start):
10393 Mask off GFS_MONOTONIC bit.
10394 (GOMP_loop_maybe_nonmonotonic_runtime_next,
10395 GOMP_loop_maybe_nonmonotonic_runtime_start,
10396 GOMP_loop_nonmonotonic_runtime_next,
10397 GOMP_loop_nonmonotonic_runtime_start,
10398 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
10399 GOMP_parallel_loop_nonmonotonic_runtime): New aliases or wrapper
10400 functions.
10401 (gomp_parallel_loop_start): Pass NULL as taskgroup to
10402 gomp_team_start.
10403 * loop_ull.c: Include string.h.
10404 (GOMP_loop_ull_runtime_next): Add ialias.
10405 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
10406 (gomp_loop_ull_static_start, gomp_loop_ull_dynamic_start,
10407 gomp_loop_ull_guided_start, gomp_loop_ull_ordered_static_start,
10408 gomp_loop_ull_ordered_dynamic_start,
10409 gomp_loop_ull_ordered_guided_start,
10410 gomp_loop_ull_doacross_static_start,
10411 gomp_loop_ull_doacross_dynamic_start,
10412 gomp_loop_ull_doacross_guided_start): Adjust gomp_work_share_start
10413 and gomp_doacross_ull_init callers.
10414 (gomp_adjust_sched, GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
10415 GOMP_loop_ull_doacross_start): New functions.
10416 (GOMP_loop_ull_runtime_start,
10417 GOMP_loop_ull_ordered_runtime_start,
10418 GOMP_loop_ull_doacross_runtime_start): Mask off GFS_MONOTONIC bit.
10419 (GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
10420 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
10421 GOMP_loop_ull_nonmonotonic_runtime_next,
10422 GOMP_loop_ull_nonmonotonic_runtime_start): Likewise.
10423 * Makefile.am (libgomp_la_SOURCES): Add teams.c and affinity-fmt.c.
10424 * omp.h.in (enum omp_sched_t): Add omp_sched_monotonic.
10425 (omp_pause_resource_t, omp_depend_t): New typedefs.
10426 (enum omp_lock_hint_t): Renamed to ...
10427 (enum omp_sync_hint_t): ... this. Define omp_sync_hint_*
10428 enumerators using numbers and omp_lock_hint_* as their aliases.
10429 (omp_lock_hint_t): New typedef. Rename to ...
10430 (omp_sync_hint_t): ... this.
10431 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint): Use
10432 omp_sync_hint_t instead of omp_lock_hint_t.
10433 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
10434 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
10435 Declare.
10436 (omp_target_is_present, omp_target_disassociate_ptr):
10437 Change first argument from void * to const void *.
10438 (omp_target_memcpy, omp_target_memcpy_rect): Change second argument
10439 from void * to const void *.
10440 (omp_target_associate_ptr): Change first and second arguments from
10441 void * to const void *.
10442 * omp_lib.f90.in (omp_pause_resource_kind, omp_pause_soft,
10443 omp_pause_hard): New parameters.
10444 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
10445 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
10446 New interfaces.
10447 * omp_lib.h.in (omp_pause_resource_kind, omp_pause_soft,
10448 omp_pause_hard): New parameters.
10449 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
10450 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
10451 New externals.
10452 * ordered.c (gomp_doacross_init, gomp_doacross_ull_init): Add
10453 EXTRA argument. If not needed to prepare array, if extra is 0,
10454 clear ws->doacross, otherwise allocate just doacross structure and
10455 extra payload. If array is needed, allocate also extra payload.
10456 (GOMP_doacross_post, GOMP_doacross_wait, GOMP_doacross_ull_post,
10457 GOMP_doacross_ull_wait): Handle doacross->array == NULL like
10458 doacross == NULL.
10459 * parallel.c (GOMP_parallel_start): Pass NULL as taskgroup to
10460 gomp_team_start.
10461 (GOMP_parallel): Likewise. Formatting fix.
10462 (GOMP_parallel_reductions): New function.
10463 (GOMP_cancellation_point): If taskgroup has workshare
10464 flag set, check cancelled of prev taskgroup if any.
10465 (GOMP_cancel): If taskgroup has workshare flag set, set cancelled
10466 on prev taskgroup if any.
10467 * sections.c: Include string.h.
10468 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
10469 (GOMP_sections_start): Adjust gomp_work_share_start caller.
10470 (GOMP_sections2_start): New function.
10471 (GOMP_parallel_sections_start, GOMP_parallel_sections):
10472 Pass NULL as taskgroup to gomp_team_start.
10473 * single.c (GOMP_single_start, GOMP_single_copy_start): Adjust
10474 gomp_work_share_start callers.
10475 * target.c (GOMP_target_update_ext, GOMP_target_enter_exit_data):
10476 If taskgroup has workshare flag set, check cancelled on prev
10477 taskgroup if any. Guard all cancellation tests with
10478 gomp_cancel_var test.
10479 (omp_target_is_present, omp_target_disassociate_ptr):
10480 Change ptr argument from void * to const void *.
10481 (omp_target_memcpy): Change src argument from void * to const void *.
10482 (omp_target_memcpy_rect): Likewise.
10483 (omp_target_memcpy_rect_worker): Likewise. Use const char * casts
10484 instead of char * where needed.
10485 (omp_target_associate_ptr): Change host_ptr and device_ptr arguments
10486 from void * to const void *.
10487 (omp_pause_resource, omp_pause_resource_all): New functions.
10488 * task.c (gomp_task_handle_depend): Handle new depend array format
10489 in addition to the old. Handle mutexinoutset kinds the same as
10490 inout for now, handle unspecified kinds.
10491 (gomp_create_target_task): If taskgroup has workshare flag set, check
10492 cancelled on prev taskgroup if any. Guard all cancellation tests with
10493 gomp_cancel_var test. Handle new depend array format count in
10494 addition to the old.
10495 (GOMP_task): Likewise. Adjust function comment.
10496 (gomp_task_run_pre): If taskgroup has workshare flag set, check
10497 cancelled on prev taskgroup if any. Guard all cancellation tests with
10498 gomp_cancel_var test.
10499 (GOMP_taskwait_depend): New function.
10500 (gomp_task_maybe_wait_for_dependencies): Handle new depend array
10501 format in addition to the old. Handle mutexinoutset kinds the same as
10502 inout for now, handle unspecified kinds. Fix a function comment typo.
10503 (gomp_taskgroup_init): New function.
10504 (GOMP_taskgroup_start): Use it.
10505 (gomp_reduction_register, gomp_create_artificial_team,
10506 GOMP_taskgroup_reduction_register,
10507 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
10508 gomp_parallel_reduction_register,
10509 gomp_workshare_task_reduction_register,
10510 gomp_workshare_taskgroup_start,
10511 GOMP_workshare_task_reduction_unregister): New functions.
10512 * taskloop.c (GOMP_taskloop): If taskgroup has workshare flag set,
10513 check cancelled on prev taskgroup if any. Guard all cancellation
10514 tests with gomp_cancel_var test. Handle GOMP_TASK_FLAG_REDUCTION flag
10515 by calling GOMP_taskgroup_reduction_register.
10516 * team.c (gomp_thread_attr): Remove comment.
10517 (struct gomp_thread_start_data): Add handle field.
10518 (gomp_thread_start): Call pthread_detach.
10519 (gomp_new_team): Adjust gomp_init_work_share caller.
10520 (gomp_free_pool_helper): Call pthread_detach.
10521 (gomp_team_start): Add taskgroup argument, initialize implicit
10522 tasks' taskgroup field to that. Don't call
10523 pthread_attr_setdetachstate. Handle OMP_DISPLAY_AFFINITY env var.
10524 (gomp_team_end): Determine nesting by thr->ts.level != 0
10525 rather than thr->ts.team != NULL.
10526 (gomp_pause_pool_helper, gomp_pause_host): New functions.
10527 * work.c (alloc_work_share): Use gomp_aligned_alloc instead of
10528 gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined.
10529 (gomp_init_work_share): Change ORDERED argument from bool to size_t,
10530 if more than 1 allocate also extra payload at the end of array. Never
10531 keep ordered_team_ids NULL, set it to inline_ordered_team_ids instead.
10532 (gomp_work_share_start): Change ORDERED argument from bool to size_t,
10533 return true instead of ws.
10534 * Makefile.in: Regenerated.
10535 * configure: Regenerated.
10536 * config.h.in: Regenerated.
10537 * testsuite/libgomp.c/cancel-for-2.c (foo): Use cancel modifier
10538 in some cases.
10539 * testsuite/libgomp.c-c++-common/cancel-parallel-1.c: New test.
10540 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: New test.
10541 * testsuite/libgomp.c-c++-common/depend-iterator-1.c: New test.
10542 * testsuite/libgomp.c-c++-common/depend-iterator-2.c: New test.
10543 * testsuite/libgomp.c-c++-common/depend-mutexinout-1.c: New test.
10544 * testsuite/libgomp.c-c++-common/depend-mutexinout-2.c: New test.
10545 * testsuite/libgomp.c-c++-common/depobj-1.c: New test.
10546 * testsuite/libgomp.c-c++-common/display-affinity-1.c: New test.
10547 * testsuite/libgomp.c-c++-common/for-10.c: New test.
10548 * testsuite/libgomp.c-c++-common/for-11.c: New test.
10549 * testsuite/libgomp.c-c++-common/for-12.c: New test.
10550 * testsuite/libgomp.c-c++-common/for-13.c: New test.
10551 * testsuite/libgomp.c-c++-common/for-14.c: New test.
10552 * testsuite/libgomp.c-c++-common/for-15.c: New test.
10553 * testsuite/libgomp.c-c++-common/for-2.h: If CONDNE macro is defined,
10554 define a different N(test), don't define N(f0) to N(f14), but instead
10555 define N(f20) to N(f34) using != comparisons.
10556 * testsuite/libgomp.c-c++-common/for-7.c: New test.
10557 * testsuite/libgomp.c-c++-common/for-8.c: New test.
10558 * testsuite/libgomp.c-c++-common/for-9.c: New test.
10559 * testsuite/libgomp.c-c++-common/master-combined-1.c: New test.
10560 * testsuite/libgomp.c-c++-common/pause-1.c: New test.
10561 * testsuite/libgomp.c-c++-common/pause-2.c: New test.
10562 * testsuite/libgomp.c-c++-common/pr66199-10.c: New test.
10563 * testsuite/libgomp.c-c++-common/pr66199-11.c: New test.
10564 * testsuite/libgomp.c-c++-common/pr66199-12.c: New test.
10565 * testsuite/libgomp.c-c++-common/pr66199-13.c: New test.
10566 * testsuite/libgomp.c-c++-common/pr66199-14.c: New test.
10567 * testsuite/libgomp.c-c++-common/simd-1.c: New test.
10568 * testsuite/libgomp.c-c++-common/taskloop-reduction-1.c: New test.
10569 * testsuite/libgomp.c-c++-common/taskloop-reduction-2.c: New test.
10570 * testsuite/libgomp.c-c++-common/taskloop-reduction-3.c: New test.
10571 * testsuite/libgomp.c-c++-common/taskloop-reduction-4.c: New test.
10572 * testsuite/libgomp.c-c++-common/task-reduction-11.c: New test.
10573 * testsuite/libgomp.c-c++-common/task-reduction-12.c: New test.
10574 * testsuite/libgomp.c-c++-common/task-reduction-1.c: New test.
10575 * testsuite/libgomp.c-c++-common/task-reduction-2.c: New test.
10576 * testsuite/libgomp.c-c++-common/task-reduction-3.c: New test.
10577 * testsuite/libgomp.c-c++-common/task-reduction-4.c: New test.
10578 * testsuite/libgomp.c-c++-common/task-reduction-5.c: New test.
10579 * testsuite/libgomp.c-c++-common/task-reduction-6.c: New test.
10580 * testsuite/libgomp.c-c++-common/task-reduction-7.c: New test.
10581 * testsuite/libgomp.c-c++-common/task-reduction-8.c: New test.
10582 * testsuite/libgomp.c-c++-common/task-reduction-9.c: New test.
10583 * testsuite/libgomp.c-c++-common/taskwait-depend-1.c: New test.
10584 * testsuite/libgomp.c++/depend-1.C: New test.
10585 * testsuite/libgomp.c++/depend-iterator-1.C: New test.
10586 * testsuite/libgomp.c++/depobj-1.C: New test.
10587 * testsuite/libgomp.c++/for-16.C: New test.
10588 * testsuite/libgomp.c++/for-21.C: New test.
10589 * testsuite/libgomp.c++/for-22.C: New test.
10590 * testsuite/libgomp.c++/for-23.C: New test.
10591 * testsuite/libgomp.c++/for-24.C: New test.
10592 * testsuite/libgomp.c++/for-25.C: New test.
10593 * testsuite/libgomp.c++/for-26.C: New test.
10594 * testsuite/libgomp.c++/taskloop-reduction-1.C: New test.
10595 * testsuite/libgomp.c++/taskloop-reduction-2.C: New test.
10596 * testsuite/libgomp.c++/taskloop-reduction-3.C: New test.
10597 * testsuite/libgomp.c++/taskloop-reduction-4.C: New test.
10598 * testsuite/libgomp.c++/task-reduction-10.C: New test.
10599 * testsuite/libgomp.c++/task-reduction-11.C: New test.
10600 * testsuite/libgomp.c++/task-reduction-12.C: New test.
10601 * testsuite/libgomp.c++/task-reduction-13.C: New test.
10602 * testsuite/libgomp.c++/task-reduction-14.C: New test.
10603 * testsuite/libgomp.c++/task-reduction-15.C: New test.
10604 * testsuite/libgomp.c++/task-reduction-16.C: New test.
10605 * testsuite/libgomp.c++/task-reduction-17.C: New test.
10606 * testsuite/libgomp.c++/task-reduction-18.C: New test.
10607 * testsuite/libgomp.c++/task-reduction-19.C: New test.
10608 * testsuite/libgomp.c/task-reduction-1.c: New test.
10609 * testsuite/libgomp.c++/task-reduction-1.C: New test.
10610 * testsuite/libgomp.c/task-reduction-2.c: New test.
10611 * testsuite/libgomp.c++/task-reduction-2.C: New test.
10612 * testsuite/libgomp.c++/task-reduction-3.C: New test.
10613 * testsuite/libgomp.c++/task-reduction-4.C: New test.
10614 * testsuite/libgomp.c++/task-reduction-5.C: New test.
10615 * testsuite/libgomp.c++/task-reduction-6.C: New test.
10616 * testsuite/libgomp.c++/task-reduction-7.C: New test.
10617 * testsuite/libgomp.c++/task-reduction-8.C: New test.
10618 * testsuite/libgomp.c++/task-reduction-9.C: New test.
10619 * testsuite/libgomp.c/teams-1.c: New test.
10620 * testsuite/libgomp.c/teams-2.c: New test.
10621 * testsuite/libgomp.c/thread-limit-4.c: New test.
10622 * testsuite/libgomp.c/thread-limit-5.c: New test.
10623 * testsuite/libgomp.fortran/display-affinity-1.f90: New test.
10624
58168bbf
CLT
106252018-11-06 Chung-Lin Tang <cltang@codesourcery.com>
10626
10627 * oacc-mem.c (memcpy_tofrom_device): New function, combined from
10628 acc_memcpy_to/from_device functions, now with async parameter.
10629 (acc_memcpy_to_device): Modify to use memcpy_tofrom_device.
10630 (acc_memcpy_from_device): Likewise.
10631 (acc_memcpy_to_device_async): New API function.
10632 (acc_memcpy_from_device_async): Likewise.
10633 (present_create_copy): Add async parameter and async setting/unsetting.
10634 (acc_create): Adjust present_create_copy call.
10635 (acc_copyin): Likewise.
10636 (acc_present_or_create): Likewise.
10637 (acc_present_or_copyin): Likewise.
10638 (acc_create_async): New API function.
10639 (acc_copyin_async): New API function.
10640 (delete_copyout): Add async parameter and async setting/unsetting.
10641 (acc_delete): Adjust delete_copyout call.
10642 (acc_copyout): Likewise.
10643 (acc_delete_async): New API function.
10644 (acc_copyout_async): Likewise.
10645 (update_dev_host): Add async parameter and async setting/unsetting.
10646 (acc_update_device): Adjust update_dev_host call.
10647 (acc_update_self): Likewise.
10648 (acc_update_device_async): New API function.
10649 (acc_update_self_async): Likewise.
10650 * openacc.h (acc_copyin_async): Declare new API function.
10651 (acc_create_async): Likewise.
10652 (acc_copyout_async): Likewise.
10653 (acc_delete_async): Likewise.
10654 (acc_update_device_async): Likewise.
10655 (acc_update_self_async): Likewise.
10656 (acc_memcpy_to_device_async): Likewise.
10657 (acc_memcpy_from_device_async): Likewise.
10658 * openacc_lib.h (acc_copyin_async_32_h): New subroutine.
10659 (acc_copyin_async_64_h): New subroutine.
10660 (acc_copyin_async_array_h): New subroutine.
10661 (acc_create_async_32_h): New subroutine.
10662 (acc_create_async_64_h): New subroutine.
10663 (acc_create_async_array_h): New subroutine.
10664 (acc_copyout_async_32_h): New subroutine.
10665 (acc_copyout_async_64_h): New subroutine.
10666 (acc_copyout_async_array_h): New subroutine.
10667 (acc_delete_async_32_h): New subroutine.
10668 (acc_delete_async_64_h): New subroutine.
10669 (acc_delete_async_array_h): New subroutine.
10670 (acc_update_device_async_32_h): New subroutine.
10671 (acc_update_device_async_64_h): New subroutine.
10672 (acc_update_device_async_array_h): New subroutine.
10673 (acc_update_self_async_32_h): New subroutine.
10674 (acc_update_self_async_64_h): New subroutine.
10675 (acc_update_self_async_array_h): New subroutine.
10676 * openacc.f90 (acc_copyin_async_32_h): New subroutine.
10677 (acc_copyin_async_64_h): New subroutine.
10678 (acc_copyin_async_array_h): New subroutine.
10679 (acc_create_async_32_h): New subroutine.
10680 (acc_create_async_64_h): New subroutine.
10681 (acc_create_async_array_h): New subroutine.
10682 (acc_copyout_async_32_h): New subroutine.
10683 (acc_copyout_async_64_h): New subroutine.
10684 (acc_copyout_async_array_h): New subroutine.
10685 (acc_delete_async_32_h): New subroutine.
10686 (acc_delete_async_64_h): New subroutine.
10687 (acc_delete_async_array_h): New subroutine.
10688 (acc_update_device_async_32_h): New subroutine.
10689 (acc_update_device_async_64_h): New subroutine.
10690 (acc_update_device_async_array_h): New subroutine.
10691 (acc_update_self_async_32_h): New subroutine.
10692 (acc_update_self_async_64_h): New subroutine.
10693 (acc_update_self_async_array_h): New subroutine.
10694 * libgomp.map (OACC_2.5): Add acc_copyin_async*, acc_copyout_async*,
10695 acc_copyout_finalize_async*, acc_create_async*, acc_delete_async*,
10696 acc_delete_finalize_async*, acc_memcpy_from_device_async*,
10697 acc_memcpy_to_device_async*, acc_update_device_async*, and
10698 acc_update_self_async* entries.
10699 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: New test.
10700 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: New test.
10701 * testsuite/libgomp.oacc-fortran/lib-16.f90: New test.
10702
22e05272
JM
107032018-10-31 Joseph Myers <joseph@codesourcery.com>
10704
10705 PR bootstrap/82856
10706 * Makefile.am: Include multilib.am
10707 (AUTOMAKE_OPTIONS): Add info-in-builddir.
10708 (CLEANFILES): Remove libgomp.info.
10709 * configure.ac: Remove AC_PREREQ.
10710 * testsuite/Makefile.am (RUNTEST): Remove quotes.
10711 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
10712 Regenerate.
10713
87a5ccfb
JM
107142018-10-29 Joseph Myers <joseph@codesourcery.com>
10715 Julian Brown <julian@codesourcery.com>
10716
10717 * testsuite/libgomp.oacc-c++/this.C: New.
10718
2049befd
CP
107192018-09-18 Cesar Philippidis <cesar@codesourcery.com>
10720
10721 * plugin/plugin-nvptx.c (struct cuda_map): New.
10722 (struct ptx_stream): Replace d, h, h_begin, h_end, h_next, h_prev,
10723 h_tail with (cuda_map *) map.
10724 (cuda_map_create): New function.
10725 (cuda_map_destroy): New function.
10726 (map_init): Update to use a linked list of cuda_map objects.
10727 (map_fini): Likewise.
10728 (map_pop): Likewise.
10729 (map_push): Likewise. Return CUdeviceptr instead of void.
10730 (init_streams_for_device): Remove stales references to ptx_stream
10731 members.
10732 (select_stream_for_async): Likewise.
10733 (nvptx_exec): Update call to map_init.
10734
8e36332c
CP
107352018-09-09 Cesar Philippidis <cesar@codesourcery.com>
10736 Julian Brown <julian@codesourcery.com>
10737
10738 PR middle-end/86336
10739 * testsuite/libgomp.oacc-c++/non-scalar-data.C: Remove XFAIL.
10740
2b4c9065
NK
107412018-08-21 Nicolas Koenig <koenigni@gcc.gnu.org>
10742 Thomas Koenig <tkoenig@gcc.gnu.org>
10743
10744 PR fortran/25829
10745 * testsuite/libgomp.fortran/async_io_1.f90: New test.
10746 * testsuite/libgomp.fortran/async_io_2.f90: New test.
10747 * testsuite/libgomp.fortran/async_io_3.f90: New test.
10748 * testsuite/libgomp.fortran/async_io_4.f90: New test.
10749 * testsuite/libgomp.fortran/async_io_5.f90: New test.
10750 * testsuite/libgomp.fortran/async_io_6.f90: New test.
10751 * testsuite/libgomp.fortran/async_io_7.f90: New test.
10752
bd9b3d3d
CP
107532018-08-13 Cesar Philippidis <cesar@codesourcery.com>
10754 Tom de Vries <tdevries@suse.de>
10755
10756 PR target/85590
10757 * plugin/cuda/cuda.h (CUoccupancyB2DSize): New typedef.
10758 (cuOccupancyMaxPotentialBlockSize): Declare.
10759 * plugin/cuda-lib.def (cuOccupancyMaxPotentialBlockSize): New
10760 CUDA_ONE_CALL_MAYBE_NULL.
10761 * plugin/plugin-nvptx.c (CUDA_VERSION < 6050): Define
10762 CUoccupancyB2DSize and declare
10763 cuOccupancyMaxPotentialBlockSize.
10764 (nvptx_exec): Use cuOccupancyMaxPotentialBlockSize to set the
10765 default num_gangs and num_workers when the driver supports it.
10766
8e09a12f
TV
107672018-08-08 Tom de Vries <tdevries@suse.de>
10768
10769 * plugin/cuda-lib.def (cuLinkAddData_v2, cuLinkCreate_v2): Declare using
10770 CUDA_ONE_CALL_MAYBE_NULL.
10771 * plugin/plugin-nvptx.c (cuLinkAddData, cuLinkCreate): Undef and declare.
10772 (cuLinkAddData_v2, cuLinkCreate_v2): Declare.
10773 (link_ptx): Fall back to cuLinkAddData/cuLinkCreate if the _v2 versions
10774 are not found.
10775
cedd9bd0
TV
107762018-08-08 Tom de Vries <tdevries@suse.de>
10777
10778 * plugin/cuda-lib.def (cuGetErrorString): Use CUDA_ONE_CALL_MAYBE_NULL.
10779 * plugin/plugin-nvptx.c (cuda_error): Handle if cuGetErrorString is not
10780 present.
10781
b113af95
TV
107822018-08-08 Tom de Vries <tdevries@suse.de>
10783
10784 * plugin/plugin-nvptx.c
10785 (CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR): Define.
10786 (nvptx_open_device): Use
10787 CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR.
10788
94767dac
TV
107892018-08-08 Tom de Vries <tdevries@suse.de>
10790
10791 * plugin/plugin-nvptx.c (cuda_error): Move declaration of cuGetErrorString ...
10792 (cuGetErrorString): ... here. Guard with CUDA_VERSION < 6000.
10793
02150de8
TV
107942018-08-07 Tom de Vries <tdevries@suse.de>
10795
10796 * plugin/plugin-nvptx.c (DO_PRAGMA): Define.
10797 (struct cuda_lib_s): Add def/undef of CUDA_ONE_CALL_MAYBE_NULL.
10798 (init_cuda_lib): Add new param to CUDA_ONE_CALL_1. Add arg to
10799 corresponding call in CUDA_ONE_CALL. Add def/undef of
10800 CUDA_ONE_CALL_MAYBE_NULL.
10801 (CUDA_CALL_EXISTS): Define.
10802
9e28b107
TV
108032018-08-07 Tom de Vries <tdevries@suse.de>
10804
10805 * plugin/plugin-nvptx.c (struct cuda_lib_s, init_cuda_lib): Put
10806 CUDA_ONE_CALL defines right before the cuda-lib.def include, and the
10807 corresponding undefs right after.
10808
09940090
TV
108092018-08-04 Tom de Vries <tdevries@suse.de>
10810
10811 * plugin/configfrag.ac: For --without-cuda-driver, set
10812 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB to no. Handle
10813 CUDA_DRIVER_INCLUDE == no and CUDA_DRIVER_LIB == no.
10814 * configure: Regenerate.
10815
77e0a97a
TV
108162018-08-02 Tom de Vries <tdevries@suse.de>
10817
10818 PR target/86660
10819 * testsuite/libgomp.oacc-c++/routine-1-auto.C: Remove -fno-exceptions.
10820 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Same.
10821 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
10822 Same.
10823 * testsuite/libgomp.oacc-c++/routine-1-template.C: Same.
10824 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C: Same.
10825 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Same.
10826
701d080a
CP
108272018-08-01 Cesar Philippidis <cesar@codesourcery.com>
10828 Thomas Schwinge <thomas@codesourcery.com>
10829
10830 * config/nvptx/oacc-parallel.c: Truncate.
10831
094db6be
CP
108322018-08-01 Cesar Philippidis <cesar@codesourcery.com>
10833 James Norris <jnorris@codesourcery.com>
10834
10835 * plugin/plugin-nvptx.c (struct map): Removed.
701d080a
CP
10836 (map_init, map_pop): Remove use of struct map.
10837 (map_push): Likewise and change argument list.
094db6be
CP
10838 * testsuite/libgomp.oacc-c-c++-common/mapping-1.c: New
10839
8c6310a2
TV
108402018-08-01 Tom de Vries <tdevries@suse.de>
10841
10842 * plugin/cuda-lib.def: New file. Factor out of ...
10843 * plugin/plugin-nvptx.c (CUDA_CALLS): ... here.
10844 (struct cuda_lib_s, init_cuda_lib): Include cuda-lib.def instead of
10845 using CUDA_CALLS.
10846
1d4a51cf
AV
108472018-07-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
10848
10849 Revert 'AsyncI/O patch committed'.
10850 2018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
10851 Thomas Koenig <tkoenig@gcc.gnu.org>
10852
10853 PR fortran/25829
10854 * testsuite/libgomp.fortran/async_io_1.f90: New test.
10855 * testsuite/libgomp.fortran/async_io_2.f90: New test.
10856 * testsuite/libgomp.fortran/async_io_3.f90: New test.
10857 * testsuite/libgomp.fortran/async_io_4.f90: New test.
10858 * testsuite/libgomp.fortran/async_io_5.f90: New test.
10859 * testsuite/libgomp.fortran/async_io_6.f90: New test.
10860 * testsuite/libgomp.fortran/async_io_7.f90: New test.
10861
4cdfee3f
TV
108622018-07-30 Tom de Vries <tdevries@suse.de>
10863
10864 * plugin/plugin-nvptx.c (MIN, MAX): Redefine.
10865 (nvptx_exec): Ensure worker and vector default dims don't exceed
10866 targ_fn->max_threads_per_block.
10867
0b210c43
TV
108682018-07-30 Tom de Vries <tdevries@suse.de>
10869
10870 * plugin/plugin-nvptx.c (struct ptx_device): Add default_dims field.
10871 (nvptx_open_device): Init default_dims for device.
10872 (nvptx_exec): Use default_dims from device.
10873
5883c5cc
JJ
108742018-07-26 Jakub Jelinek <jakub@redhat.com>
10875
5d36384c
JJ
10876 PR testsuite/86660
10877 * testsuite/libgomp.c++/for-15.C (results): Include it in
10878 omp declare target region.
10879 (main): Use map (always, tofrom: results) instead of
10880 map (tofrom: results).
10881
5883c5cc
JJ
10882 PR middle-end/86660
10883 * testsuite/libgomp.c/pr86660.c: New test.
10884
88a4654d
CP
108852018-07-26 Cesar Philippidis <cesar@codesourcery.com>
10886 Tom de Vries <tdevries@suse.de>
10887
10888 * plugin/plugin-nvptx.c (nvptx_exec): Error if the hardware doesn't have
10889 sufficient resources to launch a kernel, and give a hint on how to fix
10890 it.
10891
0c6c2f5f
CP
108922018-07-26 Cesar Philippidis <cesar@codesourcery.com>
10893 Tom de Vries <tdevries@suse.de>
10894
10895 * plugin/plugin-nvptx.c (struct ptx_device): Add warp_size,
10896 max_threads_per_block and max_threads_per_multiprocessor fields.
10897 (nvptx_open_device): Initialize new fields.
10898 (nvptx_exec): Use num_sms, and new fields.
10899
6dd58010
TV
109002018-07-26 Tom de Vries <tdevries@suse.de>
10901
10902 * testsuite/libgomp.oacc-fortran/lib-12.f90: Move acc_async_test calls
10903 to correct locations. Remove xfail.
10904
b2eb1779
TV
109052018-07-26 Tom de Vries <tdevries@suse.de>
10906
10907 * testsuite/libgomp.oacc-fortran/lib-13.f90: Replace acc_wait_all with
10908 acc_wait. Move acc_async_test calls to correct locations. Remove
10909 xfail.
10910
b1f45884
NK
109112018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
10912 Thomas Koenig <tkoenig@gcc.gnu.org>
10913
10914 PR fortran/25829
10915 * testsuite/libgomp.fortran/async_io_1.f90: New test.
10916 * testsuite/libgomp.fortran/async_io_2.f90: New test.
10917 * testsuite/libgomp.fortran/async_io_3.f90: New test.
10918 * testsuite/libgomp.fortran/async_io_4.f90: New test.
10919 * testsuite/libgomp.fortran/async_io_5.f90: New test.
10920 * testsuite/libgomp.fortran/async_io_6.f90: New test.
10921 * testsuite/libgomp.fortran/async_io_7.f90: New test.
10922
3a106211
JJ
109232018-07-17 Jakub Jelinek <jakub@redhat.com>
10924
a3bccfa1
JJ
10925 PR middle-end/86542
10926 * testsuite/libgomp.c++/pr86542.C: New test.
10927
3a106211
JJ
10928 PR middle-end/86539
10929 * testsuite/libgomp.c++/pr86539.C: New test.
10930
2bae8b2f
JJ
109312018-07-11 Jakub Jelinek <jakub@redhat.com>
10932
10933 PR c++/86443
10934 * testsuite/libgomp.c++/for-15.C (a): Remove unused variable.
10935 (results): Make sure the variable is not inside declare target region.
10936 (qux): Remove unused function.
10937
0b27c3ed
JJ
109382018-07-10 Jakub Jelinek <jakub@redhat.com>
10939
10940 PR c++/86443
10941 * testsuite/libgomp.c++/for-15.C: New test.
10942
f0391511
JJ
109432018-06-26 Jakub Jelinek <jakub@redhat.com>
10944
10945 PR c++/86291
10946 * testsuite/libgomp.c++/pr86291.C: New test.
10947
1a6d1d24
GP
109482018-06-24 Gerald Pfeifer <gerald@pfeifer.com>
10949
10950 * libgomp.texi (Top): Move www.openmp.org to https.
10951 (Enabling OpenMP): Ditto.
10952 (omp_get_active_level): Ditto.
10953 (omp_get_ancestor_thread_num): Ditto.
10954 (omp_get_cancellation): Ditto.
10955 (omp_get_default_device): Ditto.
10956 (omp_get_dynamic): Ditto.
10957 (omp_get_level): Ditto.
10958 (omp_get_max_active_levels): Ditto.
10959 (omp_get_max_task_priority): Ditto.
10960 (omp_get_max_threads): Ditto.
10961 (omp_get_nested): Ditto.
10962 (omp_get_num_devices): Ditto.
10963 (omp_get_num_procs): Ditto.
10964 (omp_get_num_teams): Ditto.
10965 (omp_get_num_threads): Ditto.
10966 (omp_get_proc_bind): Ditto.
10967 (omp_get_schedule): Ditto.
10968 (omp_get_team_num): Ditto.
10969 (omp_get_team_size): Ditto.
10970 (omp_get_thread_limit): Ditto.
10971 (omp_get_thread_num): Ditto.
10972 (omp_in_parallel): Ditto.
10973 (omp_in_final): Ditto.
10974 (omp_is_initial_device): Ditto.
10975 (omp_set_default_device): Ditto.
10976 (omp_set_dynamic): Ditto.
10977 (omp_set_max_active_levels): Ditto.
10978 (omp_set_nested): Ditto.
10979 (omp_set_num_threads): Ditto.
10980 (omp_set_schedule): Ditto.
10981 (omp_init_lock): Ditto.
10982 (omp_set_lock): Ditto.
10983 (omp_test_lock): Ditto.
10984 (omp_unset_lock): Ditto.
10985 (omp_destroy_lock): Ditto.
10986 (omp_init_nest_lock): Ditto.
10987 (omp_set_nest_lock): Ditto.
10988 (omp_test_nest_lock): Ditto.
10989 (omp_unset_nest_lock): Ditto.
10990 (omp_destroy_nest_lock): Ditto.
10991 (omp_get_wtick): Ditto.
10992 (omp_get_wtime): Ditto.
10993 (OMP_CANCELLATION): Ditto.
10994 (OMP_DISPLAY_ENV): Ditto.
10995 (OMP_DEFAULT_DEVICE): Ditto.
10996 (OMP_DYNAMIC): Ditto.
10997 (OMP_MAX_ACTIVE_LEVELS): Ditto.
10998 (OMP_MAX_TASK_PRIORITY): Ditto.
10999 (OMP_NESTED): Ditto.
11000 (OMP_NUM_THREADS): Ditto.
11001 (OMP_PROC_BIND): Ditto.
11002 (OMP_PLACES): Ditto.
11003 (OMP_STACKSIZE): Ditto.
11004 (OMP_SCHEDULE): Ditto.
11005 (OMP_THREAD_LIMIT): Ditto.
11006 (OMP_WAIT_POLICY): Ditto.
11007
31dd69b7
CP
110082018-06-22 Cesar Philippidis <cesar@codesourcery.com>
11009 James Norris <jnorris@codesourcery.com>
11010 Julian Brown <julian@codesourcery.com>
11011 Thomas Schwinge <thomas@codesourcery.com>
11012 Tom de Vries <tom@codesourcery.com>
11013
11014 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Don't force "-O2".
11015 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Update.
11016 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Likewise.
11017 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Likewise.
11018 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
11019 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
11020 * testsuite/libgomp.oacc-c++/non-scalar-data.C: New file.
11021 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
11022 * testsuite/libgomp.oacc-c-c++-common/enter-data.c: Likewise.
11023 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c:
11024 Likewise.
11025 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
11026 Likewise.
11027 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
11028 Likewise.
11029 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c:
11030 Likewise.
11031 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c:
11032 Likewise.
11033 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
11034 Likewise.
11035 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
11036 Likewise.
11037 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
11038 Likewise.
11039 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
11040 Likewise.
11041 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
11042 Likewise.
11043 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
11044 Likewise.
11045 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
11046 Likewise.
11047 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
11048 Likewise.
11049 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
11050 Likewise.
11051 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
11052 Likewise.
11053 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
11054 Likewise.
11055 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
11056 Likewise.
11057 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
11058 Likewise.
11059 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
11060 Likewise.
11061 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
11062 Likewise.
11063 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
11064 Likewise.
11065 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
11066 Likewise.
11067 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
11068 Likewise.
11069 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
11070 Likewise.
11071 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
11072 Likewise.
11073 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
11074 Likewise.
11075 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
11076 Likewise.
11077 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.c: Likewise.
11078 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.h: Likewise.
11079 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-2.h: Likewise.
11080 * testsuite/libgomp.oacc-fortran/cublas-fixed.h: Likewise.
11081 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Likewise.
11082 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
11083 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
11084 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Likewise.
11085 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
11086 Likewise.
11087 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
11088 Likewise.
11089 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Likewise.
11090 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Likewise.
11091 * testsuite/libgomp.oacc-fortran/kernels-independent.f90:
11092 Likewise.
11093 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Likewise.
11094 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Likewise.
11095 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
11096 Likewise.
11097 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
11098 Likewise.
11099 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
11100 Likewise.
11101 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
11102 Likewise.
11103 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
11104 Likewise.
11105 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
11106 Likewise.
11107 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
11108 Likewise.
11109 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
11110 Likewise.
11111 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
11112 Likewise.
11113 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
11114 Likewise.
11115 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
11116 Likewise.
11117 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
11118 Likewise.
11119 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
11120 Likewise.
11121 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
11122 Likewise.
11123 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
11124 Likewise.
11125 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
11126 * testsuite/libgomp.oacc-fortran/lib-13.f90: Likewise.
11127 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
11128 * testsuite/libgomp.oacc-fortran/lib-15.f90: Likewise.
11129 * testsuite/libgomp.oacc-fortran/parallel-loop-1.f90: Likewise.
11130 * testsuite/libgomp.oacc-fortran/reference-reductions.f90: Likewise.
11131 * testsuite/libgomp.oacc-fortran/vector-routine.f90: Likewise.
11132
829c6349
CLT
111332018-06-20 Chung-Lin Tang <cltang@codesourcery.com>
11134 Thomas Schwinge <thomas@codesourcery.com>
11135 Cesar Philippidis <cesar@codesourcery.com>
11136
11137 * libgomp.h (struct splay_tree_key_s): Add dynamic_refcount member.
11138 (gomp_acc_remove_pointer): Update declaration.
11139 (gomp_acc_declare_allocate): Declare.
11140 (gomp_remove_var): Declare.
11141 * libgomp.map (OACC_2.5): Define.
11142 * oacc-mem.c (acc_map_data): Update refcount.
11143 (acc_unmap_data): Likewise.
11144 (present_create_copy): Likewise.
11145 (acc_create): Add FLAG_PRESENT when calling present_create_copy.
11146 (acc_copyin): Likewise.
11147 (FLAG_FINALIZE): Define.
11148 (delete_copyout): Update dynamic refcounts, add support for FINALIZE.
11149 (acc_delete_finalize): New function.
11150 (acc_delete_finalize_async): New function.
11151 (acc_copyout_finalize): New function.
11152 (acc_copyout_finalize_async): New function.
11153 (gomp_acc_insert_pointer): Update refcounts.
11154 (gomp_acc_remove_pointer): Return if data is not present on the
11155 accelerator.
11156 * oacc-parallel.c (find_pset): Rename to find_pointer.
11157 (find_pointer): Add support for GOMP_MAP_POINTER.
11158 (handle_ftn_pointers): New function.
11159 (GOACC_parallel_keyed): Update refcounts of variables.
11160 (GOACC_enter_exit_data): Add support for finalized data mappings.
11161 Add support for GOMP_MAP_{TO,ALLOC,RELESE,FROM}. Update handling
11162 of fortran arrays.
11163 (GOACC_update): Add support for GOMP_MAP_{ALWAYS_POINTER,TO,FROM}.
11164 (GOACC_declare): Add support for GOMP_MAP_RELEASE, remove support
11165 for GOMP_MAP_FORCE_FROM.
11166 * openacc.f90 (module openacc_internal): Add
11167 acc_copyout_finalize_{32_h,64_h,array_h,_l}, and
11168 acc_delete_finalize_{32_h,64_h,array_h,_l}. Add interfaces for
11169 acc_copyout_finalize and acc_delete_finalize.
11170 (acc_copyout_finalize_32_h): New subroutine.
11171 (acc_copyout_finalize_64_h): New subroutine.
11172 (acc_copyout_finalize_array_h): New subroutine.
11173 (acc_delete_finalize_32_h): New subroutine.
11174 (acc_delete_finalize_64_h): New subroutine.
11175 (acc_delete_finalize_array_h): New subroutine.
11176 * openacc.h (acc_copyout_finalize): Declare.
11177 (acc_copyout_finalize_async): Declare.
11178 (acc_delete_finalize): Declare.
11179 (acc_delete_finalize_async): Declare.
11180 * openacc_lib.h (acc_copyout_finalize): New interface.
11181 (acc_delete_finalize): New interface.
11182 * target.c (gomp_map_vars): Update dynamic_refcount.
11183 (gomp_remove_var): New function.
11184 (gomp_unmap_vars): Use it.
11185 (gomp_unload_image_from_device): Likewise.
11186 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Update test
11187 case to utilize OpenACC 2.5 data clause semantics.
11188 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
11189 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
11190 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
11191 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
11192 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
11193 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
11194 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
11195 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
11196 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
11197 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
11198 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
11199 * testsuite/libgomp.oacc-fortran/data-5.f90: New test.
11200 * testsuite/libgomp.oacc-fortran/data-already-1.f: Update test case to
11201 utilize OpenACC 2.5 data clause semantics.
11202 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
11203 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
11204 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
11205 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
11206 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
11207 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
11208 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
11209 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
11210 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
11211
4358400b
JW
112122018-05-21 Janus Weil <janus@gcc.gnu.org>
11213
11214 PR fortran/85841
11215 PR testsuite/85865
11216 * testsuite/libgomp.fortran/collapse2.f90: Add option "-std=legacy".
11217 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
11218 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
11219 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
11220 * testsuite/libgomp.fortran/task2.f90: Ditto.
11221 * testsuite/libgomp.fortran/vla1.f90: Ditto.
11222 * testsuite/libgomp.fortran/vla2.f90: Ditto.
11223 * testsuite/libgomp.fortran/vla3.f90: Ditto.
11224 * testsuite/libgomp.fortran/vla4.f90: Ditto.
11225 * testsuite/libgomp.fortran/vla5.f90: Ditto.
11226 * testsuite/libgomp.fortran/vla6.f90: Ditto.
11227 * testsuite/libgomp.fortran/vla8.f90: Ditto.
11228 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Ditto.
11229 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Ditto.
11230
950ad0ba
CP
112312018-05-18 Cesar Philippidis <cesar@codesourcery.com>
11232
11233 PR c++/85782
11234 * testsuite/libgomp.oacc-c-c++-common/pr85782.c: New test.
11235
f5ad16f1
TV
112362018-05-09 Tom de Vries <tom@codesourcery.com>
11237
11238 PR libgomp/82901
11239 * oacc-parallel.c (GOACC_declare): Use GOMP_ASYNC_SYNC as async argument
11240 to GOACC_enter_exit_data.
11241
edbd038a
TV
112422018-05-09 Tom de Vries <tom@codesourcery.com>
11243
11244 PR libgomp/83792
11245 * oacc-int.h (async_valid_stream_id_p, async_valid_p)
11246 (async_synchronous_p): New function.
11247 * oacc-async.c (acc_async_test, acc_wait, acc_wait_all_async): Use
11248 async_valid_p.
11249 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
11250 async_valid_stream_id_p.
11251 * oacc-mem.c (gomp_acc_remove_pointer): Use async_synchronous_p.
11252 * oacc-parallel.c (GOACC_parallel_keyed): Same.
11253
37d6c719
TV
112542018-05-07 Tom de Vries <tom@codesourcery.com>
11255
11256 PR testsuite/85677
11257 * testsuite/lib/libgomp.exp (libgomp_init): Move inclusion of top-level
11258 include directory in ALWAYS_CFLAGS out of $blddir != "" condition.
11259
63f12215
TV
112602018-05-03 Tom de Vries <tom@codesourcery.com>
11261
11262 PR testsuite/85106
11263 * testsuite/lib/libgomp-dg.exp (libgomp-dg-test): Add save-temps to
11264 extra_tool_flags if it contains an -foffload=-fdump-* flag.
11265 * testsuite/lib/libgomp.exp: Include scanoffloadtree.exp.
11266 * testsuite/libgomp.oacc-c/vec.c: Use scan-offload-tree-dump.
11267
ec00d3fa
TV
112682018-05-02 Tom de Vries <tom@codesourcery.com>
11269
11270 PR libgomp/85411
11271 * plugin/plugin-nvptx.c (nvptx_exec): Move parsing of
11272 GOMP_OPENACC_DIM ...
11273 * env.c (parse_gomp_openacc_dim): ... here. New function.
11274 (initialize_env): Call parse_gomp_openacc_dim.
11275 (goacc_default_dims): Define.
11276 * libgomp.h (goacc_default_dims): Declare.
11277 * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): New function.
11278 * oacc-plugin.h (GOMP_PLUGIN_acc_default_dim): Declare.
11279 * libgomp.map: New version "GOMP_PLUGIN_1.2". Add
11280 GOMP_PLUGIN_acc_default_dim.
11281 * testsuite/libgomp.oacc-c-c++-common/loop-default-runtime.c: New test.
11282 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: New test.
11283
92243e7c
TV
112842018-05-02 Tom de Vries <tom@codesourcery.com>
11285
11286 PR testsuite/83791
11287 * testsuite/libgomp.c++/udr-9.C: Update.
11288 * testsuite/libgomp.c++/atomic-16.C: Remove.
11289 * testsuite/libgomp.c++/cancel-taskgroup-2.C: Remove.
11290 * testsuite/libgomp.c++/loop-13.C: Remove.
11291 * testsuite/libgomp.c++/loop-14.C: Remove.
11292 * testsuite/libgomp.c++/loop-15.C: Remove.
11293 * testsuite/libgomp.c++/monotonic-1.C: Remove.
11294 * testsuite/libgomp.c++/monotonic-2.C: Remove.
11295 * testsuite/libgomp.c++/nonmonotonic-1.C: Remove.
11296 * testsuite/libgomp.c++/nonmonotonic-2.C: Remove.
11297 * testsuite/libgomp.c++/ordered-1.C: Remove.
11298 * testsuite/libgomp.c++/pr45784.C: Remove.
11299 * testsuite/libgomp.c++/pr64824.C: Remove.
11300 * testsuite/libgomp.c++/pr64868.C: Remove.
11301 * testsuite/libgomp.c++/pr66199-1.C: Remove.
11302 * testsuite/libgomp.c++/pr66199-2.C: Remove.
11303 * testsuite/libgomp.c++/pr66199-3.C: Remove.
11304 * testsuite/libgomp.c++/pr66199-4.C: Remove.
11305 * testsuite/libgomp.c++/pr66199-5.C: Remove.
11306 * testsuite/libgomp.c++/pr66199-6.C: Remove.
11307 * testsuite/libgomp.c++/pr66199-7.C: Remove.
11308 * testsuite/libgomp.c++/pr66199-8.C: Remove.
11309 * testsuite/libgomp.c++/pr66199-9.C: Remove.
11310 * testsuite/libgomp.c++/pr69389.C: Remove.
11311 * testsuite/libgomp.c++/simd10.C: Remove.
11312 * testsuite/libgomp.c++/simd11.C: Remove.
11313 * testsuite/libgomp.c++/simd12.C: Remove.
11314 * testsuite/libgomp.c++/simd13.C: Remove.
11315 * testsuite/libgomp.c++/target-1.C: Remove.
11316 * testsuite/libgomp.c++/target-3.C: Remove.
11317 * testsuite/libgomp.c++/target-4.C: Remove.
11318 * testsuite/libgomp.c++/target-5.C: Remove.
11319 * testsuite/libgomp.c++/taskgroup-1.C: Remove.
11320 * testsuite/libgomp.c++/taskloop-1.C: Remove.
11321 * testsuite/libgomp.c++/taskloop-2.C: Remove.
11322 * testsuite/libgomp.c++/taskloop-3.C: Remove.
11323 * testsuite/libgomp.c++/taskloop-4.C: Remove.
11324 * testsuite/libgomp.c++/udr-9.C: Remove.
11325 * testsuite/libgomp.c++/for-10.C: Remove.
11326 * testsuite/libgomp.c++/for-11.C: Remove.
11327 * testsuite/libgomp.c++/for-12.C: Remove.
11328 * testsuite/libgomp.c++/for-13.C: Remove.
11329 * testsuite/libgomp.c++/for-14.C: Remove.
11330 * testsuite/libgomp.c++/for-9.C: Remove.
11331 * testsuite/libgomp.c/atomic-18.c: Move ...
11332 * testsuite/libgomp.c-c++-common/atomic-18.c: ... here.
11333 * testsuite/libgomp.c/cancel-taskgroup-2.c: Move ...
11334 * testsuite/libgomp.c-c++-common/cancel-taskgroup-2.c: here.
11335 * testsuite/libgomp.c/loop-13.c: Move ...
11336 * testsuite/libgomp.c-c++-common/loop-13.c: ... here.
11337 * testsuite/libgomp.c/loop-14.c: Move ...
11338 * testsuite/libgomp.c-c++-common/loop-14.c: ... here.
11339 * testsuite/libgomp.c/loop-15.c: Remove.
11340 * testsuite/libgomp.c-c++-common/loop-15.c: New test.
11341 * testsuite/libgomp.c/monotonic-1.c: Move ...
11342 * testsuite/libgomp.c-c++-common/monotonic-1.c: ... here.
11343 * testsuite/libgomp.c/monotonic-2.c: Move ...
11344 * testsuite/libgomp.c-c++-common/monotonic-2.c: ... here.
11345 * testsuite/libgomp.c/nonmonotonic-1.c: Move ...
11346 * testsuite/libgomp.c-c++-common/nonmonotonic-1.c: ... here.
11347 * testsuite/libgomp.c/nonmonotonic-2.c: Move ...
11348 * testsuite/libgomp.c-c++-common/nonmonotonic-2.c: ... here.
11349 * testsuite/libgomp.c/ordered-4.c: Move ...
11350 * testsuite/libgomp.c-c++-common/ordered-4.c: ... here.
11351 * testsuite/libgomp.c/pr45784.c: Move ...
11352 * testsuite/libgomp.c-c++-common/pr45784.c: ... here.
11353 * testsuite/libgomp.c/pr64824.c: Move ...
11354 * testsuite/libgomp.c-c++-common/pr64824.c: ... here.
11355 * testsuite/libgomp.c/pr64868.c: Move ...
11356 * testsuite/libgomp.c-c++-common/pr64868.c: ... here.
11357 * testsuite/libgomp.c/pr66199-1.c: Move ...
11358 * testsuite/libgomp.c-c++-common/pr66199-1.c: ... here.
11359 * testsuite/libgomp.c/pr66199-2.c: Move ...
11360 * testsuite/libgomp.c-c++-common/pr66199-2.c: ... here.
11361 * testsuite/libgomp.c/pr66199-3.c: Move ...
11362 * testsuite/libgomp.c-c++-common/pr66199-3.c: ... here.
11363 * testsuite/libgomp.c/pr66199-4.c: Move ...
11364 * testsuite/libgomp.c-c++-common/pr66199-4.c: ... here.
11365 * testsuite/libgomp.c/pr66199-5.c: Move ...
11366 * testsuite/libgomp.c-c++-common/pr66199-5.c: ... here.
11367 * testsuite/libgomp.c/pr66199-6.c: Move ...
11368 * testsuite/libgomp.c-c++-common/pr66199-6.c: ... here.
11369 * testsuite/libgomp.c/pr66199-7.c: Move ...
11370 * testsuite/libgomp.c-c++-common/pr66199-7.c: ... here.
11371 * testsuite/libgomp.c/pr66199-8.c: Move ...
11372 * testsuite/libgomp.c-c++-common/pr66199-8.c: ... here.
11373 * testsuite/libgomp.c/pr66199-9.c: Move ...
11374 * testsuite/libgomp.c-c++-common/pr66199-9.c: ... here.
11375 * testsuite/libgomp.c/pr69389.c: Move ...
11376 * testsuite/libgomp.c-c++-common/pr69389.c: ... here.
11377 * testsuite/libgomp.c/simd-14.c: Move ...
11378 * testsuite/libgomp.c-c++-common/simd-14.c: ... here.
11379 * testsuite/libgomp.c/simd-15.c: Move ...
11380 * testsuite/libgomp.c-c++-common/simd-15.c: ... here.
11381 * testsuite/libgomp.c/simd-16.c: Move ...
11382 * testsuite/libgomp.c-c++-common/simd-16.c: ... here.
11383 * testsuite/libgomp.c/simd-17.c: Move ...
11384 * testsuite/libgomp.c-c++-common/simd-17.c: ... here.
11385 * testsuite/libgomp.c/target-1.c: Move ...
11386 * testsuite/libgomp.c-c++-common/target-1.c: ... here.
11387 * testsuite/libgomp.c/target-10.c: Move ...
11388 * testsuite/libgomp.c-c++-common/target-10.c: ... here.
11389 * testsuite/libgomp.c/target-13.c: Move ...
11390 * testsuite/libgomp.c-c++-common/target-13.c: ... here.
11391 * testsuite/libgomp.c/target-2.c: Move ...
11392 * testsuite/libgomp.c-c++-common/target-2.c: ... here.
11393 * testsuite/libgomp.c/taskgroup-1.c: Move ...
11394 * testsuite/libgomp.c-c++-common/taskgroup-1.c: ... here.
11395 * testsuite/libgomp.c/taskloop-1.c: Move ...
11396 * testsuite/libgomp.c-c++-common/taskloop-1.c: ... here.
11397 * testsuite/libgomp.c/taskloop-2.c: Move ...
11398 * testsuite/libgomp.c-c++-common/taskloop-2.c: ... here.
11399 * testsuite/libgomp.c/taskloop-3.c: Move ...
11400 * testsuite/libgomp.c-c++-common/taskloop-3.c: ... here.
11401 * testsuite/libgomp.c/taskloop-4.c: Move ...
11402 * testsuite/libgomp.c-c++-common/taskloop-4.c: ... here.
11403 * testsuite/libgomp.c/udr-1.c: Move ...
11404 * testsuite/libgomp.c-c++-common/udr-1.c: ... here.
11405 * testsuite/libgomp.c/for-1.c: Move ...
11406 * testsuite/libgomp.c-c++-common/for-1.c: ... here.
11407 * testsuite/libgomp.c/for-1.h: Move ...
11408 * testsuite/libgomp.c-c++-common/for-1.h: ... here.
11409 * testsuite/libgomp.c/for-2.c: Move ...
11410 * testsuite/libgomp.c-c++-common/for-2.c: ... here.
11411 * testsuite/libgomp.c/for-2.h: Move ...
11412 * testsuite/libgomp.c-c++-common/for-2.h: ... here.
11413 * testsuite/libgomp.c/for-3.c: Move ...
11414 * testsuite/libgomp.c-c++-common/for-3.c: ... here.
11415 * testsuite/libgomp.c/for-4.c: Move ...
11416 * testsuite/libgomp.c-c++-common/for-4.c: ... here.
11417 * testsuite/libgomp.c/for-5.c: Move ...
11418 * testsuite/libgomp.c-c++-common/for-5.c: ... here.
11419 * testsuite/libgomp.c/for-6.c: Move ...
11420 * testsuite/libgomp.c-c++-common/for-6.c: ... here.
11421
1f62d637
TV
114222018-05-02 Tom de Vries <tom@codesourcery.com>
11423
11424 PR libgomp/82428
11425 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Use
11426 __builtin_goacc_parlevel_{id,size}.
11427 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Same.
11428 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Same.
11429 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Same.
11430 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Same.
11431 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Same.
11432 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Same.
11433 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Same.
11434 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Same.
11435 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Same.
11436 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Same.
11437 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Same.
11438 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Same.
11439 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Same.
11440 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Same.
11441 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Same.
11442 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Same.
11443 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Same.
11444 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Same.
11445 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Same.
11446 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Same.
11447 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Same.
11448 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Same.
11449 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Same.
11450
9220b511
TV
114512018-05-02 Tom de Vries <tom@codesourcery.com>
11452
11453 PR testsuite/85106
11454 * testsuite/lib/libgomp.exp: Include scanltranstree.exp.
11455
6c3c13c1
TV
114562018-05-02 Tom de Vries <tom@codesourcery.com>
11457
11458 PR testsuite/85106
11459 * testsuite/lib/libgomp.exp: Include scanwpaipa.exp.
11460
8d70b61e
JB
114612018-04-29 Julian Brown <julian@codesourcery.com>
11462 Tom de Vries <tom@codesourcery.com>
11463
11464 PR testsuite/85527
11465 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: Allow
11466 arbitrary order for iterations of atomic subtract check.
11467
4a57a4b6
TV
114682018-04-28 Tom de Vries <tom@codesourcery.com>
11469
11470 PR testsuite/85527
11471 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Store
11472 atomic capture results obtained in parallel loop to an array, instead of
11473 to a scalar.
11474
df36a3d3
TV
114752018-04-26 Tom de Vries <tom@codesourcery.com>
11476
11477 PR libgomp/84020
11478 * plugin/cuda/cuda.h (CUjit_option): Add CU_JIT_OPTIMIZATION_LEVEL.
11479 * plugin/plugin-nvptx.c (_GNU_SOURCE): Define.
11480 (process_GOMP_NVPTX_JIT): New function.
11481 (link_ptx): Use process_GOMP_NVPTX_JIT.
11482
d160ae78
RB
114832018-04-26 Richard Biener <rguenther@suse.de>
11484 Tom de Vries <tom@codesourcery.com>
11485
11486 PR lto/85422
11487 * testsuite/libgomp.oacc-c-c++-common/pr85422.c: New test.
11488
ca9dc642
TV
114892018-04-26 Tom de Vries <tom@codesourcery.com>
11490
11491 PR target/85519
11492 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
11493 recursion depth from 25 to 23.
11494 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
11495
7b47ecf2
L
114962018-04-24 H.J. Lu <hongjiu.lu@intel.com>
11497
11498 * configure: Regenerated.
11499
e91eba31
NS
115002018-04-20 Nathan Sidwell <nathan@codesourcery.com>
11501 Tom de Vries <tom@codesourcery.com>
11502
11503 PR target/85445
11504 * testsuite/libgomp.oacc-c++/ref-1.C: New.
11505
6e0d40b6
TS
115062018-04-19 Thomas Schwinge <thomas@codesourcery.com>
11507
11508 PR libgomp/85463
11509 * testsuite/libgomp.oacc-fortran/error_stop-1.f: New file.
11510 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
11511 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
11512 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
11513 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
11514 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
11515
11516 PR libfortran/85166
11517 * testsuite/libgomp.oacc-fortran/abort-1.f90: Switch back to "call
11518 abort".
11519 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
11520
a0e1df88
JJ
115212018-04-19 Jakub Jelinek <jakub@redhat.com>
11522
11523 * configure: Regenerated.
11524
001ddaa8
DM
115252018-04-18 David Malcolm <dmalcolm@redhat.com>
11526
11527 PR jit/85384
11528 * configure: Regenerate.
11529
05e0af43
CP
115302018-04-16 Cesar Philippidis <cesar@codesourcery.com>
11531 Tom de Vries <tom@codesourcery.com>
11532
11533 PR middle-end/84955
11534 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
11535 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
11536
bc436e10
TK
115372018-04-12 Thomas Koenig <tkoenig@gcc.gnu.org>
11538
11539 PR fortran/83064
11540 PR testsuite/85346
11541 * testsuite/libgomp.fortran/do_concurrent_5.f90: Move modified
11542 test from gfortran.dg to here.
11543
ffb164c7
JJ
115442018-04-12 Cesar Philippidis <cesar@codesourcery.com>
11545
11546 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: Revert 259346.
11547 * testsuite/libgomp.oacc-fortran/pr84955.f90: Likewise.
11548
115492018-04-12 Cesar Philippidis <cesar@codesourcery.com>
11550
11551 PR middle-end/84955
11552 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
11553 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
11554
2ba16fd2
TV
115552018-04-05 Tom de Vries <tom@codesourcery.com>
11556
11557 PR target/85204
11558 * testsuite/libgomp.oacc-c-c++-common/broadcast-1.c: New test.
11559
46dbeb40
TV
115602018-03-26 Tom de Vries <tom@codesourcery.com>
11561
11562 PR tree-optimization/85063
11563 * testsuite/libgomp.c/switch-conversion-2.c: New test.
11564 * testsuite/libgomp.c/switch-conversion.c: New test.
11565 * testsuite/libgomp.oacc-c-c++-common/switch-conversion-2.c: New test.
11566 * testsuite/libgomp.oacc-c-c++-common/switch-conversion.c: New test.
11567
bfc24e32
TK
115682018-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
11569
11570 PR fortran/84381
11571 * testsuite/libgomp.fortran/aligned1.f03: Replace non-standard
11572 call abort by STOP n.
11573 * testsuite/libgomp.fortran/alloc-comp-1.f90: Likewise.
11574 * testsuite/libgomp.fortran/alloc-comp-2.f90: Likewise.
11575 * testsuite/libgomp.fortran/alloc-comp-3.f90: Likewise.
11576 * testsuite/libgomp.fortran/allocatable1.f90: Likewise.
11577 * testsuite/libgomp.fortran/allocatable10.f90: Likewise.
11578 * testsuite/libgomp.fortran/allocatable11.f90: Likewise.
11579 * testsuite/libgomp.fortran/allocatable12.f90: Likewise.
11580 * testsuite/libgomp.fortran/allocatable2.f90: Likewise.
11581 * testsuite/libgomp.fortran/allocatable3.f90: Likewise.
11582 * testsuite/libgomp.fortran/allocatable4.f90: Likewise.
11583 * testsuite/libgomp.fortran/allocatable5.f90: Likewise.
11584 * testsuite/libgomp.fortran/allocatable6.f90: Likewise.
11585 * testsuite/libgomp.fortran/allocatable7.f90: Likewise.
11586 * testsuite/libgomp.fortran/allocatable8.f90: Likewise.
11587 * testsuite/libgomp.fortran/allocatable9.f90: Likewise.
11588 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise.
11589 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Likewise.
11590 * testsuite/libgomp.fortran/associate1.f90: Likewise.
11591 * testsuite/libgomp.fortran/associate2.f90: Likewise.
11592 * testsuite/libgomp.fortran/associate3.f90: Likewise.
11593 * testsuite/libgomp.fortran/cancel-do-1.f90: Likewise.
11594 * testsuite/libgomp.fortran/cancel-do-2.f90: Likewise.
11595 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Likewise.
11596 * testsuite/libgomp.fortran/cancel-sections-1.f90: Likewise.
11597 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Likewise.
11598 * testsuite/libgomp.fortran/character1.f90: Likewise.
11599 * testsuite/libgomp.fortran/character2.f90: Likewise.
11600 * testsuite/libgomp.fortran/collapse1.f90: Likewise.
11601 * testsuite/libgomp.fortran/collapse2.f90: Likewise.
11602 * testsuite/libgomp.fortran/collapse3.f90: Likewise.
11603 * testsuite/libgomp.fortran/collapse4.f90: Likewise.
11604 * testsuite/libgomp.fortran/crayptr1.f90: Likewise.
11605 * testsuite/libgomp.fortran/crayptr2.f90: Likewise.
11606 * testsuite/libgomp.fortran/crayptr3.f90: Likewise.
11607 * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
11608 * testsuite/libgomp.fortran/declare-simd-3.f90: Likewise.
11609 * testsuite/libgomp.fortran/declare-target-2.f90: Likewise.
11610 * testsuite/libgomp.fortran/depend-1.f90: Likewise.
11611 * testsuite/libgomp.fortran/depend-2.f90: Likewise.
11612 * testsuite/libgomp.fortran/depend-3.f90: Likewise.
11613 * testsuite/libgomp.fortran/do1.f90: Likewise.
11614 * testsuite/libgomp.fortran/do2.f90: Likewise.
11615 * testsuite/libgomp.fortran/doacross1.f90: Likewise.
11616 * testsuite/libgomp.fortran/doacross2.f90: Likewise.
11617 * testsuite/libgomp.fortran/doacross3.f90: Likewise.
11618 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Likewise.
11619 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Likewise.
11620 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Likewise.
11621 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
11622 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Likewise.
11623 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Likewise.
11624 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Likewise.
11625 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Likewise.
11626 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Likewise.
11627 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
11628 * testsuite/libgomp.fortran/examples-4/device-2.f90: Likewise.
11629 * testsuite/libgomp.fortran/examples-4/device-3.f90: Likewise.
11630 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Likewise.
11631 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Likewise.
11632 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Likewise.
11633 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Likewise.
11634 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Likewise.
11635 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Likewise.
11636 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Likewise.
11637 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Likewise.
11638 * testsuite/libgomp.fortran/examples-4/target-1.f90: Likewise.
11639 * testsuite/libgomp.fortran/examples-4/target-2.f90: Likewise.
11640 * testsuite/libgomp.fortran/examples-4/target-3.f90: Likewise.
11641 * testsuite/libgomp.fortran/examples-4/target-4.f90: Likewise.
11642 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
11643 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Likewise.
11644 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Likewise.
11645 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Likewise.
11646 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Likewise.
11647 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Likewise.
11648 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
11649 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
11650 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Likewise.
11651 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Likewise.
11652 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Likewise.
11653 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Likewise.
11654 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Likewise.
11655 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Likewise.
11656 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Likewise.
11657 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Likewise.
11658 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Likewise.
11659 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
11660 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Likewise.
11661 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Likewise.
11662 * testsuite/libgomp.fortran/lastprivate1.f90: Likewise.
11663 * testsuite/libgomp.fortran/lastprivate2.f90: Likewise.
11664 * testsuite/libgomp.fortran/lib1.f90: Likewise.
11665 * testsuite/libgomp.fortran/lib2.f: Likewise.
11666 * testsuite/libgomp.fortran/lib3.f: Likewise.
11667 * testsuite/libgomp.fortran/lib4.f90: Likewise.
11668 * testsuite/libgomp.fortran/lock-1.f90: Likewise.
11669 * testsuite/libgomp.fortran/lock-2.f90: Likewise.
11670 * testsuite/libgomp.fortran/nested1.f90: Likewise.
11671 * testsuite/libgomp.fortran/nestedfn1.f90: Likewise.
11672 * testsuite/libgomp.fortran/nestedfn2.f90: Likewise.
11673 * testsuite/libgomp.fortran/nestedfn3.f90: Likewise.
11674 * testsuite/libgomp.fortran/nestedfn4.f90: Likewise.
11675 * testsuite/libgomp.fortran/nestedfn5.f90: Likewise.
11676 * testsuite/libgomp.fortran/omp_atomic1.f90: Likewise.
11677 * testsuite/libgomp.fortran/omp_atomic2.f90: Likewise.
11678 * testsuite/libgomp.fortran/omp_atomic3.f90: Likewise.
11679 * testsuite/libgomp.fortran/omp_atomic4.f90: Likewise.
11680 * testsuite/libgomp.fortran/omp_atomic5.f90: Likewise.
11681 * testsuite/libgomp.fortran/omp_cond1.f: Likewise.
11682 * testsuite/libgomp.fortran/omp_cond2.f: Likewise.
11683 * testsuite/libgomp.fortran/omp_cond3.F90: Likewise.
11684 * testsuite/libgomp.fortran/omp_cond4.F90: Likewise.
11685 * testsuite/libgomp.fortran/omp_parse1.f90: Likewise.
11686 * testsuite/libgomp.fortran/omp_parse2.f90: Likewise.
11687 * testsuite/libgomp.fortran/omp_parse3.f90: Likewise.
11688 * testsuite/libgomp.fortran/omp_parse4.f90: Likewise.
11689 * testsuite/libgomp.fortran/openmp_version-1.f: Likewise.
11690 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
11691 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Likewise.
11692 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Likewise.
11693 * testsuite/libgomp.fortran/pointer1.f90: Likewise.
11694 * testsuite/libgomp.fortran/pointer2.f90: Likewise.
11695 * testsuite/libgomp.fortran/pr25162.f: Likewise.
11696 * testsuite/libgomp.fortran/pr25219.f90: Likewise.
11697 * testsuite/libgomp.fortran/pr27395-1.f90: Likewise.
11698 * testsuite/libgomp.fortran/pr27395-2.f90: Likewise.
11699 * testsuite/libgomp.fortran/pr27416-1.f90: Likewise.
11700 * testsuite/libgomp.fortran/pr27916-1.f90: Likewise.
11701 * testsuite/libgomp.fortran/pr27916-2.f90: Likewise.
11702 * testsuite/libgomp.fortran/pr28390.f: Likewise.
11703 * testsuite/libgomp.fortran/pr29629.f90: Likewise.
11704 * testsuite/libgomp.fortran/pr32550.f90: Likewise.
11705 * testsuite/libgomp.fortran/pr33880.f90: Likewise.
11706 * testsuite/libgomp.fortran/pr34020.f90: Likewise.
11707 * testsuite/libgomp.fortran/pr35130.f90: Likewise.
11708 * testsuite/libgomp.fortran/pr42162.f90: Likewise.
11709 * testsuite/libgomp.fortran/pr46753.f90: Likewise.
11710 * testsuite/libgomp.fortran/pr48894.f90: Likewise.
11711 * testsuite/libgomp.fortran/pr49792-1.f90: Likewise.
11712 * testsuite/libgomp.fortran/pr49792-2.f90: Likewise.
11713 * testsuite/libgomp.fortran/pr63938-1.f90: Likewise.
11714 * testsuite/libgomp.fortran/pr63938-2.f90: Likewise.
11715 * testsuite/libgomp.fortran/pr65597.f90: Likewise.
11716 * testsuite/libgomp.fortran/pr66199-1.f90: Likewise.
11717 * testsuite/libgomp.fortran/pr71014.f90: Likewise.
11718 * testsuite/libgomp.fortran/pr81304.f90: Likewise.
11719 * testsuite/libgomp.fortran/pr81841.f90: Likewise.
11720 * testsuite/libgomp.fortran/pr84418-1.f90: Likewise.
11721 * testsuite/libgomp.fortran/pr84418-2.f90: Likewise.
11722 * testsuite/libgomp.fortran/procptr1.f90: Likewise.
11723 * testsuite/libgomp.fortran/recursion1.f90: Likewise.
11724 * testsuite/libgomp.fortran/reduction1.f90: Likewise.
11725 * testsuite/libgomp.fortran/reduction2.f90: Likewise.
11726 * testsuite/libgomp.fortran/reduction3.f90: Likewise.
11727 * testsuite/libgomp.fortran/reduction4.f90: Likewise.
11728 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
11729 * testsuite/libgomp.fortran/reduction6.f90: Likewise.
11730 * testsuite/libgomp.fortran/reference1.f90: Likewise.
11731 * testsuite/libgomp.fortran/reference2.f90: Likewise.
11732 * testsuite/libgomp.fortran/retval1.f90: Likewise.
11733 * testsuite/libgomp.fortran/retval2.f90: Likewise.
11734 * testsuite/libgomp.fortran/sharing1.f90: Likewise.
11735 * testsuite/libgomp.fortran/sharing2.f90: Likewise.
11736 * testsuite/libgomp.fortran/simd1.f90: Likewise.
11737 * testsuite/libgomp.fortran/simd2.f90: Likewise.
11738 * testsuite/libgomp.fortran/simd3.f90: Likewise.
11739 * testsuite/libgomp.fortran/simd4.f90: Likewise.
11740 * testsuite/libgomp.fortran/simd5.f90: Likewise.
11741 * testsuite/libgomp.fortran/simd6.f90: Likewise.
11742 * testsuite/libgomp.fortran/simd7.f90: Likewise.
11743 * testsuite/libgomp.fortran/stack.f90: Likewise.
11744 * testsuite/libgomp.fortran/strassen.f90: Likewise.
11745 * testsuite/libgomp.fortran/tabs1.f90: Likewise.
11746 * testsuite/libgomp.fortran/tabs2.f: Likewise.
11747 * testsuite/libgomp.fortran/target1.f90: Likewise.
11748 * testsuite/libgomp.fortran/target2.f90: Likewise.
11749 * testsuite/libgomp.fortran/target3.f90: Likewise.
11750 * testsuite/libgomp.fortran/target4.f90: Likewise.
11751 * testsuite/libgomp.fortran/target5.f90: Likewise.
11752 * testsuite/libgomp.fortran/target6.f90: Likewise.
11753 * testsuite/libgomp.fortran/target7.f90: Likewise.
11754 * testsuite/libgomp.fortran/target8.f90: Likewise.
11755 * testsuite/libgomp.fortran/task1.f90: Likewise.
11756 * testsuite/libgomp.fortran/task2.f90: Likewise.
11757 * testsuite/libgomp.fortran/task3.f90: Likewise.
11758 * testsuite/libgomp.fortran/task4.f90: Likewise.
11759 * testsuite/libgomp.fortran/taskgroup1.f90: Likewise.
11760 * testsuite/libgomp.fortran/taskloop1.f90: Likewise.
11761 * testsuite/libgomp.fortran/taskloop2.f90: Likewise.
11762 * testsuite/libgomp.fortran/taskloop3.f90: Likewise.
11763 * testsuite/libgomp.fortran/taskloop4.f90: Likewise.
11764 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
11765 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
11766 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
11767 * testsuite/libgomp.fortran/threadprivate4.f90: Likewise.
11768 * testsuite/libgomp.fortran/udr1.f90: Likewise.
11769 * testsuite/libgomp.fortran/udr10.f90: Likewise.
11770 * testsuite/libgomp.fortran/udr11.f90: Likewise.
11771 * testsuite/libgomp.fortran/udr12.f90: Likewise.
11772 * testsuite/libgomp.fortran/udr13.f90: Likewise.
11773 * testsuite/libgomp.fortran/udr14.f90: Likewise.
11774 * testsuite/libgomp.fortran/udr15.f90: Likewise.
11775 * testsuite/libgomp.fortran/udr2.f90: Likewise.
11776 * testsuite/libgomp.fortran/udr3.f90: Likewise.
11777 * testsuite/libgomp.fortran/udr4.f90: Likewise.
11778 * testsuite/libgomp.fortran/udr5.f90: Likewise.
11779 * testsuite/libgomp.fortran/udr6.f90: Likewise.
11780 * testsuite/libgomp.fortran/udr7.f90: Likewise.
11781 * testsuite/libgomp.fortran/udr8.f90: Likewise.
11782 * testsuite/libgomp.fortran/udr9.f90: Likewise.
11783 * testsuite/libgomp.fortran/vla1.f90: Likewise.
11784 * testsuite/libgomp.fortran/vla2.f90: Likewise.
11785 * testsuite/libgomp.fortran/vla3.f90: Likewise.
11786 * testsuite/libgomp.fortran/vla4.f90: Likewise.
11787 * testsuite/libgomp.fortran/vla5.f90: Likewise.
11788 * testsuite/libgomp.fortran/vla6.f90: Likewise.
11789 * testsuite/libgomp.fortran/vla7.f90: Likewise.
11790 * testsuite/libgomp.fortran/vla8.f90: Likewise.
11791 * testsuite/libgomp.fortran/workshare1.f90: Likewise.
11792 * testsuite/libgomp.fortran/workshare2.f90: Likewise.
11793 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
11794 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
11795 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
11796 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
11797 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
11798 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
11799 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
11800 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
11801 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
11802 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: Likewise.
11803 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
11804 * testsuite/libgomp.oacc-fortran/c2.pl: Likewise.
11805 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
11806 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
11807 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
11808 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
11809 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
11810 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
11811 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
11812 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
11813 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
11814 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90: Likewise.
11815 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: Likewise.
11816 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
11817 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
11818 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
11819 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
11820 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
11821 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
11822 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
11823 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
11824 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
11825 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
11826 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
11827 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
11828 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
11829 * testsuite/libgomp.oacc-fortran/host_data-1.f90: Likewise.
11830 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
11831 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90: Likewise.
11832 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
11833 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Likewise.
11834 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95: Likewise.
11835 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Likewise.
11836 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Likewise.
11837 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
11838 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
11839 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
11840 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
11841 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
11842 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
11843 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
11844 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
11845 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
11846 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
11847 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
11848 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
11849 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
11850 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
11851 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Likewise.
11852 * testsuite/libgomp.oacc-fortran/nested-function-2.f90: Likewise.
11853 * testsuite/libgomp.oacc-fortran/nested-function-3.f90: Likewise.
11854 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
11855 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
11856 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
11857 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
11858 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
11859 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
11860 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
11861 * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
11862 * testsuite/libgomp.oacc-fortran/pr81352.f90: Likewise.
11863 * testsuite/libgomp.oacc-fortran/pr83920.f90: Likewise.
11864 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
11865 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
11866 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
11867 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
11868 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
11869 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
11870 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
11871 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
11872 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
11873 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
11874 * testsuite/libgomp.oacc-fortran/reduction-8.f90: Likewise.
11875 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
11876 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
11877 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
11878 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
11879 * testsuite/libgomp.oacc-fortran/routine-5.f90: Likewise.
11880 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
11881 * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
11882 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
11883 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
11884 * testsuite/libgomp.oacc-fortran/update-1.f90: Likewise.
11885
79cf14ae
RB
118862018-03-20 Richard Biener <rguenther@suse.de>
11887
11888 * testsuite/libgomp.graphite/force-parallel-4.c: XFAIL one
11889 parallelizable loop.
11890
14e335ed
IT
118912018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
11892
11893 PR target/84148
11894 * configure: Regenerate.
11895
83d9be55
JJ
118962018-02-16 Jakub Jelinek <jakub@redhat.com>
11897
11898 PR fortran/84418
11899 * libgomp.fortran/pr84418-1.f90: New test.
11900 * libgomp.fortran/pr84418-2.f90: New test.
11901
d1fe6124
JJ
119022018-02-14 Jakub Jelinek <jakub@redhat.com>
11903
11904 PR fortran/84313
11905 * testsuite/libgomp.fortran/threadprivate4.f90: Add
11906 -std=f2003 -fall-intrinsics into dg-additional-options.
11907
3d224921
MJ
119082018-02-08 Martin Jambor <mjambor@suse.cz>
11909
11910 * testsuite/libgomp.hsa.c/pr82416.c: Make the function with target
11911 clonable.
11912
c7c30edd
MJ
119132018-02-08 Martin Jambor <mjambor@suse.cz>
11914
11915 * testsuite/libgomp.hsa.c/staticvar.c: New test.
11916
f320fdfd
RO
119172018-02-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
11918
11919 * testsuite/libgomp.oacc-c-c++-common/pr84217.c (abort)
11920 [__cplusplus]: Declare extern "C".
11921
c31bc4ac
TV
119222018-02-07 Tom de Vries <tom@codesourcery.com>
11923
11924 PR libgomp/84217
11925 * testsuite/libgomp.oacc-c-c++-common/pr84217.c: New test.
11926
99ae7ce5
CS
119272018-01-29 Christoph Spiel <cspiel@freenet.de>
11928 Jakub Jelinek <jakub@redhat.com>
11929
11930 PR libgomp/84096
11931 * omp.h.in (omp_init_nest_lock_with_hint): Use omp_nest_lock_t
11932 instead of omp_lock_t.
11933
e77a1236
TV
119342018-01-25 Tom de Vries <tom@codesourcery.com>
11935
11936 PR target/84028
11937 * testsuite/libgomp.oacc-fortran/pr84028.f90: New test.
11938
3dede32b
TV
119392018-01-24 Tom de Vries <tom@codesourcery.com>
11940
11941 PR target/83589
11942 * testsuite/libgomp.oacc-c-c++-common/pr83589.c: New test.
11943
be606483
TV
119442018-01-24 Tom de Vries <tom@codesourcery.com>
11945
11946 PR target/81352
11947 * testsuite/libgomp.oacc-fortran/pr81352.f90: New test.
11948
8c8e9a6b
TV
119492018-01-19 Tom de Vries <tom@codesourcery.com>
11950 Cesar Philippidis <cesar@codesourcery.com>
11951
11952 PR target/83920
11953 * testsuite/libgomp.oacc-c-c++-common/pr83920.c: New test.
11954 * testsuite/libgomp.oacc-fortran/pr83920.f90: New test.
11955
65e6aea3
JJ
119562018-01-03 Jakub Jelinek <jakub@redhat.com>
11957
85ec4feb
JJ
11958 Update copyright years.
11959
65e6aea3
JJ
11960 * libgomp.texi: Bump @copying's copyright year.
11961
60bf575c
TV
119622017-12-30 Tom de Vries <tom@codesourcery.com>
11963
11964 PR libgomp/83046
11965 * testsuite/libgomp.oacc-c-c++-common/pr83046.c: New test.
11966 * testsuite/libgomp.c-c++-common/pr83046.c: New test.
11967
7ec16b79
TV
119682017-12-27 Tom de Vries <tom@codesourcery.com>
11969
11970 PR c++/83046
11971 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c (test_static)
11972 (test_nonstatic): Fix return type to workaround PR83046.
11973
ac550b9a
JJ
119742017-12-05 Jakub Jelinek <jakub@redhat.com>
11975
11976 PR testsuite/83281
11977 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c (main): Use
11978 j suffix instead of i.
11979 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c (main):
11980 Likewise.
11981
ebdc83f0
CP
119822017-12-01 Cesar Philippidis <cesar@codesourcery.com>
11983
11984 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Add missing
11985 call to acc_wait (1).
11986
3b3e6283
JJ
119872017-11-24 Jakub Jelinek <jakub@redhat.com>
11988
11989 PR fortran/81304
11990 * testsuite/libgomp.fortran/pr81304.f90: New test.
11991
3b575376
JJ
119922017-11-23 Jakub Jelinek <jakub@redhat.com>
11993
11994 PR fortran/81841
11995 * libgomp.fortran/pr81841.f90: New test.
11996
b13547d8
JJ
119972017-11-22 Jakub Jelinek <jakub@redhat.com>
11998
11999 PR libgomp/83106
12000 * target.c (gomp_target_init): Compute lengths just once and
12001 use them in both malloc size and subsequent copying.
12002
efe33ced
IT
120032017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
12004
12005 * configure.ac: Set CET_FLAGS, update XCFLAGS and FCFLAGS.
12006 * acinclude.m4: Add cet.m4.
12007 * configure: Regenerate.
12008 * Makefile.in: Likewise.
12009 * testsuite/Makefile.in: Likewise.
12010
a7cf2612
TV
120112017-11-15 Tom de Vries <tom@codesourcery.com>
12012
12013 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: New test, copied
12014 from asyncwait-1.f90. Rewrite into C. Rewrite from float to int.
12015 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: New test, copied
12016 from asyncwait-2.f90. Rewrite into C. Rewrite from float to int.
12017 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: New test, copied
12018 from asyncwait-3.f90. Rewrite into C. Rewrite from float to int.
12019
dde76623
TV
120202017-11-14 Tom de Vries <tom@codesourcery.com>
12021
12022 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Allow to run for
12023 non-nvidia devices.
12024
4dbeb716
JJ
120252017-11-07 Jakub Jelinek <jakub@redhat.com>
12026
12027 PR c++/82835
12028 * testsuite/libgomp.c++/pr82835.C: New test.
12029
454f8b2b
ML
120302017-11-06 Martin Liska <mliska@suse.cz>
12031
12032 * testsuite/libgomp.c++/loop-2.C: Return a value
12033 for functions with non-void return type, or change type to void,
12034 or add -Wno-return-type for test.
12035 * testsuite/libgomp.c++/loop-4.C: Likewise.
12036 * testsuite/libgomp.c++/parallel-1.C: Likewise.
12037 * testsuite/libgomp.c++/shared-1.C: Likewise.
12038 * testsuite/libgomp.c++/single-1.C: Likewise.
12039 * testsuite/libgomp.c++/single-2.C: Likewise.
12040
12e9c8ce
TV
120412017-10-31 Tom de Vries <tom@codesourcery.com>
12042
12043 * plugin/plugin-hsa.c (HSA_LOG): Remove semicolon after
12044 "do {} while (false)".
12045 (init_single_kernel, GOMP_OFFLOAD_async_run): Add missing semicolon
12046 after HSA_DEBUG call.
12047
7324369a
JJ
120482017-10-28 Jakub Jelinek <jakub@redhat.com>
12049
12050 * target.c (struct gomp_coalesce_buf): New type.
12051 (MAX_COALESCE_BUF_SIZE, MAX_COALESCE_BUF_GAP): Define.
12052 (gomp_coalesce_buf_add, gomp_to_device_kind_p): New functions.
12053 (gomp_copy_host2dev): Add CBUF argument, if copying into
12054 the cached ranges, memcpy into buffer instead of copying
12055 into device.
12056 (gomp_map_vars_existing, gomp_map_pointer, gomp_map_fields_existing):
12057 Add CBUF argument, pass it through to other calls.
12058 (gomp_map_vars): Aggregate copies from host to device if small enough
12059 and with small enough gaps in between into memcpy into a buffer and
12060 fewer host to device copies from the buffer.
12061 (gomp_update): Adjust gomp_copy_host2dev caller.
12062
933ab0e6
TS
120632017-10-17 Thomas Schwinge <thomas@codesourcery.com>
12064
12065 * testsuite/libgomp.oacc-fortran/declare-1.f90: Restore "dg-do
12066 run" directive.
12067 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
12068 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
12069 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
12070 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
12071
92d5d01a
TV
120722017-10-16 Tom de Vries <tom@codesourcery.com>
12073
12074 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Don't require
12075 openacc_nvidia_accel_selected.
12076 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Same.
12077 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Same.
12078 * testsuite/libgomp.oacc-fortran/declare-2.f90: Same.
12079 * testsuite/libgomp.oacc-fortran/declare-4.f90: Same
12080 * testsuite/libgomp.oacc-fortran/declare-5.f90: Same.
12081 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Don't require
12082 openacc_nvidia_accel_selected. Skip for shared memory device.
12083 * testsuite/libgomp.oacc-fortran/declare-1.f90: Same.
12084 * testsuite/libgomp.oacc-fortran/declare-3.f90: Same.
12085
191411e4
MJ
120862017-10-09 Martin Jambor <mjambor@suse.cz>
12087
12088 PR hsa/82416
12089 * testsuite/libgomp.hsa.c/pr82416.c: New test.
12090
e923330e
TV
120912017-10-07 Tom de Vries <tom@codesourcery.com>
12092
12093 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90 (firstprivate):
12094 Remove acc_device_nvidia references.
12095 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90 (reduction):
12096 Same.
12097
8fe3ed4c
TV
120982017-10-05 Tom de Vries <tom@codesourcery.com>
12099
12100 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c (main): Remove
12101 vector_length(32) clause from acc parallel directive.
12102 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c (main): Same.
12103
26596ee5
TV
121042017-10-04 Tom de Vries <tom@codesourcery.com>
12105
12106 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c
12107 (main): Reduce sum of arr elements. Assert that hres is exactly
12108 representable in 32-bit floating point.
12109 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c
12110 (main): Reduce sum of arr elements. Assert that hres and hmres are
12111 exactly representable in 32-bit floating point.
12112 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c (gwv_np_4): Same.
12113
5c561fa9
TV
121142017-09-28 Tom de Vries <tom@codesourcery.com>
12115
12116 * testsuite/libgomp.c++/for-12.C: Remove superfluous -fopenmp option
12117 setting.
12118 * testsuite/libgomp.c++/pr69393.C: Same.
12119 * testsuite/libgomp.c++/taskloop-1.C: Same.
12120 * testsuite/libgomp.c++/taskloop-3.C: Same.
12121 * testsuite/libgomp.c++/taskloop-4.C: Same.
12122 * testsuite/libgomp.c/for-4.c: Same.
12123 * testsuite/libgomp.c/pr66199-3.c: Same.
12124 * testsuite/libgomp.c/pr66199-4.c: Same.
12125 * testsuite/libgomp.c/pr66199-6.c: Same.
12126 * testsuite/libgomp.c/taskloop-1.c: Same.
12127 * testsuite/libgomp.c/taskloop-3.c: Same.
12128 * testsuite/libgomp.c/taskloop-4.c: Same.
12129 * testsuite/libgomp.fortran/aligned1.f03: Same.
12130 * testsuite/libgomp.fortran/condinc1.f: Same.
12131 * testsuite/libgomp.fortran/condinc3.f90: Same.
12132 * testsuite/libgomp.fortran/crayptr1.f90: Same.
12133 * testsuite/libgomp.fortran/crayptr2.f90: Same.
12134 * testsuite/libgomp.fortran/crayptr3.f90: Same.
12135 * testsuite/libgomp.fortran/omp_cond1.f: Same.
12136 * testsuite/libgomp.fortran/omp_cond3.F90: Same.
12137 * testsuite/libgomp.fortran/pr66199-1.f90: Same.
12138 * testsuite/libgomp.fortran/pr66199-2.f90: Same.
12139 * testsuite/libgomp.fortran/recursion1.f90: Same.
12140 * testsuite/libgomp.fortran/target2.f90: Same.
12141 * testsuite/libgomp.fortran/target5.f90: Same.
12142 * testsuite/libgomp.fortran/task3.f90: Same.
12143
7d6206fe
TV
121442017-09-28 Tom de Vries <tom@codesourcery.com>
12145
12146 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c (main): Remove
12147 vector_length(32) clause from acc parallel directive.
12148 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c (main): Same.
12149
84c8627c
TV
121502017-09-27 Tom de Vries <tom@codesourcery.com>
12151
12152 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c (main):
12153 Remove acc_device_nvidia references.
12154
ebc6a85e
TV
121552017-09-16 Tom de Vries <tom@codesourcery.com>
12156
12157 PR c/81875
12158 * testsuite/libgomp.c-c++-common/pr81875.c: New test.
12159
82419efb
TV
121602017-09-14 Tom de Vries <tom@codesourcery.com>
12161
12162 * testsuite/libgomp.c++/cancel-taskgroup-1.C: Remove.
12163 * testsuite/libgomp.c/cancel-taskgroup-1.c: Move to ...
12164 * testsuite/libgomp.c-c++-common/cancel-taskgroup-1.c: ... here.
12165 * testsuite/libgomp.c/c.exp: Include test-cases from
12166 libgomp.c-c++-common.
12167 * testsuite/libgomp.c++/c++.exp: Same. Force c++-mode compilation of .c
12168 files.
12169
8b586510
JJ
121702017-09-14 Jakub Jelinek <jakub@redhat.com>
12171
12172 PR c++/81314
12173 * testsuite/libgomp.c++/pr81314.C: New test.
12174
9651fbaf
GP
121752017-09-03 Gerald Pfeifer <gerald@pfeifer.com>
12176
12177 * libgomp.texi (Top): www.openacc.org now uses https.
12178 (Enabling OpenACC): Ditto.
12179 (acc_get_num_devices): Ditto.
12180 (acc_set_device_type): Ditto.
12181 (acc_get_device_type): Ditto.
12182 (acc_set_device_num): Ditto.
12183 (acc_get_device_num): Ditto.
12184 (acc_async_test): Ditto.
12185 (acc_async_test_all): Ditto.
12186 (acc_wait): Ditto.
12187 (acc_wait_all): Ditto.
12188 (acc_wait_all_async): Ditto.
12189 (acc_wait_async): Ditto.
12190 (acc_init): Ditto.
12191 (acc_shutdown): Ditto.
12192 (acc_on_device): Ditto.
12193 (acc_malloc): Ditto.
12194 (acc_free): Ditto.
12195 (acc_copyin): Ditto.
12196 (acc_present_or_copyin): Ditto.
12197 (acc_create): Ditto.
12198 (acc_present_or_create): Ditto.
12199 (acc_copyout): Ditto.
12200 (acc_delete): Ditto.
12201 (acc_update_device): Ditto.
12202 (acc_update_self): Ditto.
12203 (acc_map_data): Ditto.
12204 (acc_unmap_data): Ditto.
12205 (acc_deviceptr): Ditto.
12206 (acc_hostptr): Ditto.
12207 (acc_is_present): Ditto.
12208 (acc_memcpy_to_device): Ditto.
12209 (acc_memcpy_from_device): Ditto.
12210 (acc_get_current_cuda_device): Ditto.
12211 (acc_get_current_cuda_context): Ditto.
12212 (acc_get_cuda_stream): Ditto.
12213 (acc_set_cuda_stream): Ditto.
12214 (ACC_DEVICE_TYPE): Ditto.
12215 (ACC_DEVICE_NUM): Ditto.
12216 (OpenACC Library Interoperability): Ditto.
12217
50aa16c3
JJ
122182017-08-09 Jakub Jelinek <jakub@redhat.com>
12219
12220 PR c/81687
12221 * testsuite/libgomp.c/pr81687-1.c: New test.
12222 * testsuite/libgomp.c/pr81687-2.c: New test.
12223
56b5041c
JJ
122242017-08-07 Jakub Jelinek <jakub@redhat.com>
12225
12226 PR c/69389
12227 * testsuite/libgomp.c/pr69389.c: New test.
12228 * testsuite/libgomp.c++/pr69389.C: New test.
12229
f4c222c0
TV
122302017-08-07 Tom de Vries <tom@codesourcery.com>
12231
12232 PR middle-end/78266
12233 * testsuite/libgomp.oacc-c-c++-common/vprop-2.c: New test.
12234 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove xfail.
12235
a40ff0ae
JJ
122362017-07-27 Jakub Jelinek <jakub@redhat.com>
12237
12238 PR c/45784
12239 * testsuite/libgomp.c/pr45784.c: New test.
12240 * testsuite/libgomp.c++/pr45784.C: New test.
12241
3717fbe3
TV
122422017-07-19 Tom de Vries <tom@codesourcery.com>
12243
12244 * testsuite/libgomp.oacc-c/vec.c: New test.
12245
9607b014
TV
122462017-07-03 Tom de Vries <tom@codesourcery.com>
12247
12248 * plugin/plugin-hsa.c: Fix secure_getenv.h include.
12249
dfb15f6b
TV
122502017-06-27 Tom de Vries <tom@codesourcery.com>
12251
12252 * plugin/plugin-nvptx.c (notify_var): New function.
12253 (nvptx_exec): Use notify_var for GOMP_OPENACC_DIM.
12254
22f1a037
TV
122552017-06-27 Tom de Vries <tom@codesourcery.com>
12256
12257 * env.c (parse_unsigned_long_1): Factor out of ...
12258 (parse_unsigned_long): ... here.
12259 (parse_int_1): Factor out of ...
12260 (parse_int): ... here.
12261 (parse_int_secure): New function.
12262 (initialize_env): Use parse_int_secure for GOMP_DEBUG.
12263 * secure_getenv.h: Factor out of ...
12264 * plugin/plugin-hsa.c: ... here.
12265 * testsuite/libgomp.oacc-c-c++-common/gomp-debug-env.c: New test.
12266
d54d1fc3
JJ
122672017-06-21 Jakub Jelinek <jakub@redhat.com>
12268
12269 PR c++/81130
12270 * testsuite/libgomp.c++/pr81130.C: New test.
12271
4f4b0ab8
RO
122722017-06-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12273
12274 * testsuite/libgomp.fortran/strassen.f90: Remove dg-skip-if
12275 default args.
12276 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove
12277 dg-xfail-run-if default args.
12278
40ffd95f
BE
122792017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
12280
12281 * testsuite/libgomp.c/pr39591-2.c: Fix test case.
12282 * testsuite/libgomp.c/pr39591-3.c: Likewise.
12283
01275e1e
JJ
122842017-05-30 Jakub Jelinek <jakub@redhat.com>
12285
12286 PR libgomp/80822
12287 * config/linux/affinity.c (gomp_affinity_init_level_1): New function.
12288 (gomp_affinity_init_level): Use it. Always analyze the core and thread
12289 sibling lists, depending on level just pick up what CPUs to put
12290 together into a place vs. whether add multiple ordered places.
12291
78672bd8
TS
122922017-05-24 Thomas Schwinge <thomas@codesourcery.com>
12293
7ce64403
TS
12294 * openacc.h (acc_async_wait, acc_async_wait_all): New prototypes.
12295 * libgomp.map (OACC_2.0.1): Add these.
12296 * oacc-async.c (acc_async_wait, acc_async_wait_all): New aliases
12297 for "acc_wait", and "acc_wait_all", respectively.
12298 * openacc.f90 (acc_async_wait, acc_async_wait_all): New interfaces
12299 for "acc_wait", and "acc_wait_all", respectively.
12300 * openacc_lib.h (acc_async_wait, acc_async_wait_all): Likewise.
12301 * libgomp.texi (acc_wait, acc_wait_all): Update.
12302 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Update.
12303 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: New file.
12304 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
12305
318686c2
TS
12306 * openacc_lib.h (acc_pcopyin, acc_pcreate): Route to
12307 acc_present_or_copyin and acc_present_or_create procedures,
12308 respectively.
12309 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Exercise these, and
12310 generally different variants of OpenACC Runtime Library functions.
12311 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
12312
a6745534
TS
12313 * testsuite/libgomp.oacc-fortran/lib-32-1.f: New file.
12314 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
12315
9b94fbc7
TS
12316 * openacc.h (acc_pcopyin, acc_pcreate): Provide prototypes instead
12317 of preprocessor definitions.
12318 * libgomp.h (strong_alias): Guard by "#ifdef
12319 HAVE_ATTRIBUTE_ALIAS".
12320 * oacc-mem.c: Provide "acc_pcreate" as alias for
12321 "acc_present_or_create", and "acc_pcopyin" as alias for
12322 "acc_present_or_copyin".
12323 * libgomp.map: New version "OACC_2.0.1".
12324 (OACC_2.0.1): Add "acc_pcopyin", and "acc_pcreate".
12325 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Remove, merging
12326 its content into...
12327 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: ... this file.
12328 Extend testing.
12329
78672bd8
TS
12330 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Debugging output
12331 when disabling nvptx offloading.
12332
0c36d0d5
TS
123332017-05-23 Thomas Schwinge <thomas@codesourcery.com>
12334
fd71a9a2
TS
12335 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Update.
12336 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
12337 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
12338
0c36d0d5
TS
12339 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Rewrite.
12340 * testsuite/lib/libgomp.exp
12341 (check_effective_target_openacc_nvidia_accel_configured): New
12342 proc.
12343 * testsuite/libgomp.oacc-c++/c++.exp (check_effective_target_c)
12344 (check_effective_target_c++): New procs.
12345 * testsuite/libgomp.oacc-c/c.exp (check_effective_target_c)
12346 (check_effective_target_c++): Likewise.
12347
c24783c4
JJ
123482017-05-22 Jakub Jelinek <jakub@redhat.com>
12349
655e5265
JJ
12350 PR middle-end/80809
12351 * testsuite/libgomp.c/pr80809-2.c: New test.
12352 * testsuite/libgomp.c/pr80809-3.c: New test.
12353
e9e2ef9f
JJ
12354 PR middle-end/80809
12355 * testsuite/libgomp.c/pr80809-1.c: New test.
12356
c24783c4
JJ
12357 PR middle-end/80853
12358 * testsuite/libgomp.c/pr80853.c: New test.
12359
0da2f96a
TS
123602017-05-19 Thomas Schwinge <thomas@codesourcery.com>
12361
7fd549d2
TS
12362 * testsuite/libgomp.oacc-c++/template-reduction.C: Update.
12363 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Update.
12364 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
12365 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
12366 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
12367
0da2f96a
TS
12368 * plugin/plugin-hsa.c (DLSYM_FN, init_hsa_runtime_functions):
12369 Debug output for failure.
12370
62ffe920
RO
123712017-05-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12372
12373 * testsuite/lib/libgomp.exp: Load scanlang.exp.
12374
f49215b1
JJ
123752017-04-27 Jakub Jelinek <jakub@redhat.com>
12376
12377 PR bootstrap/80531
12378 * configure.tgt (*-*-aix*): Add -frandom-seed=$@ to XCFLAGS to avoid
12379 bootstrap compare failures.
12380
2260d19d
AM
123812017-04-20 Alexander Monakov <amonakov@ispras.ru>
12382
12383 * testsuite/libgomp.c/target-36.c: New testcase.
12384
19929ba9
JJ
123852017-04-13 Jakub Jelinek <jakub@redhat.com>
12386
12387 * plugin/plugin-nvptx.c (cuda_lib_inited): Use signed char type
12388 instead of char.
12389
fbc698e0
JJ
123902017-04-11 Jakub Jelinek <jakub@redhat.com>
12391
12392 PR libgomp/80394
12393 * testsuite/libgomp.c/pr80394.c: New test.
12394
c4060df4
JJ
123952017-04-04 Jakub Jelinek <jakub@redhat.com>
12396
12397 PR libgomp/79876
12398 * config/posix/thread-stacksize.h: New file.
12399 * config/darwin/thread-stacksize.h: New file.
12400 * config/nvptx/thread-stacksize.h: New file.
12401 * env.c: Include thread-stacksize.h.
12402 (initialize_env): Initialize stacksize to GOMP_DEFAULT_STACKSIZE
12403 instead of 0. Call pthread_attr_setstacksize even if
12404 GOMP_DEFAULT_STACKSIZE is non-zero.
12405
e02d868a
JJ
124062017-03-30 Jakub Jelinek <jakub@redhat.com>
12407
12408 * env.c (initialize_env): Initialize stacksize to 0.
12409
7ba8651e
CP
124102017-03-22 Cesar Philippidis <cesar@codesourcery.com>
12411
12412 PR c++/80029
12413 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: New test.
12414
eebc5e2d
JJ
124152017-03-08 Jakub Jelinek <jakub@redhat.com>
12416
12417 PR c/79940
12418 * testsuite/libgomp.c/pr79940.c: New test.
12419
1eb08f52
RO
124202017-02-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
12421
12422 * testsuite/libgomp.c/pr48591.c: Enable on all __float128
12423 targets.
12424 Add __float128 options.
12425
b0f78ff3
JDA
124262017-02-11 John David Anglin <danglin@gcc.gnu.org>
12427
12428 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Remove
12429 hppa*-*-* dg-skip-if directive.
12430
1bbe0d8f
JJ
124312017-02-09 Jakub Jelinek <jakub@redhat.com>
12432
12433 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Move
12434 dg-skip-if directive into a comment.
12435
02889d23
CLT
124362017-02-09 Nathan Sidwell <nathan@codesourcery.com>
12437 Chung-Lin Tang <cltang@codesourcery.com>
12438
12439 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: New.
12440 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust and
12441 add additional case.
12442 * testsuite/libgomp.oacc-c-c++-common/vprop.c: XFAIL under
12443 "openacc_nvidia_accel_selected".
12444 * libgomp.oacc-fortran/nested-function-1.f90 (test2):
12445 Add num_workers(8) clause.
12446
5896a41d
JDA
124472017-02-08 John David Anglin <danglin@gcc.gnu.org>
12448
12449 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Skip on
12450 hppa*-*-*.
12451 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Don't
12452 include complex.h on hppa*-*-hpux*.
12453 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
12454
345a8c17
TS
124552017-02-02 Thomas Schwinge <thomas@codesourcery.com>
12456
e70ab10d
TS
12457 * plugin/plugin-nvptx.c (nvptx_exec): Make it static.
12458
345a8c17
TS
12459 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_parallel): Rename to
12460 GOMP_OFFLOAD_openacc_exec. Adjust all users.
12461 (GOMP_OFFLOAD_openacc_get_current_cuda_device): Rename to
12462 GOMP_OFFLOAD_openacc_cuda_get_current_device. Adjust all users.
12463 (GOMP_OFFLOAD_openacc_get_current_cuda_context): Rename to
12464 GOMP_OFFLOAD_openacc_cuda_get_current_context. Adjust all users.
12465 (GOMP_OFFLOAD_openacc_get_cuda_stream): Rename to
12466 GOMP_OFFLOAD_openacc_cuda_get_stream. Adjust all users.
12467 (GOMP_OFFLOAD_openacc_set_cuda_stream): Rename to
12468 GOMP_OFFLOAD_openacc_cuda_set_stream. Adjust all users.
12469
dced339c
TS
124702017-01-31 Thomas Schwinge <thomas@codesourcery.com>
12471
12472 * libgomp-plugin.h: #include <stdbool.h>.
12473 (GOMP_OFFLOAD_get_name, GOMP_OFFLOAD_get_caps)
12474 (GOMP_OFFLOAD_get_type, GOMP_OFFLOAD_get_num_devices)
12475 (GOMP_OFFLOAD_init_device, GOMP_OFFLOAD_fini_device)
12476 (GOMP_OFFLOAD_version, GOMP_OFFLOAD_load_image)
12477 (GOMP_OFFLOAD_unload_image, GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free)
12478 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_host2dev)
12479 (GOMP_OFFLOAD_dev2dev, GOMP_OFFLOAD_can_run, GOMP_OFFLOAD_run)
12480 (GOMP_OFFLOAD_async_run, GOMP_OFFLOAD_openacc_parallel)
12481 (GOMP_OFFLOAD_openacc_register_async_cleanup)
12482 (GOMP_OFFLOAD_openacc_async_test)
12483 (GOMP_OFFLOAD_openacc_async_test_all)
12484 (GOMP_OFFLOAD_openacc_async_wait)
12485 (GOMP_OFFLOAD_openacc_async_wait_async)
12486 (GOMP_OFFLOAD_openacc_async_wait_all)
12487 (GOMP_OFFLOAD_openacc_async_wait_all_async)
12488 (GOMP_OFFLOAD_openacc_async_set_async)
12489 (GOMP_OFFLOAD_openacc_create_thread_data)
12490 (GOMP_OFFLOAD_openacc_destroy_thread_data)
12491 (GOMP_OFFLOAD_openacc_get_current_cuda_device)
12492 (GOMP_OFFLOAD_openacc_get_current_cuda_context)
12493 (GOMP_OFFLOAD_openacc_get_cuda_stream)
12494 (GOMP_OFFLOAD_openacc_set_cuda_stream): New prototypes.
12495 * libgomp.h (struct acc_dispatch_t, struct gomp_device_descr): Use
12496 these.
12497 * plugin/plugin-hsa.c (GOMP_OFFLOAD_load_image)
12498 (GOMP_OFFLOAD_unload_image): Fix argument types.
12499
23749904
JJ
125002017-01-26 Jakub Jelinek <jakub@redhat.com>
12501
c1cadde1
JJ
12502 * testsuite/lib/libgomp.exp
12503 (check_effective_target_hsa_offloading_selected_nocache): Fix up
12504 check_compile invocation. Fix up removal of executable. Drop
12505 bogus "2>&1" argument.
12506
23749904
JJ
12507 * testsuite/libgomp.fortran/declare-simd-4.f90: Add cleanup-modules
12508 directive.
12509
125102017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
5fd1486c
PJ
12511 Martin Jambor <mjambor@suse.cz>
12512
12513 * plugin/hsa.h: Moved to top level include.
12514 * plugin/plugin-hsa.c: Chanfgd include of hsa.h accordingly.
12515
73aa401e
JJ
125162017-01-21 Jakub Jelinek <jakub@redhat.com>
12517
12518 PR other/79046
12519 * testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
12520 of cat to get version from BASE-VER file.
12521 * testsuite/Makefile.in: Regenerated.
12522
b32e85fa
JJ
125232017-01-19 Jakub Jelinek <jakub@redhat.com>
12524
12525 * plugin/cuda/cuda.h (CUdeviceptr): Typedef to unsigned long long even
12526 for _WIN64.
12527
3c36aa6b
JJ
125282017-01-17 Jakub Jelinek <jakub@redhat.com>
12529
d190d5c0
JJ
12530 * plugin/hsa.h: Add GCC runtime library exception.
12531 * plugin/hsa_ext_finalize.h: Likewise.
12532
2393d337
JJ
12533 * plugin/configfrag.ac: For --without-cuda-driver don't initialize
12534 CUDA_DRIVER_INCLUDE nor CUDA_DRIVER_LIB. If both
12535 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB are empty and linking small
12536 cuda program fails, define PLUGIN_NVPTX_DYNAMIC to 1 and use
12537 plugin/include/cuda as include dir and -ldl instead of -lcuda as
12538 library to link ptx plugin against.
12539 * plugin/plugin-nvptx.c: Include dlfcn.h if PLUGIN_NVPTX_DYNAMIC.
12540 (CUDA_CALLS): Define.
12541 (cuda_lib, cuda_lib_inited): New variables.
12542 (init_cuda_lib): New function.
12543 (CUDA_CALL_PREFIX): Define.
12544 (CUDA_CALL_ERET, CUDA_CALL_ASSERT): Use CUDA_CALL_PREFIX.
12545 (CUDA_CALL): Use FN instead of (FN).
12546 (CUDA_CALL_NOCHECK): Define.
12547 (cuda_error, fini_streams_for_device, select_stream_for_async,
12548 nvptx_attach_host_thread_to_device, nvptx_open_device, link_ptx,
12549 event_gc, nvptx_exec, nvptx_async_test, nvptx_async_test_all,
12550 nvptx_wait_all, nvptx_set_clocktick, GOMP_OFFLOAD_unload_image,
12551 nvptx_stacks_alloc, nvptx_stacks_free, GOMP_OFFLOAD_run): Use
12552 CUDA_CALL_NOCHECK.
12553 (nvptx_init): Call init_cuda_lib, if it fails, return false. Use
12554 CUDA_CALL_NOCHECK.
12555 (nvptx_get_num_devices): Call init_cuda_lib, if it fails, return 0.
12556 Use CUDA_CALL_NOCHECK.
12557 * plugin/cuda/cuda.h: New file.
12558 * config.h.in: Regenerated.
12559 * configure: Regenerated.
12560
3c36aa6b
JJ
12561 PR other/79046
12562 * configure.ac: Add GCC_BASE_VER.
12563 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
12564 get version from BASE-VER file.
12565 * testsuite/Makefile.in: Regenerated.
12566 * configure: Regenerated.
12567 * Makefile.in: Regenerated.
12568
c508bc2d
FXC
125692017-01-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
12570
12571 PR libgomp/60670
12572 * Makefile.am: Make fincludedir multilib-aware.
12573 * Makefile.in: Regenerate.
12574
c1a9c369
JJ
125752017-01-01 Jakub Jelinek <jakub@redhat.com>
12576
cbe34bb5
JJ
12577 Update copyright years.
12578
c1a9c369
JJ
12579 * libgomp.texi: Bump @copying's copyright year.
12580
e7a7f4be
SH
125812016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
12582
12583 * libgomp/config/rtems/pool.h (gomp_thread_pool_reservoir): Use
12584 pthread_spinlock_t instead of gomp_mutex_t lock.
12585 (gomp_get_thread_pool): Likewise.
12586 (gomp_release_thread_pool): Likewise.
12587 * libgomp/config/rtems/proc.c (allocate_thread_pool_reservoir):
12588 Likewise.
12589
d313d52c
SH
125902016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
12591
12592 * config/rtems/pool.h (gomp_get_thread_pool): Return proper
12593 thread pool in case nthreads == 1.
12594
630e3c3a
AM
125952016-11-30 Alexander Monakov <amonakov@ispras.ru>
12596
12597 * config/nvptx/env.c: Delete.
12598 * icv.c: Move definitions of ICV variables back ...
12599 * env.c: ...here. Do not compile environment-related functionality if
12600 LIBGOMP_OFFLOADED_ONLY is set.
12601
9e38af5c
AM
126022016-11-30 Alexander Monakov <amonakov@ispras.ru>
12603
12604 * configure.ac [nvptx*-*-*] (libgomp_offloaded_only): Set and use it...
12605 (LIBGOMP_OFFLOADED_ONLY): ...here; new define.
12606 * configure: Regenerate.
12607 * config.h.in: Likewise.
12608
f96b7f1f
AM
126092016-11-30 Alexander Monakov <amonakov@ispras.ru>
12610
12611 * Makefile.in: Regenerate with automake-1.11.6.
12612 * aclocal.m4: Likewise.
12613 * configure: Likewise.
12614 * testsuite/Makefile.in: Likewise.
12615
6a6951b1
AM
126162016-11-28 Alexander Monakov <amonakov@ispras.ru>
12617
12618 * config/nvptx/critical.c: Delete to use generic implementation.
12619
c7ac071f
JH
126202016-11-28 Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de>
12621
12622 * config/linux/affinity.c [!HAVE_PTHREAD_AFFINITY_NP]: Include
12623 ../../affinity.c as fallback.
12624 * config/nvptx/affinity.c: Delete to use fallback implementation.
12625
6103184e 126262016-11-23 Alexander Monakov <amonakov@ispras.ru>
92a285c1 12627 Jakub Jelinek <jakub@redhat.com>
6103184e
AM
12628 Dmitry Melnik <dm@ispras.ru>
12629
12630 * Makefile.am (libgomp_la_SOURCES): Add atomic.c, icv.c, icv-device.c.
12631 * Makefile.in. Regenerate.
12632 * configure.ac [nvptx*-*-*] (libgomp_use_pthreads): Set and use it...
12633 (LIBGOMP_USE_PTHREADS): ...here; new define.
12634 * configure: Regenerate.
12635 * config.h.in: Likewise.
12636 * config/posix/affinity.c: Move to...
12637 * affinity.c: ...here (new file). Guard use of Pthreads-specific
12638 interface by LIBGOMP_USE_PTHREADS.
12639 * critical.c: Split out GOMP_atomic_{start,end} into...
12640 * atomic.c: ...here (new file).
12641 * env.c: Split out ICV definitions into...
12642 * icv.c: ...here (new file) and...
12643 * icv-device.c: ...here. New file.
12644 * config/linux/lock.c (gomp_init_lock_30): Move to generic lock.c.
12645 (gomp_destroy_lock_30): Ditto.
12646 (gomp_set_lock_30): Ditto.
12647 (gomp_unset_lock_30): Ditto.
12648 (gomp_test_lock_30): Ditto.
12649 (gomp_init_nest_lock_30): Ditto.
12650 (gomp_destroy_nest_lock_30): Ditto.
12651 (gomp_set_nest_lock_30): Ditto.
12652 (gomp_unset_nest_lock_30): Ditto.
12653 (gomp_test_nest_lock_30): Ditto.
12654 * lock.c: New.
12655 * config/nvptx/lock.c: New.
12656 * config/nvptx/bar.c: New.
12657 * config/nvptx/bar.h: New.
12658 * config/nvptx/doacross.h: New.
12659 * config/nvptx/error.c: New.
12660 * config/nvptx/icv-device.c: New.
12661 * config/nvptx/mutex.h: New.
12662 * config/nvptx/pool.h: New.
12663 * config/nvptx/proc.c: New.
12664 * config/nvptx/ptrlock.h: New.
12665 * config/nvptx/sem.h: New.
12666 * config/nvptx/simple-bar.h: New.
12667 * config/nvptx/target.c: New.
12668 * config/nvptx/task.c: New.
12669 * config/nvptx/team.c: New.
12670 * config/nvptx/time.c: New.
12671 * config/posix/simple-bar.h: New.
12672 * libgomp.h: Guard pthread.h inclusion. Include simple-bar.h.
12673 (gomp_num_teams_var): Declare.
12674 (struct gomp_thread_pool): Change threads_dock member to
12675 gomp_simple_barrier_t.
12676 [__nvptx__] (gomp_thread): New implementation.
12677 (gomp_thread_attr): Guard by LIBGOMP_USE_PTHREADS.
12678 (gomp_thread_destructor): Ditto.
12679 (gomp_init_thread_affinity): Ditto.
12680 * team.c: Guard uses of Pthreads-specific interfaces by
12681 LIBGOMP_USE_PTHREADS. Adjust all uses of threads_dock.
12682 (gomp_free_thread) [__nvptx__]: Do not call 'free'.
12683 * config/nvptx/alloc.c: Delete.
12684 * config/nvptx/barrier.c: Ditto.
12685 * config/nvptx/fortran.c: Ditto.
12686 * config/nvptx/iter.c: Ditto.
12687 * config/nvptx/iter_ull.c: Ditto.
12688 * config/nvptx/loop.c: Ditto.
12689 * config/nvptx/loop_ull.c: Ditto.
12690 * config/nvptx/ordered.c: Ditto.
12691 * config/nvptx/parallel.c: Ditto.
12692 * config/nvptx/priority_queue.c: Ditto.
12693 * config/nvptx/sections.c: Ditto.
12694 * config/nvptx/single.c: Ditto.
12695 * config/nvptx/splay-tree.c: Ditto.
12696 * config/nvptx/work.c: Ditto.
12697 * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Pass
12698 -foffload=-lgfortran in addition to -lgfortran.
12699 * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags): Ditto.
12700 * plugin/plugin-nvptx.c: Include <limits.h>.
12701 (struct targ_fn_descriptor): Add new fields.
12702 (struct ptx_device): Ditto. Set them...
12703 (nvptx_open_device): ...here.
12704 (nvptx_adjust_launch_bounds): New.
12705 (nvptx_host2dev): Allow NULL 'nvthd'.
12706 (nvptx_dev2host): Ditto.
12707 (GOMP_OFFLOAD_get_caps): Add GOMP_OFFLOAD_CAP_OPENMP_400.
12708 (link_ptx): Adjust log sizes.
12709 (nvptx_host2dev): Allow NULL 'nvthd'.
12710 (nvptx_dev2host): Ditto.
12711 (nvptx_set_clocktick): New. Use it...
12712 (GOMP_OFFLOAD_load_image): ...here. Set new targ_fn_descriptor
12713 fields.
12714 (GOMP_OFFLOAD_dev2dev): New.
12715 (nvptx_adjust_launch_bounds): New.
12716 (nvptx_stacks_size): New.
12717 (nvptx_stacks_alloc): New.
12718 (nvptx_stacks_free): New.
12719 (GOMP_OFFLOAD_run): New.
12720 (GOMP_OFFLOAD_async_run): New (stub).
12721
56b1c60e
MJ
127222016-11-23 Martin Jambor <mjambor@suse.cz>
12723
12724 * testsuite/libgomp.hsa.c/bits-insns.c: New test.
12725 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
12726 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
12727
b8d89b03 127282016-11-23 Martin Liska <mliska@suse.cz>
92a285c1 12729 Martin Jambor <mjambor@suse.cz>
b8d89b03
ML
12730
12731 * plugin/hsa.h: New file.
12732 * plugin/hsa_ext_finalize.h: New file.
12733 * plugin/configfrag.ac: Remove hsa-kmt-lib test. Added checks for
12734 header file unistd.h, and functions secure_getenv, __secure_getenv,
12735 getuid, geteuid, getgid and getegid.
12736 * plugin/Makefrag.am (libgomp_plugin_hsa_la_CPPFLAGS): Added
12737 -D_GNU_SOURCE.
12738 * plugin/plugin-hsa.c: Include config.h, inttypes.h and stdbool.h.
12739 Handle various cases of secure_getenv presence, add an implementation
12740 when we can test effective UID and GID.
12741 (struct hsa_runtime_fn_info): New structure.
12742 (hsa_runtime_fn_info hsa_fns): New variable.
12743 (hsa_runtime_lib): Likewise.
12744 (support_cpu_devices): Likewise.
12745 (init_enviroment_variables): Load newly introduced ENV
12746 variables.
12747 (hsa_warn): Call hsa run-time functions via hsa_fns structure.
12748 (hsa_fatal): Likewise.
12749 (DLSYM_FN): New macro.
12750 (init_hsa_runtime_functions): New function.
12751 (suitable_hsa_agent_p): Call hsa run-time functions via hsa_fns
12752 structure. Depending on environment, also allow CPU devices.
12753 (init_hsa_context): Call hsa run-time functions via hsa_fns structure.
12754 (get_kernarg_memory_region): Likewise.
12755 (GOMP_OFFLOAD_init_device): Likewise.
12756 (destroy_hsa_program): Likewise.
12757 (init_basic_kernel_info): New function.
12758 (GOMP_OFFLOAD_load_image): Use it.
12759 (create_and_finalize_hsa_program): Call hsa run-time functions via
12760 hsa_fns structure.
12761 (create_single_kernel_dispatch): Likewise.
12762 (release_kernel_dispatch): Likewise.
12763 (init_single_kernel): Likewise.
12764 (parse_target_attributes): Allow up multiple HSA grid dimensions.
12765 (get_group_size): New function.
12766 (run_kernel): Likewise.
12767 (GOMP_OFFLOAD_run): Outline most functionality to run_kernel.
12768 (GOMP_OFFLOAD_fini_device): Call hsa run-time functions via hsa_fns
12769 structure.
12770 * testsuite/lib/libgomp.exp: Remove hsa_kmt_lib support.
12771 * testsuite/libgomp-test-support.exp.in: Likewise.
12772 * Makefile.in: Regenerated.
12773 * aclocal.m4: Likewise.
12774 * config.h.in: Likewise.
12775 * configure: Likewise.
12776 * testsuite/Makefile.in: Likewise.
12777
18d2ada8 127782016-11-15 Martin Jambor <mjambor@suse.cz>
92a285c1 12779 Alexander Monakov <amonakov@ispras.ru>
18d2ada8
MJ
12780
12781 * testsuite/libgomp.fortran/examples-4/device-1.f90 (e_57_1): Add
12782 mapping clauses to target constructs.
12783 * testsuite/libgomp.fortran/examples-4/device-3.f90 (e_57_3): Ditto.
12784
84c1b9d3
MK
127852016-11-15 Matthias Klose <doko@ubuntu.com>
12786
12787 * configure: Regenerate.
12788
b4c3a85b
JJ
127892016-11-10 Jakub Jelinek <jakub@redhat.com>
12790
8ebd1b31
JJ
12791 * omp_lib.f90.in (openmp_version): Change to 201511 from 201307.
12792 * omp_lib.h.in (openmp_version): Likewise.
12793 * testsuite/libgomp.fortran/openmp_version-1.f: Expect 201511 instead
12794 of 201307.
12795 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
12796
b4c3a85b
JJ
12797 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90
12798 (fib_wrapper): Add map(from: x) clause.
12799 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90
12800 (e_53_2): Likewise.
12801 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90
12802 (accum): Add map(tmp) clause.
12803 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90
12804 (accum): Add map(tofrom: tmp) clause.
12805 * testsuite/libgomp.fortran/examples-4/target_data-3.f90
12806 (gramSchmidt): Likewise.
12807 * testsuite/libgomp.fortran/examples-4/teams-2.f90 (dotprod): Add
12808 map(tofrom: sum) clause.
12809 * testsuite/libgomp.fortran/nestedfn5.f90 (foo): Add twice
12810 map (alloc: a, l) clause. Add defaultmap(tofrom: scalar) clause.
12811 * testsuite/libgomp.fortran/pr66199-2.f90: Adjust for linear clause
12812 only allowed on the loop iterator.
12813 * testsuite/libgomp.fortran/target4.f90 (foo): Add map(t) clause.
12814 * testsuite/libgomp.fortran/taskloop2.f90: New test.
12815 * testsuite/libgomp.fortran/taskloop4.f90: New test.
12816 * testsuite/libgomp.fortran/doacross1.f90: New test.
12817 * testsuite/libgomp.fortran/doacross3.f90: New test.
12818 * testsuite/libgomp.fortran/taskloop1.f90: New test.
12819 * testsuite/libgomp.fortran/taskloop3.f90: New test.
12820 * testsuite/libgomp.fortran/doacross2.f90: New test.
12821 * testsuite/libgomp.c/doacross-1.c (main): Add missing
12822 #pragma omp atomic read.
12823 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
12824 * testsuite/libgomp.c/doacross-3.c (main): Likewise.
12825
6668eb45
CP
128262016-11-02 Cesar Philippidis <cesar@codesourcery.com>
12827 Nathan Sidwell <nathan@acm.org>
12828
12829 * plugin/plugin-nvptx.c (nvptx_exec): Interrogate board attributes
12830 to determine default geometry.
12831 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Set gang
12832 dimension.
12833
f10e37a1
JJ
128342016-11-01 Jakub Jelinek <jakub@redhat.com>
12835
12836 * hashtab.h: Use standard GPLv3 with runtime exception
12837 boilerplate.
12838
015c7760
AH
128392016-10-27 Aldy Hernandez <aldyh@redhat.com>
12840
12841 * oacc-init.c (goacc_new_thread): Use sizeof of the appropriate
12842 size when allocating new thread.
12843
20a1e5b8
MP
128442016-09-14 Marek Polacek <polacek@redhat.com>
12845
12846 * testsuite/libgomp.c++/atomic-3.C: Use -Wno-deprecated.
12847
1cad9284
JJ
128482016-08-19 Jakub Jelinek <jakub@redhat.com>
12849
12850 PR fortran/71014
12851 * testsuite/libgomp.fortran/pr71014.f90: New test.
12852
2c71d454
CLT
128532016-08-18 Chung-Lin Tang <cltang@codesourcery.com>
12854
12855 PR middle-end/70895
12856 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Add explicit
12857 firstprivate clauses.
12858 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Remove explicit
12859 copy clauses.
12860 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
12861 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
12862 * testsuite/libgomp.oacc-c-c++-common/reduction-flt.c: Likewise.
12863 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
12864 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
12865 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
12866 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
12867 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
12868 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
12869 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
12870 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
12871 * testsuite/libgomp.oacc-c-c++-common/reduction-dbl.c: Likewise.
12872
7c713714
CLT
128732016-08-14 Chung-Lin Tang <cltang@codesourcery.com>
12874
12875 PR fortran/70598
12876 * testsuite/libgomp.oacc-fortran/host_data-1.f90: New test.
12877
5c934396
JJ
128782016-08-08 Jakub Jelinek <jakub@redhat.com>
12879
12880 PR c++/58706
12881 * testsuite/libgomp.c++/pr58706.C: New test.
12882
9ef64248
TS
128832016-08-04 Thomas Schwinge <thomas@codesourcery.com>
12884
bbc79c0e
TS
12885 * testsuite/libgomp.oacc-c++/routine-1-auto.C: New file.
12886 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Likewise.
12887 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
12888 Likewise.
12889 * testsuite/libgomp.oacc-c++/routine-1-template.C: Likewise.
12890 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C:
12891 Likewise.
12892 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Adjust.
12893
9ef64248
TS
12894 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: Make it a "link"
12895 test, and don't hardcode -O0.
12896
c1311c86
NS
128972016-08-03 Nathan Sidwell <nathan@codesourcery.com>
12898
12899 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: New.
12900
b1c9c068
CP
129012016-07-15 Cesar Philippidis <cesar@codesourcery.com>
12902
12903 * testsuite/libgomp.oacc-c-c++-common/zero_length_subarrays.c: New
12904 test.
12905
b4410f63
L
129062016-07-03 H.J. Lu <hongjiu.lu@intel.com>
12907
12908 PR middle-end/71734
12909 * testsuite/libgomp.fortran/pr71734-1.f90: New test.
12910 * testsuite/libgomp.fortran/pr71734-2.f90: Likewise.
12911
a8dbab92
JJ
129122016-07-01 Jakub Jelinek <jakub@redhat.com>
12913
12914 PR fortran/71717
12915 * testsuite/libgomp.fortran/associate3.f90: New test.
12916
9b6a8d0f
JJ
129172016-06-17 Jakub Jelinek <jakub@redhat.com>
12918
12919 * testsuite/libgomp.c++/target-21.C: New test.
12920
283635f9
JJ
129212016-06-16 Jakub Jelinek <jakub@redhat.com>
12922
12923 * testsuite/libgomp.c++/target-20.C: New test.
12924
27d6ba88
TS
129252016-06-10 Thomas Schwinge <thomas@codesourcery.com>
12926 Cesar Philippidis <cesar@codesourcery.com>
12927
12928 PR middle-end/71373
12929 * libgomp.oacc-c/nested-function-1.c: New file.
12930 * libgomp.oacc-c/nested-function-2.c: Likewise.
12931 * libgomp.oacc-fortran/nested-function-1.f90: Likewise.
12932 * libgomp.oacc-fortran/nested-function-2.f90: Likewise.
12933 * libgomp.oacc-fortran/nested-function-3.f90: Likewise.
12934
4b1ffdb1
TS
129352016-06-10 Thomas Schwinge <thomas@codesourcery.com>
12936
12937 PR c/71381
12938 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: #include
12939 "../../../gcc/testsuite/c-c++-common/goacc/cache-1.c".
12940 * testsuite/libgomp.oacc-fortran/cache-1.f95: New file.
12941
d821b794
CLT
129422016-06-03 Chung-Lin Tang <cltang@codesourcery.com>
12943
12944 * testsuite/libgomp.oacc-fortran/reduction-8.f90: New testcase.
12945 * testsuite/libgomp.oacc-c-c++-common/reduction-8.c: New testcase.
12946
3616a8c5
CP
129472016-06-01 Cesar Philippidis <cesar@codesourcery.com>
12948
12949 PR c/70688
5eed9a88 12950 * testsuite/libgomp.oacc-c-c++-common/pr70688.c: New file.
3616a8c5 12951
7211a097
JJ
129522016-05-26 Jakub Jelinek <jakub@redhat.com>
12953
12954 * testsuite/libgomp.c/doacross-1.c (main): Use schedule(static)
12955 instead of invalid schedule(static, 0).
12956 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
12957
b4557008
CLT
129582016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
12959
12960 * oacc-plugin.h (GOMP_PLUGIN_async_unmap_vars): Add int parameter.
12961 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Add 'int async'
12962 parameter, use to set async stream around call to gomp_unmap_vars,
12963 call gomp_unmap_vars() with 'do_copyfrom' set to true.
12964 * plugin/plugin-nvptx.c (struct ptx_event): Add 'int val' field.
12965 (event_gc): Adjust event handling loop, collect PTX_EVT_ASYNC_CLEANUP
12966 events and call GOMP_PLUGIN_async_unmap_vars() for each of them.
12967 (event_add): Add int parameter, initialize 'val' field when
12968 adding new ptx_event struct.
12969 (nvptx_evec): Adjust event_add() call arguments.
12970 (nvptx_host2dev): Likewise.
12971 (nvptx_dev2host): Likewise.
12972 (nvptx_wait_async): Likewise.
12973 (nvptx_wait_all_async): Likewise.
12974 (GOMP_OFFLOAD_openacc_register_async_cleanup): Add async parameter,
12975 pass to event_add() call.
12976 * oacc-host.c (host_openacc_register_async_cleanup): Add 'int async'
12977 parameter.
12978 * oacc-mem.c (gomp_acc_remove_pointer): Adjust async case to
12979 call openacc.register_async_cleanup_func() hook.
12980 * oacc-parallel.c (GOACC_parallel_keyed): Likewise.
12981 * target.c (gomp_copy_from_async): Delete function.
12982 (gomp_map_vars): Remove async_refcount.
12983 (gomp_unmap_vars): Likewise.
12984 (gomp_load_image_to_device): Likewise.
12985 (omp_target_associate_ptr): Likewise.
12986 * libgomp.h (struct splay_tree_key_s): Remove async_refcount.
12987 (acc_dispatch_t.register_async_cleanup_func): Add int parameter.
12988 (gomp_copy_from_async): Remove.
12989
6ce13072
CLT
129902016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
12991
12992 * target.c (gomp_device_copy): New function.
12993 (gomp_copy_host2dev): Likewise.
12994 (gomp_copy_dev2host): Likewise.
12995 (gomp_free_device_memory): Likewise.
12996 (gomp_map_vars_existing): Adjust to call gomp_copy_host2dev.
12997 (gomp_map_pointer): Likewise.
12998 (gomp_map_vars): Adjust to call gomp_copy_host2dev, handle
12999 NULL value from alloc_func plugin hook.
13000 (gomp_unmap_tgt): Adjust to call gomp_free_device_memory.
13001 (gomp_copy_from_async): Adjust to call gomp_copy_dev2host.
13002 (gomp_unmap_vars): Likewise.
13003 (gomp_update): Adjust to call gomp_copy_dev2host and
13004 gomp_copy_host2dev functions.
13005 (gomp_unload_image_from_device): Handle false value from
13006 unload_image_func plugin hook.
13007 (gomp_init_device): Handle false value from init_device_func
13008 plugin hook.
13009 (gomp_exit_data): Adjust to call gomp_copy_dev2host.
13010 (omp_target_free): Adjust to call gomp_free_device_memory.
13011 (omp_target_memcpy): Handle return values from host2dev_func,
13012 dev2host_func, and dev2dev_func plugin hooks.
13013 (omp_target_memcpy_rect_worker): Likewise.
13014 (gomp_target_fini): Handle false value from fini_device_func
13015 plugin hook.
13016 * libgomp.h (struct gomp_device_descr): Adjust return type of
13017 init_device_func, fini_device_func, unload_image_func, free_func,
13018 dev2host_func,host2dev_func, and dev2dev_func plugin hooks to 'bool'.
13019 * oacc-init.c (acc_shutdown_1): Handle false value from
13020 fini_device_func plugin hook.
13021 * oacc-host.c (host_init_device): Change return type to bool.
13022 (host_fini_device): Likewise.
13023 (host_unload_image): Likewise.
13024 (host_free): Likewise.
13025 (host_dev2host): Likewise.
13026 (host_host2dev): Likewise.
13027 * oacc-mem.c (acc_free): Handle plugin hook fatal error case.
13028 (acc_memcpy_to_device): Likewise.
13029 (acc_memcpy_from_device): Likewise.
13030 (delete_copyout): Add libfnname parameter, handle free_func
13031 hook fatal error case.
13032 (acc_delete): Adjust delete_copyout call.
13033 (acc_copyout): Likewise.
13034 (update_dev_host): Move gomp_mutex_unlock to after
13035 host2dev/dev2host hook calls.
13036
13037 * plugin/plugin-hsa.c (hsa_warn): Adjust 'hsa_error' local variable
13038 to 'hsa_error_msg', for clarity.
13039 (hsa_fatal): Likewise.
13040 (hsa_error): New function.
13041 (init_hsa_context): Change return type to bool, adjust to return
13042 false on error.
13043 (GOMP_OFFLOAD_get_num_devices): Adjust to handle init_hsa_context
13044 return value.
13045 (GOMP_OFFLOAD_init_device): Change return type to bool, adjust to
13046 return false on error.
13047 (get_agent_info): Adjust to return NULL on error.
13048 (destroy_hsa_program): Change return type to bool, adjust to
13049 return false on error.
13050 (GOMP_OFFLOAD_load_image): Adjust to return -1 on error.
13051 (destroy_module): Change return type to bool, adjust to
13052 return false on error.
13053 (GOMP_OFFLOAD_unload_image): Likewise.
13054 (GOMP_OFFLOAD_fini_device): Likewise.
13055 (GOMP_OFFLOAD_alloc): Change to return NULL when called.
13056 (GOMP_OFFLOAD_free): Change to return false when called.
13057 (GOMP_OFFLOAD_dev2host): Likewise.
13058 (GOMP_OFFLOAD_host2dev): Likewise.
13059 (GOMP_OFFLOAD_dev2dev): Likewise.
13060
13061 * plugin/plugin-nvptx.c (CUDA_CALL_ERET): New convenience macro.
13062 (CUDA_CALL): Likewise.
13063 (CUDA_CALL_ASSERT): Likewise.
13064 (map_init): Change return type to bool, use CUDA_CALL* macros.
13065 (map_fini): Likewise.
13066 (init_streams_for_device): Change return type to bool, adjust
13067 call to map_init.
13068 (fini_streams_for_device): Change return type to bool, adjust
13069 call to map_fini.
13070 (select_stream_for_async): Release stream_lock before calls to
13071 GOMP_PLUGIN_fatal, adjust call to map_init.
13072 (nvptx_init): Use CUDA_CALL* macros.
13073 (nvptx_attach_host_thread_to_device): Change return type to bool,
13074 use CUDA_CALL* macros.
13075 (nvptx_open_device): Use CUDA_CALL* macros.
13076 (nvptx_close_device): Change return type to bool, use CUDA_CALL*
13077 macros.
13078 (nvptx_get_num_devices): Use CUDA_CALL* macros.
13079 (link_ptx): Change return type to bool, use CUDA_CALL* macros.
13080 (nvptx_exec): Use CUDA_CALL* macros.
13081 (nvptx_alloc): Use CUDA_CALL* macros.
13082 (nvptx_free): Change return type to bool, use CUDA_CALL* macros.
13083 (nvptx_host2dev): Likewise.
13084 (nvptx_dev2host): Likewise.
13085 (nvptx_wait): Use CUDA_CALL* macros.
13086 (nvptx_wait_async): Likewise.
13087 (nvptx_wait_all): Likewise.
13088 (nvptx_wait_all_async): Likewise.
13089 (nvptx_set_cuda_stream): Adjust order of stream_lock acquire,
13090 use CUDA_CALL* macros, adjust call to map_fini.
13091 (GOMP_OFFLOAD_init_device): Change return type to bool,
13092 adjust code accordingly.
13093 (GOMP_OFFLOAD_fini_device): Likewise.
13094 (GOMP_OFFLOAD_load_image): Adjust calls to
13095 nvptx_attach_host_thread_to_device/link_ptx to handle errors,
13096 use CUDA_CALL* macros.
13097 (GOMP_OFFLOAD_unload_image): Change return type to bool, adjust
13098 return code.
13099 (GOMP_OFFLOAD_alloc): Adjust calls to code to handle error return.
13100 (GOMP_OFFLOAD_free): Change return type to bool, adjust calls to
13101 handle error return.
13102 (GOMP_OFFLOAD_dev2host): Likewise.
13103 (GOMP_OFFLOAD_host2dev): Likewise.
13104 (GOMP_OFFLOAD_openacc_register_async_cleanup): Use CUDA_CALL* macros.
13105 (GOMP_OFFLOAD_openacc_create_thread_data): Likewise.
13106
e46c7770
CP
131072016-05-24 Cesar Philippidis <cesar@codesourcery.com>
13108
13109 * oacc-mem.c (acc_malloc): Update handling of shared-memory targets.
13110 (acc_free): Likewise.
13111 (acc_memcpy_to_device): Likewise.
13112 (acc_memcpy_from_device): Likewise.
13113 (acc_deviceptr): Likewise.
13114 (acc_hostptr): Likewise.
13115 (acc_is_present): Likewise.
13116 (acc_map_data): Likewise.
13117 (acc_unmap_data): Likewise.
13118 (present_create_copy): Likewise.
13119 (delete_copyout): Likewise.
13120 (update_dev_host): Likewise.
13121 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Remove xfail.
13122 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: New test.
13123 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Adjust test.
13124 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
13125 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: New test.
13126 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Adjust test so that
13127 it only runs on nvptx targets.
13128 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
13129 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
13130 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
13131 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
13132 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
13133 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
13134 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
13135 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
13136 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
13137 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
13138 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
13139 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
13140 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
13141 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
13142 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
13143 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
13144 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
13145 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
13146 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
13147 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
13148 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
13149 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
13150 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
13151
a5057543
MJ
131522016-05-23 Martin Jambor <mjambor@suse.cz>
13153
13154 * testsuite/libgomp.hsa.c/switch-sbr-2.c: New test.
13155
e37288a6
CLT
131562016-05-17 Chung-Lin Tang <cltang@codesourcery.com>
13157
13158 * oacc-init.c (acc_init): Remove !cached_base_dev condition on call
13159 to gomp_init_targets_once.
13160 (acc_set_device_type): Remove !cached_base_dev condition on call to
13161 gomp_init_targets_once, move call to before acc_device_lock acquire,
13162 to avoid deadlock.
13163 (acc_get_device_num): Remove !cached_base_dev condition on call to
13164 gomp_init_targets_once.
13165 (acc_set_device_num): Likewise.
13166
51d9ed48
MJ
131672016-05-16 Martin Jambor <mjambor@suse.cz>
13168
92a285c1 13169 * testsuite/libgomp.hsa.c/complex-align-2.c: New test.
51d9ed48 13170
5b37e866
NS
131712016-05-02 Nathan Sidwell <nathan@codesourcery.com>
13172
13173 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust
13174 expected partitioning.
13175
e7ff0319
CP
131762016-04-29 Cesar Philippidis <cesar@codesourcery.com>
13177
13178 PR middle-end/70626
13179 * testsuite/libgomp.oacc-c++/template-reduction.C: Adjust test.
13180 * testsuite/libgomp.oacc-c-c++-common/combined-reduction.c: New test.
13181 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: New test.
13182
c2bd3b69
AM
131832016-04-21 Alexander Monakov <amonakov@ispras.ru>
13184
13185 * plugin/plugin-nvptx.c (map_fini): Make cuMemFreeHost error
13186 non-fatal.
13187
84311083
JJ
131882016-04-19 Jakub Jelinek <jakub@redhat.com>
13189
13190 PR middle-end/70680
13191 * testsuite/libgomp.c/pr70680-1.c: New test.
13192 * testsuite/libgomp.c/pr70680-2.c: New test.
13193
aadc043f
CP
131942016-04-14 Cesar Philippidis <cesar@codesourcery.com>
13195
13196 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Don't
13197 pass parameter variables to subroutines.
13198
e387fc64
CP
131992016-04-14 Cesar Philippidis <cesar@codesourcery.com>
13200
13201 PR middle-end/70643
13202 * testsuite/libgomp.oacc-fortran/pr70643.f90: New test.
13203
10c3c424
CP
132042016-04-13 Cesar Philippidis <cesar@codesourcery.com>
13205
13206 PR testsuite/68242
13207 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Adjust test.
13208 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
13209
27f9add3
TS
132102016-04-12 Thomas Schwinge <thomas@codesourcery.com>
13211
58d32aeb
TS
13212 * libgomp_g.h: Rename GOACC_parallel_keyd prototype to
13213 GOACC_parallel_keyed, restore GOACC_parallel prototype, new
13214 GOACC_declare prototype.
13215
d97633ef
TS
13216 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c:
13217 Merge this file, and...
13218 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gv-np-1.c:
13219 ... this file, and...
13220 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c:
13221 ... this file, and...
13222 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c:
13223 ... this file, and...
13224 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c:
13225 ... this file, and...
13226 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c:
13227 ... this file, and...
13228 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c:
13229 ... this file, and...
13230 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c:
13231 ... this file, and...
13232 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c:
13233 ... this file, and...
13234 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c:
13235 ... this file, and...
13236 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c:
13237 ... this file, and...
13238 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c:
13239 ... this file, and...
13240 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c:
13241 ... this file into...
13242 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: ... this
13243 file.
13244
27f9add3
TS
13245 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
13246 Make failure observable.
13247
21f3a236
JJ
132482016-04-12 Jakub Jelinek <jakub@redhat.com>
13249
13250 * libgomp.h (struct gomp_target_task): Remove firstprivate_copies
13251 field.
13252 * target.c (gomp_target_fallback_firstprivate,
13253 gomp_target_unshare_firstprivate): Removed.
13254 (GOMP_target_ext): Copy firstprivate vars into gomp_allocaed memory
13255 before waiting for dependencies.
13256 (gomp_target_task_fn): Don't copy firstprivate vars here.
13257 * task.c (GOMP_PLUGIN_target_task_completion): Don't free
13258 firstprivate_copies here.
13259 (gomp_create_target_task): Don't initialize firstprivate_copies field.
13260 * testsuite/libgomp.c/target-25.c (main): Use map (to:) instead of
13261 explicit/implicit firstprivate.
13262
c42cfb5c
CP
132632016-04-08 Cesar Philippidis <cesar@codesourcery.com>
13264
13265 PR lto/70289
13266 PR ipa/70348
13267 PR tree-optimization/70373
13268 PR middle-end/70533
13269 PR middle-end/70534
13270 PR middle-end/70535
13271 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c: New
13272 test.
13273 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c: New
13274 test.
13275 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c: New
13276 test.
13277 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c: New
13278 test.
13279 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c: New
13280 test.
13281 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c: New
13282 test.
13283 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c: New
13284 test.
13285 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c: New
13286 test.
13287 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c: New
13288 test.
13289 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c: New test.
13290 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c: New test.
13291 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c: New test.
13292 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c: New
13293 test.
13294 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c: New
13295 test.
13296 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c: New
13297 test.
13298 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c: New
13299 test.
13300 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Add test
13301 coverage.
13302 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
13303 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
13304 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c: New test.
13305 * testsuite/libgomp.oacc-c-c++-common/pr70289.c: New test.
13306 * testsuite/libgomp.oacc-c-c++-common/pr70373.c: New test.
13307 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Add test
13308 coverage.
13309 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
13310 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
13311 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
13312 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
13313 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: New test.
13314 * testsuite/libgomp.oacc-c-c++-common/reduction.h: New test.
13315 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: New test.
13316 * testsuite/libgomp.oacc-fortran/pr70289.f90: New test.
13317 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Add test coverage.
13318 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
13319 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
13320 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
13321 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
13322 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
13323 * testsuite/libgomp.oacc-fortran/reduction-7.f90: New test.
13324
2620c80d
TS
133252016-03-30 Thomas Schwinge <thomas@codesourcery.com>
13326 James Norris <jnorris@codesourcery.com>
13327 Nathan Sidwell <nathan@codesourcery.com>
13328 Julian Brown <julian@codesourcery.com>
13329 Cesar Philippidis <cesar@codesourcery.com>
13330 Chung-Lin Tang <cltang@codesourcery.com>
13331 Tom de Vries <tom@codesourcery.com>
13332
13333 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Update.
13334 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
13335 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
13336 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Likewise.
13337 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
13338 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
13339 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
13340 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
13341 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
13342 XFAIL.
13343 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
13344 Incorporate...
13345 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: ... this
13346 file.
13347 * testsuite/libgomp.oacc-c++/template-reduction.C: New file.
13348 * testsuite/libgomp.oacc-c-c++-common/gang-static-1.c: Likewise.
13349 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Likewise.
13350 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-clauses.c:
13351 Likewise.
13352 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
13353 Likewise.
13354 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
13355 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Likewise.
13356 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
13357 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
13358 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
13359 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
13360 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
13361 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
13362 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
13363 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90:
13364 Likewise.
13365 * testsuite/libgomp.oacc-fortran/pr68813.f90: Likewise.
13366 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
13367 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Merge this
13368 file...
13369 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: ..., and this
13370 file into...
13371 * testsuite/libgomp.oacc-c-c++-common/data-clauses.h: ... this new
13372 file. Update.
13373 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels.c: New
13374 file.
13375 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel.c:
13376 Likewise.
13377 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: Rename to...
13378 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c:
13379 ... this new file. Update.
13380 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: Rename to...
13381 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c:
13382 ... this new file. Update.
13383 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: New
13384 file. Incorporate...
13385 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c: ... this
13386 file, and...
13387 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: ... this
13388 file, and...
13389 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: ... this
13390 file.
13391 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Remove file.
13392
ce83104b
TS
133932016-03-29 Thomas Schwinge <thomas@codesourcery.com>
13394
13395 * testsuite/libgomp.oacc-c++/c++.exp [!lang_test_file_found]: Call
13396 set-torture-options.
13397
6e0df3b7
TS
133982016-03-24 Thomas Schwinge <thomas@codesourcery.com>
13399
13400 * testsuite/libgomp.oacc-c++/c++.exp: Set up torture testing, use
13401 gcc-dg-runtest.
13402 * testsuite/libgomp.oacc-c/c.exp: Likewise.
13403 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: Specify
13404 -fno-builtin-acc_on_device instead of -O0.
13405 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: Skip for
13406 -O0.
13407 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
13408 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c:
13409 Likewise.
13410 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
13411 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
13412 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
13413 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
13414 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
13415 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
13416 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
13417 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
13418 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
13419 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
13420 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
13421 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
13422 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
13423 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
13424 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
13425 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
13426 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
13427 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-2.c:
13428 Don't specify -O2.
13429 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-3.c:
13430 Likewise.
13431 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta.c:
13432 Likewise.
13433
f9c8babb
ML
134342016-03-24 Martin Liska <mliska@suse.cz>
13435
13436 * plugin/plugin-hsa.c (packet_store_release): New function
13437 that is taken from the HSA runtime manual.
13438 (GOMP_OFFLOAD_run): Use the function.
13439
04833609
JJ
134402016-03-23 Jakub Jelinek <jakub@redhat.com>
13441
13442 PR c++/70376
13443 * testsuite/libgomp.c++/pr70376.C: New test.
13444
d79ee524
TV
134452016-03-23 Tom de Vries <tom@codesourcery.com>
13446
13447 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Add missing
13448 initialization of lresult and lvresult.
13449 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Same.
13450
b6d1f2b5
JN
134512016-03-23 James Norris <jnorris@codesourcery.com>
13452 Daichi Fukuoka <dc-fukuoka@sgi.com>
13453
13454 PR libgomp/69414
13455 * oacc-mem.c (delete_copyout, update_dev_host): Fix device address.
13456 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Additional tests.
13457 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
13458 * testsuite/libgomp.oacc-fortran/update-1.f90: New file.
13459
7397fce2
ML
134602016-03-23 Martin Liska <mliska@suse.cz>
13461
13462 PR hsa/70337
13463 * plugin/plugin-hsa.c (GOMP_OFFLOAD_run): Copy shadow
13464 argument just in case a dispatched kernel uses that argument.
13465
ee2e7d51
TS
134662016-03-16 Thomas Schwinge <thomas@codesourcery.com>
13467
13468 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Adjust to
13469 -ftree-parallelize-loops/-fopenacc changes.
13470 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
13471 Likewise.
13472 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
13473 Likewise.
13474 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
13475 Likewise.
13476 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
13477 Likewise.
13478 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
13479 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
13480
be9f7143
TS
134812016-03-13 Thomas Schwinge <thomas@codesourcery.com>
13482
13483 * testsuite/lib/libgomp.exp (libgomp_init): Potentially append to
13484 always_ld_library_path the path to libgcc_s.
13485
f6c1032d
CP
134862016-03-10 Cesar Philippidis <cesar@codesourcery.com>
13487
13488 PR testsuite/70009
13489 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Make test data signed.
13490
5a6452e6
TV
134912016-03-09 Tom de Vries <tom@codesourcery.com>
13492
13493 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: New test.
13494 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Same.
13495 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
13496 Same.
13497 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Same.
13498 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Same.
13499 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Same.
13500 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Same.
13501
96a71bd5
MJ
135022016-03-07 Martin Jambor <mjambor@suse.cz>
13503
13504 * testsuite/lib/libgomp.exp
13505 (check_effective_target_hsa_offloading_selected_nocache): New.
13506 (check_effective_target_hsa_offloading_selected): Likewise.
13507 * testsuite/libgomp.hsa.c/c.exp: Likewise.
13508 * testsuite/libgomp.hsa.c/alloca-1.c: Likewise.
13509 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
13510 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
13511 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
13512 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
13513 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
13514 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
13515 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
13516 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
13517 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
13518 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
13519 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
13520 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
13521 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
13522 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
13523 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
13524
02e0b5b2
MJ
135252016-03-07 Martin Jambor <mjambor@suse.cz>
13526
13527 * testsuite/libgomp.c/examples-4/async_target-2.c: Only run on
13528 non-shared memory accelerators.
13529 * testsuite/libgomp.c/examples-4/device-1.c: Likewise.
13530 * testsuite/libgomp.c/examples-4/target-5.c: Likewise.
13531 * testsuite/libgomp.c/examples-4/target_data-6.c: Likewise.
13532 * testsuite/libgomp.c/examples-4/target_data-7.c: Likewise.
13533 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
13534 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
13535 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
13536 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
13537 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
13538
45548f30
MJ
135392016-03-07 Martin Jambor <mjambor@suse.cz>
13540
13541 * testsuite/lib/libgomp.exp (libgomp_init): Append -Wno-hsa to
13542 ALWAYS_CFLAGS.
13543
da3d46cb
JJ
135442016-03-02 Jakub Jelinek <jakub@redhat.com>
13545
13546 PR libgomp/69555
13547 * testsuite/libgomp.c++/pr69555-1.C: New test.
13548 * testsuite/libgomp.c++/pr69555-2.C: New test.
13549
622174b2
KM
135502016-02-26 Keith McDaniel <k.allen.mcdaniel@gmail.com>
13551 Martin Jambor <mjambor@suse.cz>
13552
13553 * testsuite/lib/libgomp.exp
13554 (check_effective_target_offload_device_shared_as): New proc.
13555 * testsuite/libgomp.c++/declare_target-1.C: New test.
13556
e6861a99
IV
135572016-02-25 Ilya Verbin <ilya.verbin@intel.com>
13558
13559 PR driver/68463
13560 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: Remove.
13561
f99c3557
TS
135622016-02-23 Thomas Schwinge <thomas@codesourcery.com>
13563
13564 * oacc-parallel.c (GOACC_parallel_keyed): Initialize dims.
13565 * plugin/plugin-nvptx.c (nvptx_exec): Provide default values for
13566 dims.
13567 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Adjust to
13568 -ftree-parallelize-loops/-fopenacc changes.
13569 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Likewise.
13570 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c:
13571 Likewise.
13572 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c:
13573 Likewise.
13574 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c:
13575 Likewise.
13576 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c:
13577 Likewise.
13578 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c:
13579 Likewise.
13580 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c:
13581 Likewise.
13582 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c:
13583 Likewise.
13584 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
13585 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c:
13586 Likewise.
13587 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Likewise.
13588 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c:
13589 Likewise.
13590 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Likewise.
13591 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c:
13592 Likewise.
13593
d5ace3b5
CP
135942016-02-22 Cesar Philippidis <cesar@codesourcery.com>
13595
13596 * testsuite/libgomp.oacc-c-c++-common/vprop.c: New test.
13597
f3609a89
JJ
135982016-02-19 Jakub Jelinek <jakub@redhat.com>
13599
13600 PR driver/69805
13601 * testsuite/libgomp.c/pr69805.c: New test.
13602
2175df99
TV
136032016-02-16 Tom de Vries <tom@codesourcery.com>
13604
13605 PR lto/67709
13606 * testsuite/libgomp.fortran/declare-simd-4.f90: New test.
13607
17b6426c
TV
136082016-02-09 Tom de Vries <tom@codesourcery.com>
13609
13610 PR tree-optimization/69599
13611 * testsuite/libgomp.c/omp-nested-3.c: New test.
13612 * testsuite/libgomp.c/pr46032-2.c: New test.
13613 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: New test.
13614 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: New test.
13615
34df756c
TV
136162016-02-09 Tom de Vries <tom@codesourcery.com>
13617
13618 PR lto/69707
13619 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: New test.
13620
5854ee30
AM
136212016-02-02 Alexander Monakov <amonakov@ispras.ru>
13622
13623 * testsuite/libgomp.c/target-31.c: Fix testcase.
13624
e70b6ad7
AM
136252016-02-02 Alexander Monakov <amonakov@ispras.ru>
13626
13627 * testsuite/libgomp.c/examples-4/teams-3.c: Add missing reduction
13628 clause.
13629 * testsuite/libgomp.c/examples-4/teams-4.c: Likewise.
13630 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Add missing
13631 reduction and map clauses.
13632 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
13633
bd78a45f
JN
136342016-02-02 James Norris <jnorris@codesourcery.com>
13635
13636 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Fix clause.
13637
41d809d3
TS
136382016-02-02 Thomas Schwinge <thomas@codesourcery.com>
13639
18f60146
TS
13640 * libgomp.map (GOACC_2.0): Remove GOACC_host_data.
13641 * oacc-parallel.c (GOACC_host_data): Remove function definition.
13642
1a06f5e6
TS
13643 * testsuite/lib/libgomp.exp: Skip hsa offloading for OpenACC test
13644 cases.
13645
033ff3d1
TS
13646 * plugin/configfrag.ac (HSA_KMT_LIB, HSA_KMT_LDFLAGS): New
13647 variables.
13648 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib)
13649 (hsa_kmt_lib): Set variables.
13650 * testsuite/lib/libgomp.exp (libgomp_init): Use them to amend
13651 always_ld_library_path.
13652 * Makefile.in: Regenerate.
13653 * configure: Likewise.
13654 * testsuite/Makefile.in: Likewise.
13655
4a88d9b7
TS
13656 * plugin/configfrag.ac (offload_additional_options)
13657 (offload_additional_lib_paths): Don't amend for hsa offloading.
13658 * configure: Regenerate.
13659
41d809d3
TS
13660 * plugin/configfrag.ac: Don't configure for offloading target if
13661 we don't build the corresponding plugin.
13662 * configure: Regenerate.
13663
b6adbb9f
NS
136642016-02-01 Nathan Sidwell <nathan@codesourcery.com>
13665
13666 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: New.
13667 * testsuite/libgomp.oacc-fortran/routine-7.f90: Serialize loop.
13668
8dfdb419
TV
136692016-01-26 Tom de Vries <tom@codesourcery.com>
13670
13671 PR tree-optimization/69110
13672 * testsuite/libgomp.c/pr69110.c: New test.
13673
02ef53f2
RB
136742016-01-25 Richard Biener <rguenther@suse.de>
13675
13676 PR lto/69393
13677 * testsuite/libgomp.c++/pr69393.C: New testcase.
13678
eb4048f2
IV
136792016-01-22 Ilya Verbin <ilya.verbin@intel.com>
13680
13681 * target.c (gomp_get_target_fn_addr): Allow host fallback if target
13682 function wasn't mapped to the device with non-shared memory.
13683
b235cdd5
IV
136842016-01-20 Ilya Verbin <ilya.verbin@intel.com>
13685
13686 * task.c (gomp_create_target_task): Set firstprivate_copies to NULL.
13687
b2b40051
MJ
136882016-01-19 Martin Jambor <mjambor@suse.cz>
13689 Martin Liska <mliska@suse.cz>
13690
13691 * plugin/Makefrag.am: Add HSA plugin requirements.
13692 * plugin/configfrag.ac (HSA_RUNTIME_INCLUDE): New variable.
13693 (HSA_RUNTIME_LIB): Likewise.
13694 (HSA_RUNTIME_CPPFLAGS): Likewise.
13695 (HSA_RUNTIME_INCLUDE): New substitution.
13696 (HSA_RUNTIME_LIB): Likewise.
13697 (HSA_RUNTIME_LDFLAGS): Likewise.
13698 (hsa-runtime): New configure option.
13699 (hsa-runtime-include): Likewise.
13700 (hsa-runtime-lib): Likewise.
13701 (PLUGIN_HSA): New substitution variable.
13702 Fill HSA_RUNTIME_INCLUDE and HSA_RUNTIME_LIB according to the new
13703 configure options.
13704 (PLUGIN_HSA_CPPFLAGS): Likewise.
13705 (PLUGIN_HSA_LDFLAGS): Likewise.
13706 (PLUGIN_HSA_LIBS): Likewise.
13707 Check that we have access to HSA run-time.
13708 * libgomp-plugin.h (offload_target_type): New element
13709 OFFLOAD_TARGET_TYPE_HSA.
13710 * libgomp.h (gomp_target_task): New fields firstprivate_copies and
13711 args.
13712 (bool gomp_create_target_task): Updated.
13713 (gomp_device_descr): Extra parameter of run_func and async_run_func,
13714 new field can_run_func.
13715 * libgomp_g.h (GOMP_target_ext): Update prototype.
13716 * oacc-host.c (host_run): Added a new parameter args.
13717 * target.c (calculate_firstprivate_requirements): New function.
13718 (copy_firstprivate_data): Likewise.
13719 (gomp_target_fallback_firstprivate): Use them.
13720 (gomp_target_unshare_firstprivate): New function.
13721 (gomp_get_target_fn_addr): Allow returning NULL for shared memory
13722 devices.
13723 (GOMP_target): Do host fallback for all shared memory devices. Do not
13724 pass any args to plugins.
13725 (GOMP_target_ext): Introduce device-specific argument parameter args.
13726 Allow host fallback if device shares memory. Do not remap data if
13727 device has shared memory.
13728 (gomp_target_task_fn): Likewise. Also treat shared memory devices
13729 like host fallback for mappings.
13730 (GOMP_target_data): Treat shared memory devices like host fallback.
13731 (GOMP_target_data_ext): Likewise.
13732 (GOMP_target_update): Likewise.
13733 (GOMP_target_update_ext): Likewise. Also pass NULL as args to
13734 gomp_create_target_task.
13735 (GOMP_target_enter_exit_data): Likewise.
13736 (omp_target_alloc): Treat shared memory devices like host fallback.
13737 (omp_target_free): Likewise.
13738 (omp_target_is_present): Likewise.
13739 (omp_target_memcpy): Likewise.
13740 (omp_target_memcpy_rect): Likewise.
13741 (omp_target_associate_ptr): Likewise.
13742 (gomp_load_plugin_for_device): Also load can_run.
13743 * task.c (GOMP_PLUGIN_target_task_completion): Free
13744 firstprivate_copies.
13745 (gomp_create_target_task): Accept new argument args and store it to
13746 ttask.
13747 * plugin/plugin-hsa.c: New file.
13748
5d7804a9
TV
137492016-01-18 Tom de Vries <tom@codesourcery.com>
13750
13751 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: New test.
13752 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Same.
13753 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c: Same.
13754 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c: Same.
13755 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c: Same.
13756 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c: Same.
13757 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c: Same.
13758 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c: Same.
13759 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c: Same.
13760 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c: Same.
13761 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
13762 Same.
13763 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
13764 Same.
13765 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c: Same.
13766 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c: Same.
13767 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Same.
13768 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c: Same.
13769 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Same.
13770 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c: Same.
13771 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Same.
13772 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
13773 Same.
13774 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c: Same.
13775
cb11f3cf
JJ
137762016-01-15 Jakub Jelinek <jakub@redhat.com>
13777
13778 * task.c (GOMP_PLUGIN_target_task_completion): Add missing return.
13779
33a126a6
CP
137802016-01-15 Cesar Philippidis <cesar@codesourcery.com>
13781
13782 * testsuite/libgomp.oacc-fortran/kernels-data.f90: New test.
13783
cdf6119d
JN
137842016-01-12 James Norris <jnorris@codesourcery.com>
13785
13786 * libgomp.texi: Updates for OpenACC.
13787
0d58938e
AM
137882016-01-11 Alexander Monakov <amonakov@ispras.ru>
13789
13790 * plugin/plugin-nvptx.c (link_ptx): Do not set CU_JIT_TARGET.
13791
95918b49
L
137922016-01-07 H.J. Lu <hongjiu.lu@intel.com>
13793
13794 PR fortran/66680
13795 * testsuite/libgomp.fortran/pr66680.f90: New test.
13796
8fc708b7
JJ
137972016-01-07 Jakub Jelinek <jakub@redhat.com>
13798
13799 PR middle-end/68960
13800 * testsuite/libgomp.c/pr68960.c: New test.
13801
e9b596c1
NS
138022016-01-06 Nathan Sidwell <nathan@acm.org>
13803
1a14faf2 13804 * openacc.h (acc_on_device): Add routine pragma for C++ wrapper.
e9b596c1
NS
13805 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: New.
13806
21fa2a29
JJ
138072016-01-04 Jakub Jelinek <jakub@redhat.com>
13808
818ab71a
JJ
13809 Update copyright years.
13810
21fa2a29
JJ
13811 * libgomp.texi: Bump @copying's copyright year.
13812
9310efbc
NS
138132015-12-31 Nathan Sidwell <nathan@acm.org>
13814
13815 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Correct
13816 dg-additional-options syntax.
13817 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
13818 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
13819 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
13820 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
13821 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
13822 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
13823 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
13824 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
13825 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
13826 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
13827 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
13828 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
13829 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
13830 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
13831 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
13832 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
13833 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
13834 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
13835
4a38b02b
IV
138362015-12-15 Ilya Verbin <ilya.verbin@intel.com>
13837
13838 * libgomp.h (REFCOUNT_LINK): Define.
13839 (struct splay_tree_key_s): Add link_key.
13840 * target.c (gomp_map_vars): Treat REFCOUNT_LINK objects as not mapped.
13841 Replace target address of the pointer with target address of newly
13842 mapped object in the splay tree. Set link pointer on target to the
13843 device address of the mapped object.
13844 (gomp_unmap_vars): Restore target address of the pointer in the splay
13845 tree for REFCOUNT_LINK objects after unmapping.
13846 (gomp_load_image_to_device): Set refcount to REFCOUNT_LINK for "omp
13847 declare target link" objects.
13848 (gomp_unload_image_from_device): Replace j with i. Force unmap of all
13849 "omp declare target link" objects, which were mapped for the image.
13850 (gomp_exit_data): Restore target address of the pointer in the splay
13851 tree for REFCOUNT_LINK objects after unmapping.
13852 * testsuite/libgomp.c/target-link-1.c: New file.
13853
d84ffc0a
IV
138542015-12-14 Ilya Verbin <ilya.verbin@intel.com>
13855
13856 * libgomp.h (gomp_device_state): New enum.
13857 (struct gomp_device_descr): Replace is_initialized with state.
13858 (gomp_fini_device): Remove declaration.
13859 * oacc-host.c (host_dispatch): Use state instead of is_initialized.
13860 * oacc-init.c (acc_init_1): Use state instead of is_initialized.
13861 (acc_shutdown_1): Likewise. Inline gomp_fini_device.
13862 (acc_set_device_type): Use state instead of is_initialized.
13863 (acc_set_device_num): Likewise.
13864 * target.c (resolve_device): Use state instead of is_initialized.
13865 Do not initialize finalized device.
13866 (gomp_map_vars): Do nothing if device is finalized.
13867 (gomp_unmap_vars): Likewise.
13868 (gomp_update): Likewise.
13869 (GOMP_offload_register_ver): Use state instead of is_initialized.
13870 (GOMP_offload_unregister_ver): Likewise.
13871 (gomp_init_device): Likewise.
13872 (gomp_unload_device): Likewise.
13873 (gomp_fini_device): Remove.
13874 (gomp_get_target_fn_addr): Do nothing if device is finalized.
13875 (GOMP_target): Go to host fallback if device is finalized.
13876 (GOMP_target_ext): Likewise.
13877 (gomp_exit_data): Do nothing if device is finalized.
13878 (gomp_target_task_fn): Go to host fallback if device is finalized.
13879 (gomp_target_fini): New static function.
13880 (gomp_target_init): Use state instead of is_initialized.
13881 Call gomp_target_fini at exit.
13882
76680678
TV
138832015-12-09 Tom de Vries <tom@codesourcery.com>
13884
13885 PR tree-optimization/68716
13886 * testsuite/libgomp.c/omp-nested-2.c: New test.
13887
ff7a55bf
TS
138882015-12-02 Thomas Schwinge <thomas@codesourcery.com>
13889
13890 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: Restrict to
13891 target openacc_nvidia_accel_selected.
13892 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: Likewise.
13893 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: Likewise.
13894 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: Remove file.
13895 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: Remove file.
13896
37d5ad46
JB
138972015-12-01 Julian Brown <julian@codesourcery.com>
13898 James Norris <James_Norris@mentor.com>
13899
13900 * oacc-parallel.c (GOACC_host_data): New function.
13901 * libgomp.map (GOACC_host_data): Add to GOACC_2.0.1.
13902 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: New test.
13903 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: New test.
13904 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: New test.
13905 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: New test.
13906 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: New test.
13907 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New test.
13908
db941d7e
CP
139092015-11-30 James Norris <jnorris@codesourcery.com>
13910 Cesar Philippidis <cesar@codesourcery.com>
13911
13912 libgomp/
13913 * libgomp.oacc-fortran/routine-5.f90: New test.
13914 * libgomp.oacc-fortran/routine-7.f90: New test.
13915 * libgomp.oacc-fortran/routine-9.f90: New test.
13916
e0ca27c5
TV
139172015-11-30 Tom de Vries <tom@codesourcery.com>
13918
13919 PR tree-optimization/46032
13920 * testsuite/libgomp.c/pr46032.c: New test.
13921
aec17bfe
JJ
139222015-11-27 Jakub Jelinek <jakub@redhat.com>
13923
8e4e4719
JJ
13924 PR libgomp/68579
13925 * task.c (gomp_task_run_post_handle_depend_hash): New forward decl.
13926 (gomp_create_target_task): Call it before freeing
13927 GOMP_TARGET_TASK_DATA tasks.
13928
aec17bfe
JJ
13929 PR c/63326
13930 * testsuite/libgomp.c/cancel-parallel-2.c (foo): Add semicolon
13931 in between case label and OpenMP standalone directives.
13932 * testsuite/libgomp.c++/cancel-parallel-2.C (foo): Likewise.
13933
6cfe90e6
DE
139342015-11-26 David Edelsohn <dje.gcc@gmail.com>
13935
13936 * configure: Regenerate.
13937
0e65fd7d
JJ
139382015-11-26 Jakub Jelinek <jakub@redhat.com>
13939
13940 * testsuite/libgomp.c/target-35.c: New test.
13941
dc7a8b4b
JN
139422015-11-22 James Norris <jnorris@codesourcery.com>
13943 Cesar Philippidis <cesar@codesourcery.com>
13944
13945 * testsuite/libgomp.oacc-fortran/declare-1.f90: New test.
13946 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
13947 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
13948 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
13949 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
13950
48a78aee
JJ
139512015-11-20 Jakub Jelinek <jakub@redhat.com>
13952
13953 PR middle-end/68221
13954 * testsuite/libgomp.c/reduction-11.c: Remove xfail.
13955 * testsuite/libgomp.c/reduction-12.c: Likewise.
13956 * testsuite/libgomp.c++/reduction-11.C: Likewise.
13957 * testsuite/libgomp.c++/reduction-12.C: Likewise.
13958
2d256816
NS
139592015-11-19 Nathan Sidwell <nathan@codesourcery.com>
13960
13961 * libgomp.oacc-c-c++-common/reduction-dbl.c: New.
13962 * libgomp.oacc-c-c++-common/reduction-flt.c: New.
13963 * libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Use typedef.
13964 * libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Use typedef.
13965 * libgomp.oacc-c-c++-common/reduction-2.c: Uncomment broken tests
13966 and fix.
13967 * libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
13968 * libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
13969
33f47f42
NS
139702015-11-18 Nathan Sidwell <nathan@codesourcery.com>
13971
13972 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Add
13973 worker & gang cases.
13974 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
13975
3d7bfee0
CP
139762015-11-17 Cesar Philippidis <cesar@codesourcery.com>
13977
13978 * config/nvptx/priority_queue.c: New file.
13979
00b9bd52
JJ
139802015-11-14 Jakub Jelinek <jakub@redhat.com>
13981
13982 * libgomp.texi: Update references from OpenMP 4.0 to OpenMP 4.5
13983 sections.
13984
e4606348
JJ
139852015-11-14 Jakub Jelinek <jakub@redhat.com>
13986 Aldy Hernandez <aldyh@redhat.com>
13987 Ilya Verbin <ilya.verbin@intel.com>
13988
13989 * ordered.c (gomp_doacross_init, GOMP_doacross_post,
13990 GOMP_doacross_wait, gomp_doacross_ull_init, GOMP_doacross_ull_post,
13991 GOMP_doacross_ull_wait): For GFS_GUIDED don't divide number of
13992 iterators or IV by chunk size.
13993 * parallel.c (gomp_resolve_num_threads): Don't assume that
13994 if thr->ts.team is non-NULL, then pool must be non-NULL.
13995 * libgomp-plugin.h (GOMP_PLUGIN_target_task_completion): Declare.
13996 * libgomp.map (GOMP_PLUGIN_1.1): New symbol version, export
13997 GOMP_PLUGIN_target_task_completion.
13998 * Makefile.am (libgomp_la_SOURCES): Add priority_queue.c.
13999 * Makefile.in: Regenerate.
14000 * libgomp.h: Shuffle prototypes and forward definitions around so
14001 priority queues can be defined.
14002 (enum gomp_task_kind): Add GOMP_TASK_ASYNC_RUNNING.
14003 (enum gomp_target_task_state): New enum.
14004 (struct gomp_target_task): Add state, tgt, task and team fields.
14005 (gomp_create_target_task): Change return type to bool, add
14006 state argument.
14007 (gomp_target_task_fn): Change return type to bool.
14008 (struct gomp_device_descr): Add async_run_func.
14009 (struct gomp_task): Remove children, next_child, prev_child,
14010 next_queue, prev_queue, next_taskgroup, prev_taskgroup.
14011 Add pnode field.
14012 (struct gomp_taskgroup): Remove children.
14013 Add taskgroup_queue.
14014 (struct gomp_team): Change task_queue type to a priority queue.
14015 (splay_compare): Define inline.
14016 (priority_queue_offset): New.
14017 (priority_node_to_task): New.
14018 (task_to_priority_node): New.
14019 * oacc-mem.c: Do not include splay-tree.h.
14020 * priority_queue.c: New file.
14021 * priority_queue.h: New file.
14022 * splay-tree.c: Do not include splay-tree.h.
14023 (splay_tree_foreach_internal): New.
14024 (splay_tree_foreach): New.
14025 * splay-tree.h: Become re-entrant if splay_tree_prefix is defined.
14026 (splay_tree_callback): Define typedef.
14027 * target.c (splay_compare): Move to libgomp.h.
14028 (GOMP_target): Don't adjust *thr in any way around running offloaded
14029 task.
14030 (GOMP_target_ext): Likewise. Handle target nowait.
14031 (GOMP_target_update_ext, GOMP_target_enter_exit_data): Check
14032 return value from gomp_create_target_task, if false, fallthrough
14033 as if no dependencies exist.
14034 (gomp_target_task_fn): Change return type to bool, return true
14035 if the task should have another part scheduled later. Handle
14036 target nowait.
14037 (gomp_load_plugin_for_device): Initialize async_run.
14038 * task.c (gomp_init_task): Initialize children_queue.
14039 (gomp_clear_parent_in_list): New.
14040 (gomp_clear_parent_in_tree): New.
14041 (gomp_clear_parent): Handle priorities.
14042 (GOMP_task): Likewise.
14043 (priority_queue_move_task_first,
14044 gomp_target_task_completion, GOMP_PLUGIN_target_task_completion):
14045 New functions.
14046 (gomp_create_target_task): Use priority queues. Change return type
14047 to bool, add state argument, return false if for async
14048 {{enter,exit} data,update} constructs no dependencies need to be
14049 waited for, handle target nowait. Set task->fn to NULL instead of
14050 gomp_target_task_fn.
14051 (verify_children_queue): Remove.
14052 (priority_list_upgrade_task): New.
14053 (priority_queue_upgrade_task): New.
14054 (verify_task_queue): Remove.
14055 (priority_list_downgrade_task): New.
14056 (priority_queue_downgrade_task): New.
14057 (gomp_task_run_pre): Use priority queues.
14058 Abstract code out to priority_queue_downgrade_task.
14059 (gomp_task_run_post_handle_dependers): Use priority queues.
14060 (gomp_task_run_post_remove_parent): Likewise.
14061 (gomp_task_run_post_remove_taskgroup): Likewise.
14062 (gomp_barrier_handle_tasks): Likewise. Handle target nowait target
14063 tasks specially.
14064 (GOMP_taskwait): Likewise.
14065 (gomp_task_maybe_wait_for_dependencies): Likewise. Abstract code to
14066 priority-queue_upgrade_task.
14067 (GOMP_taskgroup_start): Use priority queues.
14068 (GOMP_taskgroup_end): Likewise. Handle target nowait target tasks
14069 specially. If taskgroup is NULL, and thr->ts.level is 0, act as a
14070 barrier.
14071 * taskloop.c (GOMP_taskloop): Handle priorities.
14072 * team.c (gomp_new_team): Call priority_queue_init.
14073 (free_team): Call priority_queue_free.
14074 (gomp_free_thread): Call gomp_team_end if thr->ts.team is artificial
14075 team created for target nowait in implicit parallel region.
14076 (gomp_team_start): For nested check, test thr->ts.level instead of
14077 thr->ts.team != NULL.
14078 * testsuite/libgomp.c/doacross-3.c: New test.
14079 * testsuite/libgomp.c/ordered-5.c: New test.
14080 * testsuite/libgomp.c/priority.c: New test.
14081 * testsuite/libgomp.c/target-31.c: New test.
14082 * testsuite/libgomp.c/target-32.c: New test.
14083 * testsuite/libgomp.c/target-33.c: New test.
14084 * testsuite/libgomp.c/target-34.c: New test.
14085
1d1ab74f
NS
140862015-11-13 Nathan Sidwell <nathan@codesourcery.com>
14087
c5a64cfe
NS
14088 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: New.
14089
1d1ab74f
NS
14090 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Sequential
14091 loop is sequential.
14092
dd3c1b14
NS
140932015-11-13 Nathan Sidwell <nathan@codesourcery.com>
14094
14095 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: New.
14096 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: New.
14097
6e232ba4
JN
140982015-11-12 James Norris <jnorris@codesourcery.com>
14099 Joseph Myers <joseph@codesourcery.com>
14100
14101 * libgomp.map (GOACC_2.0.1): Export GOACC_declare.
14102 * oacc-parallel.c (GOACC_declare): New function.
14103 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: New test.
14104 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Likewise.
14105 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Likewise.
14106 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Likewise.
14107 * testsuite/libgomp.oacc-c++/declare-1.C: Likewise.
14108
fffeedeb
NS
141092015-11-12 Nathan Sidwell <nathan@codesourcery.com>
14110
14111 * testsuite/libgomp.oacc-c-c++-common/default-1.c: New.
14112
182190f2
NS
141132015-11-1 Nathan Sidwell <nathan@codesourcery.com>
14114
14115 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: New.
14116 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: New.
14117
36fa0f5f
NS
141182015-11-09 Nathan Sidwell <nathan@codesourcery.com>
14119
d350c40c
NS
14120 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Remove
14121 inadvertent commit.
14122
141232015-11-09 Nathan Sidwell <nathan@codesourcery.com>
14124
36fa0f5f
NS
14125 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: New.
14126 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: New.
14127 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: New.
14128 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: New.
14129 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: New.
14130
66a5f0b4
TS
141312015-11-06 Thomas Schwinge <thomas@codesourcery.com>
14132
14133 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: XFAIL.
14134 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
14135
e01d41e5
JJ
141362015-11-05 Jakub Jelinek <jakub@redhat.com>
14137 Ilya Verbin <ilya.verbin@intel.com>
14138
14139 * libgomp_g.h (GOMP_loop_nonmonotonic_dynamic_next,
14140 GOMP_loop_nonmonotonic_dynamic_start,
14141 GOMP_loop_nonmonotonic_guided_next,
14142 GOMP_loop_nonmonotonic_guided_start,
14143 GOMP_loop_ull_nonmonotonic_dynamic_next,
14144 GOMP_loop_ull_nonmonotonic_dynamic_start,
14145 GOMP_loop_ull_nonmonotonic_guided_next,
14146 GOMP_loop_ull_nonmonotonic_guided_start,
14147 GOMP_parallel_loop_nonmonotonic_dynamic,
14148 GOMP_parallel_loop_nonmonotonic_guided): New prototypes.
14149 (GOMP_target_41): Renamed to ...
14150 (GOMP_target_ext): ... this. Add num_teams and thread_limit
14151 arguments.
14152 (GOMP_target_data_41): Renamed to ...
14153 (GOMP_target_data_ext): ... this.
14154 (GOMP_target_update_41): Renamed to ...
14155 (GOMP_target_update_ext): ... this.
14156 * libgomp.map (GOMP_4.5): Export GOMP_target_ext,
14157 GOMP_target_data_ext and GOMP_target_update_ext instead of
14158 GOMP_target_41, GOMP_target_data_41 and GOMP_target_update_41.
14159 Export GOMP_loop_nonmonotonic_dynamic_next,
14160 GOMP_loop_nonmonotonic_dynamic_start,
14161 GOMP_loop_nonmonotonic_guided_next,
14162 GOMP_loop_nonmonotonic_guided_start,
14163 GOMP_loop_ull_nonmonotonic_dynamic_next,
14164 GOMP_loop_ull_nonmonotonic_dynamic_start,
14165 GOMP_loop_ull_nonmonotonic_guided_next,
14166 GOMP_loop_ull_nonmonotonic_guided_start,
14167 GOMP_parallel_loop_nonmonotonic_dynamic and
14168 GOMP_parallel_loop_nonmonotonic_guided.
14169 * loop.c (GOMP_parallel_loop_nonmonotonic_dynamic,
14170 GOMP_parallel_loop_nonmonotonic_guided,
14171 GOMP_loop_nonmonotonic_dynamic_start,
14172 GOMP_loop_nonmonotonic_guided_start,
14173 GOMP_loop_nonmonotonic_dynamic_next,
14174 GOMP_loop_nonmonotonic_guided_next): New aliases or functions.
14175 * loop_ull.c (GOMP_loop_ull_nonmonotonic_dynamic_start,
14176 GOMP_loop_ull_nonmonotonic_guided_start,
14177 GOMP_loop_ull_nonmonotonic_dynamic_next,
14178 GOMP_loop_ull_nonmonotonic_guided_next): Likewise.
14179 * target.c (gomp_map_0len_lookup, gomp_map_val): New inline
14180 functions.
14181 (gomp_map_vars): Handle GOMP_MAP_ALWAYS_POINTER. For
14182 GOMP_MAP_ZERO_LEN_ARRAY_SECTION use gomp_map_0len_lookup.
14183 Use gomp_map_val function.
14184 (gomp_target_fallback_firstprivate): New static function.
14185 (GOMP_target_41): Renamed to ...
14186 (GOMP_target_ext): ... this. Add num_teams and thread_limit
14187 arguments. Move firstprivate fallback handling into a new
14188 function.
14189 (GOMP_target_data_41): Renamed to ...
14190 (GOMP_target_data_ext): ... this.
14191 (GOMP_target_update_41): Renamed to ...
14192 (GOMP_target_update_ext): ... this.
14193 (gomp_exit_data): For GOMP_MAP_*ZERO_LEN* use
14194 gomp_map_0len_lookup instead of gomp_map_lookup.
14195 (omp_target_is_present): Use gomp_map_0len_lookup instead of
14196 gomp_map_lookup.
14197 * testsuite/libgomp.c/target-28.c: Likewise.
14198 * testsuite/libgomp.c/monotonic-1.c: New test.
14199 * testsuite/libgomp.c/monotonic-2.c: New test.
14200 * testsuite/libgomp.c/nonmonotonic-1.c: New test.
14201 * testsuite/libgomp.c/nonmonotonic-2.c: New test.
14202 * testsuite/libgomp.c/pr66199-5.c: New test.
14203 * testsuite/libgomp.c/pr66199-6.c: New test.
14204 * testsuite/libgomp.c/pr66199-7.c: New test.
14205 * testsuite/libgomp.c/pr66199-8.c: New test.
14206 * testsuite/libgomp.c/pr66199-9.c: New test.
14207 * testsuite/libgomp.c/reduction-11.c: New test.
14208 * testsuite/libgomp.c/reduction-12.c: New test.
14209 * testsuite/libgomp.c/reduction-13.c: New test.
14210 * testsuite/libgomp.c/reduction-14.c: New test.
14211 * testsuite/libgomp.c/reduction-15.c: New test.
14212 * testsuite/libgomp.c/target-12.c (main): Adjust for
14213 omp_target_is_present change for one-past-last element.
14214 * testsuite/libgomp.c/target-17.c (foo): Drop tests where
14215 the same var is both mapped and privatized.
14216 * testsuite/libgomp.c/target-19.c (foo): Adjust for different
14217 handling of zero-length array sections.
14218 * testsuite/libgomp.c/target-28.c: New test.
14219 * testsuite/libgomp.c/target-29.c: New test.
14220 * testsuite/libgomp.c/target-30.c: New test.
14221 * testsuite/libgomp.c/target-teams-1.c: New test.
14222 * testsuite/libgomp.c++/member-6.C: New test.
14223 * testsuite/libgomp.c++/member-7.C: New test.
14224 * testsuite/libgomp.c++/monotonic-1.C: New test.
14225 * testsuite/libgomp.c++/monotonic-2.C: New test.
14226 * testsuite/libgomp.c++/nonmonotonic-1.C: New test.
14227 * testsuite/libgomp.c++/nonmonotonic-2.C: New test.
14228 * testsuite/libgomp.c++/pr66199-3.C: New test.
14229 * testsuite/libgomp.c++/pr66199-4.C: New test.
14230 * testsuite/libgomp.c++/pr66199-5.C: New test.
14231 * testsuite/libgomp.c++/pr66199-6.C: New test.
14232 * testsuite/libgomp.c++/pr66199-7.C: New test.
14233 * testsuite/libgomp.c++/pr66199-8.C: New test.
14234 * testsuite/libgomp.c++/pr66199-9.C: New test.
14235 * testsuite/libgomp.c++/reduction-11.C: New test.
14236 * testsuite/libgomp.c++/reduction-12.C: New test.
14237 * testsuite/libgomp.c++/target-13.C: New test.
14238 * testsuite/libgomp.c++/target-14.C: New test.
14239 * testsuite/libgomp.c++/target-15.C: New test.
14240 * testsuite/libgomp.c++/target-16.C: New test.
14241 * testsuite/libgomp.c++/target-17.C: New test.
14242 * testsuite/libgomp.c++/target-18.C: New test.
14243 * testsuite/libgomp.c++/target-19.C: New test.
14244
ccc8282b
NS
142452015-11-04 Nathan Sidwell <nathan@codesourcery.com>
14246
14247 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Fix dimensions
14248 and reduction copy.
14249 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
14250 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
14251 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
14252 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
14253 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
14254 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
14255 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
14256 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
14257 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
14258 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c: Likewise.
14259 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
14260 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
14261 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
14262 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New.
14263
5d6823a2
NS
142642015-11-04 Nathan Sidwell <nathan@codesourcery.com>
14265
14266 * libgomp.oacc-c-c++-common/loop-red-g-1.c: New.
14267 * libgomp.oacc-c-c++-common/loop-red-gwv-1.c: New.
14268 * libgomp.oacc-c-c++-common/loop-red-v-1.c: New.
14269 * libgomp.oacc-c-c++-common/loop-red-v-2.c: New.
14270 * libgomp.oacc-c-c++-common/loop-red-w-1.c: New.
14271 * libgomp.oacc-c-c++-common/loop-red-w-2.c: New.
14272 * libgomp.oacc-c-c++-common/loop-red-wv-1.c: New.
14273 * libgomp.oacc-fortran/reduction-5.f90: Avoid reference var.
14274
5c06742f
NS
142752015-11-03 Nathan Sidwell <nathan@codesourcery.com>
14276
14277 * libgomp.h (struct acc_dispatch_t): Remove args from exec_func.
14278 * plugin/plugin-nvptx.c (nvptx_exec): Remove sizes & kinds arg.
14279 (GOMP_OFFLOAD_openacc_parallel): Likewise.
14280 * oacc-host.c (host_openacc_exec): Likewise.
14281 * oacc-parallel.c (GOACC_parallel_keyed): Adjust exec_func call.
14282
4bf9e5a8
TS
142832015-11-03 Julian Brown <julian@codesourcery.com>
14284 Thomas Schwinge <thomas@codesourcery.com>
14285
14286 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: New file.
14287 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
14288 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c:
14289 Likewise.
14290 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: Likewise.
14291 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: Likewise.
14292
142932015-11-03 James Norris <jnorris@codesourcery.com>
14294
14295 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: New
14296 file.
14297 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c:
14298 Likewise.
14299 * testsuite/libgomp.oacc-c-c++-common/atomic_rw-1.c: Likewise.
14300 * testsuite/libgomp.oacc-c-c++-common/atomic_update-1.c: Likewise.
14301 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
14302 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: New file.
14303 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
14304
a0e701d8
NS
143052015-10-29 Nathan Sidwell <nathan@codesourcery.com>
14306
14307 * openacc.h (enum acc_device_t): Reformat. Ensure layout
14308 compatibility.
14309 (enum acc_async_t): Reformat.
14310 (acc_on_device): Declare compatible with builtin and provide C++
14311 wrapper.
14312 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: New.
14313
41e977ac
TS
143142015-10-29 Thomas Schwinge <thomas@codesourcery.com>
14315 Cesar Philippidis <cesar@codesourcery.com>
14316
14317 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: Rename to...
14318 * testsuite/libgomp.oacc-c-c++-common/combined-directives-1.c:
14319 ... this. Add a description of the test at the top of the file.
14320 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Rename file to...
14321 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90:
14322 ... this. Add a description of the test at the top of the file.
14323
e3091406
NS
143242015-10-28 Nathan Sidwell <nathan@codesourcery.com>
14325
14326 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: New.
14327 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: New.
14328 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: New.
14329 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: New.
14330 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: New.
14331 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: New.
14332
a1c1908b
NS
143332015-10-27 Nathan Sidwell <nathan@codesourcery.com>
14334
14335 * plugin/plugin-nvptx.c (nvptx_exec): Remove check on compute
14336 dimensions.
14337
b3962a4a
TS
143382015-10-27 Thomas Schwinge <thomas@codesourcery.com>
14339
14340 PR testsuite/68063
14341 * testsuite/libgomp.c++/member-1.C (A::m1): Add missing private clause.
14342
88bae6f4
TS
143432015-10-27 James Norris <jnorris@codesourcery.com>
14344
14345 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: New file.
14346 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Likewise.
14347
8baa7864
TS
143482015-10-26 Thomas Schwinge <thomas@codesourcery.com>
14349
bdeb752c
TS
14350 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Print to stderr.
14351 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
14352
ecd4fd43
TS
14353 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Remove explicit
14354 acc_device_nvidia usage.
14355 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
14356 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
14357 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
14358
aa8b7d30
TS
14359 * oacc-init.c (acc_shutdown): Call gomp_init_targets_once.
14360 * testsuite/libgomp.oacc-c-c++-common/lib-8.c: New file.
14361
7c8f138d
TS
14362 PR libgomp/66518
14363 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Resolve XFAIL.
14364
8baa7864
TS
14365 PR libgomp/65437
14366 PR libgomp/66518
14367 * oacc-mem.c (update_dev_host): Call goacc_lazy_initialize.
14368 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Remove XFAIL.
14369
88ebcde5
TV
143702015-10-23 Tom de Vries <tom@codesourcery.com>
14371
14372 PR testsuite/68063
14373 * testsuite/libgomp.c++/member-2.C (A::m1): Add missing private clause.
14374
9ef83c04
NS
143752015-10-20 Nathan Sidwell <nathan@codesourcery.com>
14376
14377 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Set sane
14378 vector_length.
14379 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
14380
3837c6d6
IV
143812015-10-14 Ilya Verbin <ilya.verbin@intel.com>
14382 Aleksander Ivanushenko <aleksander.ivanushenko@intel.com>
14383
14384 * target.c (gomp_map_vars): Initialize tgt->tgt_start and tgt->tgt_end
14385 to 0 when mapnum is 0.
14386
ac8a1965
SH
143872015-10-14 Sebastian Huber <sebastian.huber@embedded-brains.de>
14388
14389 * fortran.c (omp_get_place_proc_ids_, omp_get_partition_place_nums_):
14390 Cast to int from int32_t.
14391
d9a6bd32
JJ
143922015-10-13 Jakub Jelinek <jakub@redhat.com>
14393 Aldy Hernandez <aldyh@redhat.com>
14394 Ilya Verbin <ilya.verbin@intel.com>
14395
14396 * config/linux/affinity.c (omp_get_place_num_procs,
14397 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
14398 * config/linux/doacross.h: New file.
14399 * config/posix/affinity.c (omp_get_place_num_procs,
14400 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
14401 * config/posix/doacross.h: New file.
14402 * env.c: Include gomp-constants.h.
14403 (struct gomp_task_icv): Rename run_sched_modifier to
14404 run_sched_chunk_size.
14405 (gomp_max_task_priority_var): New variable.
14406 (parse_schedule): Rename run_sched_modifier to run_sched_chunk_size.
14407 (handle_omp_display_env): Change _OPENMP value from 201307 to
14408 201511. Print OMP_MAX_TASK_PRIORITY.
14409 (initialize_env): Parse OMP_MAX_TASK_PRIORITY.
14410 (omp_set_schedule, omp_get_schedule): Rename modifier argument to
14411 chunk_size and run_sched_modifier to run_sched_chunk_size.
14412 (omp_get_max_task_priority, omp_get_initial_device,
14413 omp_get_num_places, omp_get_place_num, omp_get_partition_num_places,
14414 omp_get_partition_place_nums): New functions.
14415 * fortran.c (omp_set_schedule_, omp_set_schedule_8_,
14416 omp_get_schedule_, omp_get_schedule_8_): Rename modifier argument
14417 to chunk_size.
14418 (omp_get_num_places_, omp_get_place_num_procs_,
14419 omp_get_place_num_procs_8_, omp_get_place_proc_ids_,
14420 omp_get_place_proc_ids_8_, omp_get_place_num_,
14421 omp_get_partition_num_places_, omp_get_partition_place_nums_,
14422 omp_get_partition_place_nums_8_, omp_get_initial_device_,
14423 omp_get_max_task_priority_): New functions.
14424 * libgomp_g.h (GOMP_loop_doacross_static_start,
14425 GOMP_loop_doacross_dynamic_start, GOMP_loop_doacross_guided_start,
14426 GOMP_loop_doacross_runtime_start, GOMP_loop_ull_doacross_static_start,
14427 GOMP_loop_ull_doacross_dynamic_start,
14428 GOMP_loop_ull_doacross_guided_start,
14429 GOMP_loop_ull_doacross_runtime_start, GOMP_doacross_post,
14430 GOMP_doacross_wait, GOMP_doacross_ull_post, GOMP_doacross_wait,
14431 GOMP_taskloop, GOMP_taskloop_ull, GOMP_target_41,
14432 GOMP_target_data_41, GOMP_target_update_41,
14433 GOMP_target_enter_exit_data): New prototypes.
14434 (GOMP_task): Add prototype argument.
14435 * libgomp.h (_LIBGOMP_CHECKING_): Define to 0 if not yet defined.
14436 (struct gomp_doacross_work_share): New type.
14437 (struct gomp_work_share): Add doacross field.
14438 (struct gomp_task_icv): Rename run_sched_modifier to
14439 run_sched_chunk_size.
14440 (enum gomp_task_kind): Rename GOMP_TASK_IFFALSE to
14441 GOMP_TASK_UNDEFERRED. Add comments.
14442 (struct gomp_task_depend_entry): Add comments.
14443 (struct gomp_task): Likewise.
14444 (struct gomp_taskgroup): Likewise.
14445 (struct gomp_target_task): New type.
14446 (struct gomp_team): Add comment.
14447 (gomp_get_place_proc_ids_8, gomp_doacross_init,
14448 gomp_doacross_ull_init, gomp_task_maybe_wait_for_dependencies,
14449 gomp_create_target_task, gomp_target_task_fn): New prototypes.
14450 (struct target_var_desc): New type.
14451 (struct target_mem_desc): Adjust comment. Use struct
14452 target_var_desc instead of splay_tree_key for list.
14453 (REFCOUNT_INFINITY): Define.
14454 (struct splay_tree_key_s): Remove copy_from field.
14455 (struct gomp_device_descr): Add dev2dev_func field.
14456 (enum gomp_map_vars_kind): New enum.
14457 (gomp_map_vars): Add one argument.
14458 * libgomp.map (OMP_4.5): Export omp_get_max_task_priority,
14459 omp_get_max_task_priority_, omp_get_num_places, omp_get_num_places_,
14460 omp_get_place_num_procs, omp_get_place_num_procs_,
14461 omp_get_place_num_procs_8_, omp_get_place_proc_ids,
14462 omp_get_place_proc_ids_, omp_get_place_proc_ids_8_, omp_get_place_num,
14463 omp_get_place_num_, omp_get_partition_num_places,
14464 omp_get_partition_num_places_, omp_get_partition_place_nums,
14465 omp_get_partition_place_nums_, omp_get_partition_place_nums_8_,
14466 omp_get_initial_device, omp_get_initial_device_, omp_target_alloc,
14467 omp_target_free, omp_target_is_present, omp_target_memcpy,
14468 omp_target_memcpy_rect, omp_target_associate_ptr and
14469 omp_target_disassociate_ptr.
14470 (GOMP_4.0.2): Renamed to ...
14471 (GOMP_4.5): ... this. Export GOMP_target_41, GOMP_target_data_41,
14472 GOMP_target_update_41, GOMP_target_enter_exit_data, GOMP_taskloop,
14473 GOMP_taskloop_ull, GOMP_loop_doacross_dynamic_start,
14474 GOMP_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
14475 GOMP_loop_doacross_static_start, GOMP_doacross_post,
14476 GOMP_doacross_wait, GOMP_loop_ull_doacross_dynamic_start,
14477 GOMP_loop_ull_doacross_guided_start,
14478 GOMP_loop_ull_doacross_runtime_start,
14479 GOMP_loop_ull_doacross_static_start, GOMP_doacross_ull_post and
14480 GOMP_doacross_ull_wait.
14481 * libgomp.texi: Document omp_get_max_task_priority.
14482 Rename modifier argument to chunk_size for omp_set_schedule and
14483 omp_get_schedule. Document OMP_MAX_TASK_PRIORITY env var.
14484 * loop.c (GOMP_loop_runtime_start): Adjust for run_sched_modifier
14485 to run_sched_chunk_size renaming.
14486 (GOMP_loop_ordered_runtime_start): Likewise.
14487 (gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
14488 gomp_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
14489 GOMP_parallel_loop_runtime_start): New functions.
14490 (GOMP_parallel_loop_runtime): Adjust for run_sched_modifier
14491 to run_sched_chunk_size renaming.
14492 (GOMP_loop_doacross_static_start, GOMP_loop_doacross_dynamic_start,
14493 GOMP_loop_doacross_guided_start): New functions or aliases.
14494 * loop_ull.c (GOMP_loop_ull_runtime_start): Adjust for
14495 run_sched_modifier to run_sched_chunk_size renaming.
14496 (GOMP_loop_ull_ordered_runtime_start): Likewise.
14497 (gomp_loop_ull_doacross_static_start,
14498 gomp_loop_ull_doacross_dynamic_start,
14499 gomp_loop_ull_doacross_guided_start,
14500 GOMP_loop_ull_doacross_runtime_start): New functions.
14501 (GOMP_loop_ull_doacross_static_start,
14502 GOMP_loop_ull_doacross_dynamic_start,
14503 GOMP_loop_ull_doacross_guided_start): New functions or aliases.
14504 * oacc-mem.c (acc_map_data, present_create_copy,
14505 gomp_acc_insert_pointer): Pass GOMP_MAP_VARS_OPENACC instead of false
14506 to gomp_map_vars.
14507 (gomp_acc_remove_pointer): Use copy_from from target_var_desc.
14508 * oacc-parallel.c (GOACC_data_start): Pass GOMP_MAP_VARS_OPENACC
14509 instead of false to gomp_map_vars.
14510 (GOACC_parallel_keyed): Likewise. Use copy_from from target_var_desc.
14511 * omp.h.in (omp_lock_hint_t): New type.
14512 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
14513 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
14514 omp_get_place_num, omp_get_partition_num_places,
14515 omp_get_partition_place_nums, omp_get_initial_device,
14516 omp_get_max_task_priority, omp_target_alloc, omp_target_free,
14517 omp_target_is_present, omp_target_memcpy, omp_target_memcpy_rect,
14518 omp_target_associate_ptr, omp_target_disassociate_ptr): New
14519 prototypes.
14520 * omp_lib.f90.in (omp_lock_hint_kind): New parameter.
14521 (omp_lock_hint_none, omp_lock_hint_uncontended,
14522 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
14523 omp_lock_hint_speculative): New parameters.
14524 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
14525 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
14526 omp_get_place_num, omp_get_partition_num_places,
14527 omp_get_partition_place_nums, omp_get_initial_device,
14528 omp_get_max_task_priority): New interfaces.
14529 (omp_set_schedule, omp_get_schedule): Rename modifier argument
14530 to chunk_size.
14531 * omp_lib.h.in (omp_lock_hint_kind): New parameter.
14532 (omp_lock_hint_none, omp_lock_hint_uncontended,
14533 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
14534 omp_lock_hint_speculative): New parameters.
14535 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
14536 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
14537 omp_get_place_num, omp_get_partition_num_places,
14538 omp_get_partition_place_nums, omp_get_initial_device,
14539 omp_get_max_task_priority): New functions and subroutines.
14540 * ordered.c: Include stdarg.h and string.h.
14541 (MAX_COLLAPSED_BITS): Define.
14542 (gomp_doacross_init, GOMP_doacross_post, GOMP_doacross_wait,
14543 gomp_doacross_ull_init, GOMP_doacross_ull_post,
14544 GOMP_doacross_ull_wait): New functions.
14545 * target.c: Include errno.h.
14546 (resolve_device): If device is not initialized, call
14547 gomp_init_device on it.
14548 (gomp_map_lookup): New function.
14549 (gomp_map_vars_existing): Add tgt_var argument, fill it in.
14550 Don't bump refcount if REFCOUNT_INFINITY. Handle
14551 GOMP_MAP_ALWAYS_TO_P.
14552 (get_kind): Rename is_openacc argument to short_mapkind.
14553 (gomp_map_pointer): Use gomp_map_lookup.
14554 (gomp_map_fields_existing): New function.
14555 (gomp_map_vars): Rename is_openacc argument to short_mapkind
14556 and is_target to pragma_kind. Handle GOMP_MAP_VARS_ENTER_DATA,
14557 handle GOMP_MAP_FIRSTPRIVATE_INT, GOMP_MAP_STRUCT,
14558 GOMP_MAP_USE_DEVICE_PTR, GOMP_MAP_ZERO_LEN_ARRAY_SECTION.
14559 Adjust for tgt->list changed type and copy_from living in there.
14560 (gomp_copy_from_async): Adjust for tgt->list changed type and
14561 copy_from living in there.
14562 (gomp_unmap_vars): Likewise.
14563 (gomp_update): Likewise. Rename is_openacc argument to
14564 short_mapkind. Don't fail if object is not mapped.
14565 (gomp_load_image_to_device): Initialize refcount to
14566 REFCOUNT_INFINITY.
14567 (gomp_target_fallback): New function.
14568 (gomp_get_target_fn_addr): Likewise.
14569 (GOMP_target): Adjust gomp_map_vars caller, use
14570 gomp_get_target_fn_addr and gomp_target_fallback.
14571 (GOMP_target_41): New function.
14572 (gomp_target_data_fallback): New function.
14573 (GOMP_target_data): Use it, adjust gomp_map_vars caller.
14574 (GOMP_target_data_41): New function.
14575 (GOMP_target_update): Adjust gomp_update caller.
14576 (GOMP_target_update_41): New function.
14577 (gomp_exit_data, GOMP_target_enter_exit_data,
14578 gomp_target_task_fn, omp_target_alloc, omp_target_free,
14579 omp_target_is_present, omp_target_memcpy,
14580 omp_target_memcpy_rect_worker, omp_target_memcpy_rect,
14581 omp_target_associate_ptr, omp_target_disassociate_ptr,
14582 gomp_load_plugin_for_device): New functions.
14583 * task.c: Include gomp-constants.h. Include taskloop.c
14584 twice to get GOMP_taskloop and GOMP_taskloop_ull definitions.
14585 (gomp_task_handle_depend): New function.
14586 (GOMP_task): Use it. Add priority argument. Use
14587 gomp-constant.h constants instead of hardcoded numbers.
14588 Rename GOMP_TASK_IFFALSE to GOMP_TASK_UNDEFERRED.
14589 (gomp_create_target_task): New function.
14590 (verify_children_queue, verify_taskgroup_queue,
14591 verify_task_queue): New functions.
14592 (gomp_task_run_pre): Call verify_*_queue functions.
14593 If an upcoming tied task is about to leave the sibling or
14594 taskgroup queues in an invalid state, adjust appropriately.
14595 Remove taskgroup argument. Add comments.
14596 (gomp_task_run_post_handle_dependers): Add comments.
14597 (gomp_task_run_post_remove_parent): Likewise.
14598 (gomp_barrier_handle_tasks): Adjust gomp_task_run_pre caller.
14599 (GOMP_taskwait): Likewise. Add comments.
14600 (gomp_task_maybe_wait_for_dependencies): Fix scheduling
14601 problem such that the first non parent_depends_on task does not
14602 end up at the end of the children queue.
14603 (GOMP_taskgroup_start): Rename GOMP_TASK_IFFALSE to
14604 GOMP_TASK_UNDEFERRED.
14605 (GOMP_taskgroup_end): Adjust gomp_task_run_pre caller.
14606 * taskloop.c: New file.
14607 * testsuite/lib/libgomp.exp
14608 (check_effective_target_offload_device_nonshared_as): New proc.
14609 * testsuite/libgomp.c/affinity-2.c: New test.
14610 * testsuite/libgomp.c/doacross-1.c: New test.
14611 * testsuite/libgomp.c/doacross-2.c: New test.
14612 * testsuite/libgomp.c/examples-4/declare_target-1.c (fib_wrapper):
14613 Add map clause to target.
14614 * testsuite/libgomp.c/examples-4/declare_target-4.c (accum): Likewise.
14615 * testsuite/libgomp.c/examples-4/declare_target-5.c (accum): Likewise.
14616 * testsuite/libgomp.c/examples-4/device-1.c (main): Likewise.
14617 * testsuite/libgomp.c/examples-4/device-3.c (main): Likewise.
14618 * testsuite/libgomp.c/examples-4/target_data-3.c (gramSchmidt):
14619 Likewise.
14620 * testsuite/libgomp.c/examples-4/teams-2.c (dotprod): Likewise.
14621 * testsuite/libgomp.c/examples-4/teams-3.c (dotprod): Likewise.
14622 * testsuite/libgomp.c/examples-4/teams-4.c (dotprod): Likewise.
14623 * testsuite/libgomp.c/for-2.h (OMPTGT, OMPTO, OMPFROM): Define if
14624 not defined. Use those where needed.
14625 * testsuite/libgomp.c/for-4.c: New test.
14626 * testsuite/libgomp.c/for-5.c: New test.
14627 * testsuite/libgomp.c/for-6.c: New test.
14628 * testsuite/libgomp.c/linear-1.c: New test.
14629 * testsuite/libgomp.c/ordered-4.c: New test.
14630 * testsuite/libgomp.c/pr66199-2.c (f2): Adjust for linear clause
14631 only allowed on the loop iterator.
14632 * testsuite/libgomp.c/pr66199-3.c: New test.
14633 * testsuite/libgomp.c/pr66199-4.c: New test.
14634 * testsuite/libgomp.c/reduction-7.c: New test.
14635 * testsuite/libgomp.c/reduction-8.c: New test.
14636 * testsuite/libgomp.c/reduction-9.c: New test.
14637 * testsuite/libgomp.c/reduction-10.c: New test.
14638 * testsuite/libgomp.c/target-1.c (fn2, fn3, fn4): Add
14639 map(tofrom:s).
14640 * testsuite/libgomp.c/target-2.c (fn2, fn3, fn4): Likewise.
14641 * testsuite/libgomp.c/target-7.c (foo): Add map(h) where needed.
14642 * testsuite/libgomp.c/target-11.c: New test.
14643 * testsuite/libgomp.c/target-12.c: New test.
14644 * testsuite/libgomp.c/target-13.c: New test.
14645 * testsuite/libgomp.c/target-14.c: New test.
14646 * testsuite/libgomp.c/target-15.c: New test.
14647 * testsuite/libgomp.c/target-16.c: New test.
14648 * testsuite/libgomp.c/target-17.c: New test.
14649 * testsuite/libgomp.c/target-18.c: New test.
14650 * testsuite/libgomp.c/target-19.c: New test.
14651 * testsuite/libgomp.c/target-20.c: New test.
14652 * testsuite/libgomp.c/target-21.c: New test.
14653 * testsuite/libgomp.c/target-22.c: New test.
14654 * testsuite/libgomp.c/target-23.c: New test.
14655 * testsuite/libgomp.c/target-24.c: New test.
14656 * testsuite/libgomp.c/target-25.c: New test.
14657 * testsuite/libgomp.c/target-26.c: New test.
14658 * testsuite/libgomp.c/target-27.c: New test.
14659 * testsuite/libgomp.c/taskloop-1.c: New test.
14660 * testsuite/libgomp.c/taskloop-2.c: New test.
14661 * testsuite/libgomp.c/taskloop-3.c: New test.
14662 * testsuite/libgomp.c/taskloop-4.c: New test.
14663 * testsuite/libgomp.c++/ctor-13.C: New test.
14664 * testsuite/libgomp.c++/doacross-1.C: New test.
14665 * testsuite/libgomp.c++/examples-4/declare_target-2.C:
14666 Replace offload_device with offload_device_nonshared_as.
14667 * testsuite/libgomp.c++/for-12.C: New test.
14668 * testsuite/libgomp.c++/for-13.C: New test.
14669 * testsuite/libgomp.c++/for-14.C: New test.
14670 * testsuite/libgomp.c++/linear-1.C: New test.
14671 * testsuite/libgomp.c++/member-1.C: New test.
14672 * testsuite/libgomp.c++/member-2.C: New test.
14673 * testsuite/libgomp.c++/member-3.C: New test.
14674 * testsuite/libgomp.c++/member-4.C: New test.
14675 * testsuite/libgomp.c++/member-5.C: New test.
14676 * testsuite/libgomp.c++/ordered-1.C: New test.
14677 * testsuite/libgomp.c++/reduction-5.C: New test.
14678 * testsuite/libgomp.c++/reduction-6.C: New test.
14679 * testsuite/libgomp.c++/reduction-7.C: New test.
14680 * testsuite/libgomp.c++/reduction-8.C: New test.
14681 * testsuite/libgomp.c++/reduction-9.C: New test.
14682 * testsuite/libgomp.c++/reduction-10.C: New test.
14683 * testsuite/libgomp.c++/reference-1.C: New test.
14684 * testsuite/libgomp.c++/simd14.C: New test.
14685 * testsuite/libgomp.c++/target-2.C (fn2): Add map(tofrom: s) clause.
14686 * testsuite/libgomp.c++/target-5.C: New test.
14687 * testsuite/libgomp.c++/target-6.C: New test.
14688 * testsuite/libgomp.c++/target-7.C: New test.
14689 * testsuite/libgomp.c++/target-8.C: New test.
14690 * testsuite/libgomp.c++/target-9.C: New test.
14691 * testsuite/libgomp.c++/target-10.C: New test.
14692 * testsuite/libgomp.c++/target-11.C: New test.
14693 * testsuite/libgomp.c++/target-12.C: New test.
14694 * testsuite/libgomp.c++/taskloop-1.C: New test.
14695 * testsuite/libgomp.c++/taskloop-2.C: New test.
14696 * testsuite/libgomp.c++/taskloop-3.C: New test.
14697 * testsuite/libgomp.c++/taskloop-4.C: New test.
14698 * testsuite/libgomp.c++/taskloop-5.C: New test.
14699 * testsuite/libgomp.c++/taskloop-6.C: New test.
14700 * testsuite/libgomp.c++/taskloop-7.C: New test.
14701 * testsuite/libgomp.c++/taskloop-8.C: New test.
14702 * testsuite/libgomp.c++/taskloop-9.C: New test.
14703 * testsuite/libgomp.fortran/affinity1.f90: New test.
14704 * testsuite/libgomp.fortran/affinity2.f90: New test.
14705
1f600fea
TV
147062015-10-13 Tom de Vries <tom@codesourcery.com>
14707
14708 PR tree-optimization/67476
14709 * testsuite/libgomp.c/autopar-3.c: New test.
14710 * testsuite/libgomp.c/autopar-4.c: New test.
14711 * testsuite/libgomp.c/autopar-5.c: New test.
14712 * testsuite/libgomp.c/autopar-6.c: New test.
14713 * testsuite/libgomp.c/autopar-7.c: New test.
14714 * testsuite/libgomp.c/autopar-8.c: New test.
14715
058a654b
JN
147162015-10-12 James Norris <jnorris@codesourcery.com>
14717
14718 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Fix loop
14719 initializer.
14720
9e531d37
DM
147212015-10-09 David Malcolm <dmalcolm@redhat.com>
14722
14723 * testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp,
14724 using load_gcc_lib.
14725
113020dc
TS
147262015-10-02 Thomas Schwinge <thomas@codesourcery.com>
14727
14728 * oacc-ptx.h: Remove file, moving its content into...
14729 * config/nvptx/fortran.c: ... here...
14730 * config/nvptx/oacc-init.c: ..., here...
14731 * config/nvptx/oacc-parallel.c: ..., and here.
14732 * config/nvptx/openacc.f90: New file.
14733 * plugin/plugin-nvptx.c: Don't include "oacc-ptx.h".
14734 (link_ptx): Don't link in predefined bits of PTX code.
14735
cc3cd79b
NS
147362015-09-30 Nathan Sidwell <nathan@codesourcery.com>
14737 Bernd Schmidt <bernds@codesourcery.com>
14738
14739 * plugin/plugin-nvptx.c (targ_fn_launch): Use GOMP_DIM_MAX.
14740 (struct targ_ptx_obj): New.
14741 (nvptx_tdata): Move earlier, change data format.
14742 (link_ptx): Take targ_ptx_obj ptr and count. Allow multiple
14743 objects.
14744 (GOMP_OFFLOAD_load_image): Adjust.
14745
4e2a5450
TS
147462015-09-30 Thomas Schwinge <thomas@codesourcery.com>
14747
14748 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Add checkpoint.
14749 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
14750 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
14751 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
14752 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
14753 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
14754 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
14755 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
14756 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
14757 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
14758 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
14759 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
14760 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
14761 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
14762 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
14763 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
14764 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
14765 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
14766 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
14767 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
14768 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
14769 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
14770 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
14771 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
14772 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
14773 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
14774 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
14775 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
14776 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
14777 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
14778 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
14779 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
14780 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
14781 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
14782 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
14783 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
14784 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
14785 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
14786 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
14787 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
14788 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
14789 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
14790 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
14791 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
14792 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
14793 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
14794 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
14795 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
14796 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
14797 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
14798 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
14799 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
14800 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
14801 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
14802 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
14803 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
14804 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
14805 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
14806 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
14807 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
14808 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
14809 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
14810 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
14811
164453bb
NS
148122015-09-29 Nathan Sidwell <nathan@codesourcery.com>
14813
14814 * oacc-init.c (acc_on_device): Force optimization level.
14815
a12a0437
NS
148162015-09-29 Nathan Sidwell <nathan@codesourcery.com>
14817
14818 * plugin/plugin-nvptx.c (ARRAYSIZE): Delete.
14819 (cuda_errlist): Delete.
14820 (cuda_error): Reimplement.
14821
3e32ee19
NS
148222015-09-28 Nathan Sidwell <nathan@codesourcery.com>
14823
14824 * libgomp.h (acc_dispatch_t): Replace separate geometry args with
14825 array.
14826 * libgomp.map (GOACC_parallel_keyed): New.
14827 * oacc-parallel.c (goacc_wait): Take pointer to va_list. Adjust
14828 all callers.
14829 (GOACC_parallel_keyed): New interface. Lose geometry arguments
14830 and take keyed varargs list. Adjust call to exec_func.
14831 (GOACC_parallel): Force host fallback.
14832 * libgomp_g.h (GOACC_parallel): Remove.
14833 (GOACC_parallel_keyed): Declare.
14834 * plugin/plugin-nvptx.c (struct targ_fn_launch): New struct.
93d90219 14835 (struct targ_gn_descriptor): Replace name field with launch field.
3e32ee19
NS
14836 (nvptx_exec): Lose separate geometry args, take array. Process
14837 dynamic dimensions and adjust.
14838 (struct nvptx_tdata): Replace fn_names field with fn_descs.
14839 (GOMP_OFFLOAD_load_image): Adjust for change in function table
14840 data.
14841 (GOMP_OFFLOAD_openacc_parallel): Adjust for change in dimension
14842 passing.
14843 * oacc-host.c (host_openacc_exec): Adjust for change in dimension
14844 passing.
14845
6bb4c3e2
CLT
148462015-09-22 Chung-Lin Tang <cltang@codesourcery.com>
14847
14848 PR libgomp/67141
14849 * oacc-int.h (goacc_host_init): Add declaration.
14850 * oacc-host.c (goacc_host_init): Remove static and constructor attribute.
14851 * oacc-init.c (goacc_runtime_initialize): Call goacc_host_init() at end.
14852
74032f47 148532015-09-08 Aditya Kumar <hiraditya@msn.com>
34b18169 14854 Sebastian Pop <s.pop@samsung.com>
74032f47 14855
93d90219 14856 * testsuite/libgomp.graphite/bounds.c (int foo): Modified test case to
74032f47
AK
14857 match o/p.
14858 * testsuite/libgomp.graphite/force-parallel-1.c (void parloop): Same.
14859 * testsuite/libgomp.graphite/force-parallel-4.c: Same.
14860 * testsuite/libgomp.graphite/force-parallel-5.c: Same.
14861 * testsuite/libgomp.graphite/force-parallel-7.c: Same.
14862 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
14863
97875f4a
JJ
148642015-09-03 Jakub Jelinek <jakub@redhat.com>
14865
14866 * configure.tgt: Add missing ;; in between nvptx and rtems
14867 snippets.
14868
06441dd5
SH
148692015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
14870
14871 * config/posix/pool.h (gomp_adjust_thread_attr): New.
14872 * config/rtems/pool.h (gomp_adjust_thread_attr): Likewise.
14873 (gomp_thread_pool_reservoir): Add priority member.
14874 * confi/rtems/proc.c (allocate_thread_pool_reservoir): Add
14875 priority.
14876 (parse_thread_pools): Likewise.
14877 * team.c (gomp_team_start): Call configuration provided
14878 gomp_adjust_thread_attr(). Destroy thread attributes if
14879 necessary.
14880 * libgomp.texi: Document GOMP_RTEMS_THREAD_POOLS.
14881
66c59f92
SH
148822015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
14883
14884 * config/posix/pool.h: New.
14885 * config/rtems/pool.h: Likewise.
14886 * config/rtems/proc.c: Likewise.
14887 * libgomp.h (gomp_thread_destructor): Declare.
14888 * team.c: Include configuration provided "pool.h".
14889 (gomp_get_thread_pool): Define in configuration.
14890 (gomp_team_end): Call configuration defined
14891 gomp_release_thread_pool().
14892
13c41b2e
SH
148932015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
14894
14895 * config/rtems/bar.c: New.
14896 * config/rtems/bar.h: Likewise.
14897 * config/rtems/mutex.c: Likewise.
14898 * config/rtems/mutex.h: Likewise.
14899 * config/rtems/sem.c: Likewise.
14900 * config/rtems/sem.h: Likewise.
14901 * configure.ac (*-*-rtems*): Check that Newlib provides a proper
14902 <sys/lock.h> header file.
14903 * configure.tgt (*-*-rtems*): Enable RTEMS configuration if
14904 supported by Newlib.
14905 * configure: Regenerate.
14906
7892ec67
SH
149072015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
14908
14909 * team.c (gomp_new_thread_pool): Delete and move content to ...
14910 (gomp_get_thread_pool): ... new function. Allocate and
14911 initialize thread pool on demand.
14912 (get_last_team): Use gomp_get_thread_pool().
14913 (gomp_team_start): Delete thread pool initialization.
14914
1b96e9a4
TV
149152015-09-03 Tom de Vries <tom@codesourcery.com>
14916
14917 PR tree-optimization/65637
14918 * testsuite/libgomp.c/autopar-2.c: New test.
14919
3ff2d74e
TV
149202015-08-29 Tom de Vries <tom@codesourcery.com>
14921
14922 PR tree-optimization/46193
14923 * testsuite/libgomp.c/pr46193.c: New test.
14924
2a21ff19
NS
149252015-08-24 Nathan Sidwell <nathan@codesourcery.com>
14926
14927 libgomp/
14928 * libgomp.map: Add 4.0.2 version.
14929 * target.c (offload_image_descr): Add version field.
14930 (gomp_load_image_to_device): Add version argument. Adjust plugin
14931 call. Improve load mismatch diagnostic.
14932 (gomp_unload_image_from_device): Add version argument. Adjust plugin
14933 call.
14934 (GOMP_offload_regster): Make stub function, move bulk to ...
14935 (GOMP_offload_register_ver): ... here. Process version argument.
14936 (GOMP_offload_unregister): Make stub function, move bulk to ...
14937 (GOMP_offload_unregister_ver): ... here. Process version argument.
14938 (gomp_init_device): Process version field.
14939 (gomp_unload_device): Process version field.
14940 (gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT
14941 macros. Check plugin version.
14942 * libgomp.h (gomp_device_descr): Add version function field. Adjust
14943 loader and unloader types.
14944 * oacc-host.c: Include gomp-constants.h.
14945 (host_version): New.
14946 (host_load_image, host_unload_image): Adjust.
14947 (host_dispatch): Add host_version.
14948 * plugin/plugin-nvptx.c: Include gomp-constants.h.
14949 (GOMP_OFFLOAD_version): New.
14950 (GOMP_OFFLOAD_load_image): Add version arg and check it.
14951 (GOMP_OFFLOAD_unload_image): Likewise.
14952 * plugin/plugin-host.c: Include gomp-constants.h.
14953 (GOMP_OFFLOAD_version): New.
14954 (GOMP_OFFLOAD_load_image): Add version arg.
14955 (GOMP_OFFLOAD_unload_image): Likewise.
14956
1358a747
TV
149572015-08-24 Tom de Vries <tom@codesourcery.com>
14958
14959 PR tree-optimization/65468
14960 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test.
14961
6be5c241
TV
149622015-08-24 Tom de Vries <tom@codesourcery.com>
14963
14964 PR tree-optimization/65468
14965 * testsuite/libgomp.c/static-chunk-size-one.c: New test.
14966
bfe7ac89
JV
149672015-08-24 Joost VandeVondele <vondele@gnu.gcc.org>
14968
14969 PR libgomp/66761
14970 PR libgomp/67303
14971 * iter.c (gomp_iter_dynamic_next): Employ an atomic load.
14972 (gomp_iter_guided_next): Idem.
14973 * iter_ull.c (gomp_iter_ull_dynamic_next): Idem.
14974 (gomp_iter_ull_guided_next): Idem.
14975 * config/linux/wait.h (do_spin): Idem.
14976
b97e78b7
TS
149772015-08-10 Thomas Schwinge <thomas@codesourcery.com>
14978
14979 * libgomp-plugin.h (enum offload_target_type): Remove
14980 OFFLOAD_TARGET_TYPE_HOST_NONSHM.
14981 * openacc.f90 (openacc_kinds): Remove acc_device_host_nonshm.
14982 * openacc.h (enum acc_device_t): Likewise.
14983 * openacc_lib.h: Likewise.
14984 * oacc-init.c (name_of_acc_device_t): Don't handle it.
14985 (acc_on_device): Just use __builtin_acc_on_device.
14986 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Don't forbid usage
14987 of acc_on_device builtin.
14988 * plugin/plugin-host.h: Remove file.
14989 * plugin/plugin-host.c: Likewise, but salvage some content into...
14990 * oacc-host.c: ... this file.
14991 * plugin/Makefrag.am: Don't build libgomp-plugin-host_nonshm.la.
14992 * plugin/configfrag.ac (offload_targets): Don't add host_nonshm.
14993 * Makefile.in: Regenerate.
14994 * configure: Likewise.
14995 * testsuite/lib/libgomp.exp
14996 (check_effective_target_openacc_host_nonshm_selected): Remove.
14997 * testsuite/libgomp.oacc-c++/c++.exp: Don't handle
14998 ACC_DEVICE_TYPE=host_nonshm.
14999 * testsuite/libgomp.oacc-c/c.exp: Likewise.
15000 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
15001 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
15002 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
15003 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
15004 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
15005
44a7d18d
TS
150062015-08-10 Thomas Schwinge <thomas@codesourcery.com>
15007 Jakub Jelinek <jakub@redhat.com>
15008
15009 * config/nvptx/affinity.c: New file.
15010 * config/nvptx/alloc.c: Likewise.
15011 * config/nvptx/bar.c: Likewise.
15012 * config/nvptx/barrier.c: Likewise.
15013 * config/nvptx/critical.c: Likewise.
15014 * config/nvptx/env.c: Likewise.
15015 * config/nvptx/error.c: Likewise.
15016 * config/nvptx/fortran.c: Likewise.
15017 * config/nvptx/iter.c: Likewise.
15018 * config/nvptx/iter_ull.c: Likewise.
15019 * config/nvptx/libgomp-plugin.c: Likewise.
15020 * config/nvptx/lock.c: Likewise.
15021 * config/nvptx/loop.c: Likewise.
15022 * config/nvptx/loop_ull.c: Likewise.
15023 * config/nvptx/mutex.c: Likewise.
15024 * config/nvptx/oacc-async.c: Likewise.
15025 * config/nvptx/oacc-cuda.c: Likewise.
15026 * config/nvptx/oacc-host.c: Likewise.
15027 * config/nvptx/oacc-init.c: Likewise.
15028 * config/nvptx/oacc-mem.c: Likewise.
15029 * config/nvptx/oacc-parallel.c: Likewise.
15030 * config/nvptx/oacc-plugin.c: Likewise.
15031 * config/nvptx/omp-lock.h: Likewise.
15032 * config/nvptx/ordered.c: Likewise.
15033 * config/nvptx/parallel.c: Likewise.
15034 * config/nvptx/proc.c: Likewise.
15035 * config/nvptx/ptrlock.c: Likewise.
15036 * config/nvptx/sections.c: Likewise.
15037 * config/nvptx/sem.c: Likewise.
15038 * config/nvptx/single.c: Likewise.
15039 * config/nvptx/splay-tree.c: Likewise.
15040 * config/nvptx/target.c: Likewise.
15041 * config/nvptx/task.c: Likewise.
15042 * config/nvptx/team.c: Likewise.
15043 * config/nvptx/time.c: Likewise.
15044 * config/nvptx/work.c: Likewise.
15045 * configure.ac: Don't probe pthreads support for host nvptx*-*-*.
15046 * configure: Regenerate.
15047 * configure.tgt (config_path): Set to "nvptx" for target
15048 nvptx*-*-*.
15049
96a2d174
TS
150502015-08-10 Thomas Schwinge <thomas@codesourcery.com>
15051
15052 * testsuite/libgomp.oacc-c-c++-common/vector-type-1.c: New file.
15053
9ebddeb0
NS
150542015-08-03 Nathan Sidwell <nathan@codesourcery.com>
15055
15056 * plugin/plugin-nvptx.c: Don't include dlfcn.h.
15057 (cuda_errlist): Constify.
15058 (errmsg): Move into ...
15059 (cuda_error): ... here. Make smaller.
15060 (_XSTR, _STR): Delete.
15061 (cuda_synames): Delete.
15062 (verify_device_library): Delete.
15063 (nvptx_init): Don't call it.
15064
12efb1d7
TV
150652015-07-28 Tom de Vries <tom@codesourcery.com>
15066
15067 * testsuite/libgomp.c/uns-outer-4.c: New test.
15068
710ee218
CP
150692015-07-24 Cesar Philippidis <cesar@codesourcery.com>
15070
15071 * testsuite/libgomp.c/pr66714.c: New test.
15072
27c4ac7d
MB
150732015-07-22 Maxim Blumenthal <maxim.blumenthal@intel.com>
15074
15075 PR libgomp/66950
15076 * testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45.
15077 (fib_ref): New function.
15078 (fib): Correct corner cases in the recursion.
15079 (main): Replace the non-simd loop with fib_ref call.
15080 * testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New
15081 subroutine.
15082 (fibonacci): Lower the parameter N to 30. Correct accordingly check
15083 for the last array element value. Replace the non-simd loop with
15084 fib_ref call. Remove redundant b_ref array. Remove the comparison
15085 of the last array element with according Fibonacci sequence element.
15086 (fib): Correct corner cases in the recursion.
15087
22be2349
NS
150882015-07-21 Nathan Sidwell <nathan@codesourcery.com>
15089
15090 * target.c (gomp_offload_image_to_device): Rename to ...
15091 (gomp_load_image_to_device): ... here.
15092 (GOMP_offload_register): Adjust call.
15093 (gomp_init_device): Likewise.
15094 (gomp_unload_image_from_device): New. Broken out of ...
15095 (GOMP_offload_unregister): ... here. Call it.
15096 (gomp_unload_device): New.
15097 * libgomp.h (gomp_unload_device): Declare.
15098 * oacc-init.c (acc_shutdown_1): Unload from device before deleting
15099 mem maps.
15100
f3e9a059
NS
151012015-07-20 Nathan Sidwell <nathan@codesourcery.com>
15102
a091118d
NS
15103 * oacc-parallel.c (GOACC_parallel): Move variadic handling into
15104 wait=-specific if.
15105 (GOACC_enter_exit_data, GOACC_update): Use consistent num_waits
15106 !=0 condition.
15107 (goacc_waits): Move !num_waits handling to ...
15108 (GOACC_wait): ... here, the only caller that might have zero waits.
15109
f3e9a059
NS
15110 * plugin/plugin-nvptx.c (struct targ_fn_descriptor): Move later.
15111 (struct ptx_image_data): Move earlier, add fns field.
15112 (struct ptx_device): Add images and image_lock fields.
15113 (ptx_images, ptx_image_lock): Delete.
15114 (nvptx_open_device): Initialize images and image_lock fields.
15115 (nvptx_close_device): Destroy image_lock.
15116 (GOMP_OFFLOAD_load_image): Register image to device-specific fields.
15117 (GOMP_OFFLOAD_unload_image): Unregister image from device-specific
15118 fields.
15119
afb2d80b
NS
151202015-07-17 Nathan Sidwell <nathan@codesourcery.com>
15121
896c28a7
NS
15122 * target.c (GOMP_offload_register): Use int for device type arg.
15123 (GOMP_offload_unregister): Likewise.
15124
ebe4a560
NS
15125 * target.c (struct_offload_image_descr): Constify host_table.
15126 (gomp_offload_image_to_device): Likewise.
15127 (GOMP_offload_register, GOMP_offload_unregister): Likewise.
15128
afb2d80b
NS
15129 * libgomp.h (gomp_device_descr): Constify target data arguments.
15130 * target.c (struct offload_image_descr): Constify target_data.
15131 (gomp_offload_image_to_device): Likewise.
15132 (GOMP_offload_register): Likewise.
93d90219 15133 (GOMP_offload_unregister): Likewise.
afb2d80b
NS
15134 * plugin/plugin-host.c (GOMP_OFFLOAD_load_image,
15135 GOMP_OFFLOAD_unload_image): Constify target data.
15136 * plugin/plugin-nvptx.c (struct ptx_image_data): Constify target data.
15137 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): Likewise.
15138
a4cb876d
NS
151392015-07-16 Nathan Sidwell <nathan@codesourcery.com>
15140
15141 * plugin/plugin-nvptx.c (link_ptx): Constify string argument.
15142 Workaround driver library const error.
15143 (struct nvptx_tdata, nvptx_tdata_t): New.
15144 (GOMP_OFFLOAD_load_image): Use struct for target_data's real
15145 type.
15146
28ef6a27
MB
151472015-07-15 Maxim Blumenthal <maxim.blumenthal@intel.com>
15148
15149 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Change type
15150 of EPS parameter from integer to real.
15151 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: (check): Change
15152 type of EPS parameter from integer to real.
15153
6dba0113
SH
151542015-07-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
15155
15156 * team.c (get_last_team): New.
15157 (gomp_new_team): Recycle last non-nested team if possible.
15158 (gomp_team_end): Move team work share list free lock destruction
15159 to ...
15160 (free_team): ... here.
15161
4c1cb4da
MB
151622015-07-14 Maxim Blumenthal <maxim.blumenthal@intel.com>
15163
15164 * testsuite/libgomp.c/examples-4/simd-3.c: (main): Change type of res
15165 and ref from int to double. Replaced their comparison with
15166 an inequality of their difference and EPS.
15167 * testsuite/libgomp.c/examples-4/simd-8.c: (main): Replace the
15168 comparison of pri and a reference number with an inequality of their
15169 difference and EPS.
15170 * testsuite/libgomp.fortran/examples-4/simd-3.f90: (main): Replaced
15171 the comparison of sum and sum_ref with an inequality of their
15172 difference and EPS.
15173 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Replace
15174 the comparison of pri and a reference number with an inequality of
15175 their difference and EPS.
15176
343587dc
MB
151772015-07-13 Maxim Blumenthal <maxim.blumenthal@intel.com>
15178
15179 * testsuite/libgomp.c++/examples-4/e.53.2.C: Renamed to...
15180 * testsuite/libgomp.c++/examples-4/declare_target-2.C: ...this.
15181 * testsuite/libgomp.c++/examples-4/e.51.5.C: Renamed to...
15182 * testsuite/libgomp.c++/examples-4/target_data-5.C: ...this.
15183 * testsuite/libgomp.c/examples-4/e.56.3.c: Renamed to...
15184 * testsuite/libgomp.c/examples-4/array_sections-3.c: ...this.
15185 * testsuite/libgomp.c/examples-4/e.56.4.c: Renamed to...
15186 * testsuite/libgomp.c/examples-4/array_sections-4.c: ...this.
15187 * testsuite/libgomp.c/examples-4/e.55.1.c: Renamed to...
15188 * testsuite/libgomp.c/examples-4/async_target-1.c: ...this.
15189 * testsuite/libgomp.c/examples-4/e.55.2.c: Renamed to...
15190 * testsuite/libgomp.c/examples-4/async_target-2.c: ...this.
15191 (vec_mult_ref): Remove v1 and v2 arguments, turn them into local
15192 variables.
15193 (vec_mult): Likewise. Add #pragma omp taskwait.
15194 (main): Adjust caller.
15195 * testsuite/libgomp.c/examples-4/e.53.1.c: Renamed to...
15196 * testsuite/libgomp.c/examples-4/declare_target-1.c: ...this.
15197 * testsuite/libgomp.c/examples-4/e.53.3.c: Renamed to...
15198 * testsuite/libgomp.c/examples-4/declare_target-3.c: ...this.
15199 * testsuite/libgomp.c/examples-4/e.53.4.c: Renamed to...
15200 * testsuite/libgomp.c/examples-4/declare_target-4.c: ...this.
15201 * testsuite/libgomp.c/examples-4/e.53.5.c: Renamed to...
15202 * testsuite/libgomp.c/examples-4/declare_target-5.c: ...this.
15203 * testsuite/libgomp.c/examples-4/e.57.1.c: Renamed to...
15204 * testsuite/libgomp.c/examples-4/device-1.c: ...this.
15205 * testsuite/libgomp.c/examples-4/e.57.2.c: Renamed to...
15206 * testsuite/libgomp.c/examples-4/device-2.c: ...this.
15207 * testsuite/libgomp.c/examples-4/e.57.3.c: Renamed to...
15208 * testsuite/libgomp.c/examples-4/device-3.c: ...this.
15209 * testsuite/libgomp.c/examples-4/simd-1.c: New file.
15210 * testsuite/libgomp.c/examples-4/simd-2.c: New file.
15211 * testsuite/libgomp.c/examples-4/simd-3.c: New file.
15212 * testsuite/libgomp.c/examples-4/simd-4.c: New file.
15213 * testsuite/libgomp.c/examples-4/simd-5.c: New file.
15214 * testsuite/libgomp.c/examples-4/simd-6.c: New file.
15215 * testsuite/libgomp.c/examples-4/simd-7.c: New file.
15216 * testsuite/libgomp.c/examples-4/simd-8.c: New file.
15217 * testsuite/libgomp.c/examples-4/e.50.1.c: Renamed to...
15218 * testsuite/libgomp.c/examples-4/target-1.c: ...this.
15219 * testsuite/libgomp.c/examples-4/e.50.2.c: Renamed to...
15220 * testsuite/libgomp.c/examples-4/target-2.c: ...this.
15221 * testsuite/libgomp.c/examples-4/e.50.3.c: Renamed to...
15222 * testsuite/libgomp.c/examples-4/target-3.c: ...this.
15223 * testsuite/libgomp.c/examples-4/e.50.4.c: Renamed to...
15224 * testsuite/libgomp.c/examples-4/target-4.c: ...this.
15225 * testsuite/libgomp.c/examples-4/e.50.5.c: Renamed to...
15226 * testsuite/libgomp.c/examples-4/target-5.c: ...this.
15227 * testsuite/libgomp.c/examples-4/e.51.1.c: Renamed to...
15228 * testsuite/libgomp.c/examples-4/target_data-1.c: ...this.
15229 * testsuite/libgomp.c/examples-4/e.51.2.c: Renamed to...
15230 * testsuite/libgomp.c/examples-4/target_data-2.c: ...this.
15231 * testsuite/libgomp.c/examples-4/e.51.3.c: Renamed to...
15232 * testsuite/libgomp.c/examples-4/target_data-3.c: ...this.
15233 * testsuite/libgomp.c/examples-4/e.51.4.c: Renamed to...
15234 * testsuite/libgomp.c/examples-4/target_data-4.c: ...this.
15235 * testsuite/libgomp.c/examples-4/e.51.6.c: Renamed to...
15236 * testsuite/libgomp.c/examples-4/target_data-6.c: ...this.
15237 * testsuite/libgomp.c/examples-4/e.51.7.c: Renamed to...
15238 * testsuite/libgomp.c/examples-4/target_data-7.c: ...this.
15239 * testsuite/libgomp.c/examples-4/e.52.1.c: Renamed to...
15240 * testsuite/libgomp.c/examples-4/target_update-1.c: ...this.
15241 * testsuite/libgomp.c/examples-4/e.52.2.c: Renamed to...
15242 * testsuite/libgomp.c/examples-4/target_update-2.c: ...this.
15243 * testsuite/libgomp.c/examples-4/task_dep-1.c: New file.
15244 * testsuite/libgomp.c/examples-4/task_dep-2.c: New file.
15245 * testsuite/libgomp.c/examples-4/task_dep-3.c: New file.
15246 * testsuite/libgomp.c/examples-4/task_dep-4.c: New file.
15247 * testsuite/libgomp.c/examples-4/task_dep-5.c: New file.
15248 * testsuite/libgomp.c/examples-4/e.54.2.c: Renamed to...
15249 * testsuite/libgomp.c/examples-4/teams-2.c: ...this.
15250 * testsuite/libgomp.c/examples-4/e.54.3.c: Renamed to...
15251 * testsuite/libgomp.c/examples-4/teams-3.c: ...this.
15252 * testsuite/libgomp.c/examples-4/e.54.4.c: Renamed to...
15253 * testsuite/libgomp.c/examples-4/teams-4.c: ...this.
15254 * testsuite/libgomp.c/examples-4/e.54.5.c: Renamed to...
15255 * testsuite/libgomp.c/examples-4/teams-5.c: ...this.
15256 * testsuite/libgomp.c/examples-4/e.54.6.c: Renamed to...
15257 * testsuite/libgomp.c/examples-4/teams-6.c: ...this.
15258 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Renamed to...
15259 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: ...this.
15260 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Renamed to...
15261 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: ...this.
15262 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Renamed to...
15263 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: ...this.
15264 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Renamed to...
15265 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: ...this.
15266 (vec_mult): Add !$omp taskwait.
15267 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Renamed to...
15268 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: ...this.
15269 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Renamed to...
15270 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: ...this.
15271 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Renamed to...
15272 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: ...this.
15273 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Renamed to...
15274 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: ...this.
15275 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Renamed to...
15276 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: ...this.
15277 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Renamed to...
15278 * testsuite/libgomp.fortran/examples-4/device-1.f90: ...this.
15279 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Renamed to...
15280 * testsuite/libgomp.fortran/examples-4/device-2.f90: ...this.
15281 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Renamed to...
15282 * testsuite/libgomp.fortran/examples-4/device-3.f90: ...this.
15283 * testsuite/libgomp.fortran/examples-4/simd-1.f90: New file.
15284 * testsuite/libgomp.fortran/examples-4/simd-2.f90: New file.
15285 * testsuite/libgomp.fortran/examples-4/simd-3.f90: New file.
15286 * testsuite/libgomp.fortran/examples-4/simd-4.f90: New file.
15287 * testsuite/libgomp.fortran/examples-4/simd-5.f90: New file.
15288 * testsuite/libgomp.fortran/examples-4/simd-6.f90: New file.
15289 * testsuite/libgomp.fortran/examples-4/simd-7.f90: New file.
15290 * testsuite/libgomp.fortran/examples-4/simd-8.f90: New file.
15291 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: Renamed to...
15292 * testsuite/libgomp.fortran/examples-4/target-1.f90: ...this.
15293 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Renamed to...
15294 * testsuite/libgomp.fortran/examples-4/target-2.f90: ...this.
15295 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Renamed to...
15296 * testsuite/libgomp.fortran/examples-4/target-3.f90: ...this.
15297 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Renamed to...
15298 * testsuite/libgomp.fortran/examples-4/target-4.f90: ...this.
15299 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Renamed to...
15300 * testsuite/libgomp.fortran/examples-4/target-5.f90: ...this.
15301 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Renamed to...
15302 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: ...this.
15303 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Renamed to...
15304 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: ...this.
15305 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Renamed to...
15306 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: ...this.
15307 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Renamed to...
15308 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: ...this.
15309 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Renamed to...
15310 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: ...this.
15311 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Renamed to...
15312 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: ...this.
15313 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Renamed to...
15314 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: ...this.
15315 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Renamed to...
15316 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: ...this.
15317 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Renamed to...
15318 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: ...this.
15319 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: New file.
15320 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: New file.
15321 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: New file.
15322 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: New file.
15323 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: New file.
15324 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Renamed to...
15325 * testsuite/libgomp.fortran/examples-4/teams-2.f90: ...this.
15326 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Renamed to...
15327 * testsuite/libgomp.fortran/examples-4/teams-3.f90: ...this.
15328 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Renamed to...
15329 * testsuite/libgomp.fortran/examples-4/teams-4.f90: ...this.
15330 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Renamed to...
15331 * testsuite/libgomp.fortran/examples-4/teams-5.f90: ...this.
15332 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Renamed to...
15333 * testsuite/libgomp.fortran/examples-4/teams-6.f90: ...this.
15334
9f620bf1
TV
153352015-07-10 Tom de Vries <tom@codesourcery.com>
15336
15337 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: New test.
15338 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: New test.
15339
a92defda
TS
153402015-07-08 Thomas Schwinge <thomas@codesourcery.com>
15341
15342 PR libgomp/65099
15343 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return 0 if not
15344 in a 64-bit configuration.
15345 * testsuite/libgomp.oacc-c++/c++.exp: Don't attempt nvidia
15346 offloading testing if no such device is available.
15347 * testsuite/libgomp.oacc-c/c.exp: Likewise.
15348 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
15349
cadb53a5
TV
153502015-07-08 Tom de Vries <tom@codesourcery.com>
15351
15352 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Fix
15353 second call to f.
15354 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
15355
712cb0bb
TV
153562015-07-07 Tom de Vries <tom@codesourcery.com>
15357
15358 PR tree-optimization/66642
15359 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Test low
15360 iteration count case.
15361 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c (init): New
15362 function, factor out of ...
15363 (main): ... here. Test low iteration count case.
15364
e5210c77
SH
153652015-07-06 Sebastian Huber <sebastian.huber@embedded-brains.de>
15366
15367 * libgomp.h (gomp_thread_pool): Comment last_team field.
15368
f70360e7
UB
153692015-07-02 Uros Bizjak <ubizjak@gmail.com>
15370
15371 * testsuite/libgomp.c++/pr66702-1.C: Require
15372 vect_simd_clones effective target.
15373 * testsuite/libgomp.c++/pr66702-2.C: Ditto.
15374
b451c271
TV
153752015-06-30 Tom de Vries <tom@codesourcery.com>
15376
15377 * testsuite/libgomp.oacc-c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
15378 already set. Use DEFAULT_CFLAGS in dg-runtest.
15379 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Remove dg-options
15380 "-O2".
15381
f8e89d9f
TV
153822015-06-30 Tom de Vries <tom@codesourcery.com>
15383
15384 * testsuite/libgomp.c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
15385 already set. Use DEFAULT_CFLAGS in dg-runtest.
15386 * testsuite/libgomp.c++/atomic-16.C: Remove dg-options "-O2 -fopenmp".
15387 * testsuite/libgomp.c++/pr64824.C: Same.
15388 * testsuite/libgomp.c++/pr64868.C: Same.
15389 * testsuite/libgomp.c++/pr66199-1.C: Same.
15390 * testsuite/libgomp.c++/pr66199-2.C: Same.
15391 * testsuite/libgomp.c++/target-2.C: Same.
15392 * testsuite/libgomp.c++/for-7.C: Use dg-additional-options for
15393 -std=<standard> option.
15394 * testsuite/libgomp.c++/udr-11.C: Same.
15395 * testsuite/libgomp.c++/udr-12.C: Same.
15396 * testsuite/libgomp.c++/udr-13.C: Same.
15397 * testsuite/libgomp.c++/udr-14.C: Same.
15398 * testsuite/libgomp.c++/udr-15.C: Same.
15399 * testsuite/libgomp.c++/udr-16.C: Same.
15400 * testsuite/libgomp.c++/udr-17.C: Same.
15401 * testsuite/libgomp.c++/udr-18.C: Same.
15402 * testsuite/libgomp.c++/udr-19.C: Same.
15403 * testsuite/libgomp.c++/atomic-1.C: Remove dg-options "-O2".
15404 * testsuite/libgomp.c++/simd-1.C: Same.
15405 * testsuite/libgomp.c++/simd-2.C: Same.
15406 * testsuite/libgomp.c++/simd-3.C: Same.
15407 * testsuite/libgomp.c++/simd-4.C: Same.
15408 * testsuite/libgomp.c++/simd-5.C: Same.
15409 * testsuite/libgomp.c++/simd-6.C: Same.
15410 * testsuite/libgomp.c++/simd-7.C: Same.
15411 * testsuite/libgomp.c++/simd-8.C: Same.
15412 * testsuite/libgomp.c++/simd-9.C: Same.
15413 * testsuite/libgomp.c++/simd10.C: Same.
15414 * testsuite/libgomp.c++/simd11.C: Same.
15415 * testsuite/libgomp.c++/simd12.C: Same.
15416 * testsuite/libgomp.c++/simd13.C: Same.
15417
3446fe48
JJ
154182015-06-30 Jakub Jelinek <jakub@redhat.com>
15419
15420 PR middle-end/66702
15421 * testsuite/libgomp.c++/pr66702-1.C: New test.
15422 * testsuite/libgomp.c++/pr66702-2.C: New test.
15423
8a36714a
TV
154242015-06-30 Tom de Vries <tom@codesourcery.com>
15425
15426 * testsuite/libgomp.c/parloops-exit-first-loop-alt-5.c: New test.
15427 * testsuite/libgomp.c/parloops-exit-first-loop-alt-6.c: New test.
15428 * testsuite/libgomp.c/parloops-exit-first-loop-alt-7.c: New test.
15429 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Update comment.
15430
4f75d608
TV
154312015-06-30 Tom de Vries <tom@codesourcery.com>
15432
15433 PR tree-optimization/66652
15434 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (f): Rewrite
15435 using restrict pointers.
15436 (main): Add arguments to calls to f.
15437 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
15438
6d9d1eeb
AT
154392015-06-23 Andreas Tobler <andreast@gcc.gnu.org>
15440
15441 * configure.ac: Fix check for header <sys/sysctl.h>.
15442 * configure: Regenerate.
15443 * config.h.in: Likewise.
15444
1222f22b
TV
154452015-06-23 Tom de Vries <tom@codesourcery.com>
15446
15447 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Use
15448 abort.
15449 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c (main): Same.
15450
d7efbbf6
TS
154512015-06-19 Thomas Schwinge <thomas@codesourcery.com>
15452
bfcd036f
TS
15453 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Only consider for
15454 acc_device_nvidia.
15455
d7efbbf6
TS
15456 PR libgomp/66518
15457 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: XFAIL.
15458 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
15459
d7bfc710
TV
154602015-06-15 Tom de Vries <tom@codesourcery.com>
15461
15462 * testsuite/libgomp.c/atomic-1.c: Remove dg-options "-O2". Use
15463 dg-additional-options for any remaining options.
15464 * testsuite/libgomp.c/atomic-2.c: Same.
15465 * testsuite/libgomp.c/atomic-4.c: Same.
15466 * testsuite/libgomp.c/atomic-5.c: Same.
15467 * testsuite/libgomp.c/atomic-6.c: Same.
15468 * testsuite/libgomp.c/autopar-1.c: Same.
15469 * testsuite/libgomp.c/copyin-1.c: Same.
15470 * testsuite/libgomp.c/copyin-2.c: Same.
15471 * testsuite/libgomp.c/copyin-3.c: Same.
15472 * testsuite/libgomp.c/examples-4/e.53.5.c: Same.
15473 * testsuite/libgomp.c/nestedfn-5.c: Same.
15474 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Same.
15475 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Same.
15476 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: Same.
15477 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
15478 * testsuite/libgomp.c/pr32362-1.c: Same.
15479 * testsuite/libgomp.c/pr32362-2.c: Same.
15480 * testsuite/libgomp.c/pr32362-3.c: Same.
15481 * testsuite/libgomp.c/pr39591-1.c: Same.
15482 * testsuite/libgomp.c/pr39591-2.c: Same.
15483 * testsuite/libgomp.c/pr39591-3.c: Same.
15484 * testsuite/libgomp.c/pr58392.c: Same.
15485 * testsuite/libgomp.c/pr58756.c: Same.
15486 * testsuite/libgomp.c/simd-1.c: Same.
15487 * testsuite/libgomp.c/simd-10.c: Same.
15488 * testsuite/libgomp.c/simd-11.c: Same.
15489 * testsuite/libgomp.c/simd-12.c: Same.
15490 * testsuite/libgomp.c/simd-13.c: Same.
15491 * testsuite/libgomp.c/simd-14.c: Same.
15492 * testsuite/libgomp.c/simd-15.c: Same.
15493 * testsuite/libgomp.c/simd-2.c: Same.
15494 * testsuite/libgomp.c/simd-3.c: Same.
15495 * testsuite/libgomp.c/simd-4.c: Same.
15496 * testsuite/libgomp.c/simd-5.c: Same.
15497 * testsuite/libgomp.c/simd-6.c: Same.
15498 * testsuite/libgomp.c/simd-7.c: Same.
15499 * testsuite/libgomp.c/simd-8.c: Same.
15500 * testsuite/libgomp.c/simd-9.c: Same.
15501
fb5b5352
TV
155022015-06-15 Tom de Vries <tom@codesourcery.com>
15503
15504 * testsuite/libgomp.c/pr35625.c: Fix typo.
15505
ca431bef
TV
155062015-06-15 Tom de Vries <tom@codesourcery.com>
15507
15508 * testsuite/libgomp.c/atomic-18.c: Remove superfluous -fopenmp setting
15509 in dg-options.
15510 * testsuite/libgomp.c/atomic-3.c: Same.
15511 * testsuite/libgomp.c/debug-1.c: Same.
15512 * testsuite/libgomp.c/nqueens-1.c: Same.
15513 * testsuite/libgomp.c/pr26171.c: Same.
15514 * testsuite/libgomp.c/pr48591.c: Same.
15515 * testsuite/libgomp.c/pr64824.c: Same.
15516 * testsuite/libgomp.c/pr64868.c: Same.
15517 * testsuite/libgomp.c/pr66133.c: Same.
15518 * testsuite/libgomp.c/pr66199-1.c: Same.
15519 * testsuite/libgomp.c/pr66199-2.c: Same.
15520 * testsuite/libgomp.c/target-8.c: Same.
15521
0d8a9e20
TV
155222015-06-15 Tom de Vries <tom@codesourcery.com>
15523
15524 * testsuite/libgomp.c/collapse-3.c: Use dg-additional-options for
15525 -std={gnu99,c99}.
15526 * testsuite/libgomp.c/for-1.c: Same.
15527 * testsuite/libgomp.c/for-2.c: Same.
15528 * testsuite/libgomp.c/for-3.c: Same.
15529 * testsuite/libgomp.c/pr35625.c: Same.
15530 * testsuite/libgomp.c/pr39154.c: Same.
15531 * testsuite/libgomp.c/simd-16.c: Same.
15532 * testsuite/libgomp.c/simd-17.c: Same.
15533
a6860be9
TV
155342015-06-13 Tom de Vries <tom@codesourcery.com>
15535
15536 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: New test.
15537
ab3306d2
TV
155382015-06-13 Tom de Vries <tom@codesourcery.com>
15539
15540 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Add comment.
15541 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
15542 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Add comment.
15543 (N): Define.
15544 (main): Use N instead of hardcoded constants.
15545
7c82d827
TV
155462015-06-05 Tom de Vries <tom@codesourcery.com>
15547
15548 merge from gomp4 branch:
15549 2015-05-28 Tom de Vries <tom@codesourcery.com>
15550
15551 PR tree-optimization/65443
15552 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: New test.
15553 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: New test.
15554 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: New test.
15555
c469078d
BRF
155562015-05-29 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
15557
15558 * testsuite/libgomp.graphite/bounds.c: Adjust for
15559 cleanup-tree-dump removal.
15560 * testsuite/libgomp.graphite/force-parallel-1.c: Likewise.
15561 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
15562 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
15563 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
15564 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
15565 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
15566 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
15567 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
15568 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
15569 * testsuite/libgomp.graphite/pr41118.c: Likewise.
15570
bb3caa35
UB
155712015-05-28 Uros Bizjak <ubizjak@gmail.com>
15572
15573 * config/linux/x86/futex.h (sys_futex0) [!__x86_64__]: Remove function.
15574 (futex_wait) [!__x86_64__]: Use __asm operand instead of sys_futex0.
15575 (futex_wake) [!__x86_64__]: Ditto.
15576
9fb5fd44
JB
155772015-05-28 Julian Brown <julian@codesourcery.com>
15578
15579 * oacc-init.c (resolve_device): Add FAIL_IS_ERROR argument. Update
15580 function comment. Only call gomp_fatal if new argument is true.
15581 (acc_dev_num_out_of_range): New function.
15582 (acc_init_1, acc_shutdown_1): Update call to resolve_device. Call
15583 acc_dev_num_out_of_range as appropriate.
15584 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
bb3caa35
UB
15585 (acc_get_device_num, acc_set_device_num): Update calls to
15586 resolve_device.
9fb5fd44
JB
15587 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Update expected test
15588 output.
15589
32eaed93
JB
155902015-05-28 Julian Brown <julian@codesourcery.com>
15591
15592 PR libgomp/65742
32eaed93
JB
15593 * oacc-init.c (plugin/plugin-host.h): Include.
15594 (acc_on_device): Check whether we're in an offloaded region for
15595 host_nonshm
15596 plugin. Don't use __builtin_acc_on_device.
15597 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_parallel): Set
15598 nonshm_exec flag in thread-local data.
15599 (GOMP_OFFLOAD_openacc_create_thread_data): Allocate thread-local
15600 data for host_nonshm plugin.
15601 (GOMP_OFFLOAD_openacc_destroy_thread_data): Free thread-local data
15602 for host_nonshm plugin.
15603 * plugin/plugin-host.h: New.
15604
ea023bcf
UB
156052015-05-27 Uros Bizjak <ubizjak@gmail.com>
15606
8ed501f1
UB
15607 * config/linux/ia64/futex.h (sys_futex0) Change operand "op" to int.
15608
156092015-05-27 Uros Bizjak <ubizjak@gmail.com>
15610
15611 * config/linux/wait.h (gomp_futex_wait, gomp_futex_wake):
15612 Declare as int.
15613 (FUTEX_PRIVATE_FLAG): Remove L suffix.
15614 * config/linux/mutex.c (gomp_futex_wait, gomp_futex_wake):
15615 Declare as int.
15616
156172015-05-27 Uros Bizjak <ubizjak@gmail.com>
15618
bb3caa35 15619 * config/linux/x86/futex.h (sys_futex0) [__PIC__]: Remove function.
ea023bcf 15620
1716efeb
CLT
156212015-05-27 Chung-Lin Tang <cltang@codesourcery.com>
15622
15623 * target.c (gomp_map_pointer): New function abstracting out
15624 GOMP_MAP_POINTER handling.
15625 (gomp_map_vars): Remove GOMP_MAP_POINTER handling code and use
15626 gomp_map_pointer().
15627
41b37d5e
JJ
156282015-05-19 Jakub Jelinek <jakub@redhat.com>
15629
15630 PR middle-end/66199
15631 * testsuite/libgomp.c/pr66199-1.c: New test.
15632 * testsuite/libgomp.c/pr66199-2.c: New test.
15633 * testsuite/libgomp.c++/pr66199-1.C: New test.
15634 * testsuite/libgomp.c++/pr66199-2.C: New test.
15635 * testsuite/libgomp.fortran/pr66199-1.f90: New test.
15636 * testsuite/libgomp.fortran/pr66199-2.f90: New test.
15637
c8319826
JB
156382015-05-19 Julian Brown <julian@codesourcery.com>
15639
15640 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return zero
15641 on cuInit failure.
15642
b37dddbc
JJ
156432015-05-13 Jakub Jelinek <jakub@redhat.com>
15644
15645 PR middle-end/66133
15646 * testsuite/libgomp.c/pr66133.c: New test.
15647
55fba601
MH
156482015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
15649
15650 * Makefile.in: Regenerated with automake-1.11.6.
15651 * aclocal.m4: Likewise.
15652 * config.h.in: Likewise.
15653 * configure: Likewise.
15654 * testsuite/Makefile.in: Likewise.
15655
1be0899d
JM
156562015-05-08 Jason Merrill <jason@redhat.com>
15657
15658 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (main): Use
15659 _Complex.
15660
15661 * openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
15662
d2463960
JB
156632015-05-06 Julian Brown <julian@codesourcery.com>
15664
15665 * oacc-init.c (acc_device_lock): Add explanatory comment.
15666 (resolve_device): Add comment about locking requirement.
15667 (acc_init_1, acc_shutdown_1): Likewise. Add locking around
15668 gomp_init_device and gomp_fini_device calls.
15669 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
15670 (acc_get_device_num, acc_set_device_num): Add locking around
15671 resolve_device and gomp_init_device calls.
15672
e38fdba4
JB
156732015-05-06 Julian Brown <julian@codesourcery.com>
15674
15675 * oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for
15676 goacc_thread_lock on error paths.
15677 * oacc-mem.c (lookup_host): Remove locking from function. Note
15678 locking requirement for caller in function comment.
15679 (lookup_dev): Likewise.
15680 (acc_free, acc_deviceptr, acc_hostptr, acc_is_present)
15681 (acc_map_data, acc_unmap_data, present_create_copy, delete_copyout)
15682 (update_dev_host, gomp_acc_insert_pointer, gomp_acc_remove_pointer):
15683 Add locking.
15684
ae8ffbbb
TS
156852015-05-05 Thomas Schwinge <thomas@codesourcery.com>
15686
15687 PR testsuite/65205
15688 PR libgomp/65993
15689 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: In dg-output,
15690 don't expect "0x" prefix for "%p" format specifier, don't expect
15691 "(nil)" for NULL pointer.
15692 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
15693 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
15694 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
15695 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
15696 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
15697 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
15698 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
15699 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
15700 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
15701 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
15702 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
15703 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
15704 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
15705 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
15706 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
15707 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
15708 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
15709 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
15710 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
15711 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
15712 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
15713 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
15714 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
15715 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
15716 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
15717 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
15718 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
15719 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
15720 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: More
15721 accurately specify what we're looking for.
15722 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
15723 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
15724 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
15725 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
15726 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
15727
1309f1d2
JN
157282015-04-30 James Norris <jnorris@codesourcery.com>
15729
15730 PR testsuite/65205
15731 * testsuite/lib/libgomp.exp
15732 (check_effective_target_openacc_host_selected)
15733 (check_effective_target_openacc_host_nonshm_selected): New
15734 procedures.
15735 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Fix misuse of
15736 dg-shouldfail.
15737 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
15738 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
15739 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
15740 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
15741 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
15742 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
15743 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
15744 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
15745 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
15746 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
15747 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
15748 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
15749 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
15750 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
15751 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
15752 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
15753 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
15754 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
15755 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
15756 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
15757 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
15758 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
15759 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
15760 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
15761 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
15762 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
15763 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
15764 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
15765 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
15766 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
15767 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
15768 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
15769 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
15770 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
15771 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
15772 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
15773 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
15774 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
15775 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
15776 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
15777 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
15778 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
15779 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
15780
d93bdab5
JB
157812015-04-08 Julian Brown <julian@codesourcery.com>
15782
15783 * libgomp.h (target_mem_desc: Remove mem_map field.
15784 (acc_dispatch_t): Remove open_device_func, close_device_func,
15785 get_device_num_func, set_device_num_func, target_data members.
15786 Change create_thread_data_func argument to device number instead of
15787 generic pointer.
15788 * oacc-async.c (assert.h): Include.
15789 (acc_async_test, acc_async_test_all, acc_wait, acc_wait_async)
15790 (acc_wait_all, acc_wait_all_async): Use current host thread's
15791 active device, not base_dev.
15792 * oacc-cuda.c (acc_get_current_cuda_device)
15793 (acc_get_current_cuda_context, acc_get_cuda_stream)
15794 (acc_set_cuda_stream): Likewise.
15795 * oacc-host.c (host_dispatch): Don't set open_device_func,
15796 close_device_func, get_device_num_func or set_device_num_func.
15797 * oacc-init.c (base_dev, init_key): Remove.
15798 (cached_base_dev): New.
15799 (name_of_acc_device_t): New.
15800 (acc_init_1): Initialise default-numbered device, not zeroth.
15801 (acc_shutdown_1): Close all devices of a given type.
15802 (goacc_destroy_thread): Don't use base_dev.
15803 (lazy_open, lazy_init, lazy_init_and_open): Remove.
15804 (goacc_attach_host_thread_to_device): New.
15805 (acc_init): Reimplement with goacc_attach_host_thread_to_device.
15806 (acc_get_num_devices): Don't use base_dev.
15807 (acc_set_device_type): Reimplement.
15808 (acc_get_device_type): Don't use base_dev.
15809 (acc_get_device_num): Tweak logic.
15810 (acc_set_device_num): Likewise.
15811 (acc_on_device): Use acc_get_device_type.
15812 (goacc_runtime_initialize): Initialize cached_base_dev not base_dev.
15813 (goacc_lazy_initialize): Reimplement with acc_init and
15814 goacc_attach_host_thread_to_device.
15815 * oacc-int.h (goacc_thread): Add base_dev field.
15816 (base_dev): Remove extern declaration.
15817 (goacc_attach_host_thread_to_device): Add prototype.
15818 * oacc-mem.c (acc_malloc): Use current thread's device instead of
15819 base_dev.
15820 (acc_free): Likewise.
15821 (acc_memcpy_to_device): Likewise.
15822 (acc_memcpy_from_device): Likewise.
15823 * oacc-parallel.c (select_acc_device): Remove. Replace calls with
15824 goacc_lazy_initialize (throughout).
15825 (GOACC_parallel): Use tgt_offset to locate target functions.
15826 * target.c (gomp_map_vars): Don't set tgt->mem_map.
15827 (gomp_unmap_vars): Use devicep->mem_map pointer not tgt->mem_map.
15828 (gomp_load_plugin_for_device): Remove open_device, close_device,
15829 get_device_num, set_device_num openacc hook initialisation. Don't set
15830 openacc.target_data.
15831 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_open_device)
15832 (GOMP_OFFLOAD_openacc_close_device)
15833 (GOMP_OFFLOAD_openacc_get_device_num)
15834 (GOMP_OFFLOAD_openacc_set_device_num): Remove.
15835 (GOMP_OFFLOAD_openacc_create_thread_data): Change (unused) argument
15836 to int.
15837 * plugin/plugin-nvptx.c (ptx_inited): Remove.
15838 (instantiated_devices, ptx_dev_lock): New.
15839 (struct ptx_image_data): New.
15840 (ptx_devices, ptx_images, ptx_image_lock): New.
15841 (fini_streams_for_device): Reorder cuStreamDestroy call.
15842 (nvptx_get_num_devices): Remove forward declaration.
15843 (nvptx_init): Change return type to bool.
15844 (nvptx_fini): Remove.
15845 (nvptx_attach_host_thread_to_device): New.
15846 (nvptx_open_device): Return struct ptx_device* instead of void*.
15847 (nvptx_close_device): Change argument type to struct ptx_device*,
15848 return type to void.
15849 (nvptx_get_num_devices): Use instantiated_devices not ptx_inited.
15850 (kernel_target_data, kernel_host_table): Remove static globals.
15851 (GOMP_OFFLOAD_register_image, GOMP_OFFLOAD_get_table): Remove.
15852 (GOMP_OFFLOAD_init_device): Reimplement.
15853 (GOMP_OFFLOAD_fini_device): Likewise.
15854 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New.
15855 (GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free, GOMP_OFFLOAD_dev2host)
15856 (GOMP_OFFLOAD_host2dev): Use ORD argument.
15857 (GOMP_OFFLOAD_openacc_open_device)
15858 (GOMP_OFFLOAD_openacc_close_device)
15859 (GOMP_OFFLOAD_openacc_set_device_num)
15860 (GOMP_OFFLOAD_openacc_get_device_num): Remove.
15861 (GOMP_OFFLOAD_openacc_create_thread_data): Change argument to int
15862 (device number).
15863
15864 testsuite/
15865 * libgomp.oacc-c-c++-common/lib-9.c: Fix devnum check in test.
15866
a51df54e
IV
158672015-04-06 Ilya Verbin <ilya.verbin@intel.com>
15868
15869 * libgomp-plugin.h (struct mapping_table): Replace with addr_pair.
15870 * libgomp.h (struct gomp_memory_mapping): Remove.
15871 (struct target_mem_desc): Change type of mem_map from
15872 gomp_memory_mapping * to splay_tree_s *.
15873 (struct gomp_device_descr): Remove register_image_func, get_table_func.
15874 Add load_image_func, unload_image_func.
15875 Change type of mem_map from gomp_memory_mapping to splay_tree_s.
15876 Remove offload_regions_registered.
15877 (gomp_init_tables): Remove.
15878 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
15879 to splay_tree_s *.
15880 * libgomp.map (GOMP_4.0.1): Add GOMP_offload_unregister.
15881 * oacc-host.c (host_dispatch): Do not initialize register_image_func,
15882 get_table_func, mem_map.is_initialized, mem_map.splay_tree.root,
15883 offload_regions_registered.
15884 Initialize load_image_func, unload_image_func, mem_map.root.
15885 (goacc_host_init): Do not initialize host_dispatch.mem_map.lock.
15886 * oacc-init.c (lazy_open): Don't call gomp_init_tables.
15887 (acc_shutdown_1): Use dev's lock and splay_tree instead of mem_map's.
15888 * oacc-mem.c (lookup_host): Get gomp_device_descr *dev instead of
15889 gomp_memory_mapping *. Use dev's lock and splay_tree.
15890 (lookup_dev): Use dev's lock.
15891 (acc_deviceptr): Pass dev to lookup_host instead of mem_map.
15892 (acc_is_present): Likewise.
15893 (acc_map_data): Likewise.
15894 (acc_unmap_data): Likewise. Use dev's lock.
15895 (present_create_copy): Likewise.
15896 (delete_copyout): Pass dev to lookup_host instead of mem_map.
15897 (update_dev_host): Likewise.
15898 (gomp_acc_remove_pointer): Likewise. Use dev's lock.
15899 * oacc-parallel.c (GOACC_parallel): Use dev's lock and splay_tree.
15900 * plugin/plugin-host.c (GOMP_OFFLOAD_register_image): Remove.
15901 (GOMP_OFFLOAD_get_table): Remove
15902 (GOMP_OFFLOAD_load_image): New function.
15903 (GOMP_OFFLOAD_unload_image): New function.
15904 * target.c (register_lock): New mutex for offload image registration.
15905 (num_devices): Do not guard with PLUGIN_SUPPORT.
15906 (gomp_realloc_unlock): New static function.
15907 (gomp_map_vars_existing): Add device descriptor argument. Unlock mutex
15908 before gomp_fatal.
15909 (gomp_map_vars): Use dev's lock and splay_tree instead of mem_map's.
15910 Pass devicep to gomp_map_vars_existing. Unlock mutex before gomp_fatal.
15911 (gomp_copy_from_async): Use dev's lock and splay_tree instead of
15912 mem_map's.
15913 (gomp_unmap_vars): Likewise.
15914 (gomp_update): Remove gomp_memory_mapping argument. Use dev's lock and
15915 splay_tree instead of mm's. Unlock mutex before gomp_fatal.
15916 (gomp_offload_image_to_device): New static function.
15917 (GOMP_offload_register): Add mutex lock.
15918 Call gomp_offload_image_to_device for all initialized devices.
15919 Replace gomp_realloc with gomp_realloc_unlock.
15920 (GOMP_offload_unregister): New function.
15921 (gomp_init_tables): Replace with gomp_init_device. Replace a call to
15922 get_table_func from the plugin with calls to init_device_func and
15923 gomp_offload_image_to_device.
15924 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
15925 to splay_tree_s *.
15926 (GOMP_target): Do not call gomp_init_tables. Use dev's lock and
15927 splay_tree instead of mem_map's. Unlock mutex before gomp_fatal.
15928 (GOMP_target_data): Do not call gomp_init_tables.
15929 (GOMP_target_update): Likewise. Remove argument from gomp_update.
15930 (gomp_load_plugin_for_device): Replace register_image and get_table
15931 with load_image and unload_image in DLSYM ().
15932 (gomp_register_images_for_device): Remove function.
15933 (gomp_target_init): Do not initialize current_device.mem_map.*,
15934 current_device.offload_regions_registered.
15935 Remove call to gomp_register_images_for_device.
15936 Do not free offload_images and num_offload_images.
15937
6c384511
JJ
159382015-03-30 Jakub Jelinek <jakub@redhat.com>
15939
15940 PR fortran/65597
15941 * testsuite/libgomp.fortran/pr65597.f90: New test.
15942
3e8165a5
TV
159432015-03-27 Tom de Vries <tom@codesourcery.com>
15944
15945 PR testsuite/65594
15946 * testsuite/libgomp.graphite/force-parallel-6.c (abort): Declare.
15947 (init, check): New function.
15948 (foo): Change return type to void.
15949 (main): Call init and check.
15950
4d688c9a
TV
159512015-03-27 Tom de Vries <tom@codesourcery.com>
15952
15953 PR testsuite/65594
15954 * testsuite/libgomp.graphite/force-parallel-6.c (M): Define.
15955 (foo): Use M for non-inner loops to scale down test-case.
15956
01c0b3b0
KT
159572015-03-25 Kai Tietz <ktietz@redhat.com>
15958
15959 PR libgomp/64972
15960 * oacc-parallel.c (GOACC_parallel): Use PRIu64 if available.
15961 (GOACC_data_start): Likewise.
15962 * target.c (gomp_map_vars): Likewise.
15963
844d9a76
JDA
159642015-03-21 John David Anglin <danglin@gcc.gnu.org>
15965
15966 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Don't run on
15967 hppa*-*-hpux*.
15968
9b65e171
JJ
159692015-03-19 Jakub Jelinek <jakub@redhat.com>
15970
15971 * testsuite/libgomp.c/target-10.c: New test.
15972 * testsuite/libgomp.c++/target-4.C: New test.
15973
db397e2e
IV
159742015-03-13 Ilya Verbin <ilya.verbin@intel.com>
15975
15976 * testsuite/libgomp.fortran/declare-target-1.f90: New test.
15977 * testsuite/libgomp.fortran/declare-target-2.f90: New file.
15978
cd93945d
SH
159792015-03-13 Sebastian Huber <sebastian.huber@embedded-brains.de>
15980
15981 * configure.tgt (*-*-rtems*): Use local-exec TLS model.
15982 * configure.ac (*-*-rtems*): Assume Pthread is supported.
15983 (pthread.h): Check for this header file.
15984 * configure: Regenerate.
15985
05deba9f
TV
159862015-02-25 Tom de Vries <tom@codesourcery.com>
15987
15988 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (DO_PRAGMA)
15989 (check_reduction_op, check_reduction_macro, max, min):
15990 Declare.
15991 (test_reductions_int, test_reductions_minmax, test_reductions_bool): New
15992 function.
15993 (main): Use new functions.
15994
196904d8
IT
159952015-02-18 Ilya Tocar <ilya.tocar@intel.com>
15996
15997 * target.c (gomp_load_plugin_for_device): Use const char * instead of
15998 char * for variables holding dlerror return values.
15999 (DLSYM_OPT): Ditto.
16000
a2818955
TS
160012015-02-17 Thomas Schwinge <thomas@codesourcery.com>
16002
16003 * libgomp-plugin.c (GOMP_PLUGIN_debug): Fix typo.
16004
26f93312
TS
160052015-02-17 Thomas Schwinge <thomas@codesourcery.com>
16006 Cesar Philippidis <cesar@codesourcery.com>
16007
16008 * oacc-ptx.h (GOACC_INTERNAL_PTX): Add GOACC_tid, GOACC_ntid,
16009 GOACC_ctaid, and GOACC_nctaid routines.
16010
fa01ffcc
JJ
160112015-02-11 Jakub Jelinek <jakub@redhat.com>
16012
16013 PR c/64824
16014 * testsuite/libgomp.c/atomic-18.c: New test.
16015 * testsuite/libgomp.c++/atomic-16.C: New test.
16016
4886ec8e
JJ
160172015-02-04 Jakub Jelinek <jakub@redhat.com>
16018
16019 PR c/64824
16020 PR c/64868
16021 * testsuite/libgomp.c/pr64824.c: New test.
16022 * testsuite/libgomp.c/pr64868.c: New test.
16023 * testsuite/libgomp.c++/pr64824.C: New test.
16024 * testsuite/libgomp.c++/pr64868.C: New test.
16025
02d3e45e
DE
160262015-02-01 David Edelsohn <dje.gcc@gmail.com>
16027
16028 PR libgomp/64635
16029 * configure.tgt (*-*-aix*): Use standard posix plugin-suffix.h.
16030 Link with -lpthread.
16031 * config/aix/plugin-suffix.h: Delete.
16032
b5f7a6ca
JH
160332015-01-28 Jack Howarth <howarth.at.gcc@gmail.com>
16034
16035 PR libgomp/64635
16036 * configure.tgt (*-*-aix*): Use config_path "aix posix".
16037 (*-*-darwin*): Use config_path "bsd darwin posix".
16038 (*-*-hpux*): Use config_path "hpux posix".
16039 * target.c: Add include of plugin-suffix.h and use
16040 SONAME_SUFFIX macro.
16041 * config/aix/plugin-suffix.h: New file.
16042 * config/darwin/plugin-suffix.h: New file.
16043 * config/hpux/plugin-suffix.h: New file.
16044 * config/posix/plugin-suffix.h: New file.
16045
b8910447
JJ
160462015-01-23 Jakub Jelinek <jakub@redhat.com>
16047
16048 PR middle-end/64734
16049 * libgomp.c/pr64734.c: New test.
16050
a0c88d06
TV
160512015-01-23 Tom de Vries <tom@codesourcery.com>
16052
16053 PR libgomp/64672
16054 * testsuite/libgomp.oacc-c-c++-common/abort-5.c: New test.
16055
1506ae0e
TV
160562015-01-23 Tom de Vries <tom@codesourcery.com>
16057
16058 PR libgomp/64707
16059 * testsuite/libgomp.c/target-9.c: Add -ftree-parallelize-loops=0 to
16060 dg-options.
16061
128b26dc
TS
160622015-01-19 Thomas Schwinge <thomas@codesourcery.com>
16063
bed62c21 16064 PR libgomp/64625
128b26dc
TS
16065 * libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data)
16066 (GOACC_parallel, GOACC_update): Remove const_void *offload_table
16067 formal parameter. Update all users.
16068 * target.c (GOMP_target, GOMP_target_data, GOMP_target_update):
16069 Document unused formal parameter.
16070
6e36114c
TS
160712015-01-16 Thomas Schwinge <thomas@codesourcery.com>
16072
16073 * oacc-parallel.c: Don't include <alloca.h>.
16074 (GOACC_parallel): Use gomp_alloca instead of alloca.
16075
973e9808
GP
160762015-01-16 Gerald Pfeifer <gerald@pfeifer.com>
16077
16078 * target.c (num_devices): Guard with PLUGIN_SUPPORT.
16079
41dbbb37
TS
160802015-01-15 Thomas Schwinge <thomas@codesourcery.com>
16081 James Norris <jnorris@codesourcery.com>
16082 Tom de Vries <tom@codesourcery.com>
16083 Julian Brown <julian@codesourcery.com>
16084 Cesar Philippidis <cesar@codesourcery.com>
16085 Nathan Sidwell <nathan@codesourcery.com>
16086 Tobias Burnus <burnus@net-b.de>
16087
16088 * Makefile.am (search_path): Add $(top_srcdir)/../include.
16089 (libgomp_la_SOURCES): Add splay-tree.c, libgomp-plugin.c,
16090 oacc-parallel.c, oacc-host.c, oacc-init.c, oacc-mem.c,
16091 oacc-async.c, oacc-plugin.c, oacc-cuda.c.
16092 [USE_FORTRAN] (libgomp_la_SOURCES): Add openacc.f90.
16093 Include $(top_srcdir)/plugin/Makefrag.am.
16094 (nodist_libsubinclude_HEADERS): Add openacc.h.
16095 [USE_FORTRAN] (nodist_finclude_HEADERS): Add openacc_lib.h,
16096 openacc.f90, openacc.mod, openacc_kinds.mod.
16097 (omp_lib.mod): Generalize into...
16098 (%.mod): ... this new rule.
16099 (openacc_kinds.mod, openacc.mod): New rules.
16100 * plugin/configfrag.ac: New file.
16101 * configure.ac: Move plugin/offloading support into it. Include
16102 it. Instantiate testsuite/libgomp-test-support.pt.exp.
16103 * plugin/Makefrag.am: New file.
16104 * testsuite/Makefile.am (OFFLOAD_TARGETS)
16105 (OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS): Don't
16106 export.
16107 (libgomp-test-support.exp): New rule.
16108 (all-local): Depend on it.
16109 * Makefile.in: Regenerate.
16110 * testsuite/Makefile.in: Regenerate.
16111 * config.h.in: Likewise.
16112 * configure: Likewise.
16113 * configure.tgt: Harden shell syntax.
16114 * env.c: Include "oacc-int.h".
16115 (parse_acc_device_type): New function.
16116 (gomp_debug_var, goacc_device_type, goacc_device_num): New
16117 variables.
16118 (initialize_env): Initialize those. Call
16119 goacc_runtime_initialize.
16120 * error.c (gomp_vdebug, gomp_debug, gomp_vfatal): New functions.
16121 (gomp_fatal): Call gomp_vfatal.
16122 * libgomp.h: Include "libgomp-plugin.h" and <stdarg.h>.
16123 (gomp_debug_var, goacc_device_type, goacc_device_num, gomp_vdebug)
16124 (gomp_debug, gomp_verror, gomp_vfatal, gomp_init_targets_once)
16125 (splay_tree_node, splay_tree, splay_tree_key)
16126 (struct target_mem_desc, struct splay_tree_key_s)
16127 (struct gomp_memory_mapping, struct acc_dispatch_t)
16128 (struct gomp_device_descr, gomp_acc_insert_pointer)
16129 (gomp_acc_remove_pointer, target_mem_desc, gomp_copy_from_async)
16130 (gomp_unmap_vars, gomp_init_device, gomp_init_tables)
16131 (gomp_free_memmap, gomp_fini_device): New declarations.
16132 (gomp_vdebug, gomp_debug): New macros.
16133 Include "splay-tree.h".
16134 * libgomp.map (OACC_2.0): New symbol version. Use for
16135 acc_get_num_devices, acc_get_num_devices_h_, acc_set_device_type,
16136 acc_set_device_type_h_, acc_get_device_type,
16137 acc_get_device_type_h_, acc_set_device_num, acc_set_device_num_h_,
16138 acc_get_device_num, acc_get_device_num_h_, acc_async_test,
16139 acc_async_test_h_, acc_async_test_all, acc_async_test_all_h_,
16140 acc_wait, acc_wait_h_, acc_wait_async, acc_wait_async_h_,
16141 acc_wait_all, acc_wait_all_h_, acc_wait_all_async,
16142 acc_wait_all_async_h_, acc_init, acc_init_h_, acc_shutdown,
16143 acc_shutdown_h_, acc_on_device, acc_on_device_h_, acc_malloc,
16144 acc_free, acc_copyin, acc_copyin_32_h_, acc_copyin_64_h_,
16145 acc_copyin_array_h_, acc_present_or_copyin,
16146 acc_present_or_copyin_32_h_, acc_present_or_copyin_64_h_,
16147 acc_present_or_copyin_array_h_, acc_create, acc_create_32_h_,
16148 acc_create_64_h_, acc_create_array_h_, acc_present_or_create,
16149 acc_present_or_create_32_h_, acc_present_or_create_64_h_,
16150 acc_present_or_create_array_h_, acc_copyout, acc_copyout_32_h_,
16151 acc_copyout_64_h_, acc_copyout_array_h_, acc_delete,
16152 acc_delete_32_h_, acc_delete_64_h_, acc_delete_array_h_,
16153 acc_update_device, acc_update_device_32_h_,
16154 acc_update_device_64_h_, acc_update_device_array_h_,
16155 acc_update_self, acc_update_self_32_h_, acc_update_self_64_h_,
16156 acc_update_self_array_h_, acc_map_data, acc_unmap_data,
16157 acc_deviceptr, acc_hostptr, acc_is_present, acc_is_present_32_h_,
16158 acc_is_present_64_h_, acc_is_present_array_h_,
16159 acc_memcpy_to_device, acc_memcpy_from_device,
16160 acc_get_current_cuda_device, acc_get_current_cuda_context,
16161 acc_get_cuda_stream, acc_set_cuda_stream.
16162 (GOACC_2.0): New symbol version. Use for GOACC_data_end,
16163 GOACC_data_start, GOACC_enter_exit_data, GOACC_parallel,
16164 GOACC_update, GOACC_wait, GOACC_get_thread_num,
16165 GOACC_get_num_threads.
16166 (GOMP_PLUGIN_1.0): New symbol version. Use for
16167 GOMP_PLUGIN_malloc, GOMP_PLUGIN_malloc_cleared,
16168 GOMP_PLUGIN_realloc, GOMP_PLUGIN_debug, GOMP_PLUGIN_error,
16169 GOMP_PLUGIN_fatal, GOMP_PLUGIN_async_unmap_vars,
16170 GOMP_PLUGIN_acc_thread.
16171 * libgomp.texi: Update for OpenACC changes, and GOMP_DEBUG
16172 environment variable.
16173 * libgomp_g.h (GOACC_data_start, GOACC_data_end)
16174 (GOACC_enter_exit_data, GOACC_parallel, GOACC_update, GOACC_wait)
16175 (GOACC_get_num_threads, GOACC_get_thread_num): New declarations.
16176 * splay-tree.h (splay_tree_lookup, splay_tree_insert)
16177 (splay_tree_remove): New declarations.
16178 (rotate_left, rotate_right, splay_tree_splay, splay_tree_insert)
16179 (splay_tree_remove, splay_tree_lookup): Move into...
16180 * splay-tree.c: ... this new file.
16181 * target.c: Include "oacc-plugin.h", "oacc-int.h", <assert.h>.
16182 (splay_tree_node, splay_tree, splay_tree_key)
16183 (struct target_mem_desc, struct splay_tree_key_s)
16184 (struct gomp_device_descr): Don't declare.
16185 (num_devices_openmp): New variable.
16186 (gomp_get_num_devices ): Use it.
16187 (gomp_init_targets_once): New function.
16188 (gomp_get_num_devices ): Use it.
16189 (get_kind, gomp_copy_from_async, gomp_free_memmap)
16190 (gomp_fini_device, gomp_register_image_for_device): New functions.
16191 (gomp_map_vars): Add devaddrs parameter.
16192 (gomp_update): Add mm parameter.
16193 (gomp_init_device): Move most of it into...
16194 (gomp_init_tables): ... this new function.
16195 (gomp_register_images_for_device): Remove function.
16196 (splay_compare, gomp_map_vars, gomp_unmap_vars, gomp_init_device):
16197 Make them hidden instead of static.
16198 (gomp_map_vars_existing, gomp_map_vars, gomp_unmap_vars)
16199 (gomp_update, gomp_init_device, GOMP_target, GOMP_target_data)
16200 (GOMP_target_end_data, GOMP_target_update)
16201 (gomp_load_plugin_for_device, gomp_target_init): Update for
16202 OpenACC changes.
16203 * oacc-async.c: New file.
16204 * oacc-cuda.c: Likewise.
16205 * oacc-host.c: Likewise.
16206 * oacc-init.c: Likewise.
16207 * oacc-int.h: Likewise.
16208 * oacc-mem.c: Likewise.
16209 * oacc-parallel.c: Likewise.
16210 * oacc-plugin.c: Likewise.
16211 * oacc-plugin.h: Likewise.
16212 * oacc-ptx.h: Likewise.
16213 * openacc.f90: Likewise.
16214 * openacc.h: Likewise.
16215 * openacc_lib.h: Likewise.
16216 * plugin/plugin-host.c: Likewise.
16217 * plugin/plugin-nvptx.c: Likewise.
16218 * libgomp-plugin.c: Likewise.
16219 * libgomp-plugin.h: Likewise.
16220 * libgomp_target.h: Remove file after merging content into the
16221 former file. Update all users.
16222 * testsuite/lib/libgomp.exp: Load libgomp-test-support.exp.
16223 (offload_targets_s, offload_targets_s_openacc): New variables.
16224 (check_effective_target_openacc_nvidia_accel_present)
16225 (check_effective_target_openacc_nvidia_accel_selected): New
16226 procedures.
16227 (libgomp_init): Update for OpenACC changes.
16228 * testsuite/libgomp-test-support.exp.in: New file.
16229 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
16230 * testsuite/libgomp.oacc-c/c.exp: Likewise.
16231 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
16232 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Likewise.
16233 * testsuite/libgomp.oacc-c-c++-common/abort-2.c: Likewise.
16234 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
16235 * testsuite/libgomp.oacc-c-c++-common/abort-4.c: Likewise.
16236 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
16237 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
16238 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Likewise.
16239 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Likewise.
16240 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
16241 * testsuite/libgomp.oacc-c-c++-common/collapse-1.c: Likewise.
16242 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
16243 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
16244 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
16245 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
16246 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
16247 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
16248 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
16249 * testsuite/libgomp.oacc-c-c++-common/data-1.c: Likewise.
16250 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
16251 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
16252 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
16253 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
16254 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
16255 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
16256 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
16257 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
16258 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
16259 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
16260 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
16261 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
16262 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Likewise.
16263 * testsuite/libgomp.oacc-c-c++-common/kernels-empty.c: Likewise.
16264 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
16265 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
16266 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
16267 * testsuite/libgomp.oacc-c-c++-common/lib-12.c: Likewise.
16268 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
16269 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
16270 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
16271 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
16272 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
16273 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
16274 * testsuite/libgomp.oacc-c-c++-common/lib-19.c: Likewise.
16275 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
16276 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
16277 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
16278 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
16279 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
16280 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
16281 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
16282 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
16283 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
16284 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
16285 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
16286 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
16287 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
16288 * testsuite/libgomp.oacc-c-c++-common/lib-31.c: Likewise.
16289 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
16290 * testsuite/libgomp.oacc-c-c++-common/lib-33.c: Likewise.
16291 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
16292 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
16293 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
16294 * testsuite/libgomp.oacc-c-c++-common/lib-37.c: Likewise.
16295 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Likewise.
16296 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
16297 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
16298 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
16299 * testsuite/libgomp.oacc-c-c++-common/lib-41.c: Likewise.
16300 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
16301 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
16302 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
16303 * testsuite/libgomp.oacc-c-c++-common/lib-45.c: Likewise.
16304 * testsuite/libgomp.oacc-c-c++-common/lib-46.c: Likewise.
16305 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
16306 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
16307 * testsuite/libgomp.oacc-c-c++-common/lib-49.c: Likewise.
16308 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Likewise.
16309 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Likewise.
16310 * testsuite/libgomp.oacc-c-c++-common/lib-51.c: Likewise.
16311 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
16312 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
16313 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
16314 * testsuite/libgomp.oacc-c-c++-common/lib-55.c: Likewise.
16315 * testsuite/libgomp.oacc-c-c++-common/lib-56.c: Likewise.
16316 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
16317 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
16318 * testsuite/libgomp.oacc-c-c++-common/lib-59.c: Likewise.
16319 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
16320 * testsuite/libgomp.oacc-c-c++-common/lib-60.c: Likewise.
16321 * testsuite/libgomp.oacc-c-c++-common/lib-61.c: Likewise.
16322 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
16323 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
16324 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
16325 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
16326 * testsuite/libgomp.oacc-c-c++-common/lib-66.c: Likewise.
16327 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
16328 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
16329 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
16330 * testsuite/libgomp.oacc-c-c++-common/lib-7.c: Likewise.
16331 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
16332 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
16333 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
16334 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
16335 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
16336 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
16337 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
16338 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
16339 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
16340 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
16341 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
16342 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
16343 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
16344 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
16345 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
16346 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
16347 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
16348 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
16349 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
16350 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
16351 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
16352 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
16353 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
16354 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
16355 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
16356 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Likewise.
16357 * testsuite/libgomp.oacc-c-c++-common/offset-1.c: Likewise.
16358 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: Likewise.
16359 * testsuite/libgomp.oacc-c-c++-common/parallel-empty.c: Likewise.
16360 * testsuite/libgomp.oacc-c-c++-common/pointer-align-1.c: Likewise.
16361 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
16362 * testsuite/libgomp.oacc-c-c++-common/present-2.c: Likewise.
16363 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
16364 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
16365 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
16366 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
16367 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
16368 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c:
16369 Likewise.
16370 * testsuite/libgomp.oacc-c-c++-common/subr.h: Likewise.
16371 * testsuite/libgomp.oacc-c-c++-common/subr.ptx: Likewise.
16372 * testsuite/libgomp.oacc-c-c++-common/timer.h: Likewise.
16373 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
16374 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Likewise.
16375 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
16376 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
16377 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
16378 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
16379 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
16380 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
16381 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
16382 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
16383 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
16384 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
16385 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
16386 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
16387 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
16388 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
16389 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
16390 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
16391 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
16392 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
16393 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
16394 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
16395 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
16396 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
16397 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
16398 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
16399 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
16400 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
16401 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
16402 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
16403 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
16404 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
16405 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
16406 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
16407 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
16408 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
16409 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
16410 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
16411 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
16412 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
16413 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
16414 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
16415 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
16416 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
16417 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
16418 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
16419 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
16420 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
16421 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
16422 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
16423 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
16424 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
16425 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
16426 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
16427 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
16428 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
16429 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
16430
f1f3453e
TS
164312015-01-10 Thomas Schwinge <thomas@codesourcery.com>
16432 Julian Brown <julian@codesourcery.com>
16433 David Malcolm <dmalcolm@redhat.com>
16434
16435 * configure.ac: Rename libgomp from "GNU OpenMP Runtime Library"
16436 to "GNU Offloading and Multi Processing Runtime Library". Change
16437 all users.
16438 * configure: Regenerate.
16439 * libgomp.texi: Update.
16440
f9a0eca4
TS
164412015-01-08 Thomas Schwinge <thomas@codesourcery.com>
16442
b335ef4e
TS
16443 * configure.ac [tgt_dir] (offload_additional_lib_paths): Also add
16444 "$tgt_dir/lib32".
16445 * configure: Regenerate.
16446
f9a0eca4
TS
16447 * testsuite/lib/libgomp.exp (libgomp_init): Correctly match
16448 "intelmic" in $offload_targets.
16449
b67cd4e3
JJ
164502015-01-05 Jakub Jelinek <jakub@redhat.com>
16451
5624e564
JJ
16452 Update copyright years.
16453
b67cd4e3
JJ
16454 * libgomp.texi: Bump @copying's copyright year.
16455
3b41b583
KT
164562014-12-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
16457
16458 * testsuite/lib/libgomp.exp: Load target-utils.exp.
93d90219 16459 Move load of target-supports.exp earlier.
3b41b583 16460
2354caec
IV
164612014-12-10 Ilya Verbin <ilya.verbin@intel.com>
16462
16463 * testsuite/libgomp.c/target-9.c: New test.
16464
f50eecba
VR
164652014-12-09 Varvara Rainchik <varvara.rainchik@intel.com>
16466
16467 * config.h.in: Regenerate.
16468 * configure: Regenerate.
16469 * configure.ac: Add GCC_CHECK_EMUTLS.
16470 * libgomp.h: Add check for USE_EMUTLS: this case
16471 is equal to HAVE_TLS.
16472 * team.c: Likewise.
16473
68bc9270
UB
164742014-12-03 Uros Bizjak <ubizjak@gmail.com>
16475
16476 * configure.tgt (x86_64-*-linux*): Tune -m32 multilib to generic.
16477
476ff787
AT
164782014-11-28 Andrey Turetskiy <andrey.turetskiy@intel.com>
16479 Ilya Verbin <ilya.verbin@intel.com>
16480
16481 * testsuite/libgomp.c/target-critical-1.c: New test.
16482
31a30e62
JJ
164832014-11-26 Jakub Jelinek <jakub@redhat.com>
16484
16485 * testsuite/libgomp.c/examples-4/e.53.4.c: Add -DITESTITERS=20
68bc9270 16486 to dg-options unless expensive testing is on.
31a30e62
JJ
16487 (TESTITERS): Define to N if not defined.
16488 (main): Use TESTITERS instead of N.
16489 * testsuite/libgomp.c/examples-4/e.55.1.c: Define CHUNKSZ from
16490 dg-additional-options depending on whether expensive testing is on.
16491 * testsuite/libgomp.fortran/examples-4/e.55.1.f90 (e_55_1_mod):
16492 Decrease N to 100000 and CHUNKSZ to 10000.
16493
3f9e8f13
JJ
164942014-11-24 Jakub Jelinek <jakub@redhat.com>
16495
16496 PR fortran/63938
31a30e62
JJ
16497 * testsuite/libgomp.fortran/pr63938-1.f90: New test.
16498 * testsuite/libgomp.fortran/pr63938-2.f90: New test.
3f9e8f13 16499
c8451a46
SE
165002014-11-21 Steve Ellcey <sellcey@imgtec.com>
16501
16502 * config/linux/mips/futex.h (SYS_futex): Define if not already done.
16503
a699d672
L
165042014-11-21 H.J. Lu <hongjiu.lu@intel.com>
16505
16506 PR bootstrap/63784
16507 * configure: Regenerated.
16508
4a19f719
UB
165092014-11-19 Uros Bizjak <ubizjak@gmail.com>
16510
16511 * testsuite/libgomp.c/examples-4/e.53.5.c: Require
16512 vect_simd_clones effective target.
16513 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
16514
b1bf6c52
JJ
165152014-11-14 Jakub Jelinek <jakub@redhat.com>
16516
16517 * libgomp.c/examples-4/e.54.2.c (main): Use N / 8 instead
16518 of 32 as block_size.
16519 * libgomp.fortran/examples-4/e.54.2.f90 (e_54_1): Use n / 8
16520 instead of 32 as block_size.
16521
d64ae614
AT
165222014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
16523 Ilya Verbin <ilya.verbin@intel.com>
16524
16525 * Makefile.in: Regenerate.
16526 * configure: Regenerate.
16527 * configure.ac: Set up offload_additional_options,
16528 offload_additional_lib_paths and offload_targets.
16529 * testsuite/Makefile.am: Export environment variables: OFFLOAD_TARGETS,
16530 OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS.
16531 * testsuite/Makefile.in: Regenerate.
16532 * testsuite/lib/libgomp.exp (libgomp_init): Append
16533 offload_additional_lib_paths to LD_LIBRARY_PATH. Append
16534 offload_additional_options to ALWAYS_CFLAGS. Append liboffloadmic
16535 build directory to LD_LIBRARY_PATH for intelmic offload targets.
16536
122d7303
AT
165372014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
16538 Ilya Verbin <ilya.verbin@intel.com>
16539 Kirill Yukhin <kirill.yukhin@intel.com>
16540 Ilya Tocar <ilya.tocar@intel.com>
16541
16542 * testsuite/lib/libgomp.exp
16543 (check_effective_target_offload_device): New.
16544 * testsuite/libgomp.c++/c++.exp: Include tests from subdirectories.
16545 * testsuite/libgomp.c++/examples-4/e.51.5.C: New test.
16546 * testsuite/libgomp.c++/examples-4/e.53.2.C: Ditto.
16547 * testsuite/libgomp.c/examples-4/e.50.1.c: Ditto.
16548 * testsuite/libgomp.c/examples-4/e.50.2.c: Ditto.
16549 * testsuite/libgomp.c/examples-4/e.50.3.c: Ditto.
16550 * testsuite/libgomp.c/examples-4/e.50.4.c: Ditto.
16551 * testsuite/libgomp.c/examples-4/e.50.5.c: Ditto.
16552 * testsuite/libgomp.c/examples-4/e.51.1.c: Ditto.
16553 * testsuite/libgomp.c/examples-4/e.51.2.c: Ditto.
16554 * testsuite/libgomp.c/examples-4/e.51.3.c: Ditto.
16555 * testsuite/libgomp.c/examples-4/e.51.4.c: Ditto.
16556 * testsuite/libgomp.c/examples-4/e.51.6.c: Ditto.
16557 * testsuite/libgomp.c/examples-4/e.51.7.c: Ditto.
16558 * testsuite/libgomp.c/examples-4/e.52.1.c: Ditto.
16559 * testsuite/libgomp.c/examples-4/e.52.2.c: Ditto.
16560 * testsuite/libgomp.c/examples-4/e.53.1.c: Ditto.
16561 * testsuite/libgomp.c/examples-4/e.53.3.c: Ditto.
16562 * testsuite/libgomp.c/examples-4/e.53.4.c: Ditto.
16563 * testsuite/libgomp.c/examples-4/e.53.5.c: Ditto.
16564 * testsuite/libgomp.c/examples-4/e.54.2.c: Ditto.
16565 * testsuite/libgomp.c/examples-4/e.54.3.c: Ditto.
16566 * testsuite/libgomp.c/examples-4/e.54.4.c: Ditto.
16567 * testsuite/libgomp.c/examples-4/e.54.5.c: Ditto.
16568 * testsuite/libgomp.c/examples-4/e.54.6.c: Ditto.
16569 * testsuite/libgomp.c/examples-4/e.55.1.c: Ditto.
16570 * testsuite/libgomp.c/examples-4/e.55.2.c: Ditto.
16571 * testsuite/libgomp.c/examples-4/e.56.3.c: Ditto.
16572 * testsuite/libgomp.c/examples-4/e.56.4.c: Ditto.
16573 * testsuite/libgomp.c/examples-4/e.57.1.c: Ditto.
16574 * testsuite/libgomp.c/examples-4/e.57.2.c: Ditto.
16575 * testsuite/libgomp.c/examples-4/e.57.3.c: Ditto.
16576 * testsuite/libgomp.c/target-7.c: Fix test.
16577 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: New test.
16578 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Ditto.
16579 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Ditto.
16580 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Ditto.
16581 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Ditto.
16582 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Ditto.
16583 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Ditto.
16584 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Ditto.
16585 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Ditto.
16586 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Ditto.
16587 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Ditto.
16588 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Ditto.
16589 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Ditto.
16590 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Ditto.
16591 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Ditto.
16592 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Ditto.
16593 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Ditto.
16594 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Ditto.
16595 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
16596 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Ditto.
16597 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Ditto.
16598 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Ditto.
16599 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Ditto.
16600 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Ditto.
16601 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Ditto.
16602 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Ditto.
16603 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Ditto.
16604 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Ditto.
16605 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Ditto.
16606 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Ditto.
16607 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Ditto.
16608
1df3f842
JJ
166092014-11-13 Jakub Jelinek <jakub@redhat.com>
16610 Ilya Verbin <ilya.verbin@intel.com>
16611 Thomas Schwinge <thomas@codesourcery.com>
16612 Andrey Turetskiy <andrey.turetskiy@intel.com>
16613
16614 * libgomp.map (GOMP_4.0.1): New symbol version.
16615 Add GOMP_offload_register.
16616 * libgomp_target.h: New file.
16617 * splay-tree.h: New file.
16618 * target.c: Include config.h, libgomp_target.h, dlfcn.h, splay-tree.h.
16619 (gomp_target_init): New forward declaration.
16620 (gomp_is_initialized): New static variable.
16621 (splay_tree_node, splay_tree, splay_tree_key): New typedefs.
16622 (struct target_mem_desc, struct splay_tree_key_s, offload_image_descr):
16623 New structures.
16624 (offload_images, num_offload_images, devices, num_devices): New static
16625 variables.
16626 (splay_compare): New static function.
16627 (struct gomp_device_descr): New structure.
16628 (gomp_get_num_devices): Call gomp_target_init.
16629 (resolve_device, gomp_map_vars_existing, gomp_map_vars, gomp_unmap_tgt)
16630 (gomp_unmap_vars, gomp_update, gomp_init_device): New static functions.
16631 (GOMP_offload_register): New function.
16632 (GOMP_target): Arrange for host callback to be performed in a separate
16633 initial thread and contention group, inheriting ICVs from
16634 gomp_global_icv etc. Call gomp_map_vars and gomp_unmap_vars.
16635 Add device initialization and lookup for target function in splay tree.
16636 (GOMP_target_data): Add device initialization and call gomp_map_vars.
16637 (GOMP_target_end_data): Call gomp_unmap_vars.
16638 (GOMP_target_update): Add device initialization and call gomp_update.
16639 (gomp_load_plugin_for_device, gomp_register_images_for_device)
16640 (gomp_target_init): New static functions.
16641
85c64bbe
BS
166422014-11-13 Bernd Schmidt <bernds@codesourcery.com>
16643 Thomas Schwinge <thomas@codesourcery.com>
16644 Ilya Verbin <ilya.verbin@intel.com>
16645 Andrey Turetskiy <andrey.turetskiy@intel.com>
16646
16647 * config.h.in: Regenerate.
16648 * configure: Regenerate.
16649 * configure.ac: Check for libdl, required for plugin support.
16650 (PLUGIN_SUPPORT): Define if plugins are supported.
16651 (enable_offload_targets): Support Intel MIC targets.
16652 (OFFLOAD_TARGETS): List of target names suitable for offloading.
16653
ebf6d33b
FXC
166542014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
16655
16656 PR target/63610
16657 * configure: Regenerate.
16658
8c768629
RO
166592014-11-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16660
16661 * config/posix/lock.c (_XOPEN_SOURCE) Define as 600.
16662
c1d62412
MP
166632014-10-06 Marek Polacek <polacek@redhat.com>
16664
16665 * testsuite/libgomp.c/affinity-1.c: Include <sys/wait.h>.
16666 * testsuite/libgomp.c/nqueens-1.c: Include <stdlib.h>.
16667 * testsuite/libgomp.c/thread-limit-1.c: Include <omp.h>
16668 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
16669
44a0c6cb
MP
166702014-10-06 Marek Polacek <polacek@redhat.com>
16671
16672 * testsuite/libgomp.c/affinity-1.c: Fix implicit declarations.
16673 * testsuite/libgomp.c/nqueens-1.c: Likewise.
16674 * testsuite/libgomp.c/pr26943-3.c: Likewise.
16675 * testsuite/libgomp.c/pr26943-4.c: Likewise.
16676 * testsuite/libgomp.c/pr36802-2.c: Likewise.
16677 * testsuite/libgomp.c/pr36802-3.c: Likewise.
16678 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
16679 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
16680 * testsuite/libgomp.c/appendix-a/a.15.1.c: Include <omp.h>.
16681 * testsuite/libgomp.c/omp-loop02.c: Fix defaulting to int.
16682 * testsuite/libgomp.c/omp-parallel-for.c: Likewise.
16683 * testsuite/libgomp.c/omp-parallel-if.c: Likewise.
16684 * testsuite/libgomp.c/omp-single-1.c: Likewise.
16685 * testsuite/libgomp.c/omp-single-2.c: Likewise.
16686 * testsuite/libgomp.c/omp_matvec.c: Likewise.
16687 * testsuite/libgomp.c/omp_workshare3.c: Likewise.
16688 * testsuite/libgomp.c/omp_workshare4.c: Likewise.
16689 * testsuite/libgomp.c/shared-1.c: Fix defaulting to int. Fix implicit
16690 declarations.
16691
5771c391
JJ
166922014-10-03 Jakub Jelinek <jakub@redhat.com>
16693
16694 PR libgomp/61200
16695 * testsuite/libgomp.c/pr61200.c: New test.
16696
bce16b88
JJ
166972014-09-18 Jakub Jelinek <jakub@redhat.com>
16698
16699 PR c++/63248
16700 * testsuite/libgomp.c++/pr63248.C: New test.
16701
3696163c
JJ
167022014-08-04 Jakub Jelinek <jakub@redhat.com>
16703
16704 * task.c (GOMP_taskgroup_end): If taskgroup->num_children
16705 is not zero, but taskgroup->children is NULL and there are
16706 any task->children, schedule those instead of waiting.
16707 * testsuite/libgomp.c/depend-6.c: New test.
16708 * testsuite/libgomp.c/depend-7.c: New test.
16709 * testsuite/libgomp.c/depend-8.c: New test.
16710 * testsuite/libgomp.c/depend-9.c: New test.
16711 * testsuite/libgomp.c/depend-10.c: New test.
16712
0494285a
JJ
167132014-08-01 Jakub Jelinek <jakub@redhat.com>
16714
16715 * libgomp.h (struct gomp_task_depend_entry): Add redundant_out field.
16716 (struct gomp_taskwait): New type.
16717 (struct gomp_task): Add taskwait and parent_depends_on, remove
16718 in_taskwait and taskwait_sem fields.
16719 (gomp_finish_task): Don't destroy taskwait_sem.
16720 * task.c (gomp_init_task): Don't init in_taskwait, instead init
16721 taskwait and parent_depends_on.
16722 (GOMP_task): For if (0) tasks with depend clause that depend on
16723 earlier tasks don't defer them, instead call
16724 gomp_task_maybe_wait_for_dependencies to wait for the dependencies.
16725 Initialize redundant_out field, for redundant out entries just
16726 move them at the end of linked list instead of removing them
16727 completely, and set redundant_out flag instead of redundant.
16728 (gomp_task_run_pre): Update last_parent_depends_on if scheduling
16729 that task.
16730 (gomp_task_run_post_handle_dependers): If parent is in
16731 gomp_task_maybe_wait_for_dependencies and newly runnable task
16732 is not parent_depends_on, queue it in parent->children linked
16733 list after all runnable tasks with parent_depends_on set.
16734 Adjust for addition of taskwait indirection.
16735 (gomp_task_run_post_remove_parent): If parent is in
16736 gomp_task_maybe_wait_for_dependencies and task to be removed
16737 is parent_depends_on, decrement n_depend and if needed awake
16738 parent. Adjust for addition of taskwait indirection.
16739 (GOMP_taskwait): Adjust for addition of taskwait indirection.
16740 (gomp_task_maybe_wait_for_dependencies): New function.
16741 * testsuite/libgomp.c/depend-5.c: New test.
16742
60ab4b44
TB
167432014-07-13 Tobias Burnus <burnus@net-b.de>
16744
16745 * testsuite/libgomp.fortran/pr34020.f90: Make compile
0494285a 16746 with TS 18508/Fortran 2015.
60ab4b44 16747
773ec47f
MP
167482014-07-06 Marek Polacek <polacek@redhat.com>
16749
16750 PR c/6940
16751 * testsuite/libgomp.c/appendix-a/a.29.1.c (f): Add dg-warnings.
16752
f707da16
JJ
167532014-07-03 Jakub Jelinek <jakub@redhat.com>
16754
16755 * testsuite/lib/libgomp.exp (libgomp_target_compile): If $source
16756 matches regex $lang_source_re, add $lang_include_flags to options.
16757 * testsuite/libgomp.c/c.exp: Unset lang_include_flags.
16758 * testsuite/libgomp.c++/c++.exp: Likewise.
16759 * testsuite/libgomp.fortran/fortran.exp: Likewise. Set lang_source_re
16760 and lang_include_flags instead of adding -fintrinsic-modules-path= to
16761 ALWAYS_CFLAGS.
16762 * testsuite/libgomp.graphite/graphite.exp: Unset lang_include_flags.
16763
07b6c044
TS
167642014-07-03 Thomas Schwinge <thomas@codesourcery.com>
16765
16766 * testsuite/libgomp.fortran/fortran.exp: Explain
16767 gfortran-dg-runtest usage.
16768
da6f124d
JJ
167692014-06-25 Jakub Jelinek <jakub@redhat.com>
16770
16771 * testsuite/libgomp.fortran/simd5.f90: New test.
16772 * testsuite/libgomp.fortran/simd6.f90: New test.
16773 * testsuite/libgomp.fortran/simd7.f90: New test.
16774
b46ebd6c
JJ
167752014-06-24 Jakub Jelinek <jakub@redhat.com>
16776
56ad0e38
JJ
16777 * testsuite/libgomp.c/for-2.c: Define SC to static for
16778 #pragma omp for simd testing.
16779 * testsuite/libgomp.c/for-2.h (SC): Define if not defined.
16780 (N(f5), N(f6), N(f7), N(f8), N(f10), N(f12), N(f14)): Use
16781 SC macro.
16782 * testsuite/libgomp.c/simd-14.c: New test.
16783 * testsuite/libgomp.c/simd-15.c: New test.
16784 * testsuite/libgomp.c/simd-16.c: New test.
16785 * testsuite/libgomp.c/simd-17.c: New test.
16786 * testsuite/libgomp.c++/for-10.C: Define SC to static for
16787 #pragma omp for simd testing.
16788 * testsuite/libgomp.c++/simd10.C: New test.
16789 * testsuite/libgomp.c++/simd11.C: New test.
16790 * testsuite/libgomp.c++/simd12.C: New test.
16791 * testsuite/libgomp.c++/simd13.C: New test.
16792
b46ebd6c
JJ
16793 * testsuite/libgomp.fortran/aligned1.f03: New test.
16794 * testsuite/libgomp.fortran/nestedfn5.f90: New test.
16795 * testsuite/libgomp.fortran/target7.f90: Surround loop spawning
16796 tasks with !$omp parallel !$omp single.
16797 * testsuite/libgomp.fortran/target8.f90: New test.
16798 * testsuite/libgomp.fortran/udr4.f90 (foo UDR, bar UDR): Adjust
16799 not to use trim in the combiner, instead call elemental function.
16800 (fn): New elemental function.
16801 * testsuite/libgomp.fortran/udr6.f90 (do_add, dp_add, dp_init):
16802 Make elemental.
16803 * testsuite/libgomp.fortran/udr7.f90 (omp_priv, omp_orig, omp_out,
16804 omp_in): Likewise.
16805 * testsuite/libgomp.fortran/udr12.f90: New test.
16806 * testsuite/libgomp.fortran/udr13.f90: New test.
16807 * testsuite/libgomp.fortran/udr14.f90: New test.
16808 * testsuite/libgomp.fortran/udr15.f90: New test.
16809
f014c653
JJ
168102014-06-18 Jakub Jelinek <jakub@redhat.com>
16811
16812 * omp_lib.f90.in (openmp_version): Set to 201307.
16813 * omp_lib.h.in (openmp_version): Likewise.
16814 * testsuite/libgomp.c/target-8.c: New test.
16815 * testsuite/libgomp.fortran/declare-simd-1.f90: Add notinbranch
16816 and inbranch clauses.
16817 * testsuite/libgomp.fortran/depend-3.f90: New test.
16818 * testsuite/libgomp.fortran/openmp_version-1.f: Adjust for new
16819 openmp_version.
16820 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
16821 * testsuite/libgomp.fortran/target1.f90: New test.
16822 * testsuite/libgomp.fortran/target2.f90: New test.
16823 * testsuite/libgomp.fortran/target3.f90: New test.
16824 * testsuite/libgomp.fortran/target4.f90: New test.
16825 * testsuite/libgomp.fortran/target5.f90: New test.
16826 * testsuite/libgomp.fortran/target6.f90: New test.
16827 * testsuite/libgomp.fortran/target7.f90: New test.
16828
92d28cbb
JJ
168292014-06-10 Jakub Jelinek <jakub@redhat.com>
16830
16831 PR fortran/60928
16832 * testsuite/libgomp.fortran/allocatable9.f90: New test.
16833 * testsuite/libgomp.fortran/allocatable10.f90: New test.
16834 * testsuite/libgomp.fortran/allocatable11.f90: New test.
16835 * testsuite/libgomp.fortran/allocatable12.f90: New test.
16836 * testsuite/libgomp.fortran/alloc-comp-1.f90: New test.
16837 * testsuite/libgomp.fortran/alloc-comp-2.f90: New test.
16838 * testsuite/libgomp.fortran/alloc-comp-3.f90: New test.
16839 * testsuite/libgomp.fortran/associate1.f90: New test.
16840 * testsuite/libgomp.fortran/associate2.f90: New test.
16841 * testsuite/libgomp.fortran/procptr1.f90: New test.
16842
5f23671d
JJ
168432014-06-06 Jakub Jelinek <jakub@redhat.com>
16844
16845 * testsuite/libgomp.fortran/simd1.f90: New test.
16846 * testsuite/libgomp.fortran/udr1.f90: New test.
16847 * testsuite/libgomp.fortran/udr2.f90: New test.
16848 * testsuite/libgomp.fortran/udr3.f90: New test.
16849 * testsuite/libgomp.fortran/udr4.f90: New test.
16850 * testsuite/libgomp.fortran/udr5.f90: New test.
16851 * testsuite/libgomp.fortran/udr6.f90: New test.
16852 * testsuite/libgomp.fortran/udr7.f90: New test.
16853 * testsuite/libgomp.fortran/udr8.f90: New test.
16854 * testsuite/libgomp.fortran/udr9.f90: New test.
16855 * testsuite/libgomp.fortran/udr10.f90: New test.
16856 * testsuite/libgomp.fortran/udr11.f90: New test.
16857
0389fbb5
UB
168582014-05-27 Uros Bizjak <ubizjak@gmail.com>
16859
16860 * testsuite/libgomp.fortran/declare-simd-1.f90: Require
16861 vect_simd_clones effective target.
16862 * testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.
16863
decaaec8
JJ
168642014-05-21 Jakub Jelinek <jakub@redhat.com>
16865
16866 PR middle-end/61252
16867 * testsuite/libgomp.c++/simd-9.C: New test.
16868
72832460
UB
168692014-05-18 Uros Bizjak <ubizjak@gmail.com>
16870
16871 * libgomp.texi (Runitme Library Routines): Remove multiple @menu.
16872 (Environment Variables) Move OMP_PROC_BIND and OMP_STACKSIZE node
16873 texts according to their @menu entry positions.
16874
dd2fc525
JJ
168752014-05-11 Jakub Jelinek <jakub@redhat.com>
16876
16877 * testsuite/libgomp.fortran/cancel-do-1.f90: New test.
16878 * testsuite/libgomp.fortran/cancel-do-2.f90: New test.
16879 * testsuite/libgomp.fortran/cancel-parallel-1.f90: New test.
16880 * testsuite/libgomp.fortran/cancel-parallel-3.f90: New test.
16881 * testsuite/libgomp.fortran/cancel-sections-1.f90: New test.
16882 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: New test.
16883 * testsuite/libgomp.fortran/declare-simd-1.f90: New test.
16884 * testsuite/libgomp.fortran/declare-simd-2.f90: New test.
16885 * testsuite/libgomp.fortran/declare-simd-3.f90: New test.
16886 * testsuite/libgomp.fortran/depend-1.f90: New test.
16887 * testsuite/libgomp.fortran/depend-2.f90: New test.
16888 * testsuite/libgomp.fortran/omp_atomic5.f90: New test.
16889 * testsuite/libgomp.fortran/simd1.f90: New test.
16890 * testsuite/libgomp.fortran/simd2.f90: New test.
16891 * testsuite/libgomp.fortran/simd3.f90: New test.
16892 * testsuite/libgomp.fortran/simd4.f90: New test.
16893 * testsuite/libgomp.fortran/taskgroup1.f90: New test.
16894
95782571
JJ
168952014-05-02 Jakub Jelinek <jakub@redhat.com>
16896
16897 * testsuite/libgomp.c/simd-10.c: New test.
16898 * testsuite/libgomp.c/simd-11.c: New test.
16899 * testsuite/libgomp.c/simd-12.c: New test.
16900 * testsuite/libgomp.c/simd-13.c: New test.
16901
f7468577
JJ
169022014-04-24 Jakub Jelinek <jakub@redhat.com>
16903
42056eac
JJ
16904 * testsuite/libgomp.c++/atomic-14.C: Allow seq_cst and
16905 atomic type clauses in any order and optional comma in between.
16906 * testsuite/libgomp.c++/atomic-15.C: Likewise.
16907 * testsuite/libgomp.c/atomic-17.c: Likewise.
16908
f7468577
JJ
16909 * testsuite/libgomp.c/simd-7.c: New test.
16910 * testsuite/libgomp.c/simd-8.c: New test.
16911 * testsuite/libgomp.c/simd-9.c: New test.
16912 * testsuite/libgomp.c/loop-16.c: New test.
16913
ab18f2f5
RH
169142014-04-02 Richard Henderson <rth@redhat.com>
16915
16916 * config/linux/futex.h (futex_wait): Get error value from errno.
16917 (futex_wake): Likewise.
16918
8bcc90b0
JJ
169192014-03-25 Jakub Jelinek <jakub@redhat.com>
16920
16921 PR c++/60331
16922 * testsuite/libgomp.c++/udr-11.C: New test.
16923 * testsuite/libgomp.c++/udr-12.C: New test.
16924 * testsuite/libgomp.c++/udr-13.C: New test.
16925 * testsuite/libgomp.c++/udr-14.C: New test.
16926 * testsuite/libgomp.c++/udr-15.C: New test.
16927 * testsuite/libgomp.c++/udr-16.C: New test.
16928 * testsuite/libgomp.c++/udr-17.C: New test.
16929 * testsuite/libgomp.c++/udr-18.C: New test.
16930 * testsuite/libgomp.c++/udr-19.C: New test.
16931
18d73c7f
RS
169322014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
16933
16934 Update copyright years
16935
f9030485
RS
169362014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
16937
16938 * hashtab.h: Use the standard form for the copyright notice.
16939
98db73df
TB
169402014-01-02 Tobias Burnus <burnus@net-b.de>
16941
16942 * libgomp.texi: Bump @copying's copyright year.
16943
ae246f7f
AT
169442013-12-17 Andreas Tobler <andreast@gcc.gnu.org>
16945
93d90219 16946 * testsuite/libgomp.c/affinity-1.c: Remove alloca.h include. Replace
ae246f7f
AT
16947 alloca () with __builtin_alloca ().
16948 * testsuite/libgomp.c/icv-2.c: Add FreeBSD coverage.
16949 * testsuite/libgomp.c/lock-3.c: Likewise.
16950 * testsuite/libgomp.c/pr48591.c: Likewise.
16951
fa00a5fe
JJ
169522013-12-17 Jakub Jelinek <jakub@redhat.com>
16953
16954 PR testsuite/59534
16955 * testsuite/libgomp.fortran/retval1.f90 (e5): Avoid non-shortcircuited
16956 comparisons.
16957
e9792e1d
JJ
169582013-12-16 Jakub Jelinek <jakub@redhat.com>
16959
16960 PR libgomp/58756
16961 * testsuite/libgomp.c/pr58756.c: New test.
16962
cab37c89
JJ
169632013-12-12 Jakub Jelinek <jakub@redhat.com>
16964
16965 PR libgomp/59467
16966 * testsuite/libgomp.fortran/crayptr2.f90: Add private (d) clause to
16967 !$omp parallel.
16968
de14871c
TS
169692013-11-07 Thomas Schwinge <thomas@codesourcery.com>
16970
1707a5de
TS
16971 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -fopenmp to
16972 ALWAYS_CFLAGS.
16973 * testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Add -fopenmp.
16974 * testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
16975 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
16976 * testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
16977 Likewise.
16978
70f05c43
TS
16979 * libgomp_g.h: Include <stddef.h> for size_t.
16980
de14871c
TS
16981 * libgomp.spec.in: Update comment about libgomp's dependencies.
16982 * configure.ac: Likewise.
16983 * configure: Regenerate.
16984
83fd6c5b
TB
169852013-10-16 Tobias Burnus <burnus@net-b.de>
16986
16987 * libgomp.texi: (Runtime Library Routines): Update references for
16988 OpenMP 4.0. Add omp_get_cancellation, omp_get_default_device,
16989 omp_get_num_devices, omp_get_num_teams, omp_get_proc_bind,
16990 omp_get_team_num, omp_is_initial_device, omp_set_default_device.
16991 (Environment Variables): Update references for OpenMP 4.0. Add
16992 OMP_CANCELLATION, OMP_DEFAULT_DEVICE, OMP_PLACES.
16993 Move OMP_DISPLAY_ENV and OMP_PROC_BIND up to be in alphabetical
16994 order.
16995
c8673881
JJ
169962013-10-14 Jakub Jelinek <jakub@redhat.com>
16997
16998 * env.c (parse_bind_var): Initialize value to avoid
16999 (false positive) warning.
17000
f89163fd
JJ
170012013-10-12 Jakub Jelinek <jakub@redhat.com>
17002
17003 PR libgomp/58691
17004 * config/linux/proc.c (gomp_cpuset_popcount): Add unused attribute
17005 to check variable.
17006 (gomp_init_num_threads): Move i variable declaration into
17007 #ifdef CPU_ALLOC_SIZE block.
17008 * config/linux/affinity.c (gomp_affinity_init_level): Test
17009 gomp_places_list_len == 0 rather than gomp_places_list == 0
17010 when checking for topology reading error.
17011 * team.c (gomp_team_start): Don't handle bind == omp_proc_bind_false.
17012 * env.c (parse_affinity): Add ignore argument, if true, don't populate
17013 gomp_places_list, only parse env var and always return false.
17014 (parse_places_var): Likewise. Don't check gomp_global_icv.bind_var.
17015 (initialize_env): Always parse OMP_PLACES and GOMP_CPU_AFFINITY env
17016 vars, default to OMP_PROC_BIND=true if OMP_PROC_BIND wasn't specified
17017 and either of these variables were parsed correctly into a places
17018 list.
17019
1d340638
TS
170202013-10-11 Thomas Schwinge <thomas@codesourcery.com>
17021 Jakub Jelinek <jakub@redhat.com>
17022
17023 * testsuite/libgomp.graphite/force-parallel-1.c: Expect 4 instead
17024 of 5 loopfn matches.
17025 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
17026 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
17027 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
17028 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
17029 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
17030 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
17031 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
17032 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
17033
71a81c21
TS
170342013-10-11 Thomas Schwinge <thomas@codesourcery.com>
17035
bd87f731
TS
17036 * Makefile.am (omp_lib.mod): Streamline rule.
17037 * Makefile.in: Regenerate.
17038
f5745bed
TS
17039 * libgomp.texi (Runtime Library Routines): C linkage, don't throw
17040 exceptions.
17041
b5512c66
TS
17042 * testsuite/libgomp.c/lib-1.c (main): Add missing error check.
17043 * testsuite/libgomp.fortran/lib1.f90: Likewise.
17044 * testsuite/libgomp.fortran/lib2.f: Likewise.
17045 * testsuite/libgomp.fortran/lib3.f: Likewise.
17046
451c19c4
TS
17047 * configure.ac: Typo fix.
17048 * configure: Regenerate.
17049
86a6016d
TS
17050 * testsuite/libgomp.fortran/openmp_version-1.f: New file.
17051 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
17052
71a81c21
TS
17053 * omp.h.in: Don't touch the user's namespace.
17054
acf0174b
JJ
170552013-10-11 Jakub Jelinek <jakub@redhat.com>
17056 Tobias Burnus <burnus@net-b.de>
17057 Richard Henderson <rth@redhat.com>
17058
17059 * target.c: New file.
17060 * Makefile.am (libgomp_la_SOURCES): Add target.c.
17061 * Makefile.in: Regenerated.
17062 * libgomp_g.h (GOMP_task): Add depend argument.
17063 (GOMP_barrier_cancel, GOMP_loop_end_cancel,
17064 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
17065 GOMP_target_end_data, GOMP_target_update, GOMP_teams,
17066 GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
17067 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
17068 GOMP_parallel, GOMP_cancel, GOMP_cancellation_point,
17069 GOMP_taskgroup_start, GOMP_taskgroup_end,
17070 GOMP_parallel_sections): New prototypes.
17071 * fortran.c (omp_is_initial_device): Add ialias_redirect.
17072 (omp_is_initial_device_): New function.
17073 (ULP, STR1, STR2, ialias_redirect): Removed.
17074 (omp_get_cancellation_, omp_get_proc_bind_, omp_set_default_device_,
17075 omp_set_default_device_8_, omp_get_default_device_,
17076 omp_get_num_devices_, omp_get_num_teams_, omp_get_team_num_): New
17077 functions.
17078 * libgomp.map (GOMP_barrier_cancel, GOMP_loop_end_cancel,
17079 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
17080 GOMP_target_end_data, GOMP_target_update, GOMP_teams): Export
17081 @@GOMP_4.0.
17082 (omp_is_initial_device, omp_is_initial_device_, omp_get_cancellation,
17083 omp_get_cancellation_, omp_get_proc_bind, omp_get_proc_bind_,
17084 omp_set_default_device, omp_set_default_device_,
17085 omp_set_default_device_8_, omp_get_default_device,
17086 omp_get_default_device_, omp_get_num_devices, omp_get_num_devices_,
17087 omp_get_num_teams, omp_get_num_teams_, omp_get_team_num,
17088 omp_get_team_num_): Export @@OMP_4.0.
17089 * team.c (struct gomp_thread_start_data): Add place field.
17090 (gomp_thread_start): Clear thr->thread_pool and
17091 thr->task before returning. Use gomp_team_barrier_wait_final
17092 instead of gomp_team_barrier_wait. Initialize thr->place.
17093 (gomp_new_team): Initialize work_shares_to_free, work_share_cancelled,
17094 team_cancelled and task_queued_count fields.
17095 (gomp_free_pool_helper): Clear thr->thread_pool and thr->task
17096 before calling pthread_exit.
17097 (gomp_free_thread): No longer static. Use
17098 gomp_managed_threads_lock instead of gomp_remaining_threads_lock.
17099 (gomp_team_start): Add flags argument. Set
17100 thr->thread_pool->threads_busy to nthreads immediately after creating
17101 new pool. Use gomp_managed_threads_lock instead of
17102 gomp_remaining_threads_lock. Handle OpenMP 4.0 affinity.
17103 (gomp_team_end): Use gomp_managed_threads_lock instead of
17104 gomp_remaining_threads_lock. Use gomp_team_barrier_wait_final instead
17105 of gomp_team_barrier_wait. If team->team_cancelled, call
93d90219 17106 gomp_fini_workshare on ws chain starting at team->work_shares_to_free
acf0174b
JJ
17107 rather than thr->ts.work_share.
17108 (initialize_team): Don't call gomp_sem_init here.
17109 * sections.c (GOMP_parallel_sections_start): Adjust gomp_team_start
17110 caller.
17111 (GOMP_parallel_sections, GOMP_sections_end_cancel): New functions.
17112 * env.c (gomp_global_icv): Add default_device_var, target_data and
17113 bind_var initializers.
17114 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
17115 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
17116 gomp_places_list_len): New variables.
17117 (parse_bind_var, parse_one_place, parse_places_var): New functions.
17118 (parse_affinity): Rewritten to construct OMP_PLACES list with unit
17119 sized places.
17120 (gomp_cancel_var): New global variable.
17121 (parse_int): New function.
17122 (handle_omp_display_env): New function.
17123 (initialize_env): Use it. Initialize default_device_var.
17124 Parse OMP_CANCELLATION env var. Use parse_bind_var to parse
17125 OMP_PROC_BIND instead of parse_boolean. Use parse_places_var for
17126 OMP_PLACES parsing. Don't call parse_affinity if OMP_PLACES has
17127 been successfully parsed (and call gomp_init_affinity in that case).
17128 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
17129 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
17130 omp_get_team_num, omp_is_initial_device): New functions.
17131 * libgomp.h: Include stdlib.h.
17132 (ialias_ulp, ialias_str1, ialias_str2, ialias_redirect, ialias_call):
17133 Define.
17134 (struct target_mem_desc): Forward declare.
17135 (struct gomp_task_icv): Add default_device_var, target_data, bind_var
17136 and thread_limit_var fields.
17137 (gomp_get_num_devices): New prototype.
17138 (gomp_cancel_var): New extern decl.
17139 (struct gomp_team): Add work_shares_to_free, work_share_cancelled,
17140 team_cancelled and task_queued_count fields. Add comments about
17141 task_{,queued_,running_}count.
17142 (gomp_cancel_kind): New enum.
17143 (gomp_work_share_end_cancel): New prototype.
17144 (struct gomp_task): Add next_taskgroup, prev_taskgroup, taskgroup,
17145 copy_ctors_done, dependers, depend_hash, depend_count, num_dependees
17146 and depend fields.
17147 (struct gomp_taskgroup): New type.
17148 (struct gomp_task_depend_entry,
17149 struct gomp_dependers_vec): New types.
17150 (gomp_finish_task): Free depend_hash if non-NULL.
17151 (struct gomp_team_state): Add place_partition_off
17152 and place_partition_len fields.
17153 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
17154 gomp_places_list_len): New extern decls.
17155 (struct gomp_thread): Add place field.
17156 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
17157 (gomp_init_thread_affinity): Add place argument.
17158 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
17159 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
17160 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
17161 gomp_affinity_init_level, gomp_affinity_print_place): New
17162 prototypes.
17163 (gomp_team_start): Add flags argument.
17164 (gomp_thread_limit_var, gomp_remaining_threads_count,
17165 gomp_remaining_threads_lock): Remove.
17166 (gomp_managed_threads_lock): New variable.
17167 (struct gomp_thread_pool): Add threads_busy field.
17168 (gomp_free_thread): New prototype.
17169 * task.c: Include hashtab.h.
17170 (hash_entry_type): New typedef.
17171 (htab_alloc, htab_free, htab_hash, htab_eq): New inlines.
17172 (gomp_init_task): Clear dependers, depend_hash, depend_count,
17173 copy_ctors_done and taskgroup fields.
17174 (GOMP_task): Add depend argument, handle depend clauses. If
17175 gomp_team_barrier_cancelled or if it's taskgroup has been
17176 cancelled, don't queue or start new tasks. Set copy_ctors_done
17177 field if needed. Initialize taskgroup field. If copy_ctors_done
17178 and already cancelled, don't discard the task. If taskgroup is
17179 non-NULL, enqueue the task into taskgroup queue. Increment
17180 num_children field in taskgroup. Increment task_queued_count.
17181 (gomp_task_run_pre, gomp_task_run_post_remove_parent,
17182 gomp_task_run_post_remove_taskgroup): New inline functions.
17183 (gomp_task_run_post_handle_depend_hash,
17184 gomp_task_run_post_handle_dependers,
17185 gomp_task_run_post_handle_depend): New functions.
17186 (GOMP_taskwait): Use them. If more than one new tasks
17187 have been queued, wake other threads if needed.
17188 (gomp_barrier_handle_tasks): Likewise. If
17189 gomp_team_barrier_cancelled, don't start any new tasks, just free
17190 all tasks.
17191 (GOMP_taskgroup_start, GOMP_taskgroup_end): New functions.
17192 * omp_lib.f90.in
17193 (omp_proc_bind_kind, omp_proc_bind_false,
17194 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
17195 omp_proc_bind_spread): New params.
17196 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
17197 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
17198 omp_get_team_num, omp_is_initial_device): New interfaces.
17199 (omp_get_dynamic, omp_get_nested, omp_in_parallel,
17200 omp_get_max_threads, omp_get_num_procs, omp_get_num_threads,
17201 omp_get_thread_num, omp_get_thread_limit, omp_set_max_active_levels,
17202 omp_get_max_active_levels, omp_get_level, omp_get_ancestor_thread_num,
17203 omp_get_team_size, omp_get_active_level, omp_in_final): Remove
17204 useless use omp_lib_kinds.
17205 * omp.h.in (omp_proc_bind_t): New typedef.
17206 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
17207 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
17208 omp_get_team_num, omp_is_initial_device): New prototypes.
17209 * loop.c (gomp_parallel_loop_start): Add flags argument, pass it
17210 through to gomp_team_start.
17211 (GOMP_parallel_loop_static_start, GOMP_parallel_loop_dynamic_start,
17212 GOMP_parallel_loop_guided_start, GOMP_parallel_loop_runtime_start):
17213 Adjust gomp_parallel_loop_start callers.
17214 (GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
17215 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
17216 GOMP_loop_end_cancel): New functions.
17217 (GOMP_parallel_end): Add ialias_redirect.
17218 * hashtab.h: New file.
17219 * libgomp.texi (Environment Variables): Minor cleanup,
17220 update section refs to OpenMP 4.0rc2.
17221 (OMP_DISPLAY_ENV, GOMP_SPINCOUNT): Document these
17222 environment variables.
17223 * work.c (gomp_work_share_end, gomp_work_share_end_nowait): Set
17224 team->work_shares_to_free to thr->ts.work_share before calling
17225 free_work_share.
17226 (gomp_work_share_end_cancel): New function.
17227 * config/linux/proc.c: Include errno.h.
17228 (gomp_get_cpuset_size, gomp_cpuset_size, gomp_cpusetp): New variables.
17229 (gomp_cpuset_popcount): Add cpusetsize argument, use it instead of
17230 sizeof (cpu_set_t) to determine number of iterations. Fix up check
17231 extern decl. Use CPU_COUNT_S if available, or CPU_COUNT if
17232 gomp_cpuset_size is sizeof (cpu_set_t).
17233 (gomp_init_num_threads): Initialize gomp_cpuset_size,
17234 gomp_get_cpuset_size and gomp_cpusetp here, use gomp_cpusetp instead
17235 of &cpuset and pass gomp_cpuset_size instead of sizeof (cpu_set_t)
17236 to pthread_getaffinity_np. Free and clear gomp_cpusetp if it didn't
17237 contain any logical CPUs.
17238 (get_num_procs): Don't call pthread_getaffinity_np if gomp_cpusetp
17239 is NULL. Use gomp_cpusetp instead of &cpuset and pass
17240 gomp_get_cpuset_size instead of sizeof (cpu_set_t) to
17241 pthread_getaffinity_np. Check gomp_places_list instead of
17242 gomp_cpu_affinity. Adjust gomp_cpuset_popcount caller.
17243 * config/linux/bar.c (gomp_barrier_wait_end,
17244 gomp_barrier_wait_last): Use BAR_* defines.
17245 (gomp_team_barrier_wait_end): Likewise. Clear BAR_CANCELLED
17246 from state where needed. Set work_share_cancelled to 0 on last
17247 thread.
17248 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel_end,
17249 gomp_team_barrier_wait_cancel, gomp_team_barrier_cancel): New
17250 functions.
17251 * config/linux/proc.h (gomp_cpuset_popcount): Add attribute_hidden.
17252 Add cpusetsize argument.
17253 (gomp_cpuset_size, gomp_cpusetp): Declare.
17254 * config/linux/affinity.c: Include errno.h, stdio.h and string.h.
17255 (affinity_counter): Remove.
17256 (CPU_ISSET_S, CPU_ZERO_S, CPU_SET_S, CPU_CLR_S): Define
17257 if CPU_ALLOC_SIZE isn't defined.
17258 (gomp_init_affinity): Rewritten, if gomp_places_list is NULL, try
17259 silently create OMP_PLACES=threads, if it is non-NULL afterwards,
17260 bind current thread to the first place.
17261 (gomp_init_thread_affinity): Rewritten. Add place argument, just
17262 pthread_setaffinity_np to gomp_places_list[place].
17263 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
17264 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
17265 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
17266 gomp_affinity_init_level, gomp_affinity_print_place): New functions.
17267 * config/linux/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
17268 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
17269 (gomp_barrier_t): Add awaited_final field.
17270 (gomp_barrier_init): Initialize awaited_final field.
17271 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel,
17272 gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): New
17273 prototypes.
17274 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit. Use BAR_*
17275 defines.
17276 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final_start,
17277 gomp_team_barrier_cancelled): New inline functions.
17278 (gomp_barrier_last_thread,
17279 gomp_team_barrier_set_task_pending,
17280 gomp_team_barrier_clear_task_pending,
17281 gomp_team_barrier_set_waiting_for_tasks,
17282 gomp_team_barrier_waiting_for_tasks,
17283 gomp_team_barrier_done): Use BAR_* defines.
17284 * config/posix/bar.c (gomp_barrier_init): Clear cancellable field.
17285 (gomp_barrier_wait_end): Use BAR_* defines.
17286 (gomp_team_barrier_wait_end): Clear BAR_CANCELLED from state.
17287 Set work_share_cancelled to 0 on last thread, use __atomic_load_n.
17288 Use BAR_* defines.
17289 (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_wait_cancel,
17290 gomp_team_barrier_cancel): New functions.
17291 * config/posix/affinity.c (gomp_init_thread_affinity): Add place
17292 argument.
17293 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
17294 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
17295 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
17296 gomp_affinity_init_level, gomp_affinity_print_place): New stubs.
17297 * config/posix/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
17298 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
17299 (gomp_barrier_t): Add cancellable field.
17300 (gomp_team_barrier_wait_cancel, gomp_team_barrier_wait_cancel_end,
17301 gomp_team_barrier_cancel): New prototypes.
17302 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit.
17303 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final,
17304 gomp_team_barrier_cancelled): New inline functions.
17305 (gomp_barrier_wait_start, gomp_barrier_last_thread,
17306 gomp_team_barrier_set_task_pending,
17307 gomp_team_barrier_clear_task_pending,
17308 gomp_team_barrier_set_waiting_for_tasks,
17309 gomp_team_barrier_waiting_for_tasks,
17310 gomp_team_barrier_done): Use BAR_* defines.
17311 * barrier.c (GOMP_barrier_cancel): New function.
17312 * omp_lib.h.in (omp_proc_bind_kind, omp_proc_bind_false,
17313 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
17314 omp_proc_bind_spread): New params.
17315 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
17316 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
17317 omp_get_team_num, omp_is_initial_device): New externals.
17318 * parallel.c (GOMP_parallel, GOMP_cancel, GOMP_cancellation_point):
17319 New functions.
17320 (gomp_resolve_num_threads): Adjust for thread_limit now being in
17321 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
17322 infinity. If not nested, just return minimum of max_num_threads
17323 and icv->thread_limit_var and if thr->thread_pool, set threads_busy
17324 to the returned value. Otherwise, don't update atomically
17325 gomp_remaining_threads_count, but instead thr->thread_pool->threads_busy.
17326 (GOMP_parallel_end): Adjust for thread_limit now being in
17327 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
17328 infinity. Adjust threads_busy in the pool rather than
17329 gomp_remaining_threads_count. Remember team->nthreads and call
17330 gomp_team_end before adjusting threads_busy, if not nested
17331 afterwards, just set it to 1 non-atomically. Add ialias.
17332 (GOMP_parallel_start): Adjust gomp_team_start caller.
17333 * testsuite/libgomp.c/atomic-14.c: Add parens to make it valid.
17334 * testsuite/libgomp.c/affinity-1.c: New test.
17335 * testsuite/libgomp.c/atomic-15.c: New test.
17336 * testsuite/libgomp.c/atomic-16.c: New test.
17337 * testsuite/libgomp.c/atomic-17.c: New test.
17338 * testsuite/libgomp.c/cancel-for-1.c: New test.
17339 * testsuite/libgomp.c/cancel-for-2.c: New test.
17340 * testsuite/libgomp.c/cancel-parallel-1.c: New test.
17341 * testsuite/libgomp.c/cancel-parallel-2.c: New test.
17342 * testsuite/libgomp.c/cancel-parallel-3.c: New test.
17343 * testsuite/libgomp.c/cancel-sections-1.c: New test.
17344 * testsuite/libgomp.c/cancel-taskgroup-1.c: New test.
17345 * testsuite/libgomp.c/cancel-taskgroup-2.c: New test.
17346 * testsuite/libgomp.c/depend-1.c: New test.
17347 * testsuite/libgomp.c/depend-2.c: New test.
17348 * testsuite/libgomp.c/depend-3.c: New test.
17349 * testsuite/libgomp.c/depend-4.c: New test.
17350 * testsuite/libgomp.c/for-1.c: New test.
17351 * testsuite/libgomp.c/for-1.h: New file.
17352 * testsuite/libgomp.c/for-2.c: New test.
17353 * testsuite/libgomp.c/for-2.h: New file.
17354 * testsuite/libgomp.c/for-3.c: New test.
17355 * testsuite/libgomp.c/pr58392.c: New test.
17356 * testsuite/libgomp.c/simd-1.c: New test.
17357 * testsuite/libgomp.c/simd-2.c: New test.
17358 * testsuite/libgomp.c/simd-3.c: New test.
17359 * testsuite/libgomp.c/simd-4.c: New test.
17360 * testsuite/libgomp.c/simd-5.c: New test.
17361 * testsuite/libgomp.c/simd-6.c: New test.
17362 * testsuite/libgomp.c/target-1.c: New test.
17363 * testsuite/libgomp.c/target-2.c: New test.
17364 * testsuite/libgomp.c/target-3.c: New test.
17365 * testsuite/libgomp.c/target-4.c: New test.
17366 * testsuite/libgomp.c/target-5.c: New test.
17367 * testsuite/libgomp.c/target-6.c: New test.
17368 * testsuite/libgomp.c/target-7.c: New test.
17369 * testsuite/libgomp.c/taskgroup-1.c: New test.
17370 * testsuite/libgomp.c/thread-limit-1.c: New test.
17371 * testsuite/libgomp.c/thread-limit-2.c: New test.
17372 * testsuite/libgomp.c/thread-limit-3.c: New test.
17373 * testsuite/libgomp.c/udr-1.c: New test.
17374 * testsuite/libgomp.c/udr-2.c: New test.
17375 * testsuite/libgomp.c/udr-3.c: New test.
17376 * testsuite/libgomp.c++/affinity-1.C: New test.
17377 * testsuite/libgomp.c++/atomic-10.C: New test.
17378 * testsuite/libgomp.c++/atomic-11.C: New test.
17379 * testsuite/libgomp.c++/atomic-12.C: New test.
17380 * testsuite/libgomp.c++/atomic-13.C: New test.
17381 * testsuite/libgomp.c++/atomic-14.C: New test.
17382 * testsuite/libgomp.c++/atomic-15.C: New test.
17383 * testsuite/libgomp.c++/cancel-for-1.C: New test.
17384 * testsuite/libgomp.c++/cancel-for-2.C: New test.
17385 * testsuite/libgomp.c++/cancel-parallel-1.C: New test.
17386 * testsuite/libgomp.c++/cancel-parallel-2.C: New test.
17387 * testsuite/libgomp.c++/cancel-parallel-3.C: New test.
17388 * testsuite/libgomp.c++/cancel-sections-1.C: New test.
17389 * testsuite/libgomp.c++/cancel-taskgroup-1.C: New test.
17390 * testsuite/libgomp.c++/cancel-taskgroup-2.C: New test.
17391 * testsuite/libgomp.c++/cancel-taskgroup-3.C: New test.
17392 * testsuite/libgomp.c++/cancel-test.h: New file.
17393 * testsuite/libgomp.c++/for-9.C: New test.
17394 * testsuite/libgomp.c++/for-10.C: New test.
17395 * testsuite/libgomp.c++/for-11.C: New test.
17396 * testsuite/libgomp.c++/simd-1.C: New test.
17397 * testsuite/libgomp.c++/simd-2.C: New test.
17398 * testsuite/libgomp.c++/simd-3.C: New test.
17399 * testsuite/libgomp.c++/simd-4.C: New test.
17400 * testsuite/libgomp.c++/simd-5.C: New test.
17401 * testsuite/libgomp.c++/simd-6.C: New test.
17402 * testsuite/libgomp.c++/simd-7.C: New test.
17403 * testsuite/libgomp.c++/simd-8.C: New test.
17404 * testsuite/libgomp.c++/target-1.C: New test.
17405 * testsuite/libgomp.c++/target-2.C: New test.
17406 * testsuite/libgomp.c++/target-2-aux.cc: New file.
17407 * testsuite/libgomp.c++/target-3.C: New test.
17408 * testsuite/libgomp.c++/taskgroup-1.C: New test.
17409 * testsuite/libgomp.c++/udr-1.C: New test.
17410 * testsuite/libgomp.c++/udr-2.C: New test.
17411 * testsuite/libgomp.c++/udr-3.C: New test.
17412 * testsuite/libgomp.c++/udr-4.C: New test.
17413 * testsuite/libgomp.c++/udr-5.C: New test.
17414 * testsuite/libgomp.c++/udr-6.C: New test.
17415 * testsuite/libgomp.c++/udr-7.C: New test.
17416 * testsuite/libgomp.c++/udr-8.C: New test.
17417 * testsuite/libgomp.c++/udr-9.C: New test.
17418
bd599dea
JJ
174192013-09-20 Jakub Jelinek <jakub@redhat.com>
17420
17421 PR testsuite/57605
17422 * testsuite/lib/libgomp.exp: Add -fdiagnostics-color=never to
17423 ALWAYS_CFLAGS.
17424
3cbe17f7
AM
174252013-09-20 Alan Modra <amodra@gmail.com>
17426
17427 * configure: Regenerate.
17428
4befd127
JJ
174292013-09-19 Jakub Jelinek <jakub@redhat.com>
17430
17431 * testsuite/libgomp.c/sections-2.c: New test.
17432
946c8f7b
MS
174332013-06-28 Marcus Shawcroft <marcus.shawcroft@arm.com>
17434
17435 * testsuite/libgomp.fortran/strassen.f90:
17436 Add dg-skip-if aarch64_tiny.
17437
1ef3b58e
IS
174382013-06-20 Iain Sandoe <iain@codesourcery.com>
17439 Cesar Philippidis <cesar@codesourcery.com>
17440
17441 * testsuite/lib/libgomp.exp: Reorder lib loads into dependency order.
17442 Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
17443 * testsuite/libgomp.c/c.exp: load_gcc_lib gcc-dg.exp.
17444 * testsuite/libgomp.fortran/fortran.exp: Likewise.
17445 * testsuite/libgomp.graphite/graphite.exp: Likewise.
17446 * testsuite/libgomp.c++/c++.exp: load_gcc_lib gcc-dg.exp.
17447 Use dg-runtest rather than gfortran-dg-runtest.
17448
9275f73a
TS
174492013-06-10 Thomas Schwinge <thomas@codesourcery.com>
17450
17451 * testsuite/libgomp.c/icv-2.c: Extend current handling of
17452 Linux-based x86 systems to cover all GNU systems.
17453 * testsuite/libgomp.c/lock-3.c: Likewise.
17454 * testsuite/libgomp.c/pr48591.c: Likewise.
17455
492992e2
TS
174562013-06-06 Thomas Schwinge <thomas@codesourcery.com>
17457
48df3acb
TS
17458 * configure.tgt (XCFLAGS): Add -ftls-model=initial-exec for
17459 GNU/Hurd, as done for Linux-based systems.
17460
492992e2
TS
17461 * config/posix/ptrlock.h: Fix comment.
17462
4fed6b25
TB
174632013-05-27 Tobias Burnus <burnus@net-b.de>
17464
17465 PR fortran/57423
17466 * libgomp.texi (omp_set_dynamic, omp_set_nested, omp_set_nested,
17467 omp_set_num_threads, omp_init_lock, omp_set_lock, omp_test_lock,
17468 omp_unset_lock, omp_destroy_lock, omp_init_nest_lock,
17469 omp_set_nest_lock, omp_test_nest_lock, omp_unset_nest_lock,
17470 omp_destroy_nest_lock): Correct arguments to match the one in
17471 the OpenMP spec.
17472 * omp_lib.f90.in (omp_init_lock, omp_init_nest_lock, omp_destroy_lock
17473 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock, omp_unset_lock,
17474 omp_unset_nest_lock, omp_set_dynamic, omp_set_nested,
17475 omp_set_num_threads, omp_test_lock, omp_test_nest_lock): Ditto.
17476
5a0f4dd3
JJ
174772013-05-16 Jakub Jelinek <jakub@redhat.com>
17478
17479 * testsuite/libgomp.c/loop-13.c: New test.
17480 * testsuite/libgomp.c/loop-14.c: New test.
17481 * testsuite/libgomp.c/loop-15.c: New test.
17482 * testsuite/libgomp.c++/loop-13.C: New test.
17483 * testsuite/libgomp.c++/loop-14.C: New test.
17484 * testsuite/libgomp.c++/loop-15.C: New test.
17485
6d840d99
JJ
174862013-02-06 Jakub Jelinek <jakub@redhat.com>
17487
17488 PR middle-end/56217
17489 * testsuite/libgomp.c++/pr56217.C: New test.
17490
bed8d8a6
AM
174912013-02-01 Alan Modra <amodra@gmail.com>
17492
17493 * task.c (GOMP_task, GOMP_taskwait): Comment.
17494
3b35cd04
DV
174952013-01-31 Dmitry Vyukov <dvyukov@gcc.gnu.org>
17496 Joost VandeVondele <Joost.VandeVondele@mat.ethz.ch>
17497
17498 PR libgomp/55561
17499 * config/linux/wait.h (do_spin): Use atomic load for addr.
17500 * config/linux/ptrlock.c (gomp_ptrlock_get_slow): Use atomic
17501 for intptr and ptrlock.
17502 * config/linux/ptrlock.h (gomp_ptrlock_get): Use atomic load
17503 for ptrlock.
17504
9a647288
AM
175052013-01-22 Alan Modra <amodra@gmail.com>
17506
17507 PR libgomp/51376
17508 PR libgomp/56073
17509 * task.c (GOMP_task): Revert 2011-12-09 change.
17510 (GOMP_taskwait): Likewise. Instead use atomic load with acquire
17511 barrier to read task->children..
17512 (gomp_barrier_handle_tasks): ..and matching atomic store with
17513 release barrier here when setting parent->children to NULL.
17514
f34dea03
JJ
175152013-01-16 Jakub Jelinek <jakub@redhat.com>
17516 Tobias Burnus <burnus@net-b.de>
17517
17518 PR driver/55884
17519 * testsuite/libgomp.fortran/fortran.exp: Use
17520 -fintrinsic-modules-path= instead of
17521 -fintrinsic-modules-path.
17522
8129609c
RS
175232013-01-14 Richard Sandiford <rdsandiford@googlemail.com>
17524
17525 Update copyright years.
17526
aa86bf1e
TB
175272012-12-19 Tobias Burnus <burnus@net-b.de>
17528
17529 * testsuite/libgomp.fortran/fortran.exp: Set
17530 -fintrinsic-modules-path.
17531
2865ea66
TB
175322012-12-19 Tobias Burnus <burnus@net-b.de>
17533
17534 * testsuite/libgomp.fortran/use_intrinsic_1.f90: New; moved
17535 from gcc/testsuite/gfortran.dg/gomp/use_intrinsic_1.f90.
17536
4c5ba8d0
JJ
175372012-11-21 Jakub Jelinek <jakub@redhat.com>
17538
17539 PR libgomp/55411
17540 * team.c (gomp_free_thread): Decrease gomp_managed_threads
17541 if pool had any threads_used.
17542
e9f958c2
JH
175432012-11-07 Jack Howarth <howarth@bromo.med.uc.edu>
17544
17545 * testsuite/libgomp.c++/pr24455.C: Use
17546 -Wl,-undefined,dynamic_lookup on darwin.
17547
a57d75dc
DE
175482012-11-07 David Edelsohn <dje.gcc@gmail.com>
17549
17550 * testsuite/libgomp.c++/pr24455.C: Use -Wl,-G on AIX.
17551
c6c08485
DH
175522012-10-24 Dominique d'Humieres <dominiq@lps.ens.fr>
17553
17554 * testsuite/libgomp.graphite/force-parallel-6.c: Adjust the loops.
17555
c1f37c00
IB
175562012-10-23 Ian Bolton <ian.bolton@arm.com>
17557 Jim MacArthur <jim.macarthur@arm.com>
17558 Marcus Shawcroft <marcus.shawcroft@arm.com>
17559 Nigel Stephens <nigel.stephens@arm.com>
17560 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
17561 Richard Earnshaw <rearnsha@arm.com>
17562 Sofiane Naci <sofiane.naci@arm.com>
17563 Stephen Thomas <stephen.thomas@arm.com>
17564 Tejas Belagod <tejas.belagod@arm.com>
17565 Yufeng Zhang <yufeng.zhang@arm.com>
17566
17567 * configure.tgt: Add AArch64.
17568
7c424acd
JM
175692012-10-04 Jason Merrill <jason@redhat.com>
17570
17571 * testsuite/libgomp.c++/tls-init1.C: New.
17572
6608378b
DE
175732012-09-14 David Edelsohn <dje.gcc@gmail.com>
17574
17575 * configure: Regenerated.
17576
c24dbebb
CLT
175772012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
17578
17579 * config/linux/mips/futex.h (sys_futex0): Change to static
17580 function with noinline, nomips16 attributes under MIPS16. Adjust
17581 asm statement to place 'li v0,SYS_futex' immediately before
17582 syscall insn.
17583
3d3949df
SL
175842012-07-04 Sandra Loosemore <sandra@codesourcery.com>
17585
17586 * libgomp.texi (Library Index): Renamed from "Index" to prevent
17587 conflict with index.html on case-insensitive file systems.
17588
68a12ef3
UB
175892012-07-03 Uros Bizjak <ubizjak@gmail.com>
17590
17591 * config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
17592 * testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.
17593
33ad93b9 175942012-07-02 Richard Guenther <rguenther@suse.de>
68a12ef3
UB
17595 Michael Matz <matz@suse.de>
17596 Tobias Grosser <tobias@grosser.es>
17597 Sebastian Pop <sebpop@gmail.com>
33ad93b9
RG
17598
17599 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
17600 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
17601 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
17602 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
17603
e6fdc918
AS
176042012-06-28 Andreas Schwab <schwab@linux-m68k.org>
17605
17606 * libgomp.texi: Include gpl_v3.texi instead of gpl.texi.
17607
62e0a1ed
RG
176082012-06-22 Richard Guenther <rguenther@suse.de>
17609
17610 Merge from graphite branch
17611 2012-01-13 Tobias Grosser <tobias@grosser.es>
17612
17613 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
17614 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
17615
26127932
JJ
176162012-06-07 Jakub Jelinek <jakub@redhat.com>
17617
17618 PR middle-end/53580
17619 * testsuite/libgomp.c/pr26943-2.c: Remove #pragma omp barrier,
17620 use GOMP_barrier () call instead.
17621 * testsuite/libgomp.c/pr26943-3.c: Likewise.
17622 * testsuite/libgomp.c/pr26943-4.c: Likewise.
17623 * testsuite/libgomp.fortran/vla4.f90: Remove !$omp barrier,
17624 call GOMP_barrier instead.
17625 * testsuite/libgomp.fortran/vla5.f90: Likewise.
17626
43fa5db5
JJ
176272012-06-06 Jakub Jelinek <jakub@redhat.com>
17628
17629 PR libgomp/52993
17630 * config/linux/lock.c (gomp_init_nest_lock_25): Fix up last
17631 argument to memset call.
17632
e6d5f8c9
L
176332012-05-16 H.J. Lu <hongjiu.lu@intel.com>
17634
17635 * configure: Regenerated.
17636
559d990c
MLI
176372012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
17638
17639 * testsuite/lib/libgomp.exp: Add -fno-diagnostics-show-caret.
17640
b9c23a61
L
176412012-03-31 H.J. Lu <hongjiu.lu@intel.com>
17642
17643 PR bootstrap/52812
17644 * configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.
17645
c140ddf3
JJ
176462012-03-22 Jakub Jelinek <jakub@redhat.com>
17647
17648 PR middle-end/52547
17649 * testsuite/libgomp.c/pr52547.c: New test.
17650
6a26a74d
BRF
176512012-03-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
17652
17653 * testsuite/lib/libgomp.exp: load fortran-modules.exp
17654
b24513a1
RO
176552012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17656
17657 * configure.tgt (mips-sgi-irix6*): Remove.
17658
5c30094f
RO
176592012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17660
17661 * configure.tgt (alpha*-dec-osf*): Remove.
17662
17663 * config/osf/sem.h: Remove.
17664 * config/posix/lock.c (_XOPEN_SOURCE): Define unconditionally.
17665
a339c9d6
EB
176662012-02-29 Eric Botcazou <ebotcazou@adacore.com>
17667
17668 * config/linux/sparc/futex.h (cpu_relax): Read from CC register.
17669
cc2de92d
RO
176702012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17671
17672 PR libstdc++/52188
17673 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Remove symvers_renaming.
17674 Remove ENABLE_SYMVERS_SOL2.
17675 * configure: Regenerate.
17676 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB] (comma): New variable.
17677 (PREPROCESS): New variable.
17678 (libgomp.ver): New target.
17679 [LIBGOMP_BUILD_VERSIONED_SHLIB &&
17680 LIBGOMP_BUILD_VERSIONED_SHLIB_GNU]: Remove
17681 LIBGOMP_BUILD_VERSIONED_SHLIB_SOL2 handling.
17682 Use libgomp.ver.
17683 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Use libgomp.ver, libgomp.ver-sun.
17684 * Makefile.in: Regenerate.
17685
dd552284
WL
176862012-02-14 Walter Lee <walt@tilera.com>
17687
17688 * configure.tgt: Handle tilegx and tilepro.
17689 * config/linux/tile/futex.h: New file.
17690
31432e21
RG
176912012-02-08 Richard Guenther <rguenther@suse.de>
17692
17693 PR tree-optimization/46886
17694 * testsuite/libgomp.c/pr46886.c: New testcase.
17695
b9264b5f
MK
176962012-01-25 Matthias Klose <doko@ubuntu.com>
17697
17698 * config/linux/arm: Remove empty directory.
17699 * configure.tgt (config_path): Remove linux-arm for arm*-*-linux*.
17700
fbf7be80
AM
177012011-12-09 Alan Modra <amodra@gmail.com>
17702
17703 PR libgomp/51376
17704 * task.c (GOMP_taskwait): Don't access task->children outside of
17705 task_lock mutex region.
17706 (GOMP_task): Likewise.
17707
5de62d00
JJ
177082011-12-06 Jakub Jelinek <jakub@redhat.com>
17709
17710 PR libgomp/51132
17711 * testsuite/libgomp.graphite/force-parallel-1.c: Move large arrays
17712 to file scope.
17713 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
17714 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
17715 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
17716 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
17717 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
17718
45608a43
AM
177192011-12-02 Alan Modra <amodra@gmail.com>
17720
17721 * config/linux/affinity.c: Use atomic rather than sync builtin.
17722 * config/linux/lock.c: Likewise.
17723 * config/linux/ptrlock.h: Likewise.
17724 * config/linux/ptrlock.c: Likewise.
17725 * config/linux/ptrlock.h (gomp_ptrlock_set): Always write here..
17726 * config/linux/ptrlock.c (gomp_ptrlock_set_slow): ..not here.
17727 * config/linux/futex.h (atomic_write_barrier): Delete unused function.
17728 * config/linux/alpha/futex.h (atomic_write_barrier): Likewise.
17729 * config/linux/ia64/futex.h (atomic_write_barrier): Likewise.
17730 * config/linux/mips/futex.h (atomic_write_barrier): Likewise.
17731 * config/linux/powerpc/futex.h (atomic_write_barrier): Likewise.
17732 * config/linux/s390/futex.h (atomic_write_barrier): Likewise.
17733 * config/linux/sparc/futex.h (atomic_write_barrier): Likewise.
17734 * config/linux/x86/futex.h (atomic_write_barrier): Likewise.
17735
ab6dd406
AM
177362011-11-30 Alan Modra <amodra@gmail.com>
17737
17738 PR libgomp/51298
17739 * config/linux/bar.h: Use atomic rather than sync builtins.
17740 * config/linux/bar.c: Likewise. Add missing acquire
17741 synchronisation on generation field.
17742 * task.c (gomp_barrier_handle_tasks): Regain lock so as to not
17743 double unlock.
17744
b40c885f
AM
177452011-11-30 Alan Modra <amodra@gmail.com>
17746
17747 * ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
17748 * critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence.
17749 * config/linux/mutex.h: Use atomic rather than sync builtins.
17750 * config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state.
17751 * config/linux/omp-lock.h: Comment fix.
17752 * config/linux/arm/mutex.h: Delete.
17753 * config/linux/powerpc/mutex.h: Delete.
17754 * config/linux/ia64/mutex.h: Delete.
17755 * config/linux/mips/mutex.h: Delete.
17756
3e348fcc
AM
177572011-11-30 Alan Modra <amodra@gmail.com>
17758
17759 PR libgomp/51249
17760 * config/linux/sem.h: Rewrite.
17761 * config/linux/sem.c: Rewrite.
17762
cef86eb2
RH
177632011-11-28 Richard Henderson <rth@redhat.com>
17764
17765 * libgomp.h (enum memmodel): New.
17766
c6084f68
AT
177672011-11-21 Andreas Tobler <andreast@fgznet.ch>
17768
17769 * configure: Regenerate.
17770
06fe026c
MK
177712011-10-10 Matthias Klose <doko@ubuntu.com>
17772
17773 * config/posix95: Remove empty directory.
17774
a6c975bd
JJ
177752011-08-26 Jakub Jelinek <jakub@redhat.com>
17776
17777 * testsuite/libgomp.fortran/threadprivate4.f90: New test.
17778
c26dffff
JJ
177792011-08-19 Jakub Jelinek <jakub@redhat.com>
17780
17781 PR fortran/49792
17782 * testsuite/libgomp.fortran/pr49792-1.f90: New test.
17783 * testsuite/libgomp.fortran/pr49792-2.f90: New test.
17784
ddaad3c8
RO
177852011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17786
17787 * config/posix95/lock.c, posix95/omp-lock.h: Remove.
17788
98d03683
RO
177892011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17790
17791 PR libgomp/49965
17792 * testsuite/libgomp.c++/task-8.C: Replaced err by errval.
17793
e0b23d9f
UB
177942011-08-03 Uros Bizjak <ubizjak@gmail.com>
17795
17796 * config/linux/proc.h: New.
17797 * config/linux/proc.c: Include "proc.h". Do not include <sched.h>.
17798 (gomp_cpuset_popcount): Rename from cpuset_popcount. No more static.
17799 (gomp_init_num_threads): Update call to cpuset_popcount.
17800 (get_num_procs): Ditto.
17801 * config/linux/affinity.c (gomp_init_affinity): Call
17802 gomp_cpuset_popcount.
17803
20906c66
JJ
178042011-08-02 Jakub Jelinek <jakub@redhat.com>
17805
17806 PR fortran/42041
17807 PR fortran/46752
17808 * omp.h.in (omp_in_final): New prototype.
17809 * omp_lib.f90.in (omp_in_final): New interface.
17810 (omp_integer_kind, omp_logical_kind): Remove
17811 and replace all its uses in the module with 4.
17812 (openmp_version): Change to 201107.
17813 * omp_lib.h.in (omp_sched_static, omp_sched_dynamic,
17814 omp_sched_guided, omp_sched_auto): Use omp_sched_kind
17815 kind for the parameters.
17816 (omp_in_final): New external.
17817 (openmp_version): Change to 201107.
17818 * task.c (omp_in_final): New function.
17819 (gomp_init_task): Initialize final_task.
17820 (GOMP_task): Remove unused attribute from flags. Handle final
17821 tasks.
17822 (GOMP_taskyield): New function.
17823 (omp_in_final): Return true if if (false) or final (true) task
17824 or descendant of final (true).
17825 * fortran.c (omp_in_final_): New function.
17826 * libgomp.map (OMP_3.1): Export omp_in_final and omp_in_final_.
17827 (GOMP_3.0): Export GOMP_taskyield.
17828 * env.c (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New
17829 variables.
17830 (parse_unsigned_long_list): New function.
17831 (initialize_env): Use it for OMP_NUM_THREADS. Call parse_boolean
17832 with "OMP_PROC_BIND". If OMP_PROC_BIND=true, call gomp_init_affinity
17833 even if parse_affinity returned false.
17834 * config/linux/affinity.c (gomp_init_affinity): Handle
17835 gomp_cpu_affinity_len == 0.
17836 * libgomp_g.h (GOMP_taskyield): New prototype.
17837 * libgomp.h (struct gomp_task): Add final_task field.
17838 (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New externs.
17839 * team.c (gomp_team_start): Override new task's nthreads_var icv
17840 if list form OMP_NUM_THREADS has been used and it has value for
17841 the new nesting level.
17842
17843 * testsuite/libgomp.c/atomic-11.c: New test.
17844 * testsuite/libgomp.c/atomic-12.c: New test.
17845 * testsuite/libgomp.c/atomic-13.c: New test.
17846 * testsuite/libgomp.c/atomic-14.c: New test.
17847 * testsuite/libgomp.c/reduction-6.c: New test.
17848 * testsuite/libgomp.c/task-5.c: New test.
17849 * testsuite/libgomp.c++/atomic-2.C: New test.
17850 * testsuite/libgomp.c++/atomic-3.C: New test.
17851 * testsuite/libgomp.c++/atomic-4.C: New test.
17852 * testsuite/libgomp.c++/atomic-5.C: New test.
17853 * testsuite/libgomp.c++/atomic-6.C: New test.
17854 * testsuite/libgomp.c++/atomic-7.C: New test.
17855 * testsuite/libgomp.c++/atomic-8.C: New test.
17856 * testsuite/libgomp.c++/atomic-9.C: New test.
17857 * testsuite/libgomp.c++/task-8.C: New test.
17858 * testsuite/libgomp.c++/reduction-4.C: New test.
17859 * testsuite/libgomp.fortran/allocatable7.f90: New test.
17860 * testsuite/libgomp.fortran/allocatable8.f90: New test.
17861 * testsuite/libgomp.fortran/crayptr3.f90: New test.
17862 * testsuite/libgomp.fortran/omp_atomic3.f90: New test.
17863 * testsuite/libgomp.fortran/omp_atomic4.f90: New test.
17864 * testsuite/libgomp.fortran/pointer1.f90: New test.
17865 * testsuite/libgomp.fortran/pointer2.f90: New test.
17866 * testsuite/libgomp.fortran/task4.f90: New test.
17867
178682011-08-02 Tobias Burnus <burnus@net-b.de>
17869
17870 * libgomp.texi: Update OpenMP spec references to 3.1.
17871 (omp_in_final,OMP_PROC_BIND): New sections.
17872 (OMP_NUM_THREADS): Document that the value can be now a list.
17873 (GOMP_STACKSIZE,GOMP_CPU_AFFINITY): Update @ref.
17874
c01ecafc
L
178752011-08-02 H.J. Lu <hongjiu.lu@intel.com>
17876
17877 * config/linux/x86/futex.h: Check __x86_64__ instead of
17878 __LP64__.
17879
25142650
JJ
178802011-07-29 Jakub Jelinek <jakub@redhat.com>
17881
17882 PR middle-end/49897
17883 PR middle-end/49898
17884 * testsuite/libgomp.c/pr49897-1.c: New test.
17885 * testsuite/libgomp.c/pr49897-2.c: New test.
17886 * testsuite/libgomp.c/pr49898-1.c: New test.
17887 * testsuite/libgomp.c/pr49898-2.c: New test.
17888
f53d712f
L
178892011-07-28 H.J. Lu <hongjiu.lu@intel.com>
17890
17891 * testsuite/lib/libgomp.exp (libgomp_init): Add -march=i486
17892 for ia32 instead of ilp32.
17893
17894 * testsuite/libgomp.c/atomic-1.c: Require ia32 instead of ilp32.
17895 * testsuite/libgomp.c/atomic-6.c: Likewise.
17896
3689198d
SP
178972011-07-23 Sebastian Pop <sebastian.pop@amd.com>
17898
17899 * testsuite/libgomp.graphite/force-parallel-1.c: Un-xfail.
17900 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust pattern.
17901
1a79cb73
RO
179022011-07-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17903
17904 PR libgomp/45351
17905 * config/osf/sem.h: New file.
17906 * configure.tgt (alpha*-dec-osf*): Prepend osf to config_path.
17907
c1f51484
RO
179082011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17909
17910 PR target/49541
17911 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -lgomp to
17912 ldflags.
17913
bfee0724
JJ
179142011-07-15 Jakub Jelinek <jakub@redhat.com>
17915
17916 * config/linux/wait.h (do_spin): New inline, largely copied
17917 from do_wait, just don't do futex_wait here, instead return true if
17918 it should be done.
17919 (do_wait): Implement using do_spin.
17920 * config/linux/mutex.h (gomp_mutex_lock_slow): Add an int argument
17921 to prototype.
17922 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
17923 __sync_bool_compare_and_swap, pass the oldval to
17924 gomp_mutex_lock_slow.
17925 * config/linux/mutex.c (gomp_mutex_lock_slow): Add oldval argument.
17926 If all mutex contenders are just spinning and not sleeping, don't
17927 change state to 2 unnecessarily. Optimize the loop when state has
17928 already become 2 to use just one atomic operation per loop instead
17929 of two.
17930 * config/linux/ia64/mutex.h (gomp_mutex_lock_slow): Add an int argument
17931 to prototype.
17932 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
17933 __sync_bool_compare_and_swap, pass the oldval to
17934 gomp_mutex_lock_slow.
17935
fb79f500
JJ
179362011-06-22 Jakub Jelinek <jakub@redhat.com>
17937
17938 PR libgomp/49490
17939 * iter.c (gomp_iter_static_next): For chunk size 0
17940 only use n ceil/ nthreads size for the first
17941 n % nthreads threads in the team instead of
17942 all threads except for the last few ones which
17943 get less work or none at all.
17944 * iter_ull.c (gomp_iter_ull_static_next): Likewise.
17945 * env.c (parse_schedule): If OMP_SCHEDULE doesn't have
17946 chunk argument, set run_sched_modifier to 0 for static
17947 resp. 1 for other kinds. If chunk argument is 0
17948 and not static, set value to 1.
17949
4577f730
JJ
179502011-05-19 Jakub Jelinek <jakub@redhat.com>
17951
ea93a47b
JJ
17952 PR c++/49043
17953 * testsuite/libgomp.c++/pr49043.C: New test.
17954
4577f730
JJ
17955 PR c++/48869
17956 * testsuite/libgomp.c++/pr48869.C: New test.
17957
e7385332
JJ
179582011-05-06 Jakub Jelinek <jakub@redhat.com>
17959
17960 PR fortran/48894
17961 * fortran.c: Include limits.h.
17962 (TO_INT): Define.
17963 (omp_set_dynamic_8_, omp_set_num_threads_8_): Use !!*set instead of
17964 *set.
17965 (omp_set_num_threads_8_, omp_set_schedule_8_,
17966 omp_set_max_active_levels_8_, omp_get_ancestor_thread_num_8_,
17967 omp_get_team_size_8_): Use TO_INT macro.
17968 * testsuite/libgomp.fortran/pr48894.f90: New test.
17969
20790697
JJ
179702011-04-13 Jakub Jelinek <jakub@redhat.com>
17971
17972 PR middle-end/48591
17973 * testsuite/libgomp.c/pr48591.c: New test.
17974
bf382f5f
RO
179752011-03-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
17976
17977 PR bootstrap/48135
17978 * acinclude.m4 (enable_symvers): Handle --disable-symvers.
17979 * configure: Regenerate.
17980
113a53c1
JJ
179812011-02-27 Jakub Jelinek <jakub@redhat.com>
17982
17983 PR fortran/47886
17984 * testsuite/libgomp.fortran/task3.f90: New test.
17985
0024f1af
TB
179862011-02-24 Tobias Burnus <burnus@net-b.de>
17987
17988 * libgomp.texi (GOMP_STACKSIZE): Fix @ref to OMP_STACKSIZE.
17989
21e1e594
JJ
179902011-02-23 Jakub Jelinek <jakub@redhat.com>
17991
17992 PR libgomp/47854
17993 * libgomp.texi (omp_get_wtime): Don't say time in the past
17994 must be Unix Epoch.
17995
67962076
JJ
179962011-02-18 Jakub Jelinek <jakub@redhat.com>
17997
17998 PR libgomp/47804
17999 * testsuite/libgomp.fortran/fortran.exp: Check for both
18000 libquadmath.a and libquadmath.${shlib_ext}. If neither exists,
18001 but $blddir != "", still append ${blddir}/${lang_library_path}
18002 to ld_library_path.
18003
3808007c
TB
180042011-02-16 Tobias Burnus <burnus@net-b.de>
18005
18006 PR libgomp/47758
18007 * testsuite/libgomp.fortran/fortran.exp: Check for the existence
18008 of libquadmath.a before adding its libpath to ldflags.
18009
53b4d41d
JJ
180102011-02-14 Jakub Jelinek <jakub@redhat.com>
18011
18012 PR libgomp/47731
18013 * config/linux/futex.h (futex_wait): Pass NULL as timeout argument
18014 to FUTEX_WAIT futex syscall.
18015 * config/linux/wait.h: Include <futex.h> instead of "futex.h".
18016
029c8f3e
RW
180172011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18018
18019 * configure: Regenerate.
18020
bddd6626
BK
180212011-01-20 Benjamin Kosnik <bkoz@redhat.com>
18022
18023 PR libstdc++/36104
18024 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.
18025
f1d4ab26
GP
180262011-01-16 Gerald Pfeifer
18027
18028 * configure.tgt (*-*-freebsd*): Add -lpthread to XLDFLAGS.
18029
2b503136
JJ
180302010-12-14 Jakub Jelinek <jakub@redhat.com>
18031
18032 PR fortran/46874
18033 * libgomp.fortran/allocatable6.f90: New test.
18034
c0f9d583
RO
180352010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
18036
18037 * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
18038 * configure: Regenerate.
18039
7de6ba7a
DK
180402010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
18041
18042 PR target/40125
18043 PR lto/46695
18044 * configure.ac: Invoke ACX_LT_HOST_FLAGS.
18045 * Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
18046 * aclocal.m4: Regenerate.
18047 * configure: Regenerate.
18048 * Makefile.in: Regenerate.
18049 * testsuite/Makefile.in: Regenerate.
18050
b7516041
JJ
180512010-12-02 Jakub Jelinek <jakub@redhat.com>
18052
edaadf74
JJ
18053 PR fortran/46753
18054 * libgomp.fortran/pr46753.f90: New test.
18055
4c698cf8
JJ
18056 PR libgomp/43706
18057 * env.c (initialize_env): Default to spin count 300000
18058 instead of 20000000 if neither OMP_WAIT_POLICY nor GOMP_SPINCOUNT
18059 is specified.
18060
b7516041
JJ
18061 PR libgomp/45240
18062 * parallel.c (GOMP_parallel_end): Unlock gomp_remaining_threads_lock
18063 at the end if sync builtins aren't supported.
18064
6b43a34c
RO
180652010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
18066
18067 * configure.tgt (mips-sgi-irix6*): Add -lpthread to XLDFLAGS.
18068
950691fa
RO
180692010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
18070
18071 * testsuite/libgomp.fortran/vla8.f90: Use dg-timeout-factor 2.0.
18072
fb9041ea
IS
180732010-11-24 Iain Sandoe <iains@gcc.gnu.org>
18074
18075 * testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath.
18076
1ec601bf
FXC
180772010-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
18078 Tobias Burnus <burnus@net-b.de>
18079
18080 PR fortran/32049
3e348fcc 18081 * configure.ac:
1ec601bf
FXC
18082 * configure: Regenerate.
18083
d213e92e
MS
180842010-10-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
18085
18086 * config/linux/futex.h: New.
18087 * config/linux/arm/mutex.h: New.
18088 * configure.tgt (arm*-*-linux*): Add config path.
18089
89d5c66f
SP
180902010-09-30 Sebastian Pop <sebastian.pop@amd.com>
18091
18092 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
18093
87350d4a
TB
180942010-09-23 Tobias Burnus <burnus@net-b.de>
18095
18096 * libgomp.texi (omp_get_nested, omp_set_nested, omp_set_dynamic):
18097 Change Fortran datatype to LOGICAL.
18098 (omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
18099 omp_unset_nested_lock): Use intent(inout) instead of intent(out).
18100
75bc9e5e
RW
181012010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18102
18103 * configure: Regenerate.
18104
acb5c916
JJ
181052010-07-26 Jakub Jelinek <jakub@redhat.com>
18106
18107 * libgomp.texi: Add function keyword to a couple of Fortran
18108 interfaces, use integer instead of int for Fortran.
18109
6a2ba183
AH
181102010-07-26 Aldy Hernandez <aldyh@redhat.com>
18111
18112 * libgomp.texi: Fix spelling and pasto problems throughout.
18113 Adjust prototypes to match code.
18114
df161b69
TB
181152010-07-24 Tobias Burnus <burnus@net-b.de>
18116
18117 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add -w to
18118 silence -fwhole-file warning.
18119
16c9d3b1
RO
181202010-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
18121
18122 * configure.tgt (*-*-solaris2.[56]*): Removed.
18123
6d28b933
RO
181242010-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
18125
18126 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
18127 Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
18128 LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
18129 (HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
18130 targetting solaris2*.
18131 * configure: Regenerate.
18132 * config.h.in: Regenerate.
18133
18134 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
18135 libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
18136 Add libgomp_version_dep.
18137 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
18138 versioning.
18139 [!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
18140 (libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
18141 * Makefile.in: Regenerate.
18142
18143 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
18144 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
18145 * libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
18146 to common block, protected by
18147 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
18148
07a67d6a
GP
181492010-06-10 Gerald Pfeifer <gerald@pfeifer.com>
18150
18151 * libgomp.texi: Move to GFDL version 1.3. Update copyright years.
18152
dbd34b89
IS
181532010-06-09 Iain Sandoe <iains@gcc.gnu.org>
18154
18155 PR bootstrap/43170
18156 * configure: Regenerate.
18157
13917ae3
RW
181582010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18159
18160 PR other/43620
18161 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
18162 * configure: Regenerate.
18163 * Makefile.in: Regenerate.
18164 * testsuite/Makefile.in: Regenerate.
18165
b83a701b
JJ
181662010-04-26 Jakub Jelinek <jakub@redhat.com>
18167
18168 PR c/43893
18169 * testsuite/libgomp.c/pr43893.c: New test.
18170 * testsuite/libgomp.c++/pr43893.C: New test.
18171
78db7d92
JJ
181722010-04-21 Jakub Jelinek <jakub@redhat.com>
18173
18174 PR middle-end/43570
18175 * testsuite/libgomp.fortran/vla8.f90: New test.
18176
5221d7a9
JJ
181772010-04-20 Jakub Jelinek <jakub@redhat.com>
18178
e4ba7a60
JJ
18179 PR libgomp/43706
18180 * config/linux/affinity.c (gomp_init_affinity): Decrease
18181 gomp_available_cpus if affinity mask confines the process to fewer
18182 CPUs.
18183 * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is
18184 non-NULL, just return gomp_available_cpus.
18185
5221d7a9
JJ
18186 PR libgomp/43569
18187 * sections.c (gomp_sections_init): Initialize ws->mode.
18188
289a9f86
UB
181892010-04-14 Uros Bizjak <ubizjak@gmail.com>
18190
18191 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
18192 not unused bar variable.
18193 * configure: Regenerate.
18194
4d9e8446
RW
181952010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18196
18197 * Makefile.in: Regenerate.
18198 * aclocal.m4: Regenerate.
18199 * testsuite/Makefile.in: Regenerate.
18200
80f046cc
JJ
182012010-03-22 Jakub Jelinek <jakub@redhat.com>
18202
18203 PR libgomp/42942
18204 * env.c (parse_unsigned_long): Add ALLOW_ZERO argument.
18205 (initialize_env): Adjust callers.
18206 (omp_set_max_active_levels): Set gomp_max_active_levels_var even
18207 when the argument is 0.
18208
18209 * testsuite/libgomp.c/pr42942.c: New test.
18210
b58543c3
SP
182112010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
18212
18213 PR middle-end/42644
18214 PR middle-end/42130
18215 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
18216 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust.
18217
41d1138f
RO
182182010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
18219
18220 * testsuite/libgomp.c++/task-1.C: Renamed err to e.
18221 * testsuite/libgomp.c++/task-6.C: Likewise.
18222
6684eb28
SE
182232010-01-28 Steve Ellcey <sje@cup.hp.com>
18224
18225 * configure.tgt (*-*-hpux*): Add -frandom-seed flag.
18226
2122aa97
PB
182272010-01-26 Paolo Bonzini <bonzini@gnu.org>
18228
18229 * configure.ac: Test for executability of _the first word_ of GFORTRAN.
18230 * configure: Regenerate.
18231
057dd91d
JJ
182322010-01-26 Jakub Jelinek <jakub@redhat.com>
18233
18234 PR fortran/42866
18235 * testsuite/libgomp.fortran/allocatable5.f90: New test.
18236
d0709b6a
PB
182372010-01-20 Paolo Bonzini <bonzini@gnu.org>
18238
18239 * configure.ac: Test for executability of GFORTRAN.
18240 * configure: Regenerate.
18241
b9497ab5
RO
182422010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
18243
18244 * configure: Regenerate.
18245
45de5648
L
182462010-01-04 H.J. Lu <hongjiu.lu@intel.com>
18247
18248 PR libgomp/42602
18249 * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic.
18250
e74003a1
RG
182512010-01-03 Richard Guenther <rguenther@suse.de>
18252
18253 * testsuite/libgomp.fortran/recursion1.f90: New testcase.
18254
1b3abda8
SP
182552009-12-23 Sebastian Pop <sebpop@gmail.com>
18256
18257 * testsuite/libgomp.graphite/pr4118.c: New.
18258
e19977d3
IS
182592009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
18260
18261 * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage
18262 for darwin, protect the test with require-effective-target tls_runtime.
18263 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
18264
1d32a772
IS
182652009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
18266
18267 PR target/41605
18268 * testsuite/lib/libgomp.exp: Provide -B options to allow for
18269 link spec %s substitutions for static libraries.
18270
deb109b2
JH
182712009-12-18 Jack Howarth <howarth@bromo.med.uc.edu>
18272
18273 PR testsuite/42135
18274 * libgomp.graphite/force-parallel-2.c: Reduce array size.
18275
43e02a8a
RW
182762009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18277
18278 * Makefile.in: Regenerate.
18279 * configure: Regenerate.
18280 * testsuite/Makefile.in: Regenerate.
18281
17f35e23
DK
182822009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
18283
18284 * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
18285 settings for LC_ALL and LANG.
18286
281e33e1
JJ
182872009-11-25 Jakub Jelinek <jakub@redhat.com>
18288
18289 PR fortran/42162
18290 * testsuite/libgomp.fortran/pr42162.f90: New test.
18291
2b32c27d
JJ
182922009-11-13 Jakub Jelinek <jakub@redhat.com>
18293
18294 PR middle-end/42029
281e33e1 18295 * testsuite/libgomp.c/pr42029.c: New test.
2b32c27d 18296
89c74f4a
JJ
182972009-10-26 Jakub Jelinek <jakub@redhat.com>
18298
18299 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
18300 *s. Accept ld version without text in ()s.
18301 * configure: Regenerated.
18302
7e06c3d6
EB
183032009-10-22 Razya Ladelsky <razya@il.ibm.com>
18304
18305 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan.
18306
0046b1a7
RW
183072009-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18308
18309 PR libgomp/41418
18310 * configure.ac: Set FC to "no" if $GFORTRAN starts with "no"
18311 or a hyphen (happens with fortran language disabled).
18312 * configure: Regenerate.
18313
c82852f7
RW
183142009-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18315
18316 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
18317 use sed script portable to Solaris /bin/sed for extracting ld
18318 version.
18319 * configure: Regenerate.
18320
98f3eb1f
AM
183212009-09-17 Alexander Monakov <amonakov@ispras.ru>
18322
18323 * testsuite/libgomp.graphite/bounds.c: New test.
18324
878f62e5
RW
183252009-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18326
18327 * Makefile.am (libgomp_la_LINK): New.
18328 * Makefile.in: Regenerate.
18329
df58e648
RW
183302009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18331
18332 * configure.ac (AC_PREREQ): Bump to 2.64.
18333
5213506e
RW
183342009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18335
70fa0efa
RW
18336 * Makefile.am (install-html, install-pdf): Remove.
18337 * Makefile.in: Regenerate.
18338
5213506e
RW
18339 * Makefile.in: Regenerate.
18340 * aclocal.m4: Regenerate.
18341 * config.h.in: Regenerate.
18342 * configure: Regenerate.
18343 * testsuite/Makefile.in: Regenerate.
18344
84fec8a5
RW
183452009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18346
18347 * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
18348 * Makefile.in: Regenerate.
18349
197c68cc
DK
183502009-08-20 Dave Korn <dave.korn.cygwin@gmail.com>
18351
18352 * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.
18353 * Makefile.in: Regenerate.
18354
693d54f2
TB
183552009-08-19 Tobias Burnus <burnus@net-b.de>
18356
18357 PR fortran/41102
18358 omp_lib.h.in: Fix -std=f95 errors.
18359
8cac884c
DE
183602009-08-14 David Edelsohn <edelsohn@gnu.org>
18361
18362 * testsuite/libgomp.graphite: Move from gcc.dg/graphite.
18363 * testsuite/libgomp.graphite/graphite_autopar.exp: Delete.
18364 * testsuite/libgomp.graphite/graphite.exp: New.
18365
78729ee2
AT
183662009-08-05 Andreas Tobler <a.tobler@schweiz.org>
18367
18368 * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared
18369 only build.
18370
b13b7f39
DD
183712009-08-04 David Daney <ddaney@caviumnetworks.com>
18372
18373 * config/linux/mutex.h (gomp_mutex_unlock): Add comment about
18374 needed memory barrier semantics.
18375 * config/linux/mips/mutex.h: New file.
18376
1b3b24c2
RW
183772009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18378
18379 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
18380
396b7fa4
JM
183812009-07-16 Joseph Myers <joseph@codesourcery.com>
18382
18383 * configure: Regenerate.
18384
33cde516
RS
183852009-07-11 Richard Sandiford <rdsandiford@googlemail.com>
18386
18387 PR testsuite/40699
18388 PR testsuite/40707
18389 PR testsuite/40709
18390 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
18391 * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
18392 testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.
18393
bc21bfa5
RS
183942009-07-02 Richard Sandiford <r.sandiford@uk.ibm.com>
18395
18396 * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
18397 options when choosing a multilib.
18398
b30bfd40
RS
183992009-06-30 Richard Sandiford <r.sandiford@uk.ibm.com>
18400
18401 * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
18402 ld_library_path. Use add_path. Add just find_libgcc_s to
18403 ld_library_path, not every libgcc multilib directory.
18404 * testsuite/libgomp.c/c.exp (ld_library_path): Don't call
18405 gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
18406 * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
18407 Use add_path.
18408 * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
18409
479c15c2
NF
184102009-06-09 Nathan Froyd <froydnj@codesourcery.com>
18411
18412 * Makefile.am (LTLDFLAGS): Define.
18413 (LINK): Define.
18414 * Makefile.in: Regenerate.
18415
667e6f89
JB
184162009-05-27 Janne Blomqvist <jb@gcc.gnu.org>
18417
18418 PR fortran/39718
18419 * testsuite/libgomp.fortran/fortran.exp: Don't link with
18420 libgfortranbegin, check existence of libgfortran.a instead of
18421 libgfortranbegin.a.
18422
6dea8e99
JJ
184232009-05-20 Jakub Jelinek <jakub@redhat.com>
18424
18425 PR libgomp/40174
18426 * team.c (gomp_thread_start): Destroy thr->release semaphore.
18427 (gomp_free_pool_helper): Likewise.
18428
34d01e1d
VL
184292009-04-20 Vasilis Liaskovitis <vliaskov@gmail.com>
18430 Jakub Jelinek <jakub@redhat.com>
18431
18432 PR fortran/35423
18433 * testsuite/libgomp.fortran/workshare2.f90: New test.
18434
748086b7
JJ
184352009-04-09 Nick Clifton <nickc@redhat.com>
18436
18437 * iter.c: Change copyright header to refer to version 3 of the
18438 GNU General Public License with version 3.1 of the GCC Runtime
18439 Library Exception and to point readers at the COPYING3 and
18440 COPYING3.RUNTIME files and the FSF's license web page.
18441 * alloc.c: Likewise.
18442 * barrier.c: Likewise.
18443 * config/bsd/proc.c: Likewise.
18444 * config/linux/affinity.c: Likewise.
18445 * config/linux/alpha/futex.h: Likewise.
18446 * config/linux/bar.c: Likewise.
18447 * config/linux/bar.h: Likewise.
18448 * config/linux/ia64/futex.h: Likewise.
18449 * config/linux/ia64/mutex.h: Likewise.
18450 * config/linux/lock.c: Likewise.
18451 * config/linux/mips/futex.h: Likewise.
18452 * config/linux/mutex.c: Likewise.
18453 * config/linux/mutex.h: Likewise.
18454 * config/linux/powerpc/futex.h: Likewise.
18455 * config/linux/proc.c: Likewise.
18456 * config/linux/ptrlock.c: Likewise.
18457 * config/linux/ptrlock.h: Likewise.
18458 * config/linux/s390/futex.h: Likewise.
18459 * config/linux/sem.c: Likewise.
18460 * config/linux/sem.h: Likewise.
18461 * config/linux/sparc/futex.h: Likewise.
18462 * config/linux/wait.h: Likewise.
18463 * config/linux/x86/futex.h: Likewise.
18464 * config/mingw32/proc.c: Likewise.
18465 * config/mingw32/time.c: Likewise.
18466 * config/posix/affinity.c: Likewise.
18467 * config/posix/bar.c: Likewise.
18468 * config/posix/bar.h: Likewise.
18469 * config/posix/lock.c: Likewise.
18470 * config/posix/mutex.h: Likewise.
18471 * config/posix/proc.c: Likewise.
18472 * config/posix/ptrlock.h: Likewise.
18473 * config/posix/sem.c: Likewise.
18474 * config/posix/sem.h: Likewise.
18475 * config/posix/time.c: Likewise.
18476 * config/posix95/lock.c: Likewise.
18477 * critical.c: Likewise.
18478 * env.c: Likewise.
18479 * error.c: Likewise.
18480 * fortran.c: Likewise.
18481 * iter_ull.c: Likewise.
18482 * libgomp.h: Likewise.
18483 * libgomp_f.h.in: Likewise.
18484 * libgomp_g.h: Likewise.
18485 * loop.c: Likewise.
18486 * loop_ull.c: Likewise.
18487 * omp.h.in: Likewise.
18488 * omp_lib.f90.in: Likewise.
18489 * omp_lib.h.in: Likewise.
18490 * ordered.c: Likewise.
18491 * parallel.c: Likewise.
18492 * sections.c: Likewise.
18493 * single.c: Likewise.
18494 * task.c: Likewise.
18495 * team.c: Likewise.
18496 * work.c: Likewise.
18497
184982009-04-09 Jakub Jelinek <jakub@redhat.com>
18499
18500 * testsuite/config/default.exp: Change copyright header to refer to
18501 version 3 of the GNU General Public License and to point readers
18502 at the COPYING3 file and the FSF's license web page.
18503
4f0ae266
JJ
185042009-04-08 Jakub Jelinek <jakub@redhat.com>
18505
18506 PR middle-end/39573
18507 * libgomp.c++/pr39573.C: New test.
18508
03742a9b
JJ
185092009-04-01 Jakub Jelinek <jakub@redhat.com>
18510
18511 PR other/39591
18512 * testsuite/libgomp.c/pr39591-1.c: New test.
18513 * testsuite/libgomp.c/pr39591-2.c: New test.
18514 * testsuite/libgomp.c/pr39591-3.c: New test.
18515
e50ea10b
UB
185162009-03-25 Uros Bizjak <ubizjak@gmail.com>
18517
18518 * testsuite/libgomp.c/atomic-5.c: Cleanup cpuid usage.
18519 * testsuite/libgomp.c/atomic-6.c: Ditto.
18520
c5cdb03f
JJ
185212009-03-23 Jakub Jelinek <jakub@redhat.com>
18522
18523 PR c/39495
18524 * testsuite/libgomp.c/loop-12.c: New test.
18525 * testsuite/libgomp.c/loop-11.c: New test.
18526 * testsuite/libgomp.c++/loop-11.C: New test.
18527 * testsuite/libgomp.c++/loop-12.C: New test.
18528 * testsuite/libgomp.c++/for-8.C: New test.
18529
7a9d3fe8
RW
185302009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18531
18532 * configure: Regenerate.
18533
3ad6b266
JJ
185342009-02-11 Jakub Jelinek <jakub@redhat.com>
18535
18536 PR middle-end/39154
18537 * testsuite/libgomp.c/pr39154.c: New test.
18538
b39dea08
ILT
185392009-01-30 Ian Lance Taylor <iant@google.com>
18540
18541 * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
18542 libgomp_ld_is_gold. Get gold version number.
18543 (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
18544 * configure: Rebuild.
18545
72c66596
IS
185462009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
18547
e50ea10b 18548 * testsuite/lib/libgomp.exp: Add -B option for targets that
72c66596
IS
18549 use libgfortran.a%s in their specs.
18550
876080ff
JJ
185512009-01-07 Jakub Jelinek <jakub@redhat.com>
18552
18553 PR libgomp/38086
18554 * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New check.
18555 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undefine if
18556 HAVE_AS_SYMVER_DIRECTIVE is not defined.
18557 * configure: Regenerated.
18558 * config.h.in: Likewise.
18559
e4ebaef3
JJ
185602008-12-28 Jakub Jelinek <jakub@redhat.com>
18561
18562 PR c++/38650
18563 * testsuite/libgomp.c/pr38650.c: New test.
18564 * testsuite/libgomp.c++/pr38650.C: New test.
18565
382017a6
JJ
185662008-12-27 Jakub Jelinek <jakub@redhat.com>
18567
18568 * testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
18569
79644b27
UB
185702008-12-26 Uros Bizjak <ubizjak@gmail.com>
18571
18572 * testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
18573
baafc534
RW
185742008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18575
18576 * configure: Regenerate.
18577
d9c194cb
JJ
185782008-12-08 Jakub Jelinek <jakub@redhat.com>
18579
18580 PR middle-end/36802
18581 * testsuite/libgomp.c/pr36802-1.c: New test.
18582 * testsuite/libgomp.c/pr36802-2.c: New test.
18583 * testsuite/libgomp.c/pr36802-3.c: New test.
18584
86a182bf
JJ
185852008-12-01 Janis Johnson <janis187@us.ibm.com>
18586
18587 PR libgomp/38270
18588 * config/linux/powerpc/mutex.h: New.
18589
956adfaf
JJ
185902008-12-01 Jakub Jelinek <jakub@redhat.com>
18591
a2d4cdc9
JJ
18592 PR c++/38257
18593 * testsuite/libgomp.c++/for-7.C: New test.
18594
956adfaf
JJ
18595 PR c++/38348
18596 * testsuite/libgomp.c++/for-6.C: New test.
18597
d4038ca2
JJ
185982008-11-26 Janis Johnson <janis187@us.ibm.com>
18599
18600 PR testsuite/28870
18601 * testsuite/lib/libgomp.exp: Include new timeout library files.
18602 (libgomp_target_compile): Set timeout value from new proc.
18603
8b159eea
SE
186042008-11-13 Steve Ellcey <sje@cup.hp.com>
18605
18606 PR libgomp/37938
18607 * config/linux/ia64/mutex.h: New.
18608
5c6ed53a
TB
186092008-11-04 Tobias Burnus <burnus@net-b.de>
18610
18611 PR libgomp/37935
18612 * libgomp.texi (Runtime library routines, environment variables):
18613 Update for OpenMP version 3.0.
18614
6b4a97ed
PG
186152008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
18616 Steve Ellcey <sje@cup.hp.com>
18617
18618 * configure: Regenerate for new libtool.
18619 * Makefile.in: Ditto.
18620 * testsuite/Makefile.in: Ditto.
18621
e2b34106
JJ
186222008-09-19 Jakub Jelinek <jakub@redhat.com>
18623 Andreas Tobler <a.tobler@schweiz.org>
18624
18625 * config/bsd/proc.c: New file.
8c3b3600 18626 * configure.tgt (*-*-darwin*): Use config_path "bsd posix".
e2b34106
JJ
18627 * configure.ac: Check for header <sys/sysctl.h>
18628 * configure: Regenerate.
18629 * config.h.in: Likewise.
18630
3606b8bf
JJ
186312008-09-05 Janis Johnson <janis187@us.ibm.com>
18632
18633 * testsuite/ligbomp.c/c.exp: Unset lang_test_file only if it exists.
18634
6528b88d
AL
186352008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
18636
18637 * Makefile.am (libgomp_la_LDFLAGS): Add -no-undefined.
18638 * Makefile.in: Regenerated.
18639 * testsuite/Makefile.in: Regenerated.
18640
d9b14b12 186412008-08-21 Nathan Froyd <froydnj@codesourcery.com>
8c9570df 18642
a16b68bb 18643 * testsuite/lib/libgomp.exp (libgomp_init): Only set things that
8c9570df
NF
18644 depend on blddir if blddir exists.
18645 (libgomp_target_compile): Likewise.
18646 * testsuite/libgomp.c++/c++.exp: Likewise.
18647 * testsuite/libgomp.fortran/fortran.exp: Likewise.
18648
70b1e376
RW
186492008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18650
18651 * libgomp.texi: Update to GFDL 1.2. Update copyright years.
18652 Do not list GPL as Invariant Section.
18653
318e8c3f
IG
186542008-07-28 Ilie Garbacea <ilie@mips.com>
18655 Chao-ying Fu <fu@mips.com>
18656
18657 * configure.tgt: Enable futex for MIPS.
18658 * config/linux/mips/futex.h: New file.
18659
4db72361
JJ
186602008-07-16 Jakub Jelinek <jakub@redhat.com>
18661
18662 * team.c (gomp_team_end): Free team immediately if it has
18663 just one thread.
18664
87bd23b8
DE
186652008-07-08 David Edelsohn <edelsohn@gnu.org>
18666
18667 * testsuite/libgomp.c++/c++.exp: Append multilib library path.
18668 * testsuite/libgomp.fortran/fortran.exp: Same.
18669 * testsuite/libgomp.c/c.exp: Same.
18670 * testsuite/lib/libgomp.exp: Append AIX libgcc pthread multilib
18671 directory to library path first.
18672
323ff903
KW
186732008-06-29 Krister Walfridsson <krister.walfridsson@gmail.com>
18674
18675 * env.c (parse_stacksize): Add cast to avoid warning.
18676 (parse_spincount): Likewise.
18677
b357f682
JJ
186782008-06-27 Jakub Jelinek <jakub@redhat.com>
18679
ca2b1311
JJ
18680 * testsuite/libgomp.c/loop-10.c: New test.
18681 * libgomp.c/loop-3.c (main): Add lastprivate clause.
18682 * libgomp.c++/loop-6.C (main): Likewise.
18683
b357f682
JJ
18684 PR debug/36617
18685 * testsuite/libgomp.c/debug-1.c: New test.
18686
09a46078
JJ
186872008-06-19 Jakub Jelinek <jakub@redhat.com>
18688
18689 * testsuite/libgomp.c/nqueens-1.c: New test.
18690
2368a460
JJ
18691 PR c++/36523
18692 * testsuite/libgomp.c++/task-7.C: New function.
18693
18c04407
RW
186942008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18695
18696 * configure: Regenerate.
18697
9c4e59e0
JDA
186982008-06-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
18699
18700 * env.c (initialize_env): Always initialize gomp_remaining_threads_lock
18701 mutex when HAVE_SYNC_BUILTINS isn't defined.
18702
6ccde948
RW
187032008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18704
18705 * libgomp.texi (omp_test_lock): Fix typo.
18706
b896f9fd
TB
187072008-06-12 Tobias Burnus <burnus@net-b.de>
18708
18709 * omp_lib.f90.in: Add "implicit none".
18710
c34938a8
JJ
187112008-06-12 Jakub Jelinek <jakub@redhat.com>
18712
18713 PR middle-end/36506
18714 * testsuite/libgomp.c/reduction-5.c: New test.
18715
976e44e3
JJ
187162008-06-11 Jakub Jelinek <jakub@redhat.com>
18717
5f836cbb
JJ
18718 * libgomp.h (struct gomp_task): Add in_tied_task field.
18719 * task.c (gomp_init_task): Initialize it.
18720 (GOMP_task): Likewise. Call gomp_team_barrier_set_task_pending
18721 unconditionally. Don't call gomp_team_barrier_wake if
18722 current task is implicit or if(0) from implicit and number of
18723 running tasks is equal to nthreads - 1.
18724
01501fc8
JJ
18725 PR libgomp/36471
18726 * omp_lib.f90.in (omp_get_ancestor_thread_num_8,
18727 omp_get_team_size_8): Fix pastos.
18728
976e44e3
JJ
18729 PR libgomp/36469
18730 * configure.ac: Add AC_CHECK_FUNCS (strtoull).
18731 * configure: Regenerated.
18732 * config.h.in: Regenerated.
18733 * env.c (strtoull): Define to strtoul if HAVE_STRTOULL is not
18734 defined.
18735
e919209b
AT
187362008-06-06 Andreas Tobler <a.tobler@schweiz.org>
18737
18738 PR bootstrap/36452
18739 * loop_ull.c (GOMP_loop_ull_static_start): Adjust API.
18740 (GOMP_loop_ull_dynamic_start): Likewise.
18741 (GOMP_loop_ull_guided_start): Likewise.
18742 (GOMP_loop_ull_ordered_static_start): Likewise.
18743 (GOMP_loop_ull_ordered_dynamic_start): Likewise.
18744 (GOMP_loop_ull_ordered_guided_start): Likewise.
18745
a68ab351
JJ
187462008-06-06 Jakub Jelinek <jakub@redhat.com>
18747 Richard Henderson <rth@redhat.com>
18748 Ulrich Drepper <drepper@redhat.com>
18749 Jakob Blomer <jakob.blomer@ira.uka.de>
18750
18751 * configure.ac (LIBGOMP_GNU_SYMBOL_VERSIONING): New AC_DEFINE.
18752 Substitute also OMP_*LOCK_25*.
18753 * configure: Regenerated.
18754 * config.h.in: Regenerated.
18755 * Makefile.am (libgomp_la_SOURCES): Add loop_ull.c, iter_ull.c,
18756 ptrlock.c and task.c.
18757 * Makefile.in: Regenerated.
18758 * testsuite/Makefile.in: Regenerated.
18759 * task.c: New file.
18760 * loop_ull.c: New file.
18761 * iter_ull.c: New file.
18762 * libgomp.h: Include ptrlock.h.
18763 (enum gomp_task_kind): New type.
18764 (struct gomp_team): Add task_lock, task_queue, task_count,
18765 task_running_count, single_count fields. Add
18766 work_share_list_free_lock ifndef HAVE_SYNC_BUILTINS.
18767 Remove work_share_lock, generation_mask,
18768 oldest_live_gen, num_live_gen and init_work_shares fields, add
18769 work work_share_list_alloc, work_share_list_free and work_share_chunk
18770 fields. Change work_shares from pointer to pointers into an array.
18771 Change ordered_release field into gomp_sem_t ** from flexible array
18772 member. Add implicit_task and initial_work_shares fields.
18773 Move close to the end of the struct.
18774 (struct gomp_team_state): Add single_count, last_work_share,
18775 active_level and level fields, remove work_share_generation.
18776 (gomp_barrier_handle_tasks): New prototype.
18777 (gomp_finish_task): New inline function.
18778 (struct gomp_work_share): Move chunk_size, end, incr into
18779 transparent union/struct, add chunk_size_ull, end_ll, incr_ll and
18780 next_ll fields. Reshuffle fields. Add next_alloc,
18781 next_ws, next_free and inline_ordered_team_ids fields, change
18782 ordered_team_ids into pointer from flexible array member.
18783 Add mode field. Put lock and next into a different cache line
18784 from most of the write-once fields.
18785 (gomp_iter_ull_static_next, gomp_iter_ull_dynamic_next_locked,
18786 gomp_iter_ull_guided_next_locked, gomp_iter_ull_dynamic_next,
18787 gomp_iter_ull_guided_next): New prototypes.
18788 (gomp_new_icv): New prototype.
18789 (struct gomp_thread): Add thread_pool and task fields.
18790 (struct gomp_thread_pool): New type.
18791 (gomp_new_team): New prototype.
18792 (gomp_team_start): Change type of last argument.
18793 (gomp_new_work_share): Removed.
18794 (gomp_init_work_share, gomp_fini_work_share): New prototypes.
18795 (gomp_work_share_init_done): New static inline.
18796 (gomp_throttled_spin_count_var, gomp_available_cpus,
18797 gomp_managed_threads): New extern decls.
18798 (gomp_init_task): New prototype.
18799 (gomp_spin_count_var): New extern var decl.
18800 (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef if no visibility
18801 or no alias support, or if not PIC.
18802 (gomp_init_lock_30, gomp_destroy_lock_30, gomp_set_lock_30,
18803 gomp_unset_lock_30, gomp_test_lock_30, gomp_init_nest_lock_30,
18804 gomp_destroy_nest_lock_30, gomp_set_nest_lock_30,
18805 gomp_unset_nest_lock_30, gomp_test_nest_lock_30, gomp_init_lock_25,
18806 gomp_destroy_lock_25, gomp_set_lock_25, gomp_unset_lock_25,
18807 gomp_test_lock_25, gomp_init_nest_lock_25, gomp_destroy_nest_lock_25,
18808 gomp_set_nest_lock_25, gomp_unset_nest_lock_25,
18809 gomp_test_nest_lock_25): New prototypes.
18810 (omp_lock_symver, strong_alias): Define.
18811 (gomp_remaining_threads_count, gomp_remaining_threads_lock): New
18812 decls.
18813 (gomp_end_task): New.
18814 (struct gomp_task_icv, gomp_global_icv): New.
18815 (gomp_thread_limit_var, gomp_max_active_levels_var): New.
18816 (struct gomp_task): New.
18817 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
18818 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
18819 (gomp_icv): New.
18820 (gomp_schedule_type): Reorder enum to match
18821 omp_sched_t.
18822 * team.c (struct gomp_thread_start_data): Add thread_pool and task
18823 fields.
18824 (gomp_thread_start): Add gomp_team_barrier_wait call.
18825 For non-nested case remove clearing of docked thread thr fields.
18826 Use pool fields instead of global gomp_* variables. Use
18827 gomp_barrier_wait_last when needed. Initialize ts.active_level.
18828 Create tasks for each member thread.
18829 (free_team): Only destroy team barrier, task_lock here and free it.
18830 (gomp_free_thread): Free last_team if non-NULL.
18831 (gomp_team_end): Call gomp_team_barrier_wait instead of
18832 gomp_barrier_wait. For nested case call one extra
18833 gomp_barrier_wait. Move here some destruction from free_team.
18834 Call free_team on pool->last_team if any, rather than freeing
18835 current team. Destroy work_share_list_free_lock ifndef
18836 HAVE_SYNC_BUILTINS.
18837 (gomp_new_icv): New function.
18838 (gomp_threads, gomp_threads_size, gomp_threads_used,
18839 gomp_threads_dock): Removed.
18840 (gomp_thread_destructor): New variable.
18841 (gomp_new_thread_pool, gomp_free_pool_helper, gomp_free_thread): New
18842 functions.
18843 (gomp_team_start): Create new pool if current thread doesn't have
3e348fcc 18844 one. Use pool fields instead of global gomp_* variables.
a68ab351
JJ
18845 Initialize thread_pool field for new threads. Clear single_count.
18846 Change last argument from ws to team, don't create
18847 new team, set ts.work_share to &team->work_shares[0] and clear
18848 ts.last_work_share. Don't clear ts.work_share_generation.
18849 If number of threads changed, adjust atomically gomp_managed_threads.
18850 Use gomp_init_task instead of gomp_new_task,
18851 set thr->task to the corresponding implicit_task array entry.
18852 Create tasks for each member thread. Initialize ts.level.
18853 (initialize_team): Call pthread_key_create on
18854 gomp_thread_destructor.
18855 (team_destructor): New function.
18856 (new_team): Removed.
18857 (gomp_new_team): New function.
18858 (free_team): Free gomp_work_share blocks chained through next_alloc,
18859 instead of freeing work_shares and destroying work_share_lock.
18860 (gomp_team_end): Call gomp_fini_work_share. If number of threads
18861 changed, adjust atomically gomp_managed_threads. Use gomp_end_task.
18862 * barrier.c (GOMP_barrier): Call gomp_team_barrier_wait instead
18863 of gomp_barrier_wait.
18864 * single.c (GOMP_single_copy_start): Call gomp_team_barrier_wait
18865 instead of gomp_barrier_wait. Call gomp_work_share_init_done
18866 if gomp_work_share_start returned true. Don't unlock ws->lock.
18867 (GOMP_single_copy_end): Call gomp_team_barrier_wait instead
18868 of gomp_barrier_wait.
18869 (GOMP_single_start): Rewritten if HAVE_SYNC_BUILTINS. Call
18870 gomp_work_share_init_done if gomp_work_share_start returned true.
18871 Don't unlock ws->lock.
18872 * work.c: Include stddef.h.
18873 (free_work_share): Use work_share_list_free_lock instead
18874 of atomic chaining ifndef HAVE_SYNC_BUILTINS. Add team argument.
18875 Call gomp_fini_work_share and then either free ws if orphaned, or
18876 put it into work_share_list_free list of the current team.
18877 (alloc_work_share, gomp_init_work_share, gomp_fini_work_share): New
18878 functions.
18879 (gomp_work_share_start, gomp_work_share_end,
18880 gomp_work_share_end_nowait): Rewritten.
18881 * omp_lib.f90.in Change some tabs to spaces to prevent warnings.
18882 (openmp_version): Set to 200805.
18883 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
18884 omp_sched_guided, omp_sched_auto): New parameters.
18885 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
18886 omp_set_max_active_levels, omp_get_max_active_levels,
18887 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
18888 omp_get_active_level): New interfaces.
18889 * omp_lib.h.in (openmp_version): Set to 200805.
18890 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
18891 omp_sched_guided, omp_sched_auto): New parameters.
18892 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
18893 omp_set_max_active_levels, omp_get_max_active_levels,
18894 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
18895 omp_get_active_level): New externals.
18896 * loop.c: Include limits.h.
18897 (GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Handle
18898 GFS_AUTO.
18899 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start):
18900 Likewise. Use gomp_icv.
18901 (gomp_loop_static_start, gomp_loop_dynamic_start): Clear
18902 ts.static_trip here.
18903 (gomp_loop_static_start, gomp_loop_ordered_static_start): Call
18904 gomp_work_share_init_done after gomp_loop_init. Don't unlock ws->lock.
18905 (gomp_loop_dynamic_start, gomp_loop_guided_start): Call
18906 gomp_work_share_init_done after gomp_loop_init. If HAVE_SYNC_BUILTINS,
18907 don't unlock ws->lock, otherwise lock it.
18908 (gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start): Call
18909 gomp_work_share_init_done after gomp_loop_init. Lock ws->lock.
18910 (gomp_parallel_loop_start): Call gomp_new_team instead of
18911 gomp_new_work_share. Call gomp_loop_init on &team->work_shares[0].
18912 Adjust gomp_team_start caller. Pass 0 as second argument to
18913 gomp_resolve_num_threads.
18914 (gomp_loop_init): For GFS_DYNAMIC, multiply ws->chunk_size by incr.
18915 If adding ws->chunk_size nthreads + 1 times after end won't
18916 overflow, set ws->mode to 1.
18917 * libgomp_g.h (GOMP_loop_ull_static_start, GOMP_loop_ull_dynamic_start,
18918 GOMP_loop_ull_guided_start, GOMP_loop_ull_runtime_start,
18919 GOMP_loop_ull_ordered_static_start,
18920 GOMP_loop_ull_ordered_dynamic_start,
18921 GOMP_loop_ull_ordered_guided_start,
18922 GOMP_loop_ull_ordered_runtime_start, GOMP_loop_ull_static_next,
18923 GOMP_loop_ull_dynamic_next, GOMP_loop_ull_guided_next,
18924 GOMP_loop_ull_runtime_next, GOMP_loop_ull_ordered_static_next,
18925 GOMP_loop_ull_ordered_dynamic_next, GOMP_loop_ull_ordered_guided_next,
18926 GOMP_loop_ull_ordered_runtime_next, GOMP_task, GOMP_taskwait): New
18927 prototypes.
18928 * libgomp.map: Export lock routines also @@OMP_2.0.
18929 (GOMP_loop_ordered_dynamic_first,
18930 GOMP_loop_ordered_guided_first, GOMP_loop_ordered_runtime_first,
18931 GOMP_loop_ordered_static_first): Remove.
18932 (GOMP_loop_ull_dynamic_next, GOMP_loop_ull_dynamic_start,
18933 GOMP_loop_ull_guided_next, GOMP_loop_ull_guided_start,
18934 GOMP_loop_ull_ordered_dynamic_next,
18935 GOMP_loop_ull_ordered_dynamic_start,
18936 GOMP_loop_ull_ordered_guided_next,
18937 GOMP_loop_ull_ordered_guided_start,
18938 GOMP_loop_ull_ordered_runtime_next,
18939 GOMP_loop_ull_ordered_runtime_start,
18940 GOMP_loop_ull_ordered_static_next,
18941 GOMP_loop_ull_ordered_static_start,
18942 GOMP_loop_ull_runtime_next, GOMP_loop_ull_runtime_start,
18943 GOMP_loop_ull_static_next, GOMP_loop_ull_static_start,
18944 GOMP_task, GOMP_taskwait): Export @@GOMP_2.0.
18945 (omp_set_schedule, omp_get_schedule,
18946 omp_get_thread_limit, omp_set_max_active_levels,
18947 omp_get_max_active_levels, omp_get_level,
18948 omp_get_ancestor_thread_num, omp_get_team_size, omp_get_active_level,
18949 omp_set_schedule_, omp_set_schedule_8_,
18950 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
18951 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
18952 omp_get_max_active_levels_, omp_get_level_,
18953 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
18954 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
18955 New exports @@OMP_3.0.
18956 * omp.h.in (omp_sched_t): New type.
18957 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
18958 omp_set_max_active_levels, omp_get_max_active_levels,
18959 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
18960 omp_get_active_level): New prototypes.
18961 * env.c (gomp_spin_count_var, gomp_throttled_spin_count_var,
18962 gomp_available_cpus, gomp_managed_threads, gomp_max_active_levels_var,
18963 gomp_thread_limit_var, gomp_remaining_threads_count,
18964 gomp_remaining_threads_lock): New variables.
18965 (parse_spincount): New function.
18966 (initialize_env): Call gomp_init_num_threads unconditionally.
18967 Initialize gomp_available_cpus. Call parse_spincount,
18968 initialize gomp_{,throttled_}spin_count_var
18969 depending on presence and value of OMP_WAIT_POLICY and
18970 GOMP_SPINCOUNT env vars. Handle GOMP_BLOCKTIME env var.
18971 Handle OMP_WAIT_POLICY, OMP_MAX_ACTIVE_LEVELS,
18972 OMP_THREAD_LIMIT, OMP_STACKSIZE env vars. Handle unit specification
18973 for GOMP_STACKSIZE. Initialize gomp_remaining_threads_count and
18974 gomp_remaining_threads_lock if needed. Use gomp_global_icv.
18975 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
18976 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
18977 (gomp_global_icv): New.
18978 (parse_schedule): Use it. Parse "auto".
18979 (omp_set_num_threads): Use gomp_icv.
18980 (omp_set_dynamic, omp_get_dynamic, omp_set_nested, omp_get_nested):
18981 Likewise.
18982 (omp_get_max_threads): Move from parallel.c.
18983 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
18984 omp_set_max_active_levels, omp_get_max_active_levels): New functions,
18985 add ialias.
18986 (parse_stacksize, parse_wait_policy): New functions.
18987 * fortran.c: Rewrite lock wrappers, if symbol versioning provide
18988 both wrappers for compatibility and new locks.
18989 (omp_set_schedule, omp_get_schedule,
18990 omp_get_thread_limit, omp_set_max_active_levels,
18991 omp_get_max_active_levels, omp_get_level,
18992 omp_get_ancestor_thread_num, omp_get_team_size,
18993 omp_get_active_level): New ialias_redirect.
18994 (omp_set_schedule_, omp_set_schedule_8_,
18995 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
18996 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
18997 omp_get_max_active_levels_, omp_get_level_,
18998 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
18999 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
19000 New functions.
19001 * parallel.c: Include limits.h.
19002 (gomp_resolve_num_threads): Add count argument. Rewritten.
19003 (GOMP_parallel_start): Call gomp_new_team and pass that as last
19004 argument to gomp_team_start. Pass 0 as second argument to
19005 gomp_resolve_num_threads.
19006 (GOMP_parallel_end): Decrease gomp_remaining_threads_count
19007 if gomp_thread_limit_var != ULONG_MAX.
19008 (omp_in_parallel): Implement using ts.active_level.
19009 (omp_get_max_threads): Move to env.c.
19010 (omp_get_level, omp_get_ancestor_thread_num,
19011 omp_get_team_size, omp_get_active_level): New functions,
19012 add ialias.
19013 * sections.c (GOMP_sections_start): Call gomp_work_share_init_done
19014 after gomp_sections_init. If HAVE_SYNC_BUILTINS, call
19015 gomp_iter_dynamic_next instead of the _locked variant and don't take
19016 lock around it, otherwise acquire it before calling
19017 gomp_iter_dynamic_next_locked.
19018 (GOMP_sections_next): If HAVE_SYNC_BUILTINS, call
19019 gomp_iter_dynamic_next instead of the _locked variant and don't take
19020 lock around it.
19021 (GOMP_parallel_sections_start): Call gomp_new_team instead of
19022 gomp_new_work_share. Call gomp_sections_init on &team->work_shares[0].
19023 Adjust gomp_team_start caller. Pass count as second argument to
19024 gomp_resolve_num_threads, don't adjust num_threads after the call.
19025 Use gomp_icv.
19026 * iter.c (gomp_iter_dynamic_next_locked): Don't multiply
19027 ws->chunk_size by incr.
19028 (gomp_iter_dynamic_next): Likewise. If ws->mode, use more efficient
19029 code.
19030 * libgomp_f.h.in (omp_lock_25_arg_t, omp_nest_lock_25_arg_t): New
19031 types.
19032 (omp_lock_25_arg, omp_nest_lock_25_arg): New macros.
19033 (omp_check_defines): Check even the compat defines.
19034 * config/linux/ptrlock.c: New file.
19035 * config/linux/ptrlock.h: New file.
19036 * config/linux/wait.h: New file.
19037 * config/posix/ptrlock.c: New file.
19038 * config/posix/ptrlock.h: New file.
19039 * config/linux/bar.h (gomp_team_barrier_wait,
19040 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
19041 (gomp_team_barrier_set_task_pending,
19042 gomp_team_barrier_clear_task_pending,
19043 gomp_team_barrier_set_waiting_for_tasks,
19044 gomp_team_barrier_waiting_for_tasks,
19045 gomp_team_barrier_done): New inlines.
19046 (gomp_barrier_t): Rewritten.
19047 (gomp_barrier_state_t): New typedef.
19048 (gomp_barrier_init, gomp_barrier_reinit, gomp_barrier_destroy,
19049 gomp_barrier_wait_start): Rewritten.
19050 (gomp_barrier_wait_end): Change second argument to
19051 gomp_barrier_state_t.
19052 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
19053 inlines.
19054 * config/linux/bar.c: Include wait.h instead of libgomp.h and
19055 futex.h.
19056 (gomp_barrier_wait_end): Rewritten.
19057 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
19058 gomp_team_barrier_wake, gomp_barrier_wait_last): New functions.
19059 * config/posix/bar.h (gomp_barrier_t): Add generation field.
19060 (gomp_barrier_state_t): New typedef.
19061 (gomp_team_barrier_wait,
19062 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
19063 (gomp_barrier_wait_start): Or all but low 2 bits from generation
19064 into the return value. Return gomp_barrier_state_t.
19065 (gomp_team_barrier_set_task_pending,
19066 gomp_team_barrier_clear_task_pending,
19067 gomp_team_barrier_set_waiting_for_tasks,
19068 gomp_team_barrier_waiting_for_tasks,
19069 gomp_team_barrier_done): New inlines.
19070 (gomp_barrier_wait_end): Change second argument to
19071 gomp_barrier_state_t.
19072 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
19073 inlines.
19074 * config/posix/bar.c (gomp_barrier_init): Clear generation field.
19075 (gomp_barrier_wait_end): Change second argument to
3e348fcc 19076 gomp_barrier_state_t.
a68ab351
JJ
19077 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
19078 gomp_team_barrier_wake): New functions.
19079 * config/linux/mutex.c: Include wait.h instead of libgomp.h and
19080 futex.h.
19081 (gomp_futex_wake, gomp_futex_wait): New variables.
19082 (gomp_mutex_lock_slow): Call do_wait instead of futex_wait.
19083 * config/linux/lock.c: Rewrite to make locks task owned,
19084 for backwards compatibility provide the old entrypoints
19085 if symbol versioning. Include wait.h instead of libgomp.h and
19086 futex.h.
19087 (gomp_set_nest_lock_25): Call do_wait instead of futex_wait.
19088 * config/posix95/lock.c: Rewrite to make locks task owned,
19089 for backwards compatibility provide the old entrypoints
19090 if symbol versioning.
19091 * config/posix/lock.c: Rewrite to make locks task owned,
19092 for backwards compatibility provide the old entrypoints
19093 if symbol versioning.
19094 * config/linux/proc.c (gomp_init_num_threads): Use gomp_global_icv.
19095 (get_num_procs, gomp_dynamic_max_threads): Use gomp_icv.
19096 * config/posix/proc.c, config/mingw32/proc.c: Similarly.
19097 * config/linux/powerpc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19098 (sys_futex0): Return error code.
19099 (futex_wake, futex_wait): If ENOSYS was returned, clear
19100 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19101 (cpu_relax, atomic_write_barrier): New static inlines.
19102 * config/linux/alpha/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19103 (futex_wake, futex_wait): If ENOSYS was returned, clear
19104 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19105 (cpu_relax, atomic_write_barrier): New static inlines.
19106 * config/linux/x86/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19107 (sys_futex0): Return error code.
19108 (futex_wake, futex_wait): If ENOSYS was returned, clear
19109 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19110 (cpu_relax, atomic_write_barrier): New static inlines.
19111 * config/linux/s390/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19112 (sys_futex0): Return error code.
19113 (futex_wake, futex_wait): If ENOSYS was returned, clear
19114 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19115 (cpu_relax, atomic_write_barrier): New static inlines.
19116 * config/linux/ia64/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19117 (sys_futex0): Return error code.
19118 (futex_wake, futex_wait): If ENOSYS was returned, clear
19119 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19120 (cpu_relax, atomic_write_barrier): New static inlines.
19121 * config/linux/sparc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
19122 (sys_futex0): Return error code.
19123 (futex_wake, futex_wait): If ENOSYS was returned, clear
19124 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
19125 (cpu_relax, atomic_write_barrier): New static inlines.
19126 * config/linux/sem.c: Include wait.h instead of libgomp.h and
19127 futex.h.
19128 (gomp_sem_wait_slow): Call do_wait instead of futex_wait.
19129 * config/linux/affinity.c: Assume HAVE_SYNC_BUILTINS.
19130 * config/linux/omp-lock.h (omp_lock_25_t, omp_nest_lock_25_t): New
19131 types.
19132 (omp_nest_lock_t): Change owner into void *, add lock field.
19133 * config/posix95/omp-lock.h: Include semaphore.h.
19134 (omp_lock_25_t, omp_nest_lock_25_t): New types.
19135 (omp_lock_t): Use sem_t instead of mutex if semaphores
19136 aren't broken.
19137 (omp_nest_lock_t): Likewise. Change owner to void *.
19138 * config/posix/omp-lock.h: Include semaphore.h.
19139 (omp_lock_25_t, omp_nest_lock_25_t): New types.
19140 (omp_lock_t): Use sem_t instead of mutex if semaphores
19141 aren't broken.
19142 (omp_nest_lock_t): Likewise. Add owner field.
19143
191442008-06-06 Jakub Jelinek <jakub@redhat.com>
19145
19146 * testsuite/libgomp.c/collapse-1.c: New test.
19147 * testsuite/libgomp.c/collapse-2.c: New test.
19148 * testsuite/libgomp.c/collapse-3.c: New test.
19149 * testsuite/libgomp.c/icv-1.c: New test.
19150 * testsuite/libgomp.c/icv-2.c: New test.
19151 * testsuite/libgomp.c/lib-2.c: New test.
19152 * testsuite/libgomp.c/lock-1.c: New test.
19153 * testsuite/libgomp.c/lock-2.c: New test.
19154 * testsuite/libgomp.c/lock-3.c: New test.
19155 * testsuite/libgomp.c/loop-4.c: New test.
19156 * testsuite/libgomp.c/loop-5.c: New test.
19157 * testsuite/libgomp.c/loop-6.c: New test.
19158 * testsuite/libgomp.c/loop-7.c: New test.
19159 * testsuite/libgomp.c/loop-8.c: New test.
19160 * testsuite/libgomp.c/loop-9.c: New test.
19161 * testsuite/libgomp.c/nested-3.c: New test.
19162 * testsuite/libgomp.c/nestedfn-6.c: New test.
19163 * testsuite/libgomp.c/sort-1.c: New test.
19164 * testsuite/libgomp.c/task-1.c: New test.
19165 * testsuite/libgomp.c/task-2.c: New test.
19166 * testsuite/libgomp.c/task-3.c: New test.
19167 * testsuite/libgomp.c/task-4.c: New test.
19168 * testsuite/libgomp.c++/c++.exp: Add libstdc++-v3 build includes
19169 to C++ testsuite default compiler options.
19170 * testsuite/libgomp.c++/collapse-1.C: New test.
19171 * testsuite/libgomp.c++/collapse-2.C: New test.
19172 * testsuite/libgomp.c++/ctor-10.C: New test.
19173 * testsuite/libgomp.c++/for-1.C: New test.
19174 * testsuite/libgomp.c++/for-2.C: New test.
19175 * testsuite/libgomp.c++/for-3.C: New test.
19176 * testsuite/libgomp.c++/for-4.C: New test.
19177 * testsuite/libgomp.c++/for-5.C: New test.
19178 * testsuite/libgomp.c++/loop-8.C: New test.
19179 * testsuite/libgomp.c++/loop-9.C: New test.
19180 * testsuite/libgomp.c++/loop-10.C: New test.
19181 * testsuite/libgomp.c++/task-1.C: New test.
19182 * testsuite/libgomp.c++/task-2.C: New test.
19183 * testsuite/libgomp.c++/task-3.C: New test.
19184 * testsuite/libgomp.c++/task-4.C: New test.
19185 * testsuite/libgomp.c++/task-5.C: New test.
19186 * testsuite/libgomp.c++/task-6.C: New test.
19187 * testsuite/libgomp.fortran/allocatable1.f90: New test.
19188 * testsuite/libgomp.fortran/allocatable2.f90: New test.
19189 * testsuite/libgomp.fortran/allocatable3.f90: New test.
19190 * testsuite/libgomp.fortran/allocatable4.f90: New test.
19191 * testsuite/libgomp.fortran/collapse1.f90: New test.
19192 * testsuite/libgomp.fortran/collapse2.f90: New test.
19193 * testsuite/libgomp.fortran/collapse3.f90: New test.
19194 * testsuite/libgomp.fortran/collapse4.f90: New test.
19195 * testsuite/libgomp.fortran/lastprivate1.f90: New test.
19196 * testsuite/libgomp.fortran/lastprivate2.f90: New test.
19197 * testsuite/libgomp.fortran/lib4.f90: New test.
19198 * testsuite/libgomp.fortran/lock-1.f90: New test.
19199 * testsuite/libgomp.fortran/lock-2.f90: New test.
19200 * testsuite/libgomp.fortran/nested1.f90: New test.
19201 * testsuite/libgomp.fortran/nestedfn4.f90: New test.
19202 * testsuite/libgomp.fortran/strassen.f90: New test.
19203 * testsuite/libgomp.fortran/tabs1.f90: New test.
19204 * testsuite/libgomp.fortran/tabs2.f: New test.
19205 * testsuite/libgomp.fortran/task1.f90: New test.
19206 * testsuite/libgomp.fortran/task2.f90: New test.
19207 * testsuite/libgomp.fortran/vla4.f90: Add dg-warning.
19208 * testsuite/libgomp.fortran/vla5.f90: Likewise.
19209 * testsuite/libgomp.c/pr26943-2.c: Likewise.
19210 * testsuite/libgomp.c/pr26943-3.c: Likewise.
19211 * testsuite/libgomp.c/pr26943-4.c: Likewise.
19212
7a0112e7
JJ
192132008-05-23 Jakub Jelinek <jakub@redhat.com>
19214
19215 PR c++/36308
19216 * testsuite/libgomp.c++/ctor-11.C: New test.
19217 * testsuite/libgomp.c++/ctor-12.C: New test.
19218
91a5b394
JJ
192192008-05-15 Janis Johnson <janis187@us.ibm.com>
19220
19221 * testsuite/lib/libgomp.exp: Load torture-options.exp from gcc lib.
19222
c18c98c0
JJ
192232008-05-07 Jakub Jelinek <jakub@redhat.com>
19224
19225 PR middle-end/36106
19226 * testsuite/libgomp.c/atomic-5.c: New test.
19227 * testsuite/libgomp.c/atomic-6.c: New test.
19228 * testsuite/libgomp.c/autopar-1.c: New test.
19229
6d26724a
RW
192302008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
19231
19232 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
19233 (LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
19234 (LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
19235 (LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
19236 * configure: Regenerate.
19237 * Makefile.in, testsuite/Makefile.in: Likewise.
19238
deb984e6
PB
192392008-04-18 Paolo Bonzini <bonzini@gnu.org>
19240
19241 PR bootstrap/35457
19242 * aclocal.m4: Regenerate.
19243 * configure: Regenerate.
19244
9e775963
JJ
192452008-03-18 Jakub Jelinek <jakub@redhat.com>
19246
8119fc93
JJ
19247 PR middle-end/35611
19248 * testsuite/libgomp.c/atomic-4.c: New test.
19249
9e775963
JJ
19250 PR libgomp/35625
19251 * iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
19252 (gomp_iter_guided_next): Likewise.
19253 * testsuite/libgomp.c/pr35625.c: New test.
19254
38d24731
RW
192552008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
19256
19257 * aclocal.m4: Regenerate.
19258 * configure: Likewise.
19259 * Makefile.in: Likewise.
19260 * testsuite/Makefile.in: Likewise.
19261
d0fb20be
JJ
192622008-03-13 Jakub Jelinek <jakub@redhat.com>
19263
19264 PR middle-end/35185
19265 * testsuite/libgomp.c++/pr35185.C: New test.
19266
7c8f7639
JJ
192672008-03-12 Jakub Jelinek <jakub@redhat.com>
19268
19269 PR middle-end/35549
19270 * testsuite/libgomp.c/pr35549.c: New test.
19271
251923f5
JJ
192722008-03-06 Jakub Jelinek <jakub@redhat.com>
19273
19274 * testsuite/libgomp.c/atomic-3.c: New test.
19275
f489fba1
FXC
192762008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
19277
19278 PR fortran/33197
251923f5 19279 * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
f489fba1
FXC
19280 .F08 file suffixes.
19281
a1b25e49
PG
192822008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
19283
19284 PR libgomp/33131
19285 * configure.ac: Add ACX_HEADER_STRING.
19286 * env.c: Include strings.h.
19287 * aclocal.m4: Regenerate.
19288 * config.h.in: Regenerate.
19289 * configure: Regenerate.
19290 * Makefile.in: Regenerate.
19291 * testsuite/Makefile.in: Regenerate.
19292
6837b3b8
JJ
192932008-02-15 Jakub Jelinek <jakub@redhat.com>
19294
ac84c062
JJ
19295 PR middle-end/35196
19296 * testsuite/libgomp.c/pr35196.c: New test.
19297
6837b3b8
JJ
19298 PR middle-end/35130
19299 * testsuite/libgomp.fortran/pr35130.f90: New test.
19300 * testsuite/libgomp.c/pr35130.c: New test.
19301
c256730c
JJ
193022008-01-25 Jakub Jelinek <jakub@redhat.com>
19303
19304 PR middle-end/33880
19305 * testsuite/libgomp.c/pr33880.c: New test.
19306 * testsuite/libgomp.fortran/pr33880.f90: New test.
19307
c8e95542 193082008-01-24 David Edelsohn <edelsohn@gnu.org>
d653fdfb
DE
19309
19310 * configure: Regenerate.
19311
0f3e711e
JJ
193122008-01-08 Jakub Jelinek <jakub@redhat.com>
19313
19314 * configure.ac: Move futex checking into ../config/futex.m4.
19315 * configure: Rebuilt.
19316 * aclocal.m4: Rebuilt.
19317 * Makefile.in: Rebuilt.
19318
19319 * configure.tgt: Rename have_tls to gcc_cv_have_tls to match
19320 2007-10-15 ../config/tls.m4 change.
19321
5259c813
JJ
193222007-12-19 Jakub Jelinek <jakub@redhat.com>
19323
19324 PR c++/34513
19325 * testsuite/libgomp.c/pr34513.c: New test.
19326 * testsuite/libgomp.c++/pr34513.C: New test.
19327
ae8d8879
JH
193282007-12-17 Jack Howarth <howarth@bromo.med.uc.edu>
19329
19330 PR target/32765
19331 * testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.
19332
2b4cf991
JJ
193332007-12-04 Jakub Jelinek <jakub@redhat.com>
19334
19335 * omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
19336
d2dda7fe
JJ
193372007-12-03 Jakub Jelinek <jakub@redhat.com>
19338
19339 * testsuite/libgomp.c/private-1.c: New test.
19340
d683ec81
PB
193412007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
19342 Paolo Bonzini <bonzini@gnu.org>
19343
19344 * Makefile.am: Use space as vpath separator. Use 'vpath %'
19345 instead of 'VPATH ='.
19346 * Makefile.in: Regenerate.
19347
a7415017
MK
193482007-11-23 Matthias Klose <doko@ubuntu.com>
19349
19350 * configure.ac: Adjust makeinfo version check.
19351 * configure: Regenerate.
19352
78e47463
JJ
193532007-11-10 Jakub Jelinek <jakub@redhat.com>
19354
19355 PR fortran/34020
19356 * testsuite/libgomp.fortran/pr34020.f90: New test.
19357
239371f9
JJ
193582007-11-06 Jakub Jelinek <jakub@redhat.com>
19359
19360 PR c++/33894
19361 * testsuite/libgomp.c++/atomic-1.C: New test.
19362
98a5fa94
JJ
193632007-10-25 Jakub Jelinek <jakub@redhat.com>
19364
19365 PR libgomp/33275
19366 * testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
19367 Make x and y integers rather than (implicit) reals. Add private (j)
19368 clause to the last omp parallel.
19369
3afcaaf4
MR
193702007-10-15 Maciej W. Rozycki <macro@linux-mips.org>
19371
19372 * configure: Regenerate following changes to ../config/tls.m4.
19373
bd69daef
JJ
193742007-09-28 Jakub Jelinek <jakub@redhat.com>
19375
19376 * testsuite/libgomp.fortran/stack.f90: New test.
19377
1d0bd356
DS
193782007-09-10 Danny Smith <dannysmith@users.sourceforge.net>
19379
19380 * config/mingw32/proc.c: New file.
19381
b3172cab
UB
193822007-09-05 Uros Bizjak <ubizjak@gmail.com>
19383
19384 * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
19385 (main): Use __get_cpuid to get i386 target fetaures.
19386 * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
19387 (main): Use __get_cpuid to get x86_64 target fetaures.
19388
6da17392
JH
193892007-08-15 Jack Howarth <howarth@bromo.med.uc.edu>
19390
19391 PR target/32765
19392 * testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
19393 * testsuite/libgomp.fortran/crayptr2.f90: Likwise.
19394
e1c82219
JJ
193952007-07-12 Jakub Jelinek <jakub@redhat.com>
19396
19397 PR fortran/32550
19398 * testsuite/libgomp.fortran/pr32550.f90: New test.
19399 * testsuite/libgomp.fortran/crayptr2.f90: New test.
19400
12a27363
L
194012007-07-05 H.J. Lu <hongjiu.lu@intel.com>
19402
19403 * aclocal.m4: Regenerated.
19404
5349080d
TB
194052007-07-05 Tobias Burnus <burnus@net-b.de>
19406
19407 PR fortran/32359
19408 * testsuite/libgomp.fortran/pr32359.f90: New.
19409
4f9c450c
JJ
194102007-07-02 Jakub Jelinek <jakub@redhat.com>
19411
19412 PR libgomp/32468
19413 * sections.c (GOMP_parallel_sections_start): Only decrease
19414 number of threads to COUNT if dyn_var is true.
19415 * testsuite/libgomp.c/pr32468.c: New test.
19416
28c67ed7
RO
194172007-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
19418
19419 PR libgomp/26308
19420 * config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
19421
64964499
JJ
194222007-06-21 Jakub Jelinek <jakub@redhat.com>
19423
19424 PR middle-end/32362
19425 * testsuite/libgomp.c/pr32362-1.c: New test.
19426 * testsuite/libgomp.c/pr32362-2.c: New test.
19427 * testsuite/libgomp.c/pr32362-3.c: New test.
19428
46d8fbd1
JJ
194292007-06-07 Jakub Jelinek <jakub@redhat.com>
19430
19431 * team.c (gomp_team_start): Fix setting up thread_attr
19432 stack size.
19433
82a6cadf
PB
194342007-06-02 Paolo Bonzini <bonzini@gnu.org>
19435
19436 * configure: Regenerate.
19437
1cf3d07d
SE
194382007-05-23 Steve Ellcey <sje@cup.hp.com>
19439
19440 * Makefile.in: Regenerate.
19441 * configure: Regenerate.
19442 * aclocal.m4: Regenerate.
19443 * testsuite/Makefile.in: Regenerate.
19444
12aac30b
JJ
194452007-05-04 Jakub Jelinek <jakub@redhat.com>
19446
19447 * config/linux/proc.c: New file.
19448
f1028b02
JJ
19449 PR libgomp/28482
19450 * configure.tgt: Don't link with -Wl,-z,nodlopen even on Linux.
19451
06785a48
DF
194522007-04-19 Daniel Franke <franke.daniel@gmail.com>
19453
19454 * libgomp.texi (GOMP_CPU_AFFINITY): Updated.
19455
b3b08ba0
MK
194562007-04-16 Matthias Klose <doko@debian.org>
19457
19458 * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
19459 flags if not building with -m64.
19460 * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
19461 flag for i?86-*-* targets, if current target matches -m64.
19462
6b2c5ce0
SE
194632007-04-14 Steve Ellcey <sje@cup.hp.com>
19464
19465 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.
19466 * Makefile.in: Regenerate.
19467
dd56fe7c
JDA
194682007-04-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
19469
19470 PR testsuite/31369
19471 * testsuite/libgomp.c++/c++.exp: Don't use concat when setting
19472 ld_library_path.
19473 * testsuite/libgomp.fortran/fortran.exp: Likewise.
19474
a0884cf0
JJ
194752007-04-04 Jakub Jelinek <jakub@redhat.com>
19476
19477 * libgomp.h (gomp_cpu_affinity, gomp_cpu_affinity_len): New extern
19478 decls.
19479 (gomp_init_affinity, gomp_init_thread_affinity): New prototypes.
19480 * env.c (gomp_cpu_affinity, gomp_cpu_affinity_len): New variables.
19481 (parse_affinity): New function.
19482 (initialize_env): Call it and gomp_init_affinity.
19483 * team.c (gomp_team_start): If gomp_cpu_affinity != NULL,
19484 create new pthread_attr_t and call gomp_init_thread_affinity
19485 on it for each thread before passing the attribute to pthread_create.
19486 * config/linux/affinity.c: New file.
19487 * config/posix/affinity.c: New file.
19488 * configure.ac (HAVE_PTHREAD_AFFINITY_NP): New test.
19489 * configure: Rebuilt.
19490 * config.h.in: Rebuilt.
19491 * Makefile.am (libgomp_la_SOURCES): Add affinity.c.
19492 * Makefile.in: Rebuilt.
19493
1850744b
AT
194942007-03-23 Andreas Tobler <a.tobler@schweiz.org>
19495
19496 * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
19497 *-*-darwin*.
19498 * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
19499 and use it if found.
19500
516f1ed8
UB
195012007-03-18 Uros Bizjak <ubizjak@gmail.com>
19502
19503 * testsuite/config/default.exp: New file.
19504 * testsuite/lib/libgomp.exp: New file.
19505 * testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
19506 libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
19507 load_lib *, load_gcc_lib *): Move to libgomp.exp.
19508 (libgomp_load): Remove.
19509 * testsuite/lib/libgomp.exp (libgomp_init): Compute
19510 always_ld_library_path, not ld_library_path. Set additional_flags
19511 to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
19512 (target_compile): Do not call libgomp_init. Append lang_library_path
19513 and lang_link_flags to options.
19514 * testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2. Set
19515 ld_library_path from always_ld_library_path. Set LD_LIBRARY_PATH
19516 here.
19517 * testsuite/libgomp.c++/c++.exp: Set ld_library_path from
19518 always_ld_library_path. Set LD_LIBRARY_PATH here.
19519 * testsuite/libgomp.fortran/fortran.exp: Ditto.
19520 * testsuite/libgomp.c/atomic-1.c: Set dg-options to
19521 "-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
19522 CX8 flag.
19523 * testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
19524 lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
19525 * testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
19526 * testsuite/libgomp.c/pr29947-1.c: Ditto.
19527 * testsuite/libgomp.c/atomic-10.c: Ditto.
19528
2ada56f5
JJ
195292007-03-21 Jakub Jelinek <jakub@redhat.com>
19530
19531 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
19532 dg-final cleanup-modules line.
19533 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
19534 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
19535 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
19536 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
19537 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
19538 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
19539 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
19540
f210f1cd
AS
195412007-03-18 Andreas Schwab <schwab@suse.de>
19542
19543 * acinclude.m4: Adjust regular expression for ld version
19544 extraction.
19545 * configure: Regenerate.
19546
c4dc950d
BM
195472007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
19548
19549 * Makefile.am: Add install-pdf target as copied from
19550 automake v1.10 rules.
19551 * Makefile.in: Regenerate
19552
e02a048f
JJ
195532007-02-07 Jakub Jelinek <jakub@redhat.com>
19554
78e075d4
JJ
19555 PR libgomp/28486
19556 * configure: Regenerate.
19557
e02a048f
JJ
19558 PR c++/30703
19559 * testsuite/libgomp.c++/pr30703.C: New test.
19560
60def7ed
JJ
195612007-02-02 Jakub Jelinek <jakub@redhat.com>
19562
19563 Revert:
19564 2006-07-05 Eric Christopher <echristo@apple.com>
19565 * configure.ac: Depend addition of -pthread on host OS.
19566 * configure: Regenerate.
19567
f1b0882e
RW
195682007-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
19569
19570 * libgomp.texi: Fix spacing after abbreviations.
19571
748b9d7c
DF
195722007-01-31 Daniel Franke <franke.daniel@gmail.com>
19573
19574 PR libgomp/30546
19575 * configure.ac: Add check for makeinfo
19576 * Makefile.am: Redefined target libgomp.info, build libgomp.info only
a0221aee 19577 if an appropriate version of makeinfo is found.
748b9d7c
DF
19578 * aclocal.m4: Regenerated.
19579 * configure: Regenerated.
19580 * Makefile.in: Regenerated.
19581 * testsuite/Makefile.in: Regenerated.
19582
14734fc7
DF
195832007-01-29 Daniel Franke <franke.daniel@gmail.com>
19584
19585 PR libgomp/30540
19586 * libgomp.texi: More about implementation-dependent settings.
19587
7befd5d2
TB
195882007-01-26 Tobias Burnus <burnus@net-b.de>
19589
19590 * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
19591
4288fea2
JJ
195922007-01-24 Jakub Jelinek <jakub@redhat.com>
19593
19594 PR middle-end/30494
19595 * testsuite/libgomp.c/pr30494.c: New test.
19596
627ab4b8
TT
195972007-01-15 Tom Tromey <tromey@redhat.com>
19598
19599 * configure: Rebuilt.
19600 * configure.ac: Fixed comment.
19601
7c2b7f45
DF
196022007-01-14 Daniel Franke <franke.daniel@gmail.com>
19603
19604 * libgomp.texi: Document implementation specific default values of
19605 environment variables.
19606
3721b9e1
DF
196072006-12-21 Daniel Franke <franke.daniel@gmail.com>
19608
19609 PR libgomp/28209
19610 * libgomp.texi: New file.
19611 * configure.ac: Add --enable-generated-files-in-srcdir option.
19612 * Makefile.am: Add info, dvi, pdf, html targets. On request, copy
19613 files to srcdir.
19614 * Makefile.in: Regenerated.
19615 * config.h.in: Regenerated.
19616 * testsuite/Makefile.in: Regenerated.
19617 * NOTES: Removed.
19618
62bd6216
DF
196192006-12-04 Daniel Franke <franke.daniel@gmail.com>
19620
19621 PR libgomp/29949
19622 * env.c (omp_set_num_threads): Set illegal thread count to 1.
19623
aad741f4
EB
196242006-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
19625
19626 * configure: Regenerate.
19627
22568cc6
JJ
196282006-12-04 Jakub Jelinek <jakub@redhat.com>
19629
19630 PR libgomp/29947
19631 * loop.c (gomp_loop_init): Make parameters signed. Set ws->end to
19632 start if there shouldn't be any loop iterations.
19633 (gomp_loop_ordered_static_start): Remove start == end test.
19634 * testsuite/libgomp.c/pr29947-1.c: New test.
19635 * testsuite/libgomp.c/pr29947-2.c: New test.
19636
a9690009
EB
196372006-12-02 Eric Botcazou <ebotcazou@libertysurf.fr>
19638
19639 * configure.tgt: Force initial-exec TLS model on Linux only.
19640
597c25e6
DJ
196412006-11-13 Daniel Jacobowitz <dan@codesourcery.com>
19642
19643 * configure: Regenerated.
19644
6acf0b38
UB
196452006-11-09 Uros Bizjak <ubizjak@gmail.com>
19646
19647 * env.c (parse_schedule): Reject out of range values.
19648 (parse_unsigned_long): Reject out of range, negative or zero values.
19649
a7a53ca5
JJ
196502006-10-29 Jakub Jelinek <jakub@redhat.com>
19651
19652 PR fortran/29629
19653 * testsuite/libgomp.fortran/pr29629.f90: New test.
19654
6d4d216a
EB
196552006-10-24 Eric Botcazou <ebotcazou@libertysurf.fr>
19656
19657 PR libgomp/29494
19658 * configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
19659 * config/posix95: New directory.
19660 * config/posix95/omp-lock.h: New file.
19661 * config/posix95/lock.c: Likewise.
19662
5b043f08
GK
196632006-10-14 Geoffrey Keating <geoffk@apple.com>
19664
19665 * aclocal.m4: Regenerate.
19666 * configure: Regenerate.
19667
b50019f0
DS
196682006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
19669
19670 * testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
19671 '<' to '<='.
19672
8887708e
DS
196732006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
19674
19675 * acinclude.m4 (HAVE_ATTRIBUTE_ALIAS): Remove __USER_LABEL_PREFIX__ from
19676 test.
19677 * configure: Regenerate.
19678 * fortran.c (ialias_redirect): Add __USER_LABEL_PREFIX__ to alias.
19679
9b9e4cd6
JJ
196802006-09-26 Jakub Jelinek <jakub@redhat.com>
19681
a70ad3bb
JJ
19682 PR middle-end/25261
19683 PR middle-end/28790
19684 * testsuite/libgomp.c/nestedfn-4.c: New test.
19685 * testsuite/libgomp.c/nestedfn-5.c: New test.
19686 * testsuite/libgomp.fortran/nestedfn3.f90: New test.
19687
9b9e4cd6
JJ
19688 PR fortran/29097
19689 * testsuite/libgomp.fortran/condinc1.f: New test.
19690 * testsuite/libgomp.fortran/condinc2.f: New test.
19691 * testsuite/libgomp.fortran/condinc3.f90: New test.
19692 * testsuite/libgomp.fortran/condinc4.f90: New test.
19693 * testsuite/libgomp.fortran/condinc1.inc: New file.
19694
2fb31455
TT
196952006-09-18 Tom Tromey <tromey@redhat.com>
19696
19697 * configure: Rebuilt.
19698
c663e301
JM
196992006-09-13 Joseph S. Myers <joseph@codesourcery.com>
19700
19701 PR c/28768
19702 PR preprocessor/14634
19703 * configure.ac (HAVE_CLOCK_GETTIME): Add missing second argument
19704 to AC_DEFINE.
19705 * configure: Regenerate.
19706
38371be9
SK
197072006-09-08 Steven G. Kargl <kargl@gcc.gnu.org>
19708
19709 * testsuite/libgomp.fortran/reduction3.f90: Change
19710 -2147483648 to -huge(i)-1 to avoid overflow.
19711 * testsuite/libgomp.fortran/reduction4.f90: Change
19712 Z'ffffffff' to not(0) to avoid overflow.
19713
571d5ac5
JM
197142006-08-26 Joseph S. Myers <joseph@codesourcery.com>
19715
19716 PR libgomp/25938
19717 * Makefile.am (libsubincludedir): New.
19718 (nodist_include_HEADERS): Rename to nodist_libsubinclude_HEADERS.
19719 * Makefile.in: Regenerate.
19720
89b3e3cd
JJ
197212006-08-17 Jakub Jelinek <jakub@redhat.com>
19722
19723 PR libgomp/28725
19724 * env.c: Include ctype.h.
19725 (parse_schedule, parse_unsigned_long, parse_boolean): Allow
19726 leading and/or trailing whitespace and compare strings case
19727 insensitively.
19728
742fae05
JJ
197292006-07-16 Jakub Jelinek <jakub@redhat.com>
19730
19731 PR fortran/28390
19732 * testsuite/libgomp.fortran/pr28390.f: New test.
19733
a1daed2d
EC
197342006-07-05 Eric Christopher <echristo@apple.com>
19735
19736 * configure.ac: Depend addition of -pthread on host OS.
19737 * configure: Regenerate.
19738
5d7b5199
JJ
197392006-06-21 Jakub Jelinek <jakub@redhat.com>
19740
19741 * critical.c (GOMP_critical_name_start): Fix *pptr initialization
19742 when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
19743 defined.
19744
fe5568e9
JJ
197452006-06-20 Jakub Jelinek <jakub@redhat.com>
19746
19747 PR libgomp/26175
19748 PR libgomp/26477
19749 * configure.ac: If neither --enable-linux-futex nor
19750 --disable-linux-futex is passed, determine the default by checking
19751 for compiling and/or running against NPTL. With --enable-linux-futex,
19752 check if SYS_gettid and SYS_futex are defined.
19753 * configure: Rebuilt.
19754
c3b11a40
RH
197552006-06-14 Richard Henderson <rth@redhat.com>
19756
19757 PR libgomp/28008
19758 * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
19759 undefined. Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
19760
d0d1b24d
RH
197612006-06-09 Richard Henderson <rth@redhat.com>
19762
19763 * env.c (gomp_nthreads_var): Change to unsigned long.
19764 (gomp_run_sched_chunk): Likewise.
19765 (parse_unsigned_long): Rename from parse_num_threads and generalize.
19766 (initialize_env): Initialize gomp_thread_attr.
19767 * libgomp.h (gomp_nthreads_var): Update decl.
19768 (gomp_run_sched_chunk): Likewise.
19769 (gomp_thread_attr): Declare.
19770 * team.c (gomp_thread_attr): Export.
19771 (initialize_team): Don't initialize it.
19772
cd75853e
JJ
197732006-06-09 Jakub Jelinek <jakub@redhat.com>
19774
19775 PR fortran/27916
19776 * testsuite/libgomp.fortran/pr27916-1.f90: New test.
19777 * testsuite/libgomp.fortran/pr27916-2.f90: New test.
19778
33815e0c
FXC
197792006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr>
19780
19781 * config/mingw32/time.c: New file.
19782 * configure.tgt: Use it.
19783
6667de0d
CD
197842006-05-23 Carlos O'Donell <carlos@codesourcery.com>
19785
19786 * Makefile.am: Add install-html target. Add install-html to .PHONY
19787 * Makefile.in: Regenerate.
19788
e962c46b
JDA
197892006-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
19790
19791 PR libgomp/27612
19792 * testsuite/libgomp.c/sections-1.c: Require sync_int_long.
19793 * testsuite/libgomp.c/critical-1.c: Likewise.
19794 * testsuite/libgomp.c/loop-1.c: Likewise.
19795 * testsuite/libgomp.c/loop-2.c: Likewise.
19796 * testsuite/libgomp.c/single-1.c: Likewise.
19797 * testsuite/libgomp.c/ordered-1.c: Likewise.
19798 * testsuite/libgomp.c/ordered-2.c: Likewise.
19799
eeb1d9e0
JJ
198002006-05-15 Jakub Jelinek <jakub@redhat.com>
19801
19802 PR middle-end/27416
19803 * libgomp.fortran/pr27416-1.f90: New test.
19804
693d710f
JJ
198052006-05-03 Jakub Jelinek <jakub@redhat.com>
19806
19807 PR fortran/27395
19808 * testsuite/libgomp.fortran/pr27395-1.f90: New test.
19809 * testsuite/libgomp.fortran/pr27395-2.f90: New test.
19810
8ca5b2a2
JJ
198112006-05-02 Jakub Jelinek <jakub@redhat.com>
19812
19813 PR c++/26943
19814 * testsuite/libgomp.c/pr26943-1.c: New test.
19815 * testsuite/libgomp.c/pr26943-2.c: New test.
19816 * testsuite/libgomp.c/pr26943-3.c: New test.
19817 * testsuite/libgomp.c/pr26943-4.c: New test.
19818 * testsuite/libgomp.c++/pr27337.C: Remove barrier.
19819 * testsuite/libgomp.c++/pr26943.C: New test.
19820
077b0dfb
JJ
198212006-05-02 Jakub Jelinek <jakub@redhat.com>
19822
19823 PR middle-end/27337
19824 * testsuite/libgomp.c++/pr27337.C: New test.
19825
91b6c26d
JJ
198262006-04-26 Jakub Jelinek <jakub@redhat.com>
19827
19828 PR c/26171
19829 * testsuite/libgomp.c/pr26171.c: New test.
19830
60e1758f
RH
198312006-04-25 Richard Henderson <rth@redhat.com>
19832
19833 PR libgomp/25865
19834 * configure.ac: Use GCC_CHECK_TLS.
19835 * acinclude.m4 (LIBGOMP_CHECK_TLS): Remove.
19836 * Makefile.in, aclocal.m4, configure: Regenerate.
19837
615baed7
MK
198382006-04-10 Matthias Klose <doko@debian.org>
19839
19840 * testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
19841 directory names containing underscores.
19842
fae2b46b
JJ
198432006-03-21 Jakub Jelinek <jakub@redhat.com>
19844
19845 PR c++/26691
19846 * testsuite/libgomp.c++/pr26691.C: New test.
19847
11a5f608
JJ
198482006-03-13 Jakub Jelinek <jakub@redhat.com>
19849
19850 * testsuite/libgomp.fortran/retval2.f90: New test.
19851
1799e5d5
RH
198522006-03-09 Diego Novillo <dnovillo@redhat.com>
19853
19854 * testsuite/libgomp.c++: New directory.
19855
d349482e
AT
198562006-02-25 Shantonu Sen <ssen@opendarwin.org>
19857
19858 * config/posix/sem.h: Define BROKEN_POSIX_SEMAPHORES functions.
19859 * config/posix/sem.c: Implement the above.
19860
198612006-02-25 Andreas Tobler <a.tobler@schweiz.ch>
19862
19863 * configure.ac (HAVE_BROKEN_POSIX_SEMAPHORES): Check for darwin and
19864 define HAVE_BROKEN_POSIX_SEMAPHORES.
19865 * configure: Rebuilt.
19866 * config.h.in: Rebuilt.
19867
124452c9
FXC
198682006-02-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
19869
19870 PR bootstrap/26161
19871 * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment
19872 for the other pthread check.
19873 * configure: Regenerate.
19874 * config.h.in: Regenerate.
19875
dd8d6dfe
JJ
198762006-02-15 Jakub Jelinek <jakub@redhat.com>
19877
19878 PR libgomp/25938
19879 PR libgomp/25984
19880 * Makefile.am (fincludedir): New variable.
19881 (nodist_include_HEADERS): Remove Fortran files.
19882 (nodist_finclude_HEADERS): New variable.
19883 * Makefile.in: Regenerated.
19884
6c7a4dfd
JJ
198852006-02-13 Jakub Jelinek <jakub@redhat.com>
19886
19887 * testsuite/libgomp.fortran/vla7.f90: Add -w to options.
19888 Remove tests for returning assumed character length arrays.
19889
5142e08b
RS
198902006-02-12 Roger Sayle <roger@eyesopen.com>
19891 John David Anglin <dave@hiauly1.hia.nrc.ca>
19892
19893 PR libgomp/25936
19894 * configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.
a1daed2d 19895
5821fba8
UW
198962006-02-08 Ulrich Weigand <uweigand@de.ibm.com>
19897
19898 * testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
19899
cb2bbc67
EB
199002006-02-07 Eric Botcazou <ebotcazou@libertysurf.fr>
19901
19902 * testsuite/lib/libgomp-dg.exp (libgomp_init): Compute multilib related
19903 part of LD_LIBRARY_PATH manually.
19904
f05ee80c
L
199052006-02-03 H.J. Lu <hongjiu.lu@intel.com>
19906
19907 PR libgomp/25852
19908 * testsuite/lib/libgomp-dg.exp (blddir): Set it in
19909 libgomp_init.
19910
03b8fe49
PB
199112005-01-25 Paolo Bonzini <bonzini@gnu.org>
19912
19913 PR libgomp/25884
f05ee80c
L
19914 * Makefile.am (omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Remove.
19915 * configure.ac (PERL): Don't set.
19916 (gstdint.h, omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Create here.
19917 (OMP_LOCK_SIZE, OMP_LOCK_ALIGN, OMP_LOCK_KIND, OMP_NEST_LOCK_SIZE,
19918 OMP_NEST_LOCK_ALIGN, OMP_NEST_LOCK_KIND): New substitutions.
19919 * omp.h.in: Wrap the new configure substitutions with @ characters.
19920 * omp_lib.h.in, omp_lib.f90.in, libgomp_f.h.in: Likewise.
19921 * aclocal.m4, configure, Makefile.in: Regenerate.
19922 * mkomp_h.pl: Delete.
03b8fe49 19923
18cbfd85
PB
199242005-01-24 Paolo Bonzini <bonzini@gnu.org>
19925
19926 PR libgomp/25259
19927 * configure.ac: Use GCC_HEADER_STDINT.
19928 * libgomp.h: Include gstdint.h.
19929 * libgomp_f.h.in: Don't include stdint.h or inttypes.h.
19930 * configure, Makefile.in, testsuite/Makefile.in, aclocal.m4: Rebuild.
19931
c41303c6
RH
199322006-01-24 Richard Henderson <rth@redhat.com>
19933
19934 PR libgomp/25942
19935 * configure.ac: Add AM_MAINTAINER_MODE.
19936 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in: Rebuild.
19937
149b9553
DN
199382006-01-24 Diego Novillo <dnovillo@redhat.com>
19939
19940 * Makefile.in: Regenerate.
19941 * testsuite/Makefile.in: Regenerate.
19942 * aclocal.m4: Regenerate.
19943
192a50ad
AT
199442006-01-23 Andreas Tobler <a.tobler@schweiz.ch>
19945
19946 * config/posix/proc.c: Conditional include of sys/loadavg.h for
19947 Solaris.
19948 * configure.ac: Add check for loadavg.h.
19949 (link_gomp): Adjust comment.
19950 * configure: Regenerate.
19951 * config.h.in: Regenerate.
19952
a55b8e18
SE
199532006-01-21 Steve Ellcey <sje@cup.hp.com>
19954
19955 PR libgomp/25877
19956 * configure.ac: Remove check for alloca.h.
19957 * configure: Regenerate.
19958 * config.h.in: Regenerate.
19959 * libgomp.h: define gomp_alloca to be __builtin_alloca.
19960 * team.c: Remove use of alloca.h.
19961 Call gomp_alloca instead of alloca.
19962
692eeb34
SE
199632006-01-20 Steve Ellcey <sje@cup.hp.com>
19964
19965 PR libgomp/25877
19966 * team.c: Add include of alloca.h.
19967 * configure.ac: Add check for alloca.h.
19968 * configure: Regenerate.
19969 * config.h.in: Regenerate.
19970
953ff289
DN
199712006-01-17 Jakub Jelinek <jakub@redhat.com>
19972
19973 PR fortran/25219
19974 * testsuite/libgomp.fortran/pr25219.f90: New test.
19975
199762005-12-05 Uros Bizjak <uros@kss-loka.si>
19977
19978 * testsuite/libgomp.c/pr24455.c, testsuite/libgomp.c/copyin-1.c,
19979 testsuite/libgomp.c/copyin-2.c, testsuite/libgomp.c/copyin-3.c,
19980 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
19981 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
19982 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455.C,
19983 testsuite/libgomp.fortran/threadprivate1.f90,
19984 testsuite/libgomp.fortran/threadprivate2.f90,
19985 testsuite/libgomp.fortran/threadprivate3.f90,
19986 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
19987 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
19988 testsuite/libgomp.fortran/omp_parse3.f90: Change required
19989 effective-target to TLS runtime.
19990
19991 * testsuite/libgomp.fortran/pr25162.f: Require
19992 effective-target TLS runtime.
19993
199942005-12-01 Jakub Jelinek <jakub@redhat.com>
19995
19996 * testsuite/libgomp.fortran/nestedfn2.f90: New test.
19997 * testsuite/libgomp.c/nestedfn-3.c: New test.
19998
199992005-11-30 Jakub Jelinek <jakub@redhat.com>
20000
20001 PR fortran/25162
20002 * testsuite/libgomp.fortran/pr25162.f: New test.
20003
200042005-11-28 Jakub Jelinek <jakub@redhat.com>
20005
20006 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Fall back to
20007 CLOCK_REALTIME if clock_* (CLOCK_MONOTONIC, &ts) call failed.
20008
200092005-11-25 Jakub Jelinek <jakub@redhat.com>
20010
20011 * alloc.c, barrier.c, critical.c, env.c, error.c, fortran.c, iter.c,
20012 libgomp.h, libgomp_f.h.in, libgomp_g.h, loop.c, mkomp_h.pl, omp.h.in,
20013 omp_lib.f90.in, omp_lib.h.in, ordered.c, parallel.c, sections.c,
20014 single.c, team.c, work.c, config/linux/alpha/futex.h,
20015 config/linux/bar.c, config/linux/bar.h, config/linux/ia64/futex.h,
20016 config/linux/lock.c, config/linux/mutex.c, config/linux/mutex.h,
20017 config/linux/powerpc/futex.h, config/linux/s390/futex.h,
20018 config/linux/sem.c, config/linux/sem.h, config/linux/sparc/futex.h,
20019 config/linux/x86/futex.h, config/posix/bar.c, config/posix/bar.h,
20020 config/posix/lock.c, config/posix/mutex.h, config/posix/proc.c,
20021 config/posix/sem.c, config/posix/sem.h, config/posix/time.c: Update
20022 FSF address.
20023
200242005-11-18 Jakub Jelinek <jakub@redhat.com>
20025
20026 * Makefile.am: Move libgomp_f.h from nodist_include_HEADERS
20027 to nodist_noinst_HEADERS.
20028 * Makefile.in: Rebuilt.
20029
20030 * config/posix/omp-lock.h (omp_nest_lock_t): Change into struct,
20031 add integer count field.
20032 * config/posix/lock.c (omp_destroy_nest_lock): Adjust for
20033 omp_nest_lock_t type change.
20034 (omp_init_nest_lock): Likewise. Initialize count to 0.
20035 (omp_set_nest_lock): Adjust for omp_nest_lock_t type change.
20036 Increment count.
20037 (omp_unset_nest_lock): Adjust for omp_nest_lock_t type change.
20038 Decrement count.
20039 (omp_test_nest_lock): Adjust for omp_nest_lock_t type change.
20040 Increment count if successful and return the new nesting level.
20041 * config/linux/lock.c (omp_test_nest_lock): Return new nesting level.
20042 * omp_lib.f90.in (omp_test_lock): Fix LOCK argument type.
20043 * testsuite/libgomp.c/lib-1.c: New test.
20044 * testsuite/libgomp.fortran/lib1.f90: New test.
20045 * testsuite/libgomp.fortran/lib2.f: New test.
20046 * testsuite/libgomp.fortran/lib3.f: New test.
20047
200482005-11-17 Richard Henderson <rth@redhat.com>
20049
20050 PR 24845
20051 * Makefile.am (nodist_toolexeclib_HEADERS): New.
20052 * configure.ac (link_gomp): New. Substitute it.
20053 (AC_CONFIG_FILES): Add libgomp.spec.
20054 * libgomp.spec.in: New file.
20055 * Makefile.in, testsuite/Makefile.in, configure: Rebuild.
20056 * testsuite/lib/libgomp-dg.exp: Add -B${blddir}/ to flags.
20057
200582005-11-18 Jakub Jelinek <jakub@redhat.com>
20059
20060 * testsuite/libgomp.fortran/reduction1.f90: Adjust for
20061 reduction(-:var) behaving the same as reduction(+:var).
20062 * testsuite/libgomp.c/reduction-4.c: New test.
20063
200642005-11-15 Uros Bizjak <uros@kss-loka.si>
20065
20066 * testsuite/libgomp.c/pr24455-1.c, testsuite/libgomp.c/pr24455.c,
20067 testsuite/libgomp.c/copyin-1.c, testsuite/libgomp.c/copyin-2.c,
20068 testsuite/libgomp.c/copyin-3.c,
20069 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
20070 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
20071 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455-1.C,
20072 testsuite/libgomp.c++/pr24455.C,
20073 testsuite/libgomp.fortran/threadprivate1.f90,
20074 testsuite/libgomp.fortran/threadprivate2.f90,
20075 testsuite/libgomp.fortran/threadprivate3.f90,
20076 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
20077 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
20078 testsuite/libgomp.fortran/omp_parse3.f90: Require
20079 effective-target TLS.
20080
200812005-11-14 Diego Novillo <dnovillo@redhat.com>
20082
20083 * HEADER: Remove.
20084
200852005-11-13 Jakub Jelinek <jakub@redhat.com>
20086
20087 PR libgomp/24797
20088 * team.c (initialize_team): Pass NULL rather than free as
20089 pthread_key_create destructor. Initialize thread specific data
20090 pointer in initial thread to a static local variable rather than
20091 malloced memory.
20092
200932005-11-11 Uros Bizjak <uros@kss-loka.si>
20094
20095 * testsuite/lib/libgomp-dg.exp: Locate libgcc.a and append
20096 its location to ld_library_path.
20097
200982005-11-10 Diego Novillo <dnovillo@redhat.com>
20099
20100 * testsuite/libgomp.c/c.exp: Rename from dg.exp.
20101
201022005-11-10 Diego Novillo <dnovillo@redhat.com>
20103
20104 * testsuite/libgomp.c: Rename from libgomp.dg.
20105
201062005-11-09 Diego Novillo <dnovillo@redhat.com>
20107
20108 * testsuite/libgomp.c++/pr24455.C: Add copyin clause for
20109 threadprivate variable 'i'.
20110
201112005-11-09 Jakub Jelinek <jakub@redhat.com>
20112
20113 * config/linux/s390/futex.h: New file.
20114 * configure.tgt: Use it.
20115
20116 * testsuite/libgomp.fortran/omp_parse4.f90: Move n initialization
20117 before the parallel.
20118
201192005-11-08 Jakub Jelinek <jakub@redhat.com>
20120
20121 PR c++/24734
20122 * testsuite/libgomp.c++/master-1.C: New test.
20123
201242005-11-07 Jakub Jelinek <jakub@redhat.com>
20125
20126 * testsuite/libgomp.dg/copyin-3.c: New test.
20127
201282005-11-07 Jakub Jelinek <jakub@redhat.com>
20129
20130 * testsuite/libgomp.fortran/retval1.f90: New test.
20131 * testsuite/libgomp.fortran/vla7.f90: New test.
20132
201332005-11-06 Jakub Jelinek <jakub@redhat.com>
20134
20135 * testsuite/libgomp.fortran/vla2.f90: New test.
20136 * testsuite/libgomp.fortran/vla3.f90: New test.
20137 * testsuite/libgomp.fortran/vla4.f90: New test.
20138 * testsuite/libgomp.fortran/vla5.f90: New test.
20139 * testsuite/libgomp.fortran/vla6.f90: New test.
20140
201412005-11-01 Jakub Jelinek <jakub@redhat.com>
20142
20143 * config/linux/sparc/futex.h: New file.
20144 * configure.tgt: Use it.
20145 * testsuite/lib/libgomp-dg.exp: Use -mcpu=v9 for sparc testing.
20146
20147 * critical.c: Include stdlib.h.
20148 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Avoid warnings about
20149 ignoring return value.
20150 * configure.ac: Don't put -Wc,-pthread into XCFLAGS until after
20151 LIBGOMP_CHECK_SYNC_BUILTINS check.
20152 * configure: Rebuilt.
20153
201542005-10-31 Jakub Jelinek <jakub@redhat.com>
20155
20156 * testsuite/libgomp.fortran/vla1.f90: New test.
20157
201582005-10-31 Richard Henderson <rth@redhat.com>
20159
20160 * testsuite/libgomp.fortran/character2.f90: Fix race condition
20161 setting 's' in different threads.
20162
201632005-10-31 Jakub Jelinek <jakub@redhat.com>
20164
20165 * libgomp.h (attribute_hidden, ialias): Define.
20166 * config/posix/proc.c (omp_get_num_procs): Add ialias.
20167 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Likewise.
20168 * config/posix/lock.c (omp_init_lock, omp_init_nest_lock,
20169 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
20170 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
20171 omp_test_lock, omp_test_nest_lock): Likewise.
20172 * config/linux/lock.c (omp_init_lock, omp_init_nest_lock,
20173 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
20174 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
20175 omp_test_lock, omp_test_nest_lock): Likewise.
20176 * env.c (omp_set_dynamic, omp_set_nested, omp_set_num_threads,
20177 omp_get_dynamic, omp_get_nested): Likewise.
20178 * parallel.c (omp_get_num_threads, omp_get_max_threads,
20179 omp_get_thread_num, omp_in_parallel): Likewise.
20180 * fortran.c (ialias_redirect): Define.
20181 (omp_init_lock, omp_init_nest_lock, omp_destroy_lock,
20182 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock,
20183 omp_unset_lock, omp_unset_nest_lock, omp_test_lock,
20184 omp_test_nest_lock, omp_set_dynamic, omp_set_nested,
20185 omp_set_num_threads, omp_get_dynamic, omp_get_nested,
20186 omp_in_parallel, omp_get_max_threads, omp_get_num_procs,
20187 omp_get_num_threads, omp_get_thread_num, omp_get_wtick,
20188 omp_get_wtime): Add ialias_redirect.
20189
201902005-10-30 Jakub Jelinek <jakub@redhat.com>
20191
20192 * fortran.c: Include stdlib.h.
20193
201942005-10-29 Jakub Jelinek <jakub@redhat.com>
20195
20196 * Makefile.am (env.o, env.lo): Depend on libgomp_f.h.
20197 * Makefile.in: Regenerated.
20198
201992005-10-28 Jakub Jelinek <jakub@redhat.com>
20200
20201 * mkomp_h.pl: Remove all -Wc, option prefixes in $COMPILE.
20202 * libgomp_f.h.in (omp_check_defines): New function.
20203 * env.c: Include libgomp_f.h.
20204 (initialize_env): Call omp_check_defines.
20205
20206 * testsuite/libgomp.dg/copyin-2.c: New test.
20207 * testsuite/libgomp.c++/copyin-2.C: New test.
20208 * testsuite/libgomp.fortran/threadprivate3.f90: New test.
20209
20210 * testsuite/libgomp.fortran/threadprivate2.f90: New test.
20211 * testsuite/libgomp.fortran/sharing2.f90: New test.
20212
20213 * testsuite/libgomp.dg/copyin-1.c: New test.
20214 * testsuite/libgomp.c++/copyin-1.C: New test.
20215
202162005-10-26 Jakub Jelinek <jakub@redhat.com>
20217
20218 * testsuite/libgomp.fortran/crayptr1.f90: New test.
20219
20220 * testsuite/libgomp.fortran/workshare1.f90: New test.
20221
20222 * libgomp.fortran/appendix-a/a.28.5.f90: Change into compile
20223 only test.
20224 * libgomp.fortran/sharing1.f90: New test.
20225
202262005-10-24 Jakub Jelinek <jakub@redhat.com>
20227
20228 PR c++/24502
20229 * testsuite/libgomp.c++/loop-7.C: New test.
20230
20231 * testsuite/libgomp.dg/nestedfn-2.c: New test.
20232
20233 * testsuite/libgomp.dg/nestedfn-1.c: New test.
20234 * testsuite/libgomp.fortran/reduction6.f90: New test.
20235 * testsuite/libgomp.fortran/nestedfn1.f90: New test.
20236
202372005-10-23 Richard Henderson <rth@redhat.com>
20238
20239 * testsuite/libgomp.c++/ctor-1.C: New.
20240 * testsuite/libgomp.c++/ctor-2.C: New.
20241 * testsuite/libgomp.c++/ctor-3.C: New.
20242 * testsuite/libgomp.c++/ctor-4.C: New.
20243 * testsuite/libgomp.c++/ctor-5.C: New.
20244 * testsuite/libgomp.c++/ctor-6.C: New.
20245 * testsuite/libgomp.c++/ctor-7.C: New.
20246 * testsuite/libgomp.c++/ctor-8.C: New.
20247 * testsuite/libgomp.c++/ctor-9.C: New.
20248
202492005-10-21 Diego Novillo <dnovillo@redhat.com>
20250
20251 PR 24455
20252 * testsuite/libgomp.c++/pr24455-1.C: New test.
20253 * testsuite/libgomp.c++/pr24455.C: New test.
20254 * testsuite/libgomp.dg/pr24455-1.c: New test.
20255 * testsuite/libgomp.dg/pr24455.c: New test.
20256
202572005-10-20 Richard Henderson <rth@redhat.com>
20258
20259 * testsuite/libgomp.c++/loop-6.C: New.
20260 * testsuite/libgomp.dg/loop-3.c: New.
20261
202622005-10-20 Jakub Jelinek <jakub@redhat.com>
20263
20264 * testsuite/libgomp.fortran/jacobi.f: Don't make i and j
20265 explicitly private.
20266 * testsuite/libgomp.fortran/omp_parse1.f90 (test_do): Make i
20267 explicitly shared.
20268
202692005-10-19 Diego Novillo <dnovillo@redhat.com>
20270
20271 * testsuite/libgomp.fortran/jacobi.f: New test.
20272
202732005-10-19 Richard Henderson <rth@redhat.com>
20274
20275 * configure.tgt (i?86-linux): Default to with_arch instead of
20276 CFLAGS. Add -mtune to match target_cpu.
20277 (x86_64-linux): Tune to i686.
20278
20279 * fortran.c (omp_test_nest_lock_): Fix typo.
20280
202812005-10-19 Jakub Jelinek <jakub@redhat.com>
20282
20283 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
20284 gomp_ordered_sync): Do nothing if team->nthreads == 1.
20285 * testsuite/libgomp.dg/ordered-3.c: New test.
20286
20287 * testsuite/libgomp.dg/appendix-a/a.18.1.c: Remove unconditional abort.
20288 Remove volatile keyword.
20289
20290 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Reorder variables
20291 in COMMON block to avoid warnings on 64-bit targets.
20292
202932005-10-18 Diego Novillo <dnovillo@redhat.com>
20294
20295 * testsuite/libgomp.dg/shared-3.c: New test.
20296
202972005-10-18 Jakub Jelinek <jakub@redhat.com>
20298
20299 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: Removed.
20300 * testsuite/libgomp.fortran/reduction5.f90: New test.
20301
203022005-10-18 Jakub Jelinek <jakub@redhat.com>
20303
20304 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Add -ffixed-form to
20305 dg-options.
20306 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise. Enable
20307 flush loop now that __sync_synchronize has proper memory barrier.
20308 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: Fix a typo.
20309 Add -ffixed-form to dg-options.
20310
203112005-10-17 Diego Novillo <dnovillo@redhat.com>
20312
20313 * testsuite/libgomp.fortran/fortran.exp: Also gather tests
20314 from subdirectories.
20315 * testsuite/libgomp.fortran/appendix-a/a.15.1.f90: New test.
20316 * testsuite/libgomp.fortran/appendix-a/a.16.1.f90: New test.
20317 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: New test.
20318 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: New test.
20319 * testsuite/libgomp.fortran/appendix-a/a.2.1.f90: New test.
20320 * testsuite/libgomp.fortran/appendix-a/a.21.1.f90: New test.
20321 * testsuite/libgomp.fortran/appendix-a/a.22.7.f90: New test.
20322 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: New test.
20323 * testsuite/libgomp.fortran/appendix-a/a.26.1.f90: New test.
20324 * testsuite/libgomp.fortran/appendix-a/a.28.1.f90: New test.
20325 * testsuite/libgomp.fortran/appendix-a/a.28.2.f90: New test.
20326 * testsuite/libgomp.fortran/appendix-a/a.28.3.f90: New test.
20327 * testsuite/libgomp.fortran/appendix-a/a.28.4.f90: New test.
20328 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: New test.
20329 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: New test.
20330 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: New test.
20331 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: New test.
20332 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: New test.
20333 * testsuite/libgomp.fortran/appendix-a/a.33.3.f90: New test.
20334 * testsuite/libgomp.fortran/appendix-a/a.38.1.f90: New test.
20335 * testsuite/libgomp.fortran/appendix-a/a.39.1.f90: New test.
20336 * testsuite/libgomp.fortran/appendix-a/a.4.1.f90: New test.
20337 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: New test.
20338 * testsuite/libgomp.fortran/appendix-a/a.5.1.f90: New test.
20339 * testsuite/libgomp.fortran/appendix-a/a10.1.f90: New test.
20340
203412005-10-17 Jakub Jelinek <jakub@redhat.com>
20342
20343 * testsuite/libgomp.dg/dg.exp: Only unset lang_* if
20344 lang_library_path exists. Use find instead of glob to gather tests.
20345 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: Removed.
20346
203472005-10-17 Diego Novillo <dnovillo@redhat.com>
20348
20349 * testsuite/libgomp.dg/appendix-a/a.15.1.c: New test.
20350 * testsuite/libgomp.dg/appendix-a/a.16.1.c: New test.
20351 * testsuite/libgomp.dg/appendix-a/a.18.1.c: New test.
20352 * testsuite/libgomp.dg/appendix-a/a.19.1.c: New test.
20353 * testsuite/libgomp.dg/appendix-a/a.2.1.c: New test.
20354 * testsuite/libgomp.dg/appendix-a/a.21.1.c: New test.
20355 * testsuite/libgomp.dg/appendix-a/a.26.1.c: New test.
20356 * testsuite/libgomp.dg/appendix-a/a.29.1.c: New test.
20357 * testsuite/libgomp.dg/appendix-a/a.3.1.c: New test.
20358 * testsuite/libgomp.dg/appendix-a/a.39.1.c: New test.
20359 * testsuite/libgomp.dg/appendix-a/a.4.1.c: New test.
20360 * testsuite/libgomp.dg/appendix-a/a.5.1.c: New test.
20361 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: New file.
20362
203632005-10-15 Jakub Jelinek <jakub@redhat.com>
20364
20365 * testsuite/libgomp.dg/vla-1.c: New test.
20366
20367 * testsuite/libgomp.fortran/reference2.f90: New test.
20368
20369 * testsuite/libgomp.fortran/character2.f90: Remove explicit
20370 declaration of omp_get_thread_num.
20371 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise. Add
20372 use omp_lib.
20373
20374 * testsuite/libgomp.fortran/reduction1.f90: New test.
20375 * testsuite/libgomp.fortran/reduction2.f90: New test.
20376 * testsuite/libgomp.fortran/reduction3.f90: New test.
20377 * testsuite/libgomp.fortran/reduction4.f90: New test.
20378
203792005-10-13 Richard Henderson <rth@redhat.com>
20380
20381 * Makefile.am (libgomp_la_SOURCES): Add bar.c.
20382 * Makefile.in: Regenerate.
20383 * barrier.c (GOMP_barrier): Use gomp_barrier_wait.
20384 * libgomp.h: Include bar.h.
20385 (struct gomp_barrier): Remove.
20386 (struct gomp_team): Add barrier. Replace master_barrier with
20387 master_release. Replace threads with ordered_release.
20388 (struct gomp_thread): Replace barrier with release.
20389 * ordered.c (gomp_ordered_first): Update for ordered_release change.
20390 (gomp_ordered_last, gomp_ordered_next, gomp_ordered_static_init,
20391 gomp_ordered_static_next, gomp_ordered_sync): Likewise.
20392 * single.c (GOMP_single_copy_start): Use gomp_barrier_wait.
20393 (GOMP_single_copy_end): Likewise.
20394 * team.c (gomp_threads_dock): New.
20395 (gomp_barrier_init, gomp_barrier_destroy): Remove.
20396 (gomp_thread_start): Use gomp_barrier_wait.
20397 (new_team, free_team): Update for gomp_team changes.
20398 (gomp_team_start): Use gomp_barrier_wait and gomp_barrier_reinit.
20399 (gomp_team_end): Use gomp_barrier_wait.
20400 (initialize_team): Update for gomp_thread changes.
20401 * work.c (gomp_work_share_end): Use gomp_barrier_wait_start.
20402 (gomp_work_share_end_nowait): Use atomic ops when available.
20403 * config/linux/bar.c, config/linux/bar.h: New files.
20404 * config/posix/bar.c, config/posix/bar.h: New files.
20405
204062005-10-13 Jakub Jelinek <jakub@redhat.com>
20407
20408 * single.c (GOMP_single_copy_end): Don't segfault if team is NULL.
20409 * testsuite/libgomp.dg/single-2.c: New test.
20410
20411 * testsuite/libgomp.dg/dg.exp (lang_library_path, lang_test_file,
20412 lang_link_flags): Unset, so that they aren't inherited from previously
20413 sourced *.exp.
20414
20415 * testsuite/libgomp.fortran/threadprivate1.f90: New test.
20416
204172005-10-12 Richard Henderson <rth@redhat.com>
20418
20419 * testsuite/lib/libgomp-dg.exp: Set blddir at toplevel.
20420 (libgomp_init): Use lang_test_file, lang_library_path, and
20421 lang_link_flags, set by the subdirectory files. Add -fopenmp here.
20422
20423 * testsuite/libgomp.fortran/fortran.exp (lang_library_path): New.
20424 (lang_test_file, lang_link_flags): New.
20425 (DEFAULT_FFLAGS, ALWAYS_CFLAGS, multilibs, blddir): Remove.
20426
20427 * testsuite/libgomp.c++/c++.exp, testsuite/libgomp.c++/loop-1.C,
20428 testsuite/libgomp.c++/loop-2.C, testsuite/libgomp.c++/loop-3.C,
20429 testsuite/libgomp.c++/loop-4.C, testsuite/libgomp.c++/nested-1.C,
20430 testsuite/libgomp.c++/parallel-1.C,
20431 testsuite/libgomp.c++/reduction-1.C,
20432 testsuite/libgomp.c++/reduction-2.C,
20433 testsuite/libgomp.c++/reduction-3.C,
20434 testsuite/libgomp.c++/sections-1.C, testsuite/libgomp.c++/shared-1.C,
20435 testsuite/libgomp.c++/shared-2.C, testsuite/libgomp.c++/single-1.C,
20436 testsuite/libgomp.c++/single-2.C, testsuite/libgomp.c++/single-3.C:
20437 New files, largely cribbed from the C testsuite.
20438
204392005-10-12 Jakub Jelinek <jakub@redhat.com>
20440
20441 * testsuite/libgomp.fortran/character1.f90: New test.
20442 * testsuite/libgomp.fortran/character2.f90: New test.
20443
20444 * testsuite/libgomp.dg/nested-1.c: New test.
20445 * testsuite/libgomp.dg/nested-2.c: New test.
20446 * testsuite/libgomp.fortran/do1.f90: New test.
20447 * testsuite/libgomp.fortran/do2.f90: New test.
20448
20449 * testsuite/libgomp.fortran/reference1.f90: New test.
20450
204512005-10-11 Jakub Jelinek <jakub@redhat.com>
20452
20453 * testsuite/libgomp.dg/reduction-1.c: New test.
20454 * testsuite/libgomp.dg/reduction-2.c: New test.
20455 * testsuite/libgomp.dg/reduction-3.c: New test.
20456
204572005-10-10 Jakub Jelinek <jakub@redhat.com>
20458
20459 * testsuite/libgomp.dg/atomic-1.c: New test.
20460 * testsuite/libgomp.dg/atomic-2.c: New test.
20461
204622005-10-09 Richard Henderson <rth@redhat.com>
20463
20464 * critical.c (atomic_lock): New.
20465 (initialize_critical): Initialize it.
20466 (GOMP_atomic_start, GOMP_atomic_end): New.
20467 * libgomp.map: Export them.
20468 * libgomp_g.h: Declare them.
20469
20470 * testsuite/libgomp.dg/atomic-10.c: Move from gcc testsuite.
20471
204722005-10-02 Richard Henderson <rth@redhat.com>
20473
20474 * configure.ac: Move save_CFLAGS hack earlier. Append -Wall/-Werror
20475 to XCFLAGS instead of CFLAGS.
20476
204772005-09-30 Richard Henderson <rth@redhat.com>
20478
20479 * configure.ac: Determine whether -pthread or -lpthread is needed.
20480 * Makefile.am (libgomp_la_LDFLAGS): Remove explicit -lpthread.
93d90219 20481 * Makefile.in, configure: Rebuild.
953ff289
DN
20482
204832005-09-28 Richard Henderson <rth@redhat.com>
20484
20485 * testsuite/libgomp.dg/omp-loop03.c: Fix return code.
20486 * testsuite/libgomp.dg/omp-single-3.c: New test.
20487
204882005-09-28 Diego Novillo <dnovillo@redhat.com>
20489
20490 * testsuite/libgomp.dg/omp-single-2.c: New test.
20491 * testsuite/libgomp.dg/shared-2.c: Fix return code.
20492
204932005-09-27 Richard Henderson <rth@redhat.com>
20494
20495 * testsuite/libgomp.dg/omp-loop03.c: Add initial barrier.
20496 * testsuite/libgomp.dg/omp-parallel-for.c: Specify static schedule.
20497
204982005-09-27 Jakub Jelinek <jakub@redhat.com>
20499
20500 * testsuite/libgomp.dg/omp-loop03.c: New test.
20501
205022005-09-27 Diego Novillo <dnovillo@redhat.com>
20503
20504 * testsuite/libgomp.dg/omp-parallel-for.c: New test.
20505
205062005-09-27 Diego Novillo <dnovillo@redhat.com>
20507
20508 * testsuite/libgomp.dg/omp-single-1.c: New test.
20509 * testsuite/libgomp.dg/shared-1.c: Return 0.
20510 Add prototype for abort.
20511 * testsuite/libgomp.dg/shared-2.c: Likewise.
20512
205132005-09-26 Jakub Jelinek <jakub@redhat.com>
20514
20515 * testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
20516 constructs.
20517
205182005-09-26 Diego Novillo <dnovillo@redhat.com>
20519
20520 * testsuite/libgomp.dg/shared-1.c: New test.
20521 * testsuite/libgomp.dg/shared-2.c: New test.
20522
205232005-09-24 Richard Henderson <rth@redhat.com>
20524
20525 * testsuite/libgomp.dg/omp_workshare3.c: Mark dg-error.
20526
205272005-09-24 Richard Henderson <rth@redhat.com>
20528
20529 * iter.c (gomp_iter_static_next): Round up when computing number
20530 of iterations. Don't bother distributing a remainder equally.
20531
20532 * testsuite/libgomp.dg/omp-loop01.c (main1): Rename from main.
20533 Don't call srand. Zero b before testing.
20534 (main): New.
20535
205362005-09-24 Jakub Jelinek <jakub@redhat.com>
20537
20538 * testsuite/libgomp.fortran/omp_atomic1.f90: New test.
20539 * testsuite/libgomp.fortran/omp_atomic2.f90: New test.
20540
205412005-09-23 Jakub Jelinek <jakub@redhat.com>
20542
20543 * testsuite/libgomp.fortran/omp_parse1.f90: Add a test for !$omp do
20544 without !$omp end do, followed immediately by subroutine end.
20545
205462005-09-23 Diego Novillo <dnovillo@redhat.com>
20547
20548 * testsuite/libgomp.dg/omp-parallel-if.c: New test.
20549
205502005-09-22 Richard Henderson <rth@redhat.com>
20551
20552 * critical.c (GOMP_critical_name_start): Change argument to void**.
20553 Reuse the pointer space if the mutex fits.
20554 (GOMP_critical_name_end): Likewise.
20555 (initialize_critical): Don't define if GOMP_MUTEX_INIT_0.
20556 * libgomp_g.h (GOMP_critical_name_start): Update decl.
20557 (GOMP_critical_name_end): Likewise.
20558 * config/linux/mutex.h (GOMP_MUTEX_INIT_0): New.
20559 * config/posix/mutex.h (GOMP_MUTEX_INIT_0): New.
20560
205612005-09-20 Richard Henderson <rth@redhat.com>
20562
20563 * critical.c (GOMP_critical_name_start, GOMP_critical_name_end): New.
20564 (create_lock_lock): New.
20565 (initialize_critical): Initialize it.
20566 * libgomp.map (GOMP_critical_name_start, GOMP_critical_name_end): New.
20567 * libgomp_g.h (GOMP_ordered_start, GOMP_ordered_end): Declare.
20568
205692005-09-20 Diego Novillo <dnovillo@redhat.com>
20570
20571 * testsuite/libgom.dg/omp-loop01.c: Include stdio.h.
20572
205732005-09-20 Diego Novillo <dnovillo@redhat.com>
20574
20575 * testsuite/libgomp.dg/omp-loop01.c: New test.
20576 * testsuite/libgomp.dg/omp-loop02.c: New test.
20577
205782005-09-20 Jakub Jelinek <jakub@redhat.com>
20579
20580 * configure.ac (AC_PROG_FC): Add.
20581 (USE_FORTRAN): New automake conditional.
20582 * configure: Rebuilt.
20583 * Makefile.am (libgomp_la_SOURCES): Add fortran.c.
20584 (nodist_include_HEADERS): Add omp_lib.h, omp_lib.f90 and libgomp_f.h.
20585 If USE_FORTRAN, add also omp_lib.mod and omp_lib_kinds.mod.
20586 Add rules to build them.
20587 * Makefile.in: Rebuilt.
20588 * mkomp_h.pl: Compute and replace also OMP_LOCK_KIND and
20589 OMP_NEST_LOCK_KIND.
20590 * libgomp.map: Add Fortran wrappers.
20591 * libgomp_f.h.in: New file.
20592 * omp_lib.h.in: New file.
20593 * omp_lib.f90.in: New file.
20594 * fortran.c: New file.
20595 * testsuite/lib/libgomp-dg.exp: Load a few more .exp files.
20596 Append libgfortran directory to LD_LIBRARY_PATH if it exists.
20597 Add -Lpath_to_libgfortran and -lgfortran -lgfortranbegin if
20598 libgfortran has been built.
20599 * testsuite/libgomp.fortran/fortran.exp: New file.
20600 * testsuite/libgomp.fortran/omp_cond1.f: New test.
20601 * testsuite/libgomp.fortran/omp_cond2.f: New test.
20602 * testsuite/libgomp.fortran/omp_cond3.F90: New test.
20603 * testsuite/libgomp.fortran/omp_cond4.F90: New test.
20604 * testsuite/libgomp.fortran/omp_hello.f: New test.
20605 * testsuite/libgomp.fortran/omp_orphan.f: New test.
20606 * testsuite/libgomp.fortran/omp_parse1.f90: New test.
20607 * testsuite/libgomp.fortran/omp_parse2.f90: New test.
20608 * testsuite/libgomp.fortran/omp_parse3.f90: New test.
20609 * testsuite/libgomp.fortran/omp_parse4.f90: New test.
20610 * testsuite/libgomp.fortran/omp_reduction.f: New test.
20611 * testsuite/libgomp.fortran/omp_workshare1.f: New test.
20612 * testsuite/libgomp.fortran/omp_workshare2.f: New test.
20613
206142005-08-30 Richard Henderson <rth@redhat.com>
20615
20616 * loop.c (GOMP_loop_static_start): Provide fallback wrapper
20617 function for when aliases are not usable.
20618 (GOMP_loop_dynamic_start, GOMP_loop_guided_start,
20619 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
20620 GOMP_loop_ordered_guided_start, GOMP_loop_static_next,
20621 GOMP_loop_dynamic_next, GOMP_loop_guided_next,
20622 GOMP_loop_ordered_static_next, GOMP_loop_ordered_dynamic_next,
20623 GOMP_loop_ordered_guided_next): Likewise.
20624 * ordered.c (GOMP_ordered_start): Likewise.
20625
206262005-08-01 Diego Novillo <dnovillo@redhat.com>
20627
20628 * testsuite/libgomp.dg/dg.exp: Use -O2 for now.
20629 * testsuite/libgomp.dg/omp_hello.c: Fix return code
20630 * testsuite/libgomp.dg/omp_matvec.c: Likewise.
20631 * testsuite/libgomp.dg/omp_orphan.c: Likewise
20632 * testsuite/libgomp.dg/omp_reduction.c: Likewise
20633 * testsuite/libgomp.dg/omp_workshare1.c: Likewise
20634 * testsuite/libgomp.dg/omp_workshare2.c: Likewise
20635 * testsuite/libgomp.dg/omp_workshare3.c: Likewise
20636 * testsuite/libgomp.dg/omp_workshare4.c: Likewise
20637
206382005-07-07 Eric Christopher <echristo@redhat.com>
20639 Diego Novillo <dnovillo@redhat.com>
20640
20641 * testsuite/libgomp.dg/dg.exp: Add -fopenmp to DEFAULT_CFLAGS.
20642 * testsuite/libgomp.dg/omp_hello.c: Add standard includes, fix
20643 up code.
20644 * testsuite/libgomp.dg/omp_matvec.c: Ditto.
20645 * testsuite/libgomp.dg/omp_orphan.c: Ditto.
20646 * testsuite/libgomp.dg/omp_reduction.c: Ditto.
20647 * testsuite/libgomp.dg/omp_workshare1.c: Ditto.
20648 * testsuite/libgomp.dg/omp_workshare2.c: Ditto.
20649 * testsuite/libgomp.dg/omp_workshare3.c: Ditto.
20650 * testsuite/libgomp.dg/omp_workshare4.c: Ditto.
20651
206522005-06-13 Diego Novillo <dnovillo@redhat.com>
20653
20654 * TOPLEVEL.patch: Remove.
20655
206562005-05-16 Richard Henderson <rth@redhat.com>
20657
20658 * configure.ac: Test for clock_gettime.
20659 * config.h.in, configure: Rebuild.
20660 * config/posix/time.c: Use recommended TIME_WITH_SYS_TIME pattern.
20661 (omp_get_wtime): Use clock_gettime if available.
20662 (omp_get_wtick): Use clock_getres if available.
20663
206642005-05-11 Richard Henderson <rth@redhat.com>
20665
20666 * config/linux/ia64/futex.h: New file.
20667 * configure.tgt: Use it.
20668
20669 * team.c (gomp_barrier_init, gomp_barrier_destroy): Mark inline.
20670
206712005-05-07 Richard Henderson <rth@redhat.com>
20672
20673 * config/linux/powerpc/futex.h: New file.
20674 * configure.tgt: Use it.
20675
20676 * config/linux/i486/futex.h: Merge ...
20677 * config/linux/x86_64/futex.h: ... into ...
20678 * config/linux/x86/futex.h: ... here.
20679 * configure.tgt: Update to match.
20680
206812005-05-06 Richard Henderson <rth@redhat.com>
20682
20683 * config/linux/alpha/futex.h: Conditionally define SYS_futex.
20684 * config/linux/i486/futex.h: Likewise.
20685 * config/linux/x86_64/futex.h: Likewise.
20686
20687 * config/linux/lock.c: New file.
20688 * config/linux/omp-lock.h: New file.
20689
20690 * critical.c, env.h: Don't include omp.h
20691 * config/posix/lock.c: Include libgomp.h instead of omp.h.
20692 * config/posix/time.c: Likewise.
20693 * config/posix/omp-lock.h: New file.
20694 * libgomp.h: Include omp-lock.h and omp.h.
20695 * Makefile.am (nodist_include_HEADERS): New.
20696 (omp.h): New rule.
20697 * configure.ac (PERL): New.
20698 * mkomp_h.pl: New file.
20699 * omp.h.in: Rename from omp.h; replace omp_lock_t and omp_nest_lock_t
20700 with templates.
20701 * Makefile.in, configure, testsuite/Makefile.in: Rebuild.
20702
20703 * testsuite/lib/libgomp-dg.exp (libgomp_init): Add include into
20704 build directory. Re-add -march=i486 hack.
20705
20706 * testsuite/lib/libgomp-dg.exp (libgomp_compile_flags): Remove.
20707 (libgomp_link_flags): Remove.
20708 (libgomp_initialized): Remove.
20709 (libgomp_init): Don't protect from reinitialization. Copy code
20710 from libstdc++ for getting the multilib set correctly.
20711
207122005-05-05 Richard Henderson <rth@redhat.com>
20713
20714 * config/linux/alpha/futex.h: New file.
20715 * configure.tgt (alpha*-*-linux*): Use it.
20716
20717 * config/posix/mutex.c: New file.
20718 * config/posix/sem.c: Use libgomp.h.
20719
20720 * configure.tgt (x86_64-linux): Also test CC for -m32.
20721 * config/linux/x86_64/futex.h (futex_wait): Fix r10 usage.
20722
a1daed2d 20723 * testsuite/lib/libgomp-dg.exp (libgomp_link_flags): Add /
953ff289
DN
20724 after $gccpath.
20725
20726 * Makefile.am (SUBDIRS): New.
20727 (libgomp_la_LDFLAGS): Add -lpthread.
20728 * configure.ac (AM_INIT_AUTOMAKE): Enable dependencies.
20729 * Makefile.in, aclocal.m4, config.h.in, configure: Rebuild.
20730
20731 * libgomp_g.h: New file.
20732 * libgomp.h: Split out all public declarations to libgomp_g.h.
20733 Use pragma GCC visibility instead of ATTRIBUTE_HIDDEN.
20734 * config/linux/mutex.h: Remove ATTRIBUTE_HIDDEN.
20735 * config/linux/sem.h: Likewise.
20736 * config/posix/sem.h: Likewise.
20737
20738 * Makefile.am (AM_LDFLAGS): New.
20739 (libgomp_version_script): Split out from ...
20740 (libgomp_la_LDFLAGS): ... here.
20741 (libgomp_version_info): New.
20742 * acinclude.m4 (LIBGOMP_CHECK_TLS): Use LIBGOMP_ENABLE.
20743 (LIBGOMP_ENABLE): New.
20744 (LIBGOMP_CHECK_LINKER_FEATURES): New.
20745 (LIBGOMP_ENABLE_SYMVERS): New.
20746 * configure.ac (AC_INIT): Version 1.0.
20747 (enable-version-specific-runtime-libs): Use LIBGOMP_ENABLE.
20748 (enable-linux-futex): Likewise. Rename from enable-futex.
20749 (libtool_VERSION): New.
20750 (LIBGOMP_ENABLE_SYMVERS): Use it.
20751 * configure.tgt: Check with_gnu_ld wrt have_tls optimizations.
20752 * Makefile.in, aclocal.m4, configure: Rebuild.
20753
20754 * config/linux/mutex.c: Include libgomp.h instead of mutex.h.
20755 (gomp_mutex_unlock_slow): Fix typo.
20756 * config/linux/sem.c: Similarly.
20757 (gomp_sem_post_slow): Fix typo.
20758 * config/linux/sem.h (gomp_sem_post_slow): Fix typo.
20759 * config/linux/i486/futex.h: Remove USE_LINUX_SYSENTER code.
20760 [__PIC__] (sys_futex0): Don't use tmp output in asm.
20761
20762 * Makefile.am (AM_CFLAGS): Expand with XCFLAGS.
20763 (libgomp_la_LDFLAGS): Add top_srcdir to path.
20764 * acinclude.m4: Copy libtool.m4 stuff from libgfortran.
20765 * configure.ac: Check for getloadavg. Substitute XCFLAGS and
20766 XLDFLAGS. Add XCFLAGS to CFLAGS around LIBGOMP_CHECK_SYNC_BUILTINS.
20767 * configure.tgt: Set XCFLAGS and XLDFLAGS instead of CFLAGS and
20768 LDFLAGS. Pull enable_futex check to top-level.
20769 * libgomp.h: Fix sem.h and mutex.h includes. Define ATTRIBUTE_HIDDEN.
20770 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
20771
20772 First attempt at real configury.
20773 * Makefile, config.h: Remove file.
20774 * Makefile.am, Makefile.in: New file.
20775 * acinclude.m4 aclocal.m4: New file.
20776 * configure.ac, configure.tgt, configure: New file.
20777
20778 * config/posix/lock.c: Rename from sys-lock.c.
20779 * config/posix/mutex.h: Rename from sys-mutex.h.
20780 * config/posix/sem.c: Rename from sys-sem.c.
20781 * config/posix/sem.h: Rename from sys-sem.h.
20782 * config/posix/proc.c: Rename from sys-proc.c.
20783 * config/posix/time.c: Rename from sys-proc.c.
20784
20785 * config/linux/mutex.c: New file.
20786 * config/linux/mutex.h: New file.
20787 * config/linux/sem.c: New file.
20788 * config/linux/sem.h: New file.
20789 * config/linux/i486/futex.h: New file.
20790 * config/linux/x86_64/futex.h: New file.
20791
207922005-05-04 Richard Henderson <rth@redhat.com>
20793
20794 * iter.c (gomp_iter_dynamic_next, gomp_iter_guided_next): New.
20795 * libgomp.h: Declare them.
20796 * loop.c (gomp_loop_dynamic_start, gomp_loop_guided_start,
20797 gomp_loop_dynamic_next, gomp_loop_guided_next): Use them.
20798
207992005-05-04 Richard Henderson <rth@redhat.com>
20800
20801 * libgomp-1 code drop
20802
208032005-05-04 Richard Henderson <rth@redhat.com>
20804
20805 * iter.c (gomp_iter_static_next): Return tri-state on 0.
20806 * ordered.c (gomp_ordered_static_next): Remove not_last argument.
20807 * libgomp.h (struct gomp_team_state): Make static_trip unsigned.
20808 (gomp_iter_static_next): Update.
20809 (gomp_ordered_static_next): Update.
20810 * loop.c (gomp_loop_static_start): Update for gomp_iter_static_next.
20811 (gomp_loop_ordered_static_start): Likewise. Exit early for a
20812 totally empty range.
20813 (gomp_loop_ordered_static_next): Refine test for calling
20814 gomp_ordered_static_next.
20815 * testsuite/ordered-1.c: Add case for more threads than iterations.
20816
20817 * iter.c (gomp_iter_runtime_next_locked): Remove.
20818 * loop.c (gomp_loop_static_start, gomp_loop_dynamic_start,
a1daed2d 20819 gomp_loop_guided_start, gomp_loop_ordered_static_start,
953ff289
DN
20820 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
20821 gomp_loop_static_next, gomp_loop_dynamic_next, gomp_loop_guided_next,
20822 gomp_loop_ordered_static_next, gomp_loop_ordered_dynamic_next,
20823 gomp_loop_ordered_guided_next): Downcase name, make static, add
20824 an external alias with the old name.
20825 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
20826 GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Use a
20827 switch and call one of the above static functions.
20828 * libgomp.h: Update.
20829
20830 * work.c (gomp_work_share_start): Lock the mutex for !first too.
20831 * loop.c (GOMP_loop_static_start, GOMP_loop_dynamic_start,
20832 GOMP_loop_guided_start, GOMP_loop_runtime_start,
20833 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
20834 GOMP_loop_ordered_guided_start): Update to match.
20835 * sections.c (GOMP_sections_start): Likewise.
20836 * single.c (GOMP_single_start, GOMP_single_copy_start): Likewise.
20837
20838 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
20839 gomp_ordered_static_init, gomp_ordered_static_next): Rename s/_loop//.
20840 Use bounds check instead of modulus.
20841 (gomp_ordered_sync): Split out of GOMP_ordered_start.
20842 (gomp_ordered_last): Don't sync with ordered_owner here.
20843 (gomp_ordered_next): Likewise.
20844 (gomp_ordered_static_loop_next): Likewise.
20845 * loop.c, libgomp.h: Update to match.
20846
20847 * libgomp.h (GOMP_barrier): Declare.
20848
20849 * testsuite/barrier-1.c: New file.
20850 * testsuite/critical-1.c: New file.
20851 * testsuite/ordered-2.c: New file.
20852 * testsuite/ordered-1.c: New file.
20853 * testsuite/sections-1.c: New file.
20854 * testsuite/single-1.c: New file.
20855 * testsuite/Makefile (TESTS): Add them.
20856
208572005-05-04 Richard Henderson <rth@redhat.com>
20858
20859 * libgomp.h (struct gomp_work_share): Add ordered_owner.
20860 * loop.c (GOMP_loop_static_start): If not the startup thread,
20861 acquire the mutex to wait for initialization complete.
20862 (GOMP_loop_ordered_static_start): Likewise.
20863 (GOMP_loop_ordered_runtime_start): Likewise.
20864 (GOMP_loop_ordered_static_first): Remove.
20865 (GOMP_loop_ordered_dynamic_first): Remove.
20866 (GOMP_loop_ordered_guided_first): Remove.
20867 (GOMP_loop_ordered_runtime_first): Remove.
20868 * ordered.c (gomp_ordered_loop_first): Post to own release when
20869 we're the first thread.
20870 (gomp_ordered_loop_last): Wait on release if not owner.
20871 (gomp_ordered_loop_next): Likewise.
20872 (gomp_ordered_static_loop_init): New.
20873 (gomp_ordered_static_loop_next): Use ordered_owner.
20874 (GOMP_ordered_start): Likewise.
20875 * work.c (gomp_new_work_share): Initialize ordered_owner.
20876
208772005-05-03 Richard Henderson <rth@redhat.com>
20878
20879 * Makefile (OPT): New.
20880 (CFLAGS): Use it.
20881
20882 * loop.c (GOMP_loop_end, GOMP_loop_end_nowait): New.
20883 * sections.c (GOMP_sections_end, GOMP_sections_end_nowait): New.
20884 * libgomp.h, libgomp.map, NOTES: Update to match.
20885
20886 * team.c (struct gomp_thread_start_data): Remove ts, fn, data.
20887 Add initialized and thr members.
20888 (gomp_thread_start): Pause when initially spawned to wait for
20889 the whole team to be created.
20890 (gomp_team_start): Release team members at the end.
20891
20892 * testsuite/loop-1.c (N): New. Use it instead of hardcoded 100.
20893 (f_foo_1): Use GOMP_loop_end.
20894 (f_foo_2): Use GOMP_loop_end_nowait.
20895
20896 * testsuite/loop-2.c: New file.
20897 * testsuite/Makefile (TESTS): Add it.
20898
208992005-05-03 Richard Henderson <rth@redhat.com>
20900
20901 * iter.c (gomp_iter_static_next): Fix overflow check typo.
20902 (gomp_iter_dynamic_next_locked): Fix overflow check thinko.
20903 * team.c (new_team): Initialize oldest_live_gen to 1 if no
20904 initial work_share.
20905
20906 * testsuite/Makefile: New file.
20907 * testsuite/loop-1.c: New file.
20908
209092005-05-03 Richard Henderson <rth@redhat.com>
20910
20911 Initial implementation and checkin.
21fa2a29 20912\f
6a720d41 20913Copyright (C) 2005-2024 Free Software Foundation, Inc.
21fa2a29
JJ
20914
20915Copying and distribution of this file, with or without modification,
20916are permitted in any medium without royalty provided the copyright
20917notice and this notice are preserved.