]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgomp/ChangeLog
analyzer: don't call binding_key::make on empty regions [PR108065]
[thirdparty/gcc.git] / libgomp / ChangeLog
CommitLineData
c6b12b80
GA
12022-12-10 Tobias Burnus <tobias@codesourcery.com>
2
3 * libgomp.h (struct target_mem_desc): Predeclare; move
4 below after 'reverse_splay_tree_node' and add rev_array
5 member.
6 (struct reverse_splay_tree_key_s, reverse_splay_compare): New.
7 (reverse_splay_tree_node, reverse_splay_tree,
8 reverse_splay_tree_key): New typedef.
9 (struct gomp_device_descr): Add mem_map_rev member.
10 * oacc-host.c (host_dispatch): NULL init .mem_map_rev.
11 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_get_num_devices): Claim
12 support for GOMP_REQUIRES_REVERSE_OFFLOAD.
13 * splay-tree.h (splay_tree_callback_stop): New typedef; like
14 splay_tree_callback but returning int not void.
15 (splay_tree_foreach_lazy): Define; like splay_tree_foreach but
16 taking splay_tree_callback_stop as argument.
17 * splay-tree.c (splay_tree_foreach_internal_lazy,
18 splay_tree_foreach_lazy): New; but early exit if callback returns
19 nonzero.
20 * target.c: Instatiate splay_tree_c with splay_tree_prefix 'reverse'.
21 (gomp_map_lookup_rev): New.
22 (gomp_load_image_to_device): Handle reverse-offload function
23 lookup table.
24 (gomp_unload_image_from_device): Free devicep->mem_map_rev.
25 (struct gomp_splay_tree_rev_lookup_data, gomp_splay_tree_rev_lookup,
26 gomp_map_rev_lookup, struct cpy_data, gomp_map_cdata_lookup_int,
27 gomp_map_cdata_lookup): New auxiliary structs and functions for
28 gomp_target_rev.
29 (gomp_target_rev): Implement reverse offloading and its mapping.
30 (gomp_target_init): Init current_device.mem_map_rev.root.
31 * testsuite/libgomp.fortran/reverse-offload-2.f90: New test.
32 * testsuite/libgomp.fortran/reverse-offload-3.f90: New test.
33 * testsuite/libgomp.fortran/reverse-offload-4.f90: New test.
34 * testsuite/libgomp.fortran/reverse-offload-5.f90: New test.
35 * testsuite/libgomp.fortran/reverse-offload-5a.f90: New test without
36 mapping of on-device allocated variables.
37
40ce6485
GA
382022-12-09 Tobias Burnus <tobias@codesourcery.com>
39
40 * libgomp.texi (5.1 Impl. Status): Split allocate clause/directive
41 item about 'align'; mark clause as 'Y' and directive as 'N'.
42 * testsuite/libgomp.fortran/allocate-2.f90: New test.
43 * testsuite/libgomp.fortran/allocate-3.f90: New test.
44
3fe66f7f
GA
452022-12-06 Marcel Vollweiler <marcel@codesourcery.com>
46
47 * config/gcn/icv-device.c (omp_get_teams_thread_limit): Added to
48 allow processing of device-specific values.
49 (omp_set_teams_thread_limit): Likewise.
50 (ialias): Likewise.
51 * config/nvptx/icv-device.c (omp_get_teams_thread_limit): Likewise.
52 (omp_set_teams_thread_limit): Likewise.
53 (ialias): Likewise.
54 * icv-device.c (omp_get_teams_thread_limit): Likewise.
55 (ialias): Likewise.
56 (omp_set_teams_thread_limit): Likewise.
57 * icv.c (omp_set_teams_thread_limit): Removed.
58 (omp_get_teams_thread_limit): Likewise.
59 (ialias): Likewise.
60 * libgomp.texi: Updated documentation for nvptx and gcn corresponding
61 to the limitation of the number of teams.
62 * plugin/plugin-gcn.c (limit_teams): New helper function that limits
63 the number of teams by twice the number of compute units.
64 (parse_target_attributes): Limit the number of teams on gcn offload
65 devices.
66 * target.c (get_gomp_offload_icvs): Added teams_thread_limit_var
67 handling.
68 (gomp_load_image_to_device): Added a size check for the ICVs struct
69 variable.
70 (gomp_copy_back_icvs): New function that is used in GOMP_target_ext to
71 copy back the ICV values from device to host.
72 (GOMP_target_ext): Update the number of teams and threads in the kernel
73 args also considering device-specific values.
74 * testsuite/libgomp.c-c++-common/icv-4.c: Fixed an error in the reading
75 of OMP_TEAMS_THREAD_LIMIT from the environment.
76 * testsuite/libgomp.c-c++-common/icv-5.c: Extended.
77 * testsuite/libgomp.c-c++-common/icv-6.c: Extended.
78 * testsuite/libgomp.c-c++-common/icv-7.c: Extended.
79 * testsuite/libgomp.c-c++-common/icv-9.c: New test.
80 * testsuite/libgomp.fortran/icv-5.f90: New test.
81 * testsuite/libgomp.fortran/icv-6.f90: New test.
82
832022-12-06 Tobias Burnus <tobias@codesourcery.com>
84
85 * libgomp.texi (OpenMP 5.2): Add missing 'the'.
86 (TR11): Add missing '@tab N @tab'.
87
6eea85a9
GA
882022-11-30 Tobias Burnus <tobias@codesourcery.com>
89
90 * libgomp.texi (OpenMP Context Selectors): Add 'gfx803' to gcn's isa.
91
922022-11-30 Paul-Antoine Arras <pa@codesourcery.com>
93
94 * testsuite/libgomp.c/declare-variant-4-fiji.c: New test.
95 * testsuite/libgomp.c/declare-variant-4-gfx803.c: New test.
96 * testsuite/libgomp.c/declare-variant-4-gfx900.c: New test.
97 * testsuite/libgomp.c/declare-variant-4-gfx906.c: New test.
98 * testsuite/libgomp.c/declare-variant-4-gfx908.c: New test.
99 * testsuite/libgomp.c/declare-variant-4-gfx90a.c: New test.
100 * testsuite/libgomp.c/declare-variant-4.h: New header file.
101
b7748535
GA
1022022-11-28 Tobias Burnus <tobias@codesourcery.com>
103
104 * libgomp.texi (OpenMP 5.2): Mark end-directive as Y.
105
d769c504
GA
1062022-11-25 Sandra Loosemore <sandra@codesourcery.com>
107
108 * testsuite/lib/libgomp.exp: Load scanoffloadipa.exp library.
109 * testsuite/libgomp.c/target-simd-clone-1.c: New.
110 * testsuite/libgomp.c/target-simd-clone-2.c: New.
111 * testsuite/libgomp.c/target-simd-clone-3.c: New.
112
1132022-11-25 Tobias Burnus <tobias@codesourcery.com>
114
115 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Use unsigned int
116 for 'i' to match 'fn_entries'; regard absent GOMP_REV_OFFLOAD_VAR
117 as valid and the code having no reverse-offload code.
118 * testsuite/libgomp.c-c++-common/reverse-offload-2.c: New test.
119
1202022-11-25 Tobias Burnus <tobias@codesourcery.com>
121
122 * libgomp.texi (OpenMP Implementation Status): Add three 5.1 items
123 and status for Technical Report (TR) 11.
124
8b7fee1d
GA
1252022-11-21 Tobias Burnus <tobias@codesourcery.com>
126
127 * config/gcn/libgomp-gcn.h (struct output):
128 Remove 'msg_u64' from the union, change
129 value_u64[2] to value_u64[6].
130 * config/gcn/target.c (GOMP_target_ext): Update accordingly.
131 * plugin/plugin-gcn.c (process_reverse_offload, console_output):
132 Likewise.
133
fb98ede8
GA
1342022-11-19 Tobias Burnus <tobias@codesourcery.com>
135
136 * config/gcn/libgomp-gcn.h: New file; contains
137 struct output, declared previously in plugin-gcn.c.
138 * config/gcn/target.c: Include it.
139 (GOMP_ADDITIONAL_ICVS): Declare as extern var.
140 (GOMP_target_ext): Handle reverse offload.
141 * plugin/plugin-gcn.c: Include libgomp-gcn.h.
142 (struct kernargs): Replace struct def by the one
143 from libgomp-gcn.h for output_data.
144 (process_reverse_offload): New.
145 (console_output): Call it.
146
80909529
GA
1472022-11-16 Tobias Burnus <tobias@codesourcery.com>
148 Andrew Stubbs <ams@codesourcery.com>
149
150 * config/gcn/team.c (gomp_gcn_enter_kernel): Use
151 __builtin_gcn_kernarg_ptr instead of asm ("s8").
152
83d400bd
GA
1532022-11-14 Martin Liska <mliska@suse.cz>
154
155 Revert:
156 2022-11-14 Martin Liska <mliska@suse.cz>
157
158 * doc/amd-radeon-gcn.rst: New file.
159 * doc/conf.py: New file.
160 * doc/copyright.rst: New file.
161 * doc/cuda-streams-usage.rst: New file.
162 * doc/enabling-openacc.rst: New file.
163 * doc/enabling-openmp.rst: New file.
164 * doc/first-invocation-nvidia-cublas-library-api.rst: New file.
165 * doc/first-invocation-openacc-library-api.rst: New file.
166 * doc/funding.rst: New file.
167 * doc/general-public-license-3.rst: New file.
168 * doc/gnu-free-documentation-license.rst: New file.
169 * doc/implementation-status-and-implementation-defined-behavior.rst: New file.
170 * doc/index.rst: New file.
171 * doc/indices-and-tables.rst: New file.
172 * doc/introduction.rst: New file.
173 * doc/memory-allocation-with-libmemkind.rst: New file.
174 * doc/nvptx.rst: New file.
175 * doc/offload-target-specifics.rst: New file.
176 * doc/openacc-environment-variables.rst: New file.
177 * doc/openacc-environment-variables/accdevicenum.rst: New file.
178 * doc/openacc-environment-variables/accdevicetype.rst: New file.
179 * doc/openacc-environment-variables/accproflib.rst: New file.
180 * doc/openacc-environment-variables/gccaccnotify.rst: New file.
181 * doc/openacc-introduction.rst: New file.
182 * doc/openacc-library-and-environment-variables.rst: New file.
183 * doc/openacc-library-interoperability.rst: New file.
184 * doc/openacc-profiling-interface.rst: New file.
185 * doc/openacc-runtime-library-routines.rst: New file.
186 * doc/openacc-runtime-library-routines/accasynctest.rst: New file.
187 * doc/openacc-runtime-library-routines/accasynctestall.rst: New file.
188 * doc/openacc-runtime-library-routines/accattach.rst: New file.
189 * doc/openacc-runtime-library-routines/acccopyin.rst: New file.
190 * doc/openacc-runtime-library-routines/acccopyout.rst: New file.
191 * doc/openacc-runtime-library-routines/acccreate.rst: New file.
192 * doc/openacc-runtime-library-routines/accdelete.rst: New file.
193 * doc/openacc-runtime-library-routines/accdetach.rst: New file.
194 * doc/openacc-runtime-library-routines/accdeviceptr.rst: New file.
195 * doc/openacc-runtime-library-routines/accfree.rst: New file.
196 * doc/openacc-runtime-library-routines/accgetcudastream.rst: New file.
197 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst: New file.
198 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst: New file.
199 * doc/openacc-runtime-library-routines/accgetdevicenum.rst: New file.
200 * doc/openacc-runtime-library-routines/accgetdevicetype.rst: New file.
201 * doc/openacc-runtime-library-routines/accgetnumdevices.rst: New file.
202 * doc/openacc-runtime-library-routines/accgetproperty.rst: New file.
203 * doc/openacc-runtime-library-routines/acchostptr.rst: New file.
204 * doc/openacc-runtime-library-routines/accinit.rst: New file.
205 * doc/openacc-runtime-library-routines/accispresent.rst: New file.
206 * doc/openacc-runtime-library-routines/accmalloc.rst: New file.
207 * doc/openacc-runtime-library-routines/accmapdata.rst: New file.
208 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst: New file.
209 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst: New file.
210 * doc/openacc-runtime-library-routines/accondevice.rst: New file.
211 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst: New file.
212 * doc/openacc-runtime-library-routines/accpresentorcreate.rst: New file.
213 * doc/openacc-runtime-library-routines/accproflookup.rst: New file.
214 * doc/openacc-runtime-library-routines/accprofregister.rst: New file.
215 * doc/openacc-runtime-library-routines/accprofunregister.rst: New file.
216 * doc/openacc-runtime-library-routines/accregisterlibrary.rst: New file.
217 * doc/openacc-runtime-library-routines/accsetcudastream.rst: New file.
218 * doc/openacc-runtime-library-routines/accsetdevicenum.rst: New file.
219 * doc/openacc-runtime-library-routines/accsetdevicetype.rst: New file.
220 * doc/openacc-runtime-library-routines/accshutdown.rst: New file.
221 * doc/openacc-runtime-library-routines/accunmapdata.rst: New file.
222 * doc/openacc-runtime-library-routines/accupdatedevice.rst: New file.
223 * doc/openacc-runtime-library-routines/accupdateself.rst: New file.
224 * doc/openacc-runtime-library-routines/accwait.rst: New file.
225 * doc/openacc-runtime-library-routines/accwaitall.rst: New file.
226 * doc/openacc-runtime-library-routines/accwaitallasync.rst: New file.
227 * doc/openacc-runtime-library-routines/accwaitasync.rst: New file.
228 * doc/openmp-context-selectors.rst: New file.
229 * doc/openmp-environment-variables.rst: New file.
230 * doc/openmp-environment-variables/gompcpuaffinity.rst: New file.
231 * doc/openmp-environment-variables/gompdebug.rst: New file.
232 * doc/openmp-environment-variables/gomprtemsthreadpools.rst: New file.
233 * doc/openmp-environment-variables/gompspincount.rst: New file.
234 * doc/openmp-environment-variables/gompstacksize.rst: New file.
235 * doc/openmp-environment-variables/ompcancellation.rst: New file.
236 * doc/openmp-environment-variables/ompdefaultdevice.rst: New file.
237 * doc/openmp-environment-variables/ompdisplayenv.rst: New file.
238 * doc/openmp-environment-variables/ompdynamic.rst: New file.
239 * doc/openmp-environment-variables/ompmaxactivelevels.rst: New file.
240 * doc/openmp-environment-variables/ompmaxtaskpriority.rst: New file.
241 * doc/openmp-environment-variables/ompnested.rst: New file.
242 * doc/openmp-environment-variables/ompnumteams.rst: New file.
243 * doc/openmp-environment-variables/ompnumthreads.rst: New file.
244 * doc/openmp-environment-variables/ompplaces.rst: New file.
245 * doc/openmp-environment-variables/ompprocbind.rst: New file.
246 * doc/openmp-environment-variables/ompschedule.rst: New file.
247 * doc/openmp-environment-variables/ompstacksize.rst: New file.
248 * doc/openmp-environment-variables/omptargetoffload.rst: New file.
249 * doc/openmp-environment-variables/ompteamsthreadlimit.rst: New file.
250 * doc/openmp-environment-variables/ompthreadlimit.rst: New file.
251 * doc/openmp-environment-variables/ompwaitpolicy.rst: New file.
252 * doc/openmp-implementation-specifics.rst: New file.
253 * doc/openmp-implementation-status.rst: New file.
254 * doc/openmp-implementation-status/openmp-45.rst: New file.
255 * doc/openmp-implementation-status/openmp-50.rst: New file.
256 * doc/openmp-implementation-status/openmp-51.rst: New file.
257 * doc/openmp-implementation-status/openmp-52.rst: New file.
258 * doc/openmp-runtime-library-routines.rst: New file.
259 * doc/openmp-runtime-library-routines/ompdestroylock.rst: New file.
260 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst: New file.
261 * doc/openmp-runtime-library-routines/ompfulfillevent.rst: New file.
262 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst: New file.
263 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst: New file.
264 * doc/openmp-runtime-library-routines/ompgetcancellation.rst: New file.
265 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst: New file.
266 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst: New file.
267 * doc/openmp-runtime-library-routines/ompgetdynamic.rst: New file.
268 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst: New file.
269 * doc/openmp-runtime-library-routines/ompgetlevel.rst: New file.
270 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst: New file.
271 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst: New file.
272 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst: New file.
273 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst: New file.
274 * doc/openmp-runtime-library-routines/ompgetnested.rst: New file.
275 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst: New file.
276 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst: New file.
277 * doc/openmp-runtime-library-routines/ompgetnumteams.rst: New file.
278 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst: New file.
279 * doc/openmp-runtime-library-routines/ompgetprocbind.rst: New file.
280 * doc/openmp-runtime-library-routines/ompgetschedule.rst: New file.
281 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst: New file.
282 * doc/openmp-runtime-library-routines/ompgetteamnum.rst: New file.
283 * doc/openmp-runtime-library-routines/ompgetteamsize.rst: New file.
284 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst: New file.
285 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst: New file.
286 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst: New file.
287 * doc/openmp-runtime-library-routines/ompgetwtick.rst: New file.
288 * doc/openmp-runtime-library-routines/ompgetwtime.rst: New file.
289 * doc/openmp-runtime-library-routines/ompinfinal.rst: New file.
290 * doc/openmp-runtime-library-routines/ompinitlock.rst: New file.
291 * doc/openmp-runtime-library-routines/ompinitnestlock.rst: New file.
292 * doc/openmp-runtime-library-routines/ompinparallel.rst: New file.
293 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst: New file.
294 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst: New file.
295 * doc/openmp-runtime-library-routines/ompsetdynamic.rst: New file.
296 * doc/openmp-runtime-library-routines/ompsetlock.rst: New file.
297 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst: New file.
298 * doc/openmp-runtime-library-routines/ompsetnested.rst: New file.
299 * doc/openmp-runtime-library-routines/ompsetnestlock.rst: New file.
300 * doc/openmp-runtime-library-routines/ompsetnumteams.rst: New file.
301 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst: New file.
302 * doc/openmp-runtime-library-routines/ompsetschedule.rst: New file.
303 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst: New file.
304 * doc/openmp-runtime-library-routines/omptestlock.rst: New file.
305 * doc/openmp-runtime-library-routines/omptestnestlock.rst: New file.
306 * doc/openmp-runtime-library-routines/ompunsetlock.rst: New file.
307 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst: New file.
308 * doc/reporting-bugs.rst: New file.
309 * doc/the-libgomp-abi.rst: New file.
310 * doc/the-libgomp-abi/implementing-atomic-construct.rst: New file.
311 * doc/the-libgomp-abi/implementing-barrier-construct.rst: New file.
312 * doc/the-libgomp-abi/implementing-critical-construct.rst: New file.
313 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
314 New file.
315 * doc/the-libgomp-abi/implementing-flush-construct.rst: New file.
316 * doc/the-libgomp-abi/implementing-for-construct.rst: New file.
317 * doc/the-libgomp-abi/implementing-master-construct.rst: New file.
318 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst: New file.
319 * doc/the-libgomp-abi/implementing-ordered-construct.rst: New file.
320 * doc/the-libgomp-abi/implementing-parallel-construct.rst: New file.
321 * doc/the-libgomp-abi/implementing-private-clause.rst: New file.
322 * doc/the-libgomp-abi/implementing-reduction-clause.rst: New file.
323 * doc/the-libgomp-abi/implementing-sections-construct.rst: New file.
324 * doc/the-libgomp-abi/implementing-single-construct.rst: New file.
325 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst: New file.
326
3272022-11-14 Martin Liska <mliska@suse.cz>
328
329 Revert:
330 2022-11-14 Martin Liska <mliska@suse.cz>
331
332 * Makefile.in: Support Sphinx based documentation.
333
3342022-11-14 Martin Liska <mliska@suse.cz>
335
336 Revert:
337 2022-11-14 Martin Liska <mliska@suse.cz>
338
339 * libgomp.texi: Removed.
340
3412022-11-14 Martin Liska <mliska@suse.cz>
342
343 Revert:
344 2022-11-14 Martin Liska <mliska@suse.cz>
345
346 * Makefile.in: Support --with-sphinx-build.
347 * configure.ac: Likewise..
348 * configure: Regenerate.
349
3502022-11-14 Martin Liska <mliska@suse.cz>
351
352 Revert:
353 2022-11-09 Martin Liska <mliska@suse.cz>
354
355 * Makefile.in: Build info pages conditionally.
356
3572022-11-14 Martin Liska <mliska@suse.cz>
358
359 Revert:
360 2022-11-14 Martin Liska <mliska@suse.cz>
361
362 * doc/amd-radeon-gcn.rst:
3d3b561f 363 Add trailing newline.
83d400bd 364 * doc/copyright.rst:
3d3b561f 365 Add trailing newline.
83d400bd 366 * doc/cuda-streams-usage.rst:
3d3b561f 367 Add trailing newline.
83d400bd 368 * doc/enabling-openacc.rst:
3d3b561f 369 Add trailing newline.
83d400bd 370 * doc/enabling-openmp.rst:
3d3b561f 371 Add trailing newline.
83d400bd 372 * doc/first-invocation-nvidia-cublas-library-api.rst:
3d3b561f 373 Add trailing newline.
83d400bd 374 * doc/first-invocation-openacc-library-api.rst:
3d3b561f 375 Add trailing newline.
83d400bd 376 * doc/funding.rst:
3d3b561f 377 Add trailing newline.
83d400bd 378 * doc/general-public-license-3.rst:
3d3b561f 379 Add trailing newline.
83d400bd 380 * doc/gnu-free-documentation-license.rst:
3d3b561f 381 Add trailing newline.
83d400bd 382 * doc/implementation-status-and-implementation-defined-behavior.rst:
3d3b561f 383 Add trailing newline.
83d400bd 384 * doc/index.rst:
3d3b561f 385 Add trailing newline.
83d400bd 386 * doc/indices-and-tables.rst:
3d3b561f 387 Add trailing newline.
83d400bd 388 * doc/introduction.rst:
3d3b561f 389 Add trailing newline.
83d400bd 390 * doc/memory-allocation-with-libmemkind.rst:
3d3b561f 391 Add trailing newline.
83d400bd 392 * doc/nvptx.rst:
3d3b561f 393 Add trailing newline.
83d400bd 394 * doc/offload-target-specifics.rst:
3d3b561f 395 Add trailing newline.
83d400bd 396 * doc/openacc-environment-variables.rst:
3d3b561f 397 Add trailing newline.
83d400bd 398 * doc/openacc-environment-variables/accdevicenum.rst:
3d3b561f 399 Add trailing newline.
83d400bd 400 * doc/openacc-environment-variables/accdevicetype.rst:
3d3b561f 401 Add trailing newline.
83d400bd 402 * doc/openacc-environment-variables/accproflib.rst:
3d3b561f 403 Add trailing newline.
83d400bd 404 * doc/openacc-environment-variables/gccaccnotify.rst:
3d3b561f 405 Add trailing newline.
83d400bd 406 * doc/openacc-introduction.rst:
3d3b561f 407 Add trailing newline.
83d400bd 408 * doc/openacc-library-and-environment-variables.rst:
3d3b561f 409 Add trailing newline.
83d400bd 410 * doc/openacc-library-interoperability.rst:
3d3b561f 411 Add trailing newline.
83d400bd 412 * doc/openacc-profiling-interface.rst:
3d3b561f 413 Add trailing newline.
83d400bd 414 * doc/openacc-runtime-library-routines.rst:
3d3b561f 415 Add trailing newline.
83d400bd 416 * doc/openacc-runtime-library-routines/accasynctest.rst:
3d3b561f 417 Add trailing newline.
83d400bd 418 * doc/openacc-runtime-library-routines/accasynctestall.rst:
3d3b561f 419 Add trailing newline.
83d400bd 420 * doc/openacc-runtime-library-routines/accattach.rst:
3d3b561f 421 Add trailing newline.
83d400bd 422 * doc/openacc-runtime-library-routines/acccopyin.rst:
3d3b561f 423 Add trailing newline.
83d400bd 424 * doc/openacc-runtime-library-routines/acccopyout.rst:
3d3b561f 425 Add trailing newline.
83d400bd 426 * doc/openacc-runtime-library-routines/acccreate.rst:
3d3b561f 427 Add trailing newline.
83d400bd 428 * doc/openacc-runtime-library-routines/accdelete.rst:
3d3b561f 429 Add trailing newline.
83d400bd 430 * doc/openacc-runtime-library-routines/accdetach.rst:
3d3b561f 431 Add trailing newline.
83d400bd 432 * doc/openacc-runtime-library-routines/accdeviceptr.rst:
3d3b561f 433 Add trailing newline.
83d400bd 434 * doc/openacc-runtime-library-routines/accfree.rst:
3d3b561f 435 Add trailing newline.
83d400bd 436 * doc/openacc-runtime-library-routines/accgetcudastream.rst:
3d3b561f 437 Add trailing newline.
83d400bd 438 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst:
3d3b561f 439 Add trailing newline.
83d400bd 440 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst:
3d3b561f 441 Add trailing newline.
83d400bd 442 * doc/openacc-runtime-library-routines/accgetdevicenum.rst:
3d3b561f 443 Add trailing newline.
83d400bd 444 * doc/openacc-runtime-library-routines/accgetdevicetype.rst:
3d3b561f 445 Add trailing newline.
83d400bd 446 * doc/openacc-runtime-library-routines/accgetnumdevices.rst:
3d3b561f 447 Add trailing newline.
83d400bd 448 * doc/openacc-runtime-library-routines/accgetproperty.rst:
3d3b561f 449 Add trailing newline.
83d400bd 450 * doc/openacc-runtime-library-routines/acchostptr.rst:
3d3b561f 451 Add trailing newline.
83d400bd 452 * doc/openacc-runtime-library-routines/accinit.rst:
3d3b561f 453 Add trailing newline.
83d400bd 454 * doc/openacc-runtime-library-routines/accispresent.rst:
3d3b561f 455 Add trailing newline.
83d400bd 456 * doc/openacc-runtime-library-routines/accmalloc.rst:
3d3b561f 457 Add trailing newline.
83d400bd 458 * doc/openacc-runtime-library-routines/accmapdata.rst:
3d3b561f 459 Add trailing newline.
83d400bd 460 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst:
3d3b561f 461 Add trailing newline.
83d400bd 462 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst:
3d3b561f 463 Add trailing newline.
83d400bd 464 * doc/openacc-runtime-library-routines/accondevice.rst:
3d3b561f 465 Add trailing newline.
83d400bd 466 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst:
3d3b561f 467 Add trailing newline.
83d400bd 468 * doc/openacc-runtime-library-routines/accpresentorcreate.rst:
3d3b561f 469 Add trailing newline.
83d400bd 470 * doc/openacc-runtime-library-routines/accproflookup.rst:
3d3b561f 471 Add trailing newline.
83d400bd 472 * doc/openacc-runtime-library-routines/accprofregister.rst:
3d3b561f 473 Add trailing newline.
83d400bd 474 * doc/openacc-runtime-library-routines/accprofunregister.rst:
3d3b561f 475 Add trailing newline.
83d400bd 476 * doc/openacc-runtime-library-routines/accregisterlibrary.rst:
3d3b561f 477 Add trailing newline.
83d400bd 478 * doc/openacc-runtime-library-routines/accsetcudastream.rst:
3d3b561f 479 Add trailing newline.
83d400bd 480 * doc/openacc-runtime-library-routines/accsetdevicenum.rst:
3d3b561f 481 Add trailing newline.
83d400bd 482 * doc/openacc-runtime-library-routines/accsetdevicetype.rst:
3d3b561f 483 Add trailing newline.
83d400bd 484 * doc/openacc-runtime-library-routines/accshutdown.rst:
3d3b561f 485 Add trailing newline.
83d400bd 486 * doc/openacc-runtime-library-routines/accunmapdata.rst:
3d3b561f 487 Add trailing newline.
83d400bd 488 * doc/openacc-runtime-library-routines/accupdatedevice.rst:
3d3b561f 489 Add trailing newline.
83d400bd 490 * doc/openacc-runtime-library-routines/accupdateself.rst:
3d3b561f 491 Add trailing newline.
83d400bd 492 * doc/openacc-runtime-library-routines/accwait.rst:
3d3b561f 493 Add trailing newline.
83d400bd 494 * doc/openacc-runtime-library-routines/accwaitall.rst:
3d3b561f 495 Add trailing newline.
83d400bd 496 * doc/openacc-runtime-library-routines/accwaitallasync.rst:
3d3b561f 497 Add trailing newline.
83d400bd 498 * doc/openacc-runtime-library-routines/accwaitasync.rst:
3d3b561f 499 Add trailing newline.
83d400bd 500 * doc/openmp-context-selectors.rst:
3d3b561f 501 Add trailing newline.
83d400bd 502 * doc/openmp-environment-variables.rst:
3d3b561f 503 Add trailing newline.
83d400bd 504 * doc/openmp-environment-variables/gompcpuaffinity.rst:
3d3b561f 505 Add trailing newline.
83d400bd 506 * doc/openmp-environment-variables/gompdebug.rst:
3d3b561f 507 Add trailing newline.
83d400bd 508 * doc/openmp-environment-variables/gomprtemsthreadpools.rst:
3d3b561f 509 Add trailing newline.
83d400bd 510 * doc/openmp-environment-variables/gompspincount.rst:
3d3b561f 511 Add trailing newline.
83d400bd 512 * doc/openmp-environment-variables/gompstacksize.rst:
3d3b561f 513 Add trailing newline.
83d400bd 514 * doc/openmp-environment-variables/ompcancellation.rst:
3d3b561f 515 Add trailing newline.
83d400bd 516 * doc/openmp-environment-variables/ompdefaultdevice.rst:
3d3b561f 517 Add trailing newline.
83d400bd 518 * doc/openmp-environment-variables/ompdisplayenv.rst:
3d3b561f 519 Add trailing newline.
83d400bd 520 * doc/openmp-environment-variables/ompdynamic.rst:
3d3b561f 521 Add trailing newline.
83d400bd 522 * doc/openmp-environment-variables/ompmaxactivelevels.rst:
3d3b561f 523 Add trailing newline.
83d400bd 524 * doc/openmp-environment-variables/ompmaxtaskpriority.rst:
3d3b561f 525 Add trailing newline.
83d400bd 526 * doc/openmp-environment-variables/ompnested.rst:
3d3b561f 527 Add trailing newline.
83d400bd 528 * doc/openmp-environment-variables/ompnumteams.rst:
3d3b561f 529 Add trailing newline.
83d400bd 530 * doc/openmp-environment-variables/ompnumthreads.rst:
3d3b561f 531 Add trailing newline.
83d400bd 532 * doc/openmp-environment-variables/ompplaces.rst:
3d3b561f 533 Add trailing newline.
83d400bd 534 * doc/openmp-environment-variables/ompprocbind.rst:
3d3b561f 535 Add trailing newline.
83d400bd 536 * doc/openmp-environment-variables/ompschedule.rst:
3d3b561f 537 Add trailing newline.
83d400bd 538 * doc/openmp-environment-variables/ompstacksize.rst:
3d3b561f 539 Add trailing newline.
83d400bd 540 * doc/openmp-environment-variables/omptargetoffload.rst:
3d3b561f 541 Add trailing newline.
83d400bd 542 * doc/openmp-environment-variables/ompteamsthreadlimit.rst:
3d3b561f 543 Add trailing newline.
83d400bd 544 * doc/openmp-environment-variables/ompthreadlimit.rst:
3d3b561f 545 Add trailing newline.
83d400bd 546 * doc/openmp-environment-variables/ompwaitpolicy.rst:
3d3b561f 547 Add trailing newline.
83d400bd 548 * doc/openmp-implementation-specifics.rst:
3d3b561f 549 Add trailing newline.
83d400bd 550 * doc/openmp-implementation-status.rst:
3d3b561f 551 Add trailing newline.
83d400bd 552 * doc/openmp-implementation-status/openmp-45.rst:
3d3b561f 553 Add trailing newline.
83d400bd 554 * doc/openmp-implementation-status/openmp-50.rst:
3d3b561f 555 Add trailing newline.
83d400bd 556 * doc/openmp-implementation-status/openmp-51.rst:
3d3b561f 557 Add trailing newline.
83d400bd 558 * doc/openmp-implementation-status/openmp-52.rst:
3d3b561f 559 Add trailing newline.
83d400bd 560 * doc/openmp-runtime-library-routines.rst:
3d3b561f 561 Add trailing newline.
83d400bd 562 * doc/openmp-runtime-library-routines/ompdestroylock.rst:
3d3b561f 563 Add trailing newline.
83d400bd 564 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst:
3d3b561f 565 Add trailing newline.
83d400bd 566 * doc/openmp-runtime-library-routines/ompfulfillevent.rst:
3d3b561f 567 Add trailing newline.
83d400bd 568 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst:
3d3b561f 569 Add trailing newline.
83d400bd 570 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst:
3d3b561f 571 Add trailing newline.
83d400bd 572 * doc/openmp-runtime-library-routines/ompgetcancellation.rst:
3d3b561f 573 Add trailing newline.
83d400bd 574 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst:
3d3b561f 575 Add trailing newline.
83d400bd 576 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst:
3d3b561f 577 Add trailing newline.
83d400bd 578 * doc/openmp-runtime-library-routines/ompgetdynamic.rst:
3d3b561f 579 Add trailing newline.
83d400bd 580 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst:
3d3b561f 581 Add trailing newline.
83d400bd 582 * doc/openmp-runtime-library-routines/ompgetlevel.rst:
3d3b561f 583 Add trailing newline.
83d400bd 584 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst:
3d3b561f 585 Add trailing newline.
83d400bd 586 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst:
3d3b561f 587 Add trailing newline.
83d400bd 588 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst:
3d3b561f 589 Add trailing newline.
83d400bd 590 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst:
3d3b561f 591 Add trailing newline.
83d400bd 592 * doc/openmp-runtime-library-routines/ompgetnested.rst:
3d3b561f 593 Add trailing newline.
83d400bd 594 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst:
3d3b561f 595 Add trailing newline.
83d400bd 596 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst:
3d3b561f 597 Add trailing newline.
83d400bd 598 * doc/openmp-runtime-library-routines/ompgetnumteams.rst:
3d3b561f 599 Add trailing newline.
83d400bd 600 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst:
3d3b561f 601 Add trailing newline.
83d400bd 602 * doc/openmp-runtime-library-routines/ompgetprocbind.rst:
3d3b561f 603 Add trailing newline.
83d400bd 604 * doc/openmp-runtime-library-routines/ompgetschedule.rst:
3d3b561f 605 Add trailing newline.
83d400bd 606 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst:
3d3b561f 607 Add trailing newline.
83d400bd 608 * doc/openmp-runtime-library-routines/ompgetteamnum.rst:
3d3b561f 609 Add trailing newline.
83d400bd 610 * doc/openmp-runtime-library-routines/ompgetteamsize.rst:
3d3b561f 611 Add trailing newline.
83d400bd 612 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst:
3d3b561f 613 Add trailing newline.
83d400bd 614 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst:
3d3b561f 615 Add trailing newline.
83d400bd 616 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst:
3d3b561f 617 Add trailing newline.
83d400bd 618 * doc/openmp-runtime-library-routines/ompgetwtick.rst:
3d3b561f 619 Add trailing newline.
83d400bd 620 * doc/openmp-runtime-library-routines/ompgetwtime.rst:
3d3b561f 621 Add trailing newline.
83d400bd 622 * doc/openmp-runtime-library-routines/ompinfinal.rst:
3d3b561f 623 Add trailing newline.
83d400bd 624 * doc/openmp-runtime-library-routines/ompinitlock.rst:
3d3b561f 625 Add trailing newline.
83d400bd 626 * doc/openmp-runtime-library-routines/ompinitnestlock.rst:
3d3b561f 627 Add trailing newline.
83d400bd 628 * doc/openmp-runtime-library-routines/ompinparallel.rst:
3d3b561f 629 Add trailing newline.
83d400bd 630 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst:
3d3b561f 631 Add trailing newline.
83d400bd 632 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst:
3d3b561f 633 Add trailing newline.
83d400bd 634 * doc/openmp-runtime-library-routines/ompsetdynamic.rst:
3d3b561f 635 Add trailing newline.
83d400bd 636 * doc/openmp-runtime-library-routines/ompsetlock.rst:
3d3b561f 637 Add trailing newline.
83d400bd 638 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst:
3d3b561f 639 Add trailing newline.
83d400bd 640 * doc/openmp-runtime-library-routines/ompsetnested.rst:
3d3b561f 641 Add trailing newline.
83d400bd 642 * doc/openmp-runtime-library-routines/ompsetnestlock.rst:
3d3b561f 643 Add trailing newline.
83d400bd 644 * doc/openmp-runtime-library-routines/ompsetnumteams.rst:
3d3b561f 645 Add trailing newline.
83d400bd 646 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst:
3d3b561f 647 Add trailing newline.
83d400bd 648 * doc/openmp-runtime-library-routines/ompsetschedule.rst:
3d3b561f 649 Add trailing newline.
83d400bd 650 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst:
3d3b561f 651 Add trailing newline.
83d400bd 652 * doc/openmp-runtime-library-routines/omptestlock.rst:
3d3b561f 653 Add trailing newline.
83d400bd 654 * doc/openmp-runtime-library-routines/omptestnestlock.rst:
3d3b561f 655 Add trailing newline.
83d400bd 656 * doc/openmp-runtime-library-routines/ompunsetlock.rst:
3d3b561f 657 Add trailing newline.
83d400bd 658 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst:
3d3b561f 659 Add trailing newline.
83d400bd 660 * doc/reporting-bugs.rst:
3d3b561f 661 Add trailing newline.
83d400bd 662 * doc/the-libgomp-abi.rst:
3d3b561f 663 Add trailing newline.
83d400bd 664 * doc/the-libgomp-abi/implementing-atomic-construct.rst:
3d3b561f 665 Add trailing newline.
83d400bd 666 * doc/the-libgomp-abi/implementing-barrier-construct.rst:
3d3b561f 667 Add trailing newline.
83d400bd 668 * doc/the-libgomp-abi/implementing-critical-construct.rst:
3d3b561f 669 Add trailing newline.
83d400bd 670 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
3d3b561f 671 Add trailing newline.
83d400bd 672 * doc/the-libgomp-abi/implementing-flush-construct.rst:
3d3b561f 673 Add trailing newline.
83d400bd 674 * doc/the-libgomp-abi/implementing-for-construct.rst:
3d3b561f 675 Add trailing newline.
83d400bd 676 * doc/the-libgomp-abi/implementing-master-construct.rst:
3d3b561f 677 Add trailing newline.
83d400bd 678 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst:
3d3b561f 679 Add trailing newline.
83d400bd 680 * doc/the-libgomp-abi/implementing-ordered-construct.rst:
3d3b561f 681 Add trailing newline.
83d400bd 682 * doc/the-libgomp-abi/implementing-parallel-construct.rst:
3d3b561f 683 Add trailing newline.
83d400bd 684 * doc/the-libgomp-abi/implementing-private-clause.rst:
3d3b561f 685 Add trailing newline.
83d400bd 686 * doc/the-libgomp-abi/implementing-reduction-clause.rst:
3d3b561f 687 Add trailing newline.
83d400bd 688 * doc/the-libgomp-abi/implementing-sections-construct.rst:
3d3b561f 689 Add trailing newline.
83d400bd 690 * doc/the-libgomp-abi/implementing-single-construct.rst:
3d3b561f 691 Add trailing newline.
83d400bd 692 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst:
3d3b561f 693 Add trailing newline.
83d400bd
GA
694
6952022-11-14 Martin Liska <mliska@suse.cz>
696
697 Revert:
698 2022-11-09 Martin Liska <mliska@suse.cz>
699
700 * Makefile.in: Add missing HAS_SPHINX_BUILD.
701
7022022-11-14 Martin Liska <mliska@suse.cz>
703
704 Revert:
705 2022-11-14 Martin Liska <mliska@suse.cz>
706
707 * doc/conf.py: Add newline at last line.
708
7092022-11-14 Martin Liska <mliska@suse.cz>
710
711 Revert:
712 2022-11-14 Martin Liska <mliska@suse.cz>
713
714 PR other/107620
715 * configure: Regenerate.
716 * configure.ac: Always set sphinx-build.
717
eefbfbc7
GA
7182022-11-13 Martin Liska <mliska@suse.cz>
719
720 PR other/107620
721 * configure: Regenerate.
722 * configure.ac: Always set sphinx-build.
723
30d77d49
GA
7242022-11-12 Jakub Jelinek <jakub@redhat.com>
725
726 PR libgomp/107641
727 * env.c (parse_unsigned_long): Cast params[2] to uintptr_t rather than
728 unsigned long. Change type of upper from unsigned to unsigned long.
729
f225b813
GA
7302022-11-10 Martin Liska <mliska@suse.cz>
731
732 * doc/conf.py: Add newline at last line.
733
1cdfd0e5
GA
7342022-11-09 Martin Liska <mliska@suse.cz>
735
736 * Makefile.in: Add missing HAS_SPHINX_BUILD.
737
7382022-11-09 Martin Liska <mliska@suse.cz>
739
740 * doc/amd-radeon-gcn.rst:
3d3b561f 741 Add trailing newline.
1cdfd0e5 742 * doc/copyright.rst:
3d3b561f 743 Add trailing newline.
1cdfd0e5 744 * doc/cuda-streams-usage.rst:
3d3b561f 745 Add trailing newline.
1cdfd0e5 746 * doc/enabling-openacc.rst:
3d3b561f 747 Add trailing newline.
1cdfd0e5 748 * doc/enabling-openmp.rst:
3d3b561f 749 Add trailing newline.
1cdfd0e5 750 * doc/first-invocation-nvidia-cublas-library-api.rst:
3d3b561f 751 Add trailing newline.
1cdfd0e5 752 * doc/first-invocation-openacc-library-api.rst:
3d3b561f 753 Add trailing newline.
1cdfd0e5 754 * doc/funding.rst:
3d3b561f 755 Add trailing newline.
1cdfd0e5 756 * doc/general-public-license-3.rst:
3d3b561f 757 Add trailing newline.
1cdfd0e5 758 * doc/gnu-free-documentation-license.rst:
3d3b561f 759 Add trailing newline.
1cdfd0e5 760 * doc/implementation-status-and-implementation-defined-behavior.rst:
3d3b561f 761 Add trailing newline.
1cdfd0e5 762 * doc/index.rst:
3d3b561f 763 Add trailing newline.
1cdfd0e5 764 * doc/indices-and-tables.rst:
3d3b561f 765 Add trailing newline.
1cdfd0e5 766 * doc/introduction.rst:
3d3b561f 767 Add trailing newline.
1cdfd0e5 768 * doc/memory-allocation-with-libmemkind.rst:
3d3b561f 769 Add trailing newline.
1cdfd0e5 770 * doc/nvptx.rst:
3d3b561f 771 Add trailing newline.
1cdfd0e5 772 * doc/offload-target-specifics.rst:
3d3b561f 773 Add trailing newline.
1cdfd0e5 774 * doc/openacc-environment-variables.rst:
3d3b561f 775 Add trailing newline.
1cdfd0e5 776 * doc/openacc-environment-variables/accdevicenum.rst:
3d3b561f 777 Add trailing newline.
1cdfd0e5 778 * doc/openacc-environment-variables/accdevicetype.rst:
3d3b561f 779 Add trailing newline.
1cdfd0e5 780 * doc/openacc-environment-variables/accproflib.rst:
3d3b561f 781 Add trailing newline.
1cdfd0e5 782 * doc/openacc-environment-variables/gccaccnotify.rst:
3d3b561f 783 Add trailing newline.
1cdfd0e5 784 * doc/openacc-introduction.rst:
3d3b561f 785 Add trailing newline.
1cdfd0e5 786 * doc/openacc-library-and-environment-variables.rst:
3d3b561f 787 Add trailing newline.
1cdfd0e5 788 * doc/openacc-library-interoperability.rst:
3d3b561f 789 Add trailing newline.
1cdfd0e5 790 * doc/openacc-profiling-interface.rst:
3d3b561f 791 Add trailing newline.
1cdfd0e5 792 * doc/openacc-runtime-library-routines.rst:
3d3b561f 793 Add trailing newline.
1cdfd0e5 794 * doc/openacc-runtime-library-routines/accasynctest.rst:
3d3b561f 795 Add trailing newline.
1cdfd0e5 796 * doc/openacc-runtime-library-routines/accasynctestall.rst:
3d3b561f 797 Add trailing newline.
1cdfd0e5 798 * doc/openacc-runtime-library-routines/accattach.rst:
3d3b561f 799 Add trailing newline.
1cdfd0e5 800 * doc/openacc-runtime-library-routines/acccopyin.rst:
3d3b561f 801 Add trailing newline.
1cdfd0e5 802 * doc/openacc-runtime-library-routines/acccopyout.rst:
3d3b561f 803 Add trailing newline.
1cdfd0e5 804 * doc/openacc-runtime-library-routines/acccreate.rst:
3d3b561f 805 Add trailing newline.
1cdfd0e5 806 * doc/openacc-runtime-library-routines/accdelete.rst:
3d3b561f 807 Add trailing newline.
1cdfd0e5 808 * doc/openacc-runtime-library-routines/accdetach.rst:
3d3b561f 809 Add trailing newline.
1cdfd0e5 810 * doc/openacc-runtime-library-routines/accdeviceptr.rst:
3d3b561f 811 Add trailing newline.
1cdfd0e5 812 * doc/openacc-runtime-library-routines/accfree.rst:
3d3b561f 813 Add trailing newline.
1cdfd0e5 814 * doc/openacc-runtime-library-routines/accgetcudastream.rst:
3d3b561f 815 Add trailing newline.
1cdfd0e5 816 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst:
3d3b561f 817 Add trailing newline.
1cdfd0e5 818 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst:
3d3b561f 819 Add trailing newline.
1cdfd0e5 820 * doc/openacc-runtime-library-routines/accgetdevicenum.rst:
3d3b561f 821 Add trailing newline.
1cdfd0e5 822 * doc/openacc-runtime-library-routines/accgetdevicetype.rst:
3d3b561f 823 Add trailing newline.
1cdfd0e5 824 * doc/openacc-runtime-library-routines/accgetnumdevices.rst:
3d3b561f 825 Add trailing newline.
1cdfd0e5 826 * doc/openacc-runtime-library-routines/accgetproperty.rst:
3d3b561f 827 Add trailing newline.
1cdfd0e5 828 * doc/openacc-runtime-library-routines/acchostptr.rst:
3d3b561f 829 Add trailing newline.
1cdfd0e5 830 * doc/openacc-runtime-library-routines/accinit.rst:
3d3b561f 831 Add trailing newline.
1cdfd0e5 832 * doc/openacc-runtime-library-routines/accispresent.rst:
3d3b561f 833 Add trailing newline.
1cdfd0e5 834 * doc/openacc-runtime-library-routines/accmalloc.rst:
3d3b561f 835 Add trailing newline.
1cdfd0e5 836 * doc/openacc-runtime-library-routines/accmapdata.rst:
3d3b561f 837 Add trailing newline.
1cdfd0e5 838 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst:
3d3b561f 839 Add trailing newline.
1cdfd0e5 840 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst:
3d3b561f 841 Add trailing newline.
1cdfd0e5 842 * doc/openacc-runtime-library-routines/accondevice.rst:
3d3b561f 843 Add trailing newline.
1cdfd0e5 844 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst:
3d3b561f 845 Add trailing newline.
1cdfd0e5 846 * doc/openacc-runtime-library-routines/accpresentorcreate.rst:
3d3b561f 847 Add trailing newline.
1cdfd0e5 848 * doc/openacc-runtime-library-routines/accproflookup.rst:
3d3b561f 849 Add trailing newline.
1cdfd0e5 850 * doc/openacc-runtime-library-routines/accprofregister.rst:
3d3b561f 851 Add trailing newline.
1cdfd0e5 852 * doc/openacc-runtime-library-routines/accprofunregister.rst:
3d3b561f 853 Add trailing newline.
1cdfd0e5 854 * doc/openacc-runtime-library-routines/accregisterlibrary.rst:
3d3b561f 855 Add trailing newline.
1cdfd0e5 856 * doc/openacc-runtime-library-routines/accsetcudastream.rst:
3d3b561f 857 Add trailing newline.
1cdfd0e5 858 * doc/openacc-runtime-library-routines/accsetdevicenum.rst:
3d3b561f 859 Add trailing newline.
1cdfd0e5 860 * doc/openacc-runtime-library-routines/accsetdevicetype.rst:
3d3b561f 861 Add trailing newline.
1cdfd0e5 862 * doc/openacc-runtime-library-routines/accshutdown.rst:
3d3b561f 863 Add trailing newline.
1cdfd0e5 864 * doc/openacc-runtime-library-routines/accunmapdata.rst:
3d3b561f 865 Add trailing newline.
1cdfd0e5 866 * doc/openacc-runtime-library-routines/accupdatedevice.rst:
3d3b561f 867 Add trailing newline.
1cdfd0e5 868 * doc/openacc-runtime-library-routines/accupdateself.rst:
3d3b561f 869 Add trailing newline.
1cdfd0e5 870 * doc/openacc-runtime-library-routines/accwait.rst:
3d3b561f 871 Add trailing newline.
1cdfd0e5 872 * doc/openacc-runtime-library-routines/accwaitall.rst:
3d3b561f 873 Add trailing newline.
1cdfd0e5 874 * doc/openacc-runtime-library-routines/accwaitallasync.rst:
3d3b561f 875 Add trailing newline.
1cdfd0e5 876 * doc/openacc-runtime-library-routines/accwaitasync.rst:
3d3b561f 877 Add trailing newline.
1cdfd0e5 878 * doc/openmp-context-selectors.rst:
3d3b561f 879 Add trailing newline.
1cdfd0e5 880 * doc/openmp-environment-variables.rst:
3d3b561f 881 Add trailing newline.
1cdfd0e5 882 * doc/openmp-environment-variables/gompcpuaffinity.rst:
3d3b561f 883 Add trailing newline.
1cdfd0e5 884 * doc/openmp-environment-variables/gompdebug.rst:
3d3b561f 885 Add trailing newline.
1cdfd0e5 886 * doc/openmp-environment-variables/gomprtemsthreadpools.rst:
3d3b561f 887 Add trailing newline.
1cdfd0e5 888 * doc/openmp-environment-variables/gompspincount.rst:
3d3b561f 889 Add trailing newline.
1cdfd0e5 890 * doc/openmp-environment-variables/gompstacksize.rst:
3d3b561f 891 Add trailing newline.
1cdfd0e5 892 * doc/openmp-environment-variables/ompcancellation.rst:
3d3b561f 893 Add trailing newline.
1cdfd0e5 894 * doc/openmp-environment-variables/ompdefaultdevice.rst:
3d3b561f 895 Add trailing newline.
1cdfd0e5 896 * doc/openmp-environment-variables/ompdisplayenv.rst:
3d3b561f 897 Add trailing newline.
1cdfd0e5 898 * doc/openmp-environment-variables/ompdynamic.rst:
3d3b561f 899 Add trailing newline.
1cdfd0e5 900 * doc/openmp-environment-variables/ompmaxactivelevels.rst:
3d3b561f 901 Add trailing newline.
1cdfd0e5 902 * doc/openmp-environment-variables/ompmaxtaskpriority.rst:
3d3b561f 903 Add trailing newline.
1cdfd0e5 904 * doc/openmp-environment-variables/ompnested.rst:
3d3b561f 905 Add trailing newline.
1cdfd0e5 906 * doc/openmp-environment-variables/ompnumteams.rst:
3d3b561f 907 Add trailing newline.
1cdfd0e5 908 * doc/openmp-environment-variables/ompnumthreads.rst:
3d3b561f 909 Add trailing newline.
1cdfd0e5 910 * doc/openmp-environment-variables/ompplaces.rst:
3d3b561f 911 Add trailing newline.
1cdfd0e5 912 * doc/openmp-environment-variables/ompprocbind.rst:
3d3b561f 913 Add trailing newline.
1cdfd0e5 914 * doc/openmp-environment-variables/ompschedule.rst:
3d3b561f 915 Add trailing newline.
1cdfd0e5 916 * doc/openmp-environment-variables/ompstacksize.rst:
3d3b561f 917 Add trailing newline.
1cdfd0e5 918 * doc/openmp-environment-variables/omptargetoffload.rst:
3d3b561f 919 Add trailing newline.
1cdfd0e5 920 * doc/openmp-environment-variables/ompteamsthreadlimit.rst:
3d3b561f 921 Add trailing newline.
1cdfd0e5 922 * doc/openmp-environment-variables/ompthreadlimit.rst:
3d3b561f 923 Add trailing newline.
1cdfd0e5 924 * doc/openmp-environment-variables/ompwaitpolicy.rst:
3d3b561f 925 Add trailing newline.
1cdfd0e5 926 * doc/openmp-implementation-specifics.rst:
3d3b561f 927 Add trailing newline.
1cdfd0e5 928 * doc/openmp-implementation-status.rst:
3d3b561f 929 Add trailing newline.
1cdfd0e5 930 * doc/openmp-implementation-status/openmp-45.rst:
3d3b561f 931 Add trailing newline.
1cdfd0e5 932 * doc/openmp-implementation-status/openmp-50.rst:
3d3b561f 933 Add trailing newline.
1cdfd0e5 934 * doc/openmp-implementation-status/openmp-51.rst:
3d3b561f 935 Add trailing newline.
1cdfd0e5 936 * doc/openmp-implementation-status/openmp-52.rst:
3d3b561f 937 Add trailing newline.
1cdfd0e5 938 * doc/openmp-runtime-library-routines.rst:
3d3b561f 939 Add trailing newline.
1cdfd0e5 940 * doc/openmp-runtime-library-routines/ompdestroylock.rst:
3d3b561f 941 Add trailing newline.
1cdfd0e5 942 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst:
3d3b561f 943 Add trailing newline.
1cdfd0e5 944 * doc/openmp-runtime-library-routines/ompfulfillevent.rst:
3d3b561f 945 Add trailing newline.
1cdfd0e5 946 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst:
3d3b561f 947 Add trailing newline.
1cdfd0e5 948 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst:
3d3b561f 949 Add trailing newline.
1cdfd0e5 950 * doc/openmp-runtime-library-routines/ompgetcancellation.rst:
3d3b561f 951 Add trailing newline.
1cdfd0e5 952 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst:
3d3b561f 953 Add trailing newline.
1cdfd0e5 954 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst:
3d3b561f 955 Add trailing newline.
1cdfd0e5 956 * doc/openmp-runtime-library-routines/ompgetdynamic.rst:
3d3b561f 957 Add trailing newline.
1cdfd0e5 958 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst:
3d3b561f 959 Add trailing newline.
1cdfd0e5 960 * doc/openmp-runtime-library-routines/ompgetlevel.rst:
3d3b561f 961 Add trailing newline.
1cdfd0e5 962 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst:
3d3b561f 963 Add trailing newline.
1cdfd0e5 964 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst:
3d3b561f 965 Add trailing newline.
1cdfd0e5 966 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst:
3d3b561f 967 Add trailing newline.
1cdfd0e5 968 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst:
3d3b561f 969 Add trailing newline.
1cdfd0e5 970 * doc/openmp-runtime-library-routines/ompgetnested.rst:
3d3b561f 971 Add trailing newline.
1cdfd0e5 972 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst:
3d3b561f 973 Add trailing newline.
1cdfd0e5 974 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst:
3d3b561f 975 Add trailing newline.
1cdfd0e5 976 * doc/openmp-runtime-library-routines/ompgetnumteams.rst:
3d3b561f 977 Add trailing newline.
1cdfd0e5 978 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst:
3d3b561f 979 Add trailing newline.
1cdfd0e5 980 * doc/openmp-runtime-library-routines/ompgetprocbind.rst:
3d3b561f 981 Add trailing newline.
1cdfd0e5 982 * doc/openmp-runtime-library-routines/ompgetschedule.rst:
3d3b561f 983 Add trailing newline.
1cdfd0e5 984 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst:
3d3b561f 985 Add trailing newline.
1cdfd0e5 986 * doc/openmp-runtime-library-routines/ompgetteamnum.rst:
3d3b561f 987 Add trailing newline.
1cdfd0e5 988 * doc/openmp-runtime-library-routines/ompgetteamsize.rst:
3d3b561f 989 Add trailing newline.
1cdfd0e5 990 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst:
3d3b561f 991 Add trailing newline.
1cdfd0e5 992 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst:
3d3b561f 993 Add trailing newline.
1cdfd0e5 994 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst:
3d3b561f 995 Add trailing newline.
1cdfd0e5 996 * doc/openmp-runtime-library-routines/ompgetwtick.rst:
3d3b561f 997 Add trailing newline.
1cdfd0e5 998 * doc/openmp-runtime-library-routines/ompgetwtime.rst:
3d3b561f 999 Add trailing newline.
1cdfd0e5 1000 * doc/openmp-runtime-library-routines/ompinfinal.rst:
3d3b561f 1001 Add trailing newline.
1cdfd0e5 1002 * doc/openmp-runtime-library-routines/ompinitlock.rst:
3d3b561f 1003 Add trailing newline.
1cdfd0e5 1004 * doc/openmp-runtime-library-routines/ompinitnestlock.rst:
3d3b561f 1005 Add trailing newline.
1cdfd0e5 1006 * doc/openmp-runtime-library-routines/ompinparallel.rst:
3d3b561f 1007 Add trailing newline.
1cdfd0e5 1008 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst:
3d3b561f 1009 Add trailing newline.
1cdfd0e5 1010 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst:
3d3b561f 1011 Add trailing newline.
1cdfd0e5 1012 * doc/openmp-runtime-library-routines/ompsetdynamic.rst:
3d3b561f 1013 Add trailing newline.
1cdfd0e5 1014 * doc/openmp-runtime-library-routines/ompsetlock.rst:
3d3b561f 1015 Add trailing newline.
1cdfd0e5 1016 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst:
3d3b561f 1017 Add trailing newline.
1cdfd0e5 1018 * doc/openmp-runtime-library-routines/ompsetnested.rst:
3d3b561f 1019 Add trailing newline.
1cdfd0e5 1020 * doc/openmp-runtime-library-routines/ompsetnestlock.rst:
3d3b561f 1021 Add trailing newline.
1cdfd0e5 1022 * doc/openmp-runtime-library-routines/ompsetnumteams.rst:
3d3b561f 1023 Add trailing newline.
1cdfd0e5 1024 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst:
3d3b561f 1025 Add trailing newline.
1cdfd0e5 1026 * doc/openmp-runtime-library-routines/ompsetschedule.rst:
3d3b561f 1027 Add trailing newline.
1cdfd0e5 1028 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst:
3d3b561f 1029 Add trailing newline.
1cdfd0e5 1030 * doc/openmp-runtime-library-routines/omptestlock.rst:
3d3b561f 1031 Add trailing newline.
1cdfd0e5 1032 * doc/openmp-runtime-library-routines/omptestnestlock.rst:
3d3b561f 1033 Add trailing newline.
1cdfd0e5 1034 * doc/openmp-runtime-library-routines/ompunsetlock.rst:
3d3b561f 1035 Add trailing newline.
1cdfd0e5 1036 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst:
3d3b561f 1037 Add trailing newline.
1cdfd0e5 1038 * doc/reporting-bugs.rst:
3d3b561f 1039 Add trailing newline.
1cdfd0e5 1040 * doc/the-libgomp-abi.rst:
3d3b561f 1041 Add trailing newline.
1cdfd0e5 1042 * doc/the-libgomp-abi/implementing-atomic-construct.rst:
3d3b561f 1043 Add trailing newline.
1cdfd0e5 1044 * doc/the-libgomp-abi/implementing-barrier-construct.rst:
3d3b561f 1045 Add trailing newline.
1cdfd0e5 1046 * doc/the-libgomp-abi/implementing-critical-construct.rst:
3d3b561f 1047 Add trailing newline.
1cdfd0e5 1048 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
3d3b561f 1049 Add trailing newline.
1cdfd0e5 1050 * doc/the-libgomp-abi/implementing-flush-construct.rst:
3d3b561f 1051 Add trailing newline.
1cdfd0e5 1052 * doc/the-libgomp-abi/implementing-for-construct.rst:
3d3b561f 1053 Add trailing newline.
1cdfd0e5 1054 * doc/the-libgomp-abi/implementing-master-construct.rst:
3d3b561f 1055 Add trailing newline.
1cdfd0e5 1056 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst:
3d3b561f 1057 Add trailing newline.
1cdfd0e5 1058 * doc/the-libgomp-abi/implementing-ordered-construct.rst:
3d3b561f 1059 Add trailing newline.
1cdfd0e5 1060 * doc/the-libgomp-abi/implementing-parallel-construct.rst:
3d3b561f 1061 Add trailing newline.
1cdfd0e5 1062 * doc/the-libgomp-abi/implementing-private-clause.rst:
3d3b561f 1063 Add trailing newline.
1cdfd0e5 1064 * doc/the-libgomp-abi/implementing-reduction-clause.rst:
3d3b561f 1065 Add trailing newline.
1cdfd0e5 1066 * doc/the-libgomp-abi/implementing-sections-construct.rst:
3d3b561f 1067 Add trailing newline.
1cdfd0e5 1068 * doc/the-libgomp-abi/implementing-single-construct.rst:
3d3b561f 1069 Add trailing newline.
1cdfd0e5 1070 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst:
3d3b561f 1071 Add trailing newline.
1cdfd0e5
GA
1072
10732022-11-09 Martin Liska <mliska@suse.cz>
1074
1075 * Makefile.in: Build info pages conditionally.
1076
10772022-11-09 Martin Liska <mliska@suse.cz>
1078
1079 * Makefile.in: Support --with-sphinx-build.
1080 * configure.ac: Likewise..
1081 * configure: Regenerate.
1082
10832022-11-09 Martin Liska <mliska@suse.cz>
1084
1085 * libgomp.texi: Removed.
1086
10872022-11-09 Martin Liska <mliska@suse.cz>
1088
1089 * Makefile.in: Support Sphinx based documentation.
1090
10912022-11-09 Martin Liska <mliska@suse.cz>
1092
1093 * doc/amd-radeon-gcn.rst: New file.
1094 * doc/conf.py: New file.
1095 * doc/copyright.rst: New file.
1096 * doc/cuda-streams-usage.rst: New file.
1097 * doc/enabling-openacc.rst: New file.
1098 * doc/enabling-openmp.rst: New file.
1099 * doc/first-invocation-nvidia-cublas-library-api.rst: New file.
1100 * doc/first-invocation-openacc-library-api.rst: New file.
1101 * doc/funding.rst: New file.
1102 * doc/general-public-license-3.rst: New file.
1103 * doc/gnu-free-documentation-license.rst: New file.
1104 * doc/implementation-status-and-implementation-defined-behavior.rst: New file.
1105 * doc/index.rst: New file.
1106 * doc/indices-and-tables.rst: New file.
1107 * doc/introduction.rst: New file.
1108 * doc/memory-allocation-with-libmemkind.rst: New file.
1109 * doc/nvptx.rst: New file.
1110 * doc/offload-target-specifics.rst: New file.
1111 * doc/openacc-environment-variables.rst: New file.
1112 * doc/openacc-environment-variables/accdevicenum.rst: New file.
1113 * doc/openacc-environment-variables/accdevicetype.rst: New file.
1114 * doc/openacc-environment-variables/accproflib.rst: New file.
1115 * doc/openacc-environment-variables/gccaccnotify.rst: New file.
1116 * doc/openacc-introduction.rst: New file.
1117 * doc/openacc-library-and-environment-variables.rst: New file.
1118 * doc/openacc-library-interoperability.rst: New file.
1119 * doc/openacc-profiling-interface.rst: New file.
1120 * doc/openacc-runtime-library-routines.rst: New file.
1121 * doc/openacc-runtime-library-routines/accasynctest.rst: New file.
1122 * doc/openacc-runtime-library-routines/accasynctestall.rst: New file.
1123 * doc/openacc-runtime-library-routines/accattach.rst: New file.
1124 * doc/openacc-runtime-library-routines/acccopyin.rst: New file.
1125 * doc/openacc-runtime-library-routines/acccopyout.rst: New file.
1126 * doc/openacc-runtime-library-routines/acccreate.rst: New file.
1127 * doc/openacc-runtime-library-routines/accdelete.rst: New file.
1128 * doc/openacc-runtime-library-routines/accdetach.rst: New file.
1129 * doc/openacc-runtime-library-routines/accdeviceptr.rst: New file.
1130 * doc/openacc-runtime-library-routines/accfree.rst: New file.
1131 * doc/openacc-runtime-library-routines/accgetcudastream.rst: New file.
1132 * doc/openacc-runtime-library-routines/accgetcurrentcudacontext.rst: New file.
1133 * doc/openacc-runtime-library-routines/accgetcurrentcudadevice.rst: New file.
1134 * doc/openacc-runtime-library-routines/accgetdevicenum.rst: New file.
1135 * doc/openacc-runtime-library-routines/accgetdevicetype.rst: New file.
1136 * doc/openacc-runtime-library-routines/accgetnumdevices.rst: New file.
1137 * doc/openacc-runtime-library-routines/accgetproperty.rst: New file.
1138 * doc/openacc-runtime-library-routines/acchostptr.rst: New file.
1139 * doc/openacc-runtime-library-routines/accinit.rst: New file.
1140 * doc/openacc-runtime-library-routines/accispresent.rst: New file.
1141 * doc/openacc-runtime-library-routines/accmalloc.rst: New file.
1142 * doc/openacc-runtime-library-routines/accmapdata.rst: New file.
1143 * doc/openacc-runtime-library-routines/accmemcpyfromdevice.rst: New file.
1144 * doc/openacc-runtime-library-routines/accmemcpytodevice.rst: New file.
1145 * doc/openacc-runtime-library-routines/accondevice.rst: New file.
1146 * doc/openacc-runtime-library-routines/accpresentorcopyin.rst: New file.
1147 * doc/openacc-runtime-library-routines/accpresentorcreate.rst: New file.
1148 * doc/openacc-runtime-library-routines/accproflookup.rst: New file.
1149 * doc/openacc-runtime-library-routines/accprofregister.rst: New file.
1150 * doc/openacc-runtime-library-routines/accprofunregister.rst: New file.
1151 * doc/openacc-runtime-library-routines/accregisterlibrary.rst: New file.
1152 * doc/openacc-runtime-library-routines/accsetcudastream.rst: New file.
1153 * doc/openacc-runtime-library-routines/accsetdevicenum.rst: New file.
1154 * doc/openacc-runtime-library-routines/accsetdevicetype.rst: New file.
1155 * doc/openacc-runtime-library-routines/accshutdown.rst: New file.
1156 * doc/openacc-runtime-library-routines/accunmapdata.rst: New file.
1157 * doc/openacc-runtime-library-routines/accupdatedevice.rst: New file.
1158 * doc/openacc-runtime-library-routines/accupdateself.rst: New file.
1159 * doc/openacc-runtime-library-routines/accwait.rst: New file.
1160 * doc/openacc-runtime-library-routines/accwaitall.rst: New file.
1161 * doc/openacc-runtime-library-routines/accwaitallasync.rst: New file.
1162 * doc/openacc-runtime-library-routines/accwaitasync.rst: New file.
1163 * doc/openmp-context-selectors.rst: New file.
1164 * doc/openmp-environment-variables.rst: New file.
1165 * doc/openmp-environment-variables/gompcpuaffinity.rst: New file.
1166 * doc/openmp-environment-variables/gompdebug.rst: New file.
1167 * doc/openmp-environment-variables/gomprtemsthreadpools.rst: New file.
1168 * doc/openmp-environment-variables/gompspincount.rst: New file.
1169 * doc/openmp-environment-variables/gompstacksize.rst: New file.
1170 * doc/openmp-environment-variables/ompcancellation.rst: New file.
1171 * doc/openmp-environment-variables/ompdefaultdevice.rst: New file.
1172 * doc/openmp-environment-variables/ompdisplayenv.rst: New file.
1173 * doc/openmp-environment-variables/ompdynamic.rst: New file.
1174 * doc/openmp-environment-variables/ompmaxactivelevels.rst: New file.
1175 * doc/openmp-environment-variables/ompmaxtaskpriority.rst: New file.
1176 * doc/openmp-environment-variables/ompnested.rst: New file.
1177 * doc/openmp-environment-variables/ompnumteams.rst: New file.
1178 * doc/openmp-environment-variables/ompnumthreads.rst: New file.
1179 * doc/openmp-environment-variables/ompplaces.rst: New file.
1180 * doc/openmp-environment-variables/ompprocbind.rst: New file.
1181 * doc/openmp-environment-variables/ompschedule.rst: New file.
1182 * doc/openmp-environment-variables/ompstacksize.rst: New file.
1183 * doc/openmp-environment-variables/omptargetoffload.rst: New file.
1184 * doc/openmp-environment-variables/ompteamsthreadlimit.rst: New file.
1185 * doc/openmp-environment-variables/ompthreadlimit.rst: New file.
1186 * doc/openmp-environment-variables/ompwaitpolicy.rst: New file.
1187 * doc/openmp-implementation-specifics.rst: New file.
1188 * doc/openmp-implementation-status.rst: New file.
1189 * doc/openmp-implementation-status/openmp-45.rst: New file.
1190 * doc/openmp-implementation-status/openmp-50.rst: New file.
1191 * doc/openmp-implementation-status/openmp-51.rst: New file.
1192 * doc/openmp-implementation-status/openmp-52.rst: New file.
1193 * doc/openmp-runtime-library-routines.rst: New file.
1194 * doc/openmp-runtime-library-routines/ompdestroylock.rst: New file.
1195 * doc/openmp-runtime-library-routines/ompdestroynestlock.rst: New file.
1196 * doc/openmp-runtime-library-routines/ompfulfillevent.rst: New file.
1197 * doc/openmp-runtime-library-routines/ompgetactivelevel.rst: New file.
1198 * doc/openmp-runtime-library-routines/ompgetancestorthreadnum.rst: New file.
1199 * doc/openmp-runtime-library-routines/ompgetcancellation.rst: New file.
1200 * doc/openmp-runtime-library-routines/ompgetdefaultdevice.rst: New file.
1201 * doc/openmp-runtime-library-routines/ompgetdevicenum.rst: New file.
1202 * doc/openmp-runtime-library-routines/ompgetdynamic.rst: New file.
1203 * doc/openmp-runtime-library-routines/ompgetinitialdevice.rst: New file.
1204 * doc/openmp-runtime-library-routines/ompgetlevel.rst: New file.
1205 * doc/openmp-runtime-library-routines/ompgetmaxactivelevels.rst: New file.
1206 * doc/openmp-runtime-library-routines/ompgetmaxtaskpriority.rst: New file.
1207 * doc/openmp-runtime-library-routines/ompgetmaxteams.rst: New file.
1208 * doc/openmp-runtime-library-routines/ompgetmaxthreads.rst: New file.
1209 * doc/openmp-runtime-library-routines/ompgetnested.rst: New file.
1210 * doc/openmp-runtime-library-routines/ompgetnumdevices.rst: New file.
1211 * doc/openmp-runtime-library-routines/ompgetnumprocs.rst: New file.
1212 * doc/openmp-runtime-library-routines/ompgetnumteams.rst: New file.
1213 * doc/openmp-runtime-library-routines/ompgetnumthreads.rst: New file.
1214 * doc/openmp-runtime-library-routines/ompgetprocbind.rst: New file.
1215 * doc/openmp-runtime-library-routines/ompgetschedule.rst: New file.
1216 * doc/openmp-runtime-library-routines/ompgetsupportedactivelevels.rst: New file.
1217 * doc/openmp-runtime-library-routines/ompgetteamnum.rst: New file.
1218 * doc/openmp-runtime-library-routines/ompgetteamsize.rst: New file.
1219 * doc/openmp-runtime-library-routines/ompgetteamsthreadlimit.rst: New file.
1220 * doc/openmp-runtime-library-routines/ompgetthreadlimit.rst: New file.
1221 * doc/openmp-runtime-library-routines/ompgetthreadnum.rst: New file.
1222 * doc/openmp-runtime-library-routines/ompgetwtick.rst: New file.
1223 * doc/openmp-runtime-library-routines/ompgetwtime.rst: New file.
1224 * doc/openmp-runtime-library-routines/ompinfinal.rst: New file.
1225 * doc/openmp-runtime-library-routines/ompinitlock.rst: New file.
1226 * doc/openmp-runtime-library-routines/ompinitnestlock.rst: New file.
1227 * doc/openmp-runtime-library-routines/ompinparallel.rst: New file.
1228 * doc/openmp-runtime-library-routines/ompisinitialdevice.rst: New file.
1229 * doc/openmp-runtime-library-routines/ompsetdefaultdevice.rst: New file.
1230 * doc/openmp-runtime-library-routines/ompsetdynamic.rst: New file.
1231 * doc/openmp-runtime-library-routines/ompsetlock.rst: New file.
1232 * doc/openmp-runtime-library-routines/ompsetmaxactivelevels.rst: New file.
1233 * doc/openmp-runtime-library-routines/ompsetnested.rst: New file.
1234 * doc/openmp-runtime-library-routines/ompsetnestlock.rst: New file.
1235 * doc/openmp-runtime-library-routines/ompsetnumteams.rst: New file.
1236 * doc/openmp-runtime-library-routines/ompsetnumthreads.rst: New file.
1237 * doc/openmp-runtime-library-routines/ompsetschedule.rst: New file.
1238 * doc/openmp-runtime-library-routines/ompsetteamsthreadlimit.rst: New file.
1239 * doc/openmp-runtime-library-routines/omptestlock.rst: New file.
1240 * doc/openmp-runtime-library-routines/omptestnestlock.rst: New file.
1241 * doc/openmp-runtime-library-routines/ompunsetlock.rst: New file.
1242 * doc/openmp-runtime-library-routines/ompunsetnestlock.rst: New file.
1243 * doc/reporting-bugs.rst: New file.
1244 * doc/the-libgomp-abi.rst: New file.
1245 * doc/the-libgomp-abi/implementing-atomic-construct.rst: New file.
1246 * doc/the-libgomp-abi/implementing-barrier-construct.rst: New file.
1247 * doc/the-libgomp-abi/implementing-critical-construct.rst: New file.
1248 * doc/the-libgomp-abi/implementing-firstprivate-lastprivate-copyin-and-copyprivate-clauses.rst:
1249 New file.
1250 * doc/the-libgomp-abi/implementing-flush-construct.rst: New file.
1251 * doc/the-libgomp-abi/implementing-for-construct.rst: New file.
1252 * doc/the-libgomp-abi/implementing-master-construct.rst: New file.
1253 * doc/the-libgomp-abi/implementing-openaccs-parallel-construct.rst: New file.
1254 * doc/the-libgomp-abi/implementing-ordered-construct.rst: New file.
1255 * doc/the-libgomp-abi/implementing-parallel-construct.rst: New file.
1256 * doc/the-libgomp-abi/implementing-private-clause.rst: New file.
1257 * doc/the-libgomp-abi/implementing-reduction-clause.rst: New file.
1258 * doc/the-libgomp-abi/implementing-sections-construct.rst: New file.
1259 * doc/the-libgomp-abi/implementing-single-construct.rst: New file.
1260 * doc/the-libgomp-abi/implementing-threadprivate-construct.rst: New file.
1261
89d0a14a
JJ
12622022-11-04 Thomas Schwinge <thomas@codesourcery.com>
1263
1264 * libgomp-plugin.h (OFFLOAD_TARGET_TYPE_INTEL_MIC): Remove.
1265 * libgomp.texi (OpenMP Context Selectors): Remove Intel MIC
1266 documentation.
1267 * plugin/configfrag.ac <enable_offload_targets>
1268 [*-intelmic-* | *-intelmicemul-*]: Remove.
1269 * configure: Regenerate.
1270 * testsuite/lib/libgomp.exp (libgomp_init): Remove 'liboffloadmic'
1271 handling.
1272 (offload_target_to_openacc_device_type)
1273 [$offload_target = *-intelmic*]: Remove.
1274 (check_effective_target_offload_device_intel_mic)
1275 (check_effective_target_offload_device_any_intel_mic): Remove.
1276 * testsuite/libgomp.c-c++-common/on_device_arch.h
1277 (device_arch_intel_mic, on_device_arch_intel_mic, any_device_arch)
1278 (any_device_arch_intel_mic): Remove.
1279 * testsuite/libgomp.c-c++-common/target-45.c: Remove
1280 'offload_device_any_intel_mic' XFAIL.
1281 * testsuite/libgomp.fortran/target10.f90: Likewise.
1282
d29260ce
GA
12832022-11-03 Tobias Burnus <tobias@codesourcery.com>
1284
1285 * testsuite/libgomp.fortran/target-11.f90: New test.
1286 * testsuite/libgomp.fortran/target-13.f90: New test.
1287
58035eee
GA
12882022-11-02 Thomas Schwinge <thomas@codesourcery.com>
1289
1290 PR libgomp/106643
1291 PR fortran/96668
1292 * oacc-mem.c (goacc_enter_data_internal): Support
1293 OpenACC 'declare create' with Fortran allocatable arrays, part II.
1294 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
1295 Adjust.
1296 * testsuite/libgomp.oacc-fortran/pr106643-1.f90: New.
1297
12982022-11-02 Thomas Schwinge <thomas@codesourcery.com>
1299
1300 PR libgomp/106643
1301 * oacc-mem.c (goacc_enter_data_internal): Support
1302 OpenACC 'declare create' with Fortran allocatable arrays, part I.
1303 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-directive.f90:
1304 New.
1305 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-directive.f90:
1306 New.
1307
13082022-11-02 Thomas Schwinge <thomas@codesourcery.com>
1309
1310 * testsuite/libgomp.oacc-fortran/declare-allocatable-array_descriptor-1-runtime.f90:
1311 New.
1312
13132022-11-02 Thomas Schwinge <thomas@codesourcery.com>
1314
1315 * testsuite/libgomp.oacc-fortran/declare-allocatable-1-runtime.f90:
1316 New.
1317
13182022-11-02 Cesar Philippidis <cesar@codesourcery.com>
1319 Thomas Schwinge <thomas@codesourcery.com>
1320
1321 * testsuite/libgomp.oacc-fortran/declare-allocatable-1.f90: New.
1322
3055829a
GA
13232022-10-28 Julian Brown <julian@codesourcery.com>
1324 Thomas Schwinge <thomas@codesourcery.com>
1325
1326 PR middle-end/90115
1327 * testsuite/libgomp.oacc-fortran/declare-1.f90: Adjust scan output.
1328 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
1329 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
1330 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
1331 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
1332
4e939ae1
GA
13332022-10-24 Thomas Schwinge <thomas@codesourcery.com>
1334
1335 * plugin/plugin-nvptx.c (nvptx_open_device): Initialize
1336 'ptx_dev->rev_data'.
1337
13382022-10-24 Tobias Burnus <tobias@codesourcery.com>
1339
1340 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Remove
1341 'static' for this variable.
1342 * config/nvptx/libgomp-nvptx.h: New file.
1343 * config/nvptx/target.c: Include it.
1344 (GOMP_ADDITIONAL_ICVS): Declare extern var.
1345 (GOMP_REV_OFFLOAD_VAR): Declare var.
1346 (GOMP_target_ext): Handle reverse offload.
1347 * libgomp-plugin.h (GOMP_PLUGIN_target_rev): New prototype.
1348 * libgomp-plugin.c (GOMP_PLUGIN_target_rev): New, call ...
1349 * target.c (gomp_target_rev): ... this new stub function.
1350 * libgomp.h (gomp_target_rev): Declare.
1351 * libgomp.map (GOMP_PLUGIN_1.4): New; add GOMP_PLUGIN_target_rev.
1352 * plugin/cuda-lib.def (cuMemHostAlloc): Add.
1353 * plugin/plugin-nvptx.c: Include libgomp-nvptx.h.
1354 (struct ptx_device): Add rev_data member.
1355 (nvptx_open_device): Remove async_engines query, last used in
1356 r10-304-g1f4c5b9b; add unified-address assert check.
1357 (GOMP_OFFLOAD_get_num_devices): Claim unified address
1358 support.
1359 (GOMP_OFFLOAD_load_image): Free rev_fn_table if no
1360 offload functions exist. Make offload var available
1361 on host and device.
1362 (rev_off_dev_to_host_cpy, rev_off_host_to_dev_cpy): New.
1363 (GOMP_OFFLOAD_run): Handle reverse offload.
1364
10439719
GA
13652022-10-21 Thomas Schwinge <thomas@codesourcery.com>
1366
1367 PR tree-optimization/107195
1368 PR target/107344
1369 * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Restore SESE
1370 regions checking.
1371
47a6ae56
GA
13722022-10-20 Tobias Burnus <tobias@codesourcery.com>
1373
1374 * testsuite/lib/libgomp.exp (check_effective_target_offload_device_gcn):
1375 New.
1376 * testsuite/libgomp.c-c++-common/on_device_arch.h (device_arch_gcn,
1377 on_device_arch_gcn): New.
1378 * testsuite/libgomp.c-c++-common/requires-4a.c: New test; copied from
1379 requires-4.c but using heap-allocated memory.
1380
13812022-10-20 Thomas Schwinge <thomas@codesourcery.com>
1382
1383 PR target/105421
1384 * testsuite/libgomp.oacc-c-c++-common/private-big-1.c: New.
1385
6237663c
GA
13862022-10-17 Thomas Schwinge <thomas@codesourcery.com>
1387
1388 * testsuite/libgomp.c/reverse-offload-sm30.c: Fix nvptx-specific
1389 '-foffload-options' syntax.
1390
621a911d
GA
13912022-10-13 Tobias Burnus <tobias@codesourcery.com>
1392
1393 * testsuite/libgomp.fortran/task-7.f90: New test.
1394 * testsuite/libgomp.fortran/task-8.f90: New test.
1395 * testsuite/libgomp.fortran/task-in-explicit-1.f90: New test.
1396 * testsuite/libgomp.fortran/task-in-explicit-2.f90: New test.
1397 * testsuite/libgomp.fortran/task-in-explicit-3.f90: New test.
1398 * testsuite/libgomp.fortran/task-reduction-17.f90: New test.
1399 * testsuite/libgomp.fortran/task-reduction-18.f90: New test.
1400
781f477a
GA
14012022-10-12 Jakub Jelinek <jakub@redhat.com>
1402
1403 * libgomp.texi (OpenMP 5.2): Fix up allocator -> allocate directive
1404 in deprecation bullet.
1405
14062022-10-12 Jakub Jelinek <jakub@redhat.com>
1407
1408 * omp.h.in (omp_in_explicit_task): Declare.
1409 * omp_lib.h.in (omp_in_explicit_task): Likewise.
1410 * omp_lib.f90.in (omp_in_explicit_task): New interface.
1411 * libgomp.map (OMP_5.2): New symbol version, export
1412 omp_in_explicit_task and omp_in_explicit_task_.
1413 * task.c (omp_in_explicit_task): New function.
1414 * fortran.c (omp_in_explicit_task): Add ialias_redirect.
1415 (omp_in_explicit_task_): New function.
1416 * libgomp.texi (OpenMP 5.2): Mark omp_in_explicit_task as implemented.
1417 * testsuite/libgomp.c-c++-common/task-in-explicit-1.c: New test.
1418 * testsuite/libgomp.c-c++-common/task-in-explicit-2.c: New test.
1419 * testsuite/libgomp.c-c++-common/task-in-explicit-3.c: New test.
1420
14212022-10-12 Jakub Jelinek <jakub@redhat.com>
1422
1423 * task.c (gomp_create_artificial_team): Fix up handling of invocations
1424 from within explicit task.
1425 * target.c (GOMP_target_ext): Likewise.
1426 * testsuite/libgomp.c/task-7.c: New test.
1427 * testsuite/libgomp.c/task-8.c: New test.
1428 * testsuite/libgomp.c-c++-common/task-reduction-17.c: New test.
1429 * testsuite/libgomp.c-c++-common/task-reduction-18.c: New test.
1430
14312022-10-12 Martin Liska <mliska@suse.cz>
1432
1433 * configure: Regenerate.
1434
ab332cd7
GA
14352022-10-11 Olivier Hainque <hainque@adacore.com>
1436 Olivier Hainque <hainque@adacore.com>
1437
1438 * configure: Regenerate.
1439
966010b2
GA
14402022-10-05 Tobias Burnus <tobias@codesourcery.com>
1441
1442 * libgomp.texi (OpenMP 5.1 Impl. Status): Mark 'assume' as 'Y'.
1443
85872a69
GA
14442022-10-04 Jakub Jelinek <jakub@redhat.com>
1445
1446 * libgomp.texi (Support begin/end declare target syntax in C/C++):
1447 Mark as implemented.
1448
3a221b73
GA
14492022-09-30 Tobias Burnus <tobias@codesourcery.com>
1450
1451 PR fortran/105318
1452 * testsuite/libgomp.fortran/is_device_ptr-2.f90: New test.
1453
9e79a25b
GA
14542022-09-28 Tobias Burnus <tobias@codesourcery.com>
1455
1456 * libgomp.texi (OpenMP 5.1): Mark 'assume' as implemented
1457 for C/C++. Remove duplicated 'begin declare target' entry.
1458
28a61ecd
GA
14592022-09-24 Jakub Jelinek <jakub@redhat.com>
1460
1461 PR c/106981
1462 * testsuite/libgomp.c-c++-common/pr106981.c: New test.
1463
ff822367
GA
14642022-09-14 Julian Brown <julian@codesourcery.com>
1465
1466 * testsuite/libgomp.oacc-c-c++-common/deep-copy-15.c: New test.
1467 * testsuite/libgomp.oacc-c-c++-common/deep-copy-16.c: New test.
1468 * testsuite/libgomp.oacc-c++/deep-copy-17.C: New test.
1469 * testsuite/libgomp.oacc-c-c++-common/deep-copy-arrayofstruct.c: Move
1470 test to here, make "run" test.
1471
1995a022
GA
14722022-09-13 Jakub Jelinek <jakub@redhat.com>
1473
1474 PR libgomp/106906
1475 * env.c (get_icv_member_addr): Cast false to void * before assigning
1476 it to icv_addr[1], and comment the whole assignment out.
1477
14782022-09-13 Tobias Burnus <tobias@codesourcery.com>
1479
1480 * libgomp.texi (gcn): Move misplaced -march=sm_30 remark to ...
1481 (nvptx): ... here.
1482
b5f09bd7
GA
14832022-09-12 Tobias Burnus <tobias@codesourcery.com>
1484
1485 * libgomp.texi (Offload-Target Specifics: nvptx): Document
1486 that reverse offload requires >= -march=sm_35.
1487 * testsuite/libgomp.c-c++-common/requires-4.c: Build for nvptx
1488 with -misa=sm_35.
1489 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
1490 * testsuite/libgomp.c-c++-common/requires-6.c: Likewise.
1491 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: Likewise.
1492 * testsuite/libgomp.fortran/reverse-offload-1.f90: Likewise.
1493 * testsuite/libgomp.c/reverse-offload-sm30.c: New test.
1494
14952022-09-12 Tobias Burnus <tobias@codesourcery.com>
1496
1497 * libgomp.texi (OpenMP 5.1 Impl. Status): Add two new minor items.
1498 (OpenMP 5.2 Impl. Status): Improve omp/omx/ompx wording.
1499
15002022-09-12 Jakub Jelinek <jakub@redhat.com>
1501
1502 PR libgomp/106894
1503 * testsuite/libgomp.c-c++-common/icv-6.c: Include string.h.
1504 (main): Avoid tests for which corresponding non-_ALL suffixed variable
1505 is in the environment, or for OMP_NUM_TEAMS on the device
1506 OMP_NUM_TEAMS_DEV_?.
1507
5b3496e2
GA
15082022-09-10 Iain Sandoe <iain@sandoe.co.uk>
1509
1510 * env.c (initialize_env): Include libiberty environ.h.
1511
861d1a11
GA
15122022-09-09 Tobias Burnus <tobias@codesourcery.com>
1513
1514 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Read offload
1515 function address table '$offload_func_table' if rev_fn_table
1516 is not NULL.
1517
15182022-09-09 Tobias Burnus <tobias@codesourcery.com>
1519
1520 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Read
1521 .offload_func_table to populate rev_fn_table when requested.
1522
15232022-09-09 Tobias Burnus <tobias@codesourcery.com>
1524
1525 * libgomp-plugin.h (GOMP_OFFLOAD_load_image): Add
1526 'uint64_t **rev_fn_table' argument.
1527 * oacc-host.c (host_load_image): Likewise.
1528 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Likewise;
1529 currently unused.
1530 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
1531 * target.c (gomp_load_image_to_device): Update call but pass
1532 NULL for now.
1533
15342022-09-09 Jakub Jelinek <jakub@redhat.com>
1535
1536 PR libgomp/106894
1537 * env.c (initialize_env) <case PARSE_BIND>: Use char ** instead of
1538 char * for dest[1] initialization from params[1]. Formatting fixes.
1539
2e7ad70c
GA
15402022-09-08 Tobias Burnus <tobias@codesourcery.com>
1541
1542 PR fortran/106670
1543 * libgomp.texi (OpenMP 5.2): Add comment to ompx/omx entry.
1544
15452022-09-08 Tobias Burnus <tobias@codesourcery.com>
1546
1547 * libgomp.texi (OpenMP-Implementation Specifics): New; add libmemkind
1548 section; move OpenMP Context Selectors from ...
1549 (Offload-Target Specifics): ... here; add 'AMD Radeo (GCN)' and
1550 'nvptx' sections.
1551
15522022-09-08 Marcel Vollweiler <marcel@codesourcery.com>
1553
1554 * config/gcn/icv-device.c (omp_get_default_device): Return device-
1555 specific ICV.
1556 (omp_get_max_teams): Added for GCN devices.
1557 (omp_set_num_teams): Likewise.
1558 (ialias): Likewise.
1559 * config/nvptx/icv-device.c (omp_get_default_device): Return device-
1560 specific ICV.
1561 (omp_get_max_teams): Added for NVPTX devices.
1562 (omp_set_num_teams): Likewise.
1563 (ialias): Likewise.
1564 * env.c (struct gomp_icv_list): New struct to store entries of initial
1565 ICV values.
1566 (struct gomp_offload_icv_list): New struct to store entries of device-
1567 specific ICV values that are copied to the device and back.
1568 (struct gomp_default_icv_values): New struct to store default values of
1569 ICVs according to the OpenMP standard.
1570 (parse_schedule): Generalized for different variants of OMP_SCHEDULE.
1571 (print_env_var_error): Function that prints an error for invalid values
1572 for ICVs.
1573 (parse_unsigned_long_1): Removed getenv. Generalized.
1574 (parse_unsigned_long): Likewise.
1575 (parse_int_1): Likewise.
1576 (parse_int): Likewise.
1577 (parse_int_secure): Likewise.
1578 (parse_unsigned_long_list): Likewise.
1579 (parse_target_offload): Likewise.
1580 (parse_bind_var): Likewise.
1581 (parse_stacksize): Likewise.
1582 (parse_boolean): Likewise.
1583 (parse_wait_policy): Likewise.
1584 (parse_allocator): Likewise.
1585 (omp_display_env): Extended to output different variants of environment
1586 variables.
1587 (print_schedule): New helper function for omp_display_env which prints
1588 the values of run_sched_var.
1589 (print_proc_bind): New helper function for omp_display_env which prints
1590 the values of proc_bind_var.
1591 (enum gomp_parse_type): Collection of types used for parsing environment
1592 variables.
1593 (ENTRY): Preprocess string lengths of environment variables.
1594 (OMP_VAR_CNT): Preprocess table size.
1595 (OMP_HOST_VAR_CNT): Likewise.
1596 (INT_MAX_STR_LEN): Constant for the maximal number of digits of a device
1597 number.
1598 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
1599 (gomp_set_icv_flag): Sets a flag for a particular ICV.
1600 (print_device_specific_icvs): New helper function for omp_display_env to
1601 print device specific ICV values.
1602 (get_device_num): New helper function for parse_device_specific.
1603 Extracts the device number from an environment variable name.
1604 (get_icv_member_addr): Gets the memory address for a particular member
1605 of an ICV struct.
1606 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
1607 (initialize_icvs): New function to initialize a gomp_initial_icvs
1608 struct.
1609 (add_initial_icv_to_list): Adds an ICV struct to gomp_initial_icv_list.
1610 (startswith): Checks if a string starts with a given prefix.
1611 (initialize_env): Extended to parse the new syntax of environment
1612 variables.
1613 * icv-device.c (omp_get_max_teams): Added.
1614 (ialias): Likewise.
1615 (omp_set_num_teams): Likewise.
1616 * icv.c (omp_set_num_teams): Moved to icv-device.c.
1617 (omp_get_max_teams): Likewise.
1618 (ialias): Likewise.
1619 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Removed.
1620 (GOMP_ADDITIONAL_ICVS): New target-side struct that
1621 holds the designated ICVs of the target device.
1622 * libgomp.h (enum gomp_icvs): Collection of ICVs.
1623 (enum gomp_device_num): Definition of device numbers for _ALL, _DEV, and
1624 no suffix.
1625 (enum gomp_env_suffix): Collection of possible suffixes of environment
1626 variables.
1627 (struct gomp_initial_icvs): Contains all ICVs for which we need to store
1628 initial values.
1629 (struct gomp_default_icv):New struct to hold ICVs for which we need
1630 to store initial values.
1631 (struct gomp_icv_list): Definition of a linked list that is used for
1632 storing ICVs for the devices and also for _DEV, _ALL, and without
1633 suffix.
1634 (struct gomp_offload_icvs): New struct to hold ICVs that are copied to
1635 a device.
1636 (struct gomp_offload_icv_list): Definition of a linked list that holds
1637 device-specific ICVs that are copied to devices.
1638 (gomp_get_initial_icv_item): Get a list item of gomp_initial_icv_list.
1639 (gomp_get_icv_flag): Returns if a flag for a particular ICV is set.
1640 * libgomp.texi: Updated.
1641 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Extended to read
1642 further ICVs from the offload image.
1643 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
1644 * target.c (gomp_get_offload_icv_item): Get a list item of
1645 gomp_offload_icv_list.
1646 (get_gomp_offload_icvs): New. Returns the ICV values
1647 depending on the device num and the variable hierarchy.
1648 (gomp_load_image_to_device): Extended to copy further ICVs to a device.
1649 * testsuite/libgomp.c-c++-common/icv-5.c: New test.
1650 * testsuite/libgomp.c-c++-common/icv-6.c: New test.
1651 * testsuite/libgomp.c-c++-common/icv-7.c: New test.
1652 * testsuite/libgomp.c-c++-common/icv-8.c: New test.
1653 * testsuite/libgomp.c-c++-common/omp-display-env-1.c: New test.
1654 * testsuite/libgomp.c-c++-common/omp-display-env-2.c: New test.
1655
16562022-09-08 Jakub Jelinek <jakub@redhat.com>
1657
1658 * libgomp.texi (OpenMP 5.2): Mention that omp_cur_iteration is now
1659 fully supported.
1660 * testsuite/libgomp.c/doacross-4.c: New test.
1661 * testsuite/libgomp.c/doacross-5.c: New test.
1662 * testsuite/libgomp.c/doacross-6.c: New test.
1663 * testsuite/libgomp.c/doacross-7.c: New test.
1664
47d2dcd1
GA
16652022-09-05 Tobias Burnus <tobias@codesourcery.com>
1666
1667 * libgomp.texi (OpenMP 5.2): Update doacross/omp_cur_iteration status.
1668
16f542d6
GA
16692022-08-26 Tobias Burnus <tobias@codesourcery.com>
1670
1671 * libgomp.texi (OpenMP 5.0): Mark 'ancestor' as implemented but
1672 refer to 'requires'.
1673 * testsuite/libgomp.c-c++-common/reverse-offload-1-aux.c: New test.
1674 * testsuite/libgomp.c-c++-common/reverse-offload-1.c: New test.
1675 * testsuite/libgomp.fortran/reverse-offload-1-aux.f90: New test.
1676 * testsuite/libgomp.fortran/reverse-offload-1.f90: New test.
1677
0342f034
GA
16782022-08-17 Tobias Burnus <tobias@codesourcery.com>
1679
1680 PR middle-end/106548
1681 * testsuite/libgomp.c/linear-2.c: New test.
1682
16832022-08-17 Tobias Burnus <tobias@codesourcery.com>
1684
1685 * splay-tree.h: Fix splay_* macro unsetting if
1686 splay_tree_prefix is defined.
1687
b2bf0473
GA
16882022-07-29 Tobias Burnus <tobias@codesourcery.com>
1689
1690 * testsuite/libgomp.c-c++-common/pr106449-2.c: New test.
1691
16922022-07-29 Jakub Jelinek <jakub@redhat.com>
1693
1694 PR middle-end/106449
1695 * testsuite/libgomp.c-c++-common/pr106449.c: New test.
1696
43997608
GA
16972022-07-12 Tobias Burnus <tobias@codesourcery.com>
1698
1699 * target.c (gomp_target_init): Added tailing '\n' to gomp_debug.
1700
17012022-07-12 Thomas Schwinge <thomas@codesourcery.com>
1702
1703 PR middle-end/101551
1704 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: XFAIL
1705 'offloading_enabled' diagnostics issue.
1706
c72d4714
GA
17072022-07-11 Thomas Schwinge <thomas@codesourcery.com>
1708
1709 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Enhance
1710 '_Pragma' diagnostics verification.
1711
b53ebbc5
GA
17122022-07-10 Lewis Hyatt <lhyatt@gmail.com>
1713
1714 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Adapt for
1715 improved warning locations.
1716 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Likewise.
1717
0fe604a2
GA
17182022-07-08 Thomas Schwinge <thomas@codesourcery.com>
1719
1720 * testsuite/libgomp.c-c++-common/requires-1.c: Add 'dg-note's.
1721 * testsuite/libgomp.c-c++-common/requires-2.c: Likewise.
1722 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
1723 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
1724 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
1725
6345c414
GA
17262022-07-07 Thomas Schwinge <thomas@codesourcery.com>
1727
1728 * target.c (GOMP_offload_register, GOMP_offload_unregister):
1729 Denote as legacy entry points.
1730 * testsuite/lib/libgomp.exp
1731 (check_effective_target_offload_target_any): New proc.
1732 * testsuite/libgomp.c-c++-common/requires-1.c: Enable for
1733 'offload_target_any'.
1734 * testsuite/libgomp.c-c++-common/requires-3.c: Likewise.
1735 * testsuite/libgomp.c-c++-common/requires-7.c: Likewise.
1736 * testsuite/libgomp.fortran/requires-1.f90: Likewise.
1737
17382022-07-07 Thomas Schwinge <thomas@codesourcery.com>
1739
1740 * testsuite/libgomp.c-c++-common/requires-4.c: Enhance testing.
1741 * testsuite/libgomp.c-c++-common/requires-5.c: Likewise.
1742
17432022-07-07 Thomas Schwinge <thomas@codesourcery.com>
1744
1745 * testsuite/libgomp.c-c++-common/requires-3.c: Adjust.
1746
4bc92c3b
GA
17472022-07-06 Thomas Schwinge <thomas@codesourcery.com>
1748
1749 * target.c (GOMP_offload_register_ver): Clarify 'target_data' ->
1750 'data'.
1751 (GOMP_offload_unregister_ver): Likewise. Fix up 'target_data'.
1752
8467574d
GA
17532022-07-04 Tobias Burnus <tobias@codesourcery.com>
1754 Jakub Jelinek <jakub@redhat.com>
1755
1756 * libgomp.texi (OpenMP 5.2): Mark linear-clause change as 'Y'.
1757
17582022-07-04 Tobias Burnus <tobias@codesourcery.com>
1759 Chung-Lin Tang <cltang@codesourcery.com>
1760 Thomas Schwinge <thomas@codesourcery.com>
1761
1762 * libgomp-plugin.h (GOMP_OFFLOAD_get_num_devices): Add
1763 omp_requires_mask arg.
1764 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Likewise;
1765 return -1 when device available but omp_requires_mask != 0.
1766 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_get_num_devices): Likewise.
1767 * oacc-host.c (host_get_num_devices, host_openacc_get_property):
1768 Update call.
1769 * oacc-init.c (resolve_device, acc_init_1, acc_shutdown_1,
1770 goacc_attach_host_thread_to_device, acc_get_num_devices,
1771 acc_set_device_num, get_property_any): Likewise.
1772 * target.c (omp_requires_mask): New global var.
1773 (gomp_requires_to_name): New.
1774 (GOMP_offload_register_ver): Handle passed omp_requires_mask.
1775 (gomp_target_init): Handle omp_requires_mask.
1776 * libgomp.texi (OpenMP 5.0): Update requires impl. status.
1777 (OpenMP 5.1): Add a missed item.
1778 (OpenMP 5.2): Mark linear-clause change as supported in C/C++.
1779 * testsuite/libgomp.c-c++-common/requires-1-aux.c: New test.
1780 * testsuite/libgomp.c-c++-common/requires-1.c: New test.
1781 * testsuite/libgomp.c-c++-common/requires-2-aux.c: New test.
1782 * testsuite/libgomp.c-c++-common/requires-2.c: New test.
1783 * testsuite/libgomp.c-c++-common/requires-3-aux.c: New test.
1784 * testsuite/libgomp.c-c++-common/requires-3.c: New test.
1785 * testsuite/libgomp.c-c++-common/requires-4-aux.c: New test.
1786 * testsuite/libgomp.c-c++-common/requires-4.c: New test.
1787 * testsuite/libgomp.c-c++-common/requires-5-aux.c: New test.
1788 * testsuite/libgomp.c-c++-common/requires-5.c: New test.
1789 * testsuite/libgomp.c-c++-common/requires-6.c: New test.
1790 * testsuite/libgomp.c-c++-common/requires-7-aux.c: New test.
1791 * testsuite/libgomp.c-c++-common/requires-7.c: New test.
1792 * testsuite/libgomp.fortran/requires-1-aux.f90: New test.
1793 * testsuite/libgomp.fortran/requires-1.f90: New test.
1794
ed974488
GA
17952022-07-01 Tobias Burnus <tobias@codesourcery.com>
1796
1797 * libgomp.texi (OpenMP 5.2): Mark target enter/exit data
1798 with fromto as implemented.
1799
fb29fdea
GA
18002022-06-28 Martin Liska <mliska@suse.cz>
1801
1802 * acinclude.m4: Fix typo in mold linker detection.
1803 * Makefile.in: Regenerate.
1804 * configure: Regenerate.
1805
de89b078
GA
18062022-06-21 Jakub Jelinek <jakub@redhat.com>
1807 Paul Iannetta <piannetta@kalrayinc.com>
1808
1809 PR libgomp/106045
1810 * testsuite/libgomp.c/target-31.c: Add private (i) clause.
1811
5a66d7dd
GA
18122022-06-17 Martin Liska <mliska@suse.cz>
1813
1814 * libgomp.texi: Add table header for new features of
1815 OpenMP 5.2.
1816
499b9c5f
GA
18172022-06-15 Jakub Jelinek <jakub@redhat.com>
1818
1819 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c (main): Initialize
1820 q to ddress of an automatic variable. Use -5 instead of -1 in
1821 omp_get_mapped_ptr call. Add test with omp_initial_device.
1822 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90 (main): Use -5 instead
1823 of -1 in omp_get_mapped_ptr call. Add test with omp_initial_device.
1824 Renumber stop arguments afterwards.
1825
c3642271
GA
18262022-06-13 Jakub Jelinek <jakub@redhat.com>
1827
1828 * omp.h.in (omp_initial_device, omp_invalid_device): New enumerators.
1829 * omp_lib.f90.in (omp_initial_device, omp_invalid_device): New
1830 parameters.
1831 * omp_lib.h.in (omp_initial_device, omp_invalid_device): Likewise.
1832 * target.c (resolve_device): Add remapped argument, handle
1833 GOMP_DEVICE_ICV only if remapped is true (and clear remapped),
1834 for negative values, treat GOMP_DEVICE_FALLBACK as fallback only
1835 if remapped, otherwise treat omp_initial_device that way. For
1836 omp_invalid_device, always emit gomp_fatal, even when
1837 OMP_TARGET_OFFLOAD isn't mandatory.
1838 (GOMP_target, GOMP_target_ext, GOMP_target_data, GOMP_target_data_ext,
1839 GOMP_target_update, GOMP_target_update_ext,
1840 GOMP_target_enter_exit_data): Pass true as remapped argument to
1841 resolve_device.
1842 (omp_target_alloc, omp_target_free, omp_target_is_present,
1843 omp_target_memcpy_check, omp_target_associate_ptr,
1844 omp_target_disassociate_ptr, omp_get_mapped_ptr,
1845 omp_target_is_accessible): Pass false as remapped argument to
1846 resolve_device. Treat omp_initial_device the same as
1847 gomp_get_num_devices (). Don't bypass resolve_device calls if
1848 device_num is negative.
1849 (omp_pause_resource): Treat omp_initial_device the same as
1850 gomp_get_num_devices (). Call resolve_device.
1851 * icv-device.c (omp_set_default_device): Always set to device_num
1852 even when it is negative.
1853 * libgomp.texi: Document that Conforming device numbers,
1854 omp_initial_device and omp_invalid_device is implemented.
1855 * testsuite/libgomp.c/target-41.c (main): Add test with
1856 omp_initial_device.
1857 * testsuite/libgomp.c/target-45.c: New test.
1858 * testsuite/libgomp.c/target-46.c: New test.
1859 * testsuite/libgomp.c/target-47.c: New test.
1860 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c (main): Add
1861 test with omp_initial_device. Use -5 instead of -1 for negative value
1862 test.
1863 * testsuite/libgomp.fortran/target-is-accessible-1.f90 (main):
1864 Likewise. Reorder stop numbers.
1865
ef1e4d80
GA
18662022-06-10 Jakub Jelinek <jakub@redhat.com>
1867
1868 * allocator.c (gomp_init_memkind): Call dlopen with "libmemkind.so.0"
1869 rather than "libmemkind.so".
1870
18712022-06-10 Thomas Schwinge <thomas@codesourcery.com>
1872
1873 * plugin/Makefrag.am: Evaluate 'if PLUGIN_NVPTX_DYNAMIC' to true.
1874 * plugin/configfrag.ac (--with-cuda-driver)
1875 (--with-cuda-driver-include, --with-cuda-driver-lib)
1876 (CUDA_DRIVER_INCLUDE, CUDA_DRIVER_LIB, PLUGIN_NVPTX_CPPFLAGS)
1877 (PLUGIN_NVPTX_LDFLAGS, PLUGIN_NVPTX_LIBS, PLUGIN_NVPTX_DYNAMIC):
1878 Remove.
1879 * testsuite/libgomp-test-support.exp.in (cuda_driver_include)
1880 (cuda_driver_lib): Remove.
1881 * testsuite/lib/libgomp.exp (libgomp_init): Don't consider these.
1882 * Makefile.in: Regenerate.
1883 * configure: Likewise.
1884 * testsuite/Makefile.in: Likewise.
1885
e3bba42f
GA
18862022-06-09 Jakub Jelinek <jakub@redhat.com>
1887
1888 * config/linux/allocator.c: Fix up #include directive.
1889
18902022-06-09 Jakub Jelinek <jakub@redhat.com>
1891
1892 * allocator.c: Include dlfcn.h if LIBGOMP_USE_MEMKIND is defined.
1893 (enum gomp_memkind_kind): New type.
1894 (struct omp_allocator_data): Add memkind field if LIBGOMP_USE_MEMKIND
1895 is defined.
1896 (struct gomp_memkind_data): New type.
1897 (memkind_data, memkind_data_once): New variables.
1898 (gomp_init_memkind, gomp_get_memkind): New functions.
1899 (omp_init_allocator): Initialize data.memkind, don't fail for
1900 omp_high_bw_mem_space if libmemkind supports it.
1901 (omp_aligned_alloc, omp_free, omp_aligned_calloc, omp_realloc): Add
1902 memkind support of LIBGOMP_USE_MEMKIND is defined.
1903 * config/linux/allocator.c: New file.
1904
58b67140
GA
19052022-06-03 Tobias Burnus <tobias@codesourcery.com>
1906
1907 * libgomp.texi (OpenMP 5.2): Mark scope w/ firstprivate/allocate as Y.
1908 * testsuite/libgomp.fortran/scope-2.f90: New test.
1909
b168441c
GA
19102022-06-02 David Malcolm <dmalcolm@redhat.com>
1911
1912 * testsuite/lib/libgomp.exp: Add load_gcc_lib of scansarif.exp.
1913
820ead45
GA
19142022-05-31 Jakub Jelinek <jakub@redhat.com>
1915
1916 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add testcase for
1917 scope construct with allocate clause.
1918 * testsuite/libgomp.c-c++-common/allocate-3.c (foo): Likewise.
1919 * testsuite/libgomp.c-c++-common/scope-2.c: New test.
1920
37b3b5da
GA
19212022-05-28 Tobias Burnus <tobias@codesourcery.com>
1922
1923 * libgomp.texi (OpenMP 5.2): Mark 'enter' clause as supported.
1924 * testsuite/libgomp.fortran/declare-target-1.f90: Extend to test
1925 explicit 'to' and 'enter' clause.
1926 * testsuite/libgomp.fortran/declare-target-2.f90: Update accordingly.
1927
19282022-05-28 Jakub Jelinek <jakub@redhat.com>
1929
1930 PR libgomp/105745
1931 * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Don't define for
1932 defined(HAVE__ALIGNED_MALLOC) case.
1933 * alloc.c (gomp_aligned_alloc): Move defined(HAVE__ALIGNED_MALLOC)
1934 handling as last option before fallback instead of first.
1935 (gomp_aligned_free): For defined(HAVE__ALIGNED_MALLOC) call
1936 _aligned_free.
1937
d9176e64
GA
19382022-05-27 Jakub Jelinek <jakub@redhat.com>
1939
1940 * testsuite/libgomp.c-c++-common/target-40.c: Modify some existing to
1941 clauses to enter.
1942 * testsuite/libgomp.c/target-41.c: Likewise.
1943
19442022-05-27 Tobias Burnus <tobias@codesourcery.com>
1945
1946 * libgomp.texi (Other new OpenMP 5.1 features): Add
1947 'begin declare target'.
1948 (Other new OpenMP 5.2 features): New.
1949
3dff965c
GA
19502022-05-25 Jakub Jelinek <jakub@redhat.com>
1951
1952 * task.c (gomp_task_run_post_handle_dependers): If empty_task
1953 is the last task taskwait depend depends on, wake it up.
1954 Similarly if it is the last child of a taskgroup, use atomic
1955 store instead of decrement and awak taskgroup wait if any.
1956 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-2.c: New test.
1957
768f49a2
GA
19582022-05-24 Andrew Stubbs <ams@codesourcery.com>
1959
1960 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
1961 EF_AMDGPU_MACH_AMDGCN_GFX90a.
1962 (gcn_gfx90a_s): New.
1963 (isa_hsa_name): Support gfx90a.
1964 (isa_code): Likewise.
1965
19662022-05-24 Tobias Burnus <tobias@codesourcery.com>
1967
1968 PR c/105378
1969 * libgomp.texi (OpenMP 5.1): Set 'taskwait nowait' to 'Y'.
1970 * testsuite/libgomp.fortran/taskwait-depend-nowait-1.f90: New.
1971
19722022-05-24 Jakub Jelinek <jakub@redhat.com>
1973
1974 PR c/105378
1975 * libgomp_g.h (GOMP_taskwait_depend_nowait): Declare.
1976 * libgomp.map (GOMP_taskwait_depend_nowait): Export at GOMP_5.1.1.
1977 * task.c (empty_task): New function.
1978 (gomp_task_run_post_handle_depend_hash): Declare earlier.
1979 (gomp_task_run_post_handle_depend): Declare.
1980 (GOMP_task): Optimize fn == empty_task if there is nothing to wait
1981 for.
1982 (gomp_task_run_post_handle_dependers): Optimize task->fn == empty_task.
1983 (GOMP_taskwait_depend_nowait): New function.
1984 * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-1.c: New test.
1985
168fc8bd
GA
19862022-05-23 Tobias Burnus <tobias@codesourcery.com>
1987
1988 PR fortran/104949
1989 * target.c (gomp_map_vars_internal, copy_firstprivate_data):
1990 Support attach for GOMP_MAP_FIRSTPRIVATE.
1991 * testsuite/libgomp.fortran/target-firstprivate-1.f90: New test.
1992 * testsuite/libgomp.fortran/target-firstprivate-2.f90: New test.
1993 * testsuite/libgomp.fortran/target-firstprivate-3.f90: New test.
1994
57f2ce6a
GA
19952022-05-20 Marcel Vollweiler <marcel@codesourcery.com>
1996
1997 * libgomp.map: Added omp_target_memcpy_async and
1998 omp_target_memcpy_rect_async.
1999 * libgomp.texi: Both functions are now supported.
2000 * omp.h.in: Added omp_target_memcpy_async and
2001 omp_target_memcpy_rect_async.
2002 * omp_lib.f90.in: Added interfaces for both new functions.
2003 * omp_lib.h.in: Likewise.
2004 * target.c (ialias_redirect): Added for GOMP_task.
2005 (omp_target_memcpy): Restructured into check and copy part.
2006 (omp_target_memcpy_check): New helper function for omp_target_memcpy and
2007 omp_target_memcpy_async that checks requirements.
2008 (omp_target_memcpy_copy): New helper function for omp_target_memcpy and
2009 omp_target_memcpy_async that performs the memcpy.
2010 (omp_target_memcpy_async_helper): New helper function that is used in
2011 omp_target_memcpy_async for the asynchronous task.
2012 (omp_target_memcpy_async): Added.
2013 (omp_target_memcpy_rect): Restructured into check and copy part.
2014 (omp_target_memcpy_rect_check): New helper function for
2015 omp_target_memcpy_rect and omp_target_memcpy_rect_async that checks
2016 requirements.
2017 (omp_target_memcpy_rect_copy): New helper function for
2018 omp_target_memcpy_rect and omp_target_memcpy_rect_async that performs
2019 the memcpy.
2020 (omp_target_memcpy_rect_async_helper): New helper function that is used
2021 in omp_target_memcpy_rect_async for the asynchronous task.
2022 (omp_target_memcpy_rect_async): Added.
2023 * task.c (ialias): Added for GOMP_task.
2024 * testsuite/libgomp.c-c++-common/target-memcpy-async-1.c: New test.
2025 * testsuite/libgomp.c-c++-common/target-memcpy-async-2.c: New test.
2026 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-1.c: New test.
2027 * testsuite/libgomp.c-c++-common/target-memcpy-rect-async-2.c: New test.
2028 * testsuite/libgomp.fortran/target-memcpy-async-1.f90: New test.
2029 * testsuite/libgomp.fortran/target-memcpy-async-2.f90: New test.
2030 * testsuite/libgomp.fortran/target-memcpy-rect-async-1.f90: New test.
2031 * testsuite/libgomp.fortran/target-memcpy-rect-async-2.f90: New test.
2032
1cda629f
GA
20332022-05-18 Tobias Burnus <tobias@codesourcery.com>
2034
2035 * libgomp.texi (OpenMP 5.1): Set 'inoutset' to Y.
2036 (OpenMP Context Selectors): Add missing comma.
2037 * testsuite/libgomp.fortran/depend-5.f90: Add inoutset test.
2038 * testsuite/libgomp.fortran/depend-6.f90: Likewise.
2039 * testsuite/libgomp.fortran/depend-7.f90: Likewise.
2040 * testsuite/libgomp.fortran/depend-inoutset-1.f90: New test.
2041
3d9439b1
GA
20422022-05-17 Jakub Jelinek <jakub@redhat.com>
2043
2044 * libgomp.texi (OpenMP 5.1): Remove "Not inside target regions"
2045 comment for omp_display_env feature.
2046
20472022-05-17 Tobias Burnus <tobias@codesourcery.com>
2048
2049 * libgomp.texi (Offload-Target Specifics): New chapter; add section
2050 to document OpenMP context selectors.
2051
20522022-05-17 Jakub Jelinek <jakub@redhat.com>
2053
2054 * libgomp.h (struct gomp_task_depend_entry): Change is_in type
2055 from bool to unsigned char.
2056 * task.c (gomp_task_handle_depend): Handle GOMP_DEPEND_INOUTSET.
2057 Ignore dependencies where
2058 task->depend[i].is_in && task->depend[i].is_in == ent->is_in
2059 rather than just task->depend[i].is_in && ent->is_in. Remember
2060 whether GOMP_DEPEND_IN loop is needed and guard the loop with that
2061 conditional.
2062 (gomp_task_maybe_wait_for_dependencies): Handle GOMP_DEPEND_INOUTSET.
2063 Ignore dependencies where elem.is_in && elem.is_in == ent->is_in
2064 rather than just elem.is_in && ent->is_in.
2065 * testsuite/libgomp.c-c++-common/depend-1.c (test): Add task with
2066 inoutset depend-kind.
2067 * testsuite/libgomp.c-c++-common/depend-2.c (test): Likewise.
2068 * testsuite/libgomp.c-c++-common/depend-3.c (test): Likewise.
2069 * testsuite/libgomp.c-c++-common/depend-inoutset-1.c: New test.
2070
20712022-05-17 Tobias Burnus <tobias@codesourcery.com>
2072
2073 * libgomp.texi (OpenMP Implementation Status): Add 5.2 table.
2074
20752022-05-17 Tobias Burnus <tobias@codesourcery.com>
2076
2077 * libgomp.texi (OpenMP 5.1): Set omp_all_memory to 'Y'.
2078 * testsuite/libgomp.fortran/depend-5.f90: New test.
2079 * testsuite/libgomp.fortran/depend-6.f90: New test.
2080 * testsuite/libgomp.fortran/depend-7.f90: New test.
2081
702bd11f
GA
20822022-05-16 Marcel Vollweiler <marcel@codesourcery.com>
2083
2084 * testsuite/libgomp.c++/target-has-device-addr-7.C: New test.
2085 * testsuite/libgomp.c++/target-has-device-addr-8.C: New test.
2086 * testsuite/libgomp.c++/target-has-device-addr-9.C: New test.
2087
9df4ffe4
GA
20882022-05-13 Tobias Burnus <tobias@codesourcery.com>
2089
2090 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
2091
20922022-05-13 Tobias Burnus <tobias@codesourcery.com>
2093
2094 * testsuite/libgomp.fortran/target-nowait-array-section.f90: New test.
2095
20962022-05-13 Thomas Schwinge <thomas@codesourcery.com>
2097
2098 * plugin/Makefrag.am (libgomp_plugin_nvptx_la_CPPFLAGS)
2099 [PLUGIN_NVPTX_DYNAMIC]: Don't append '$(PLUGIN_NVPTX_CPPFLAGS)'.
2100 (libgomp_plugin_nvptx_la_LDFLAGS) [PLUGIN_NVPTX_DYNAMIC]: Don't
2101 append '$(PLUGIN_NVPTX_LDFLAGS)'.
2102 * Makefile.in: Regenerate.
2103
49ace834
GA
21042022-05-12 Thomas Schwinge <thomas@codesourcery.com>
2105
2106 * Makefile.am (libgomp_la_LIBADD): Initialize.
2107 * plugin/configfrag.ac (DL_LIBS): New.
2108 (PLUGIN_GCN_LIBS): Remove.
2109 (PLUGIN_NVPTX_LIBS): Don't set in the 'PLUGIN_NVPTX_DYNAMIC' case.
2110 * plugin/Makefrag.am (libgomp_la_LIBADD)
2111 (libgomp_plugin_gcn_la_LIBADD): Consider '$(DL_LIBS)'.
2112 (libgomp_plugin_nvptx_la_LIBADD) <PLUGIN_NVPTX_DYNAMIC>: Likewise.
2113 * Makefile.in: Regenerate.
2114 * config.h.in: Likewise.
2115 * configure: Likewise.
2116 * testsuite/Makefile.in: Likewise.
2117
21182022-05-12 Thomas Schwinge <thomas@codesourcery.com>
2119
2120 * plugin/Makefrag.am: Handle 'PLUGIN_NVPTX_DYNAMIC'.
2121 * plugin/configfrag.ac (PLUGIN_NVPTX_DYNAMIC): Change
2122 'AC_DEFINE_UNQUOTED' into 'AM_CONDITIONAL'.
2123 * plugin/plugin-nvptx.c: Split 'PLUGIN_NVPTX_DYNAMIC' into
2124 'PLUGIN_NVPTX_INCLUDE_SYSTEM_CUDA_H' and
2125 'PLUGIN_NVPTX_LINK_LIBCUDA'.
2126 * Makefile.in: Regenerate.
2127 * config.h.in: Likewise.
2128 * configure: Likewise.
2129
21302022-05-12 Thomas Schwinge <thomas@codesourcery.com>
2131
2132 * plugin/configfrag.ac: Don't 'AC_SUBST' and 'AC_DEFINE_UNQUOTED'
2133 for 'PLUGIN_GCN', 'PLUGIN_NVPTX'.
2134 * Makefile.in: Regenerate.
2135 * config.h.in: Likewise.
2136 * configure: Likewise.
2137 * testsuite/Makefile.in: Likewise.
2138
21392022-05-12 Jakub Jelinek <jakub@redhat.com>
2140
2141 * libgomp.h (struct gomp_task): Add depend_all_memory member.
2142 * task.c (gomp_init_task): Initialize depend_all_memory.
2143 (gomp_task_handle_depend): Handle omp_all_memory.
2144 (gomp_task_run_post_handle_depend_hash): Clear
2145 parent->depend_all_memory if equal to current task.
2146 (gomp_task_maybe_wait_for_dependencies): Handle omp_all_memory.
2147 * testsuite/libgomp.c-c++-common/depend-1.c: New test.
2148 * testsuite/libgomp.c-c++-common/depend-2.c: New test.
2149 * testsuite/libgomp.c-c++-common/depend-3.c: New test.
2150
d0d513b5
GA
21512022-05-11 Thomas Schwinge <thomas@codesourcery.com>
2152
2153 * plugin/configfrag.ac: Remove '--with-hsa-runtime',
2154 '--with-hsa-runtime-include', '--with-hsa-runtime-lib' processing.
2155 * Makefile.in: Regenerate.
2156 * configure: Likewise.
2157 * testsuite/Makefile.in: Likewise.
2158
21592022-05-11 Thomas Schwinge <thomas@codesourcery.com>
2160
2161 * plugin/Makefrag.am (libgomp_plugin_gcn_la_CPPFLAGS): Don't
2162 consider 'PLUGIN_GCN_CPPFLAGS'.
2163 (libgomp_plugin_gcn_la_LDFLAGS): Don't consider
2164 'PLUGIN_GCN_LDFLAGS'.
2165 * plugin/configfrag.ac (PLUGIN_GCN_CPPFLAGS, PLUGIN_GCN_LDFLAGS):
2166 Remove.
2167 * Makefile.in: Regenerate.
2168 * configure: Likewise.
2169 * testsuite/Makefile.in: Likewise.
2170
21712022-05-11 Thomas Schwinge <thomas@codesourcery.com>
2172
2173 * plugin/configfrag.ac (HSA_RUNTIME_CPPFLAGS)
2174 (HSA_RUNTIME_LDFLAGS): Remove.
2175 * configure: Regenerate.
2176
21772022-05-11 Thomas Schwinge <thomas@codesourcery.com>
2178
2179 * testsuite/lib/libgomp.exp (libgomp_init): Don't
2180 'append always_ld_library_path ":$hsa_runtime_lib"'.
2181 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib): Don't set.
2182
e8778989
GA
21832022-05-10 Thomas Schwinge <thomas@codesourcery.com>
2184
2185 * testsuite/libgomp.fortran/use_device_addr-5.f90: Fix up
2186 multi-device testing.
2187
ea3fbfda
GA
21882022-05-06 Marcel Vollweiler <marcel@codesourcery.com>
2189
2190 * libgomp.map: Added omp_target_is_accessible.
2191 * libgomp.texi: Tagged omp_target_is_accessible as supported.
2192 * omp.h.in: Added omp_target_is_accessible.
2193 * omp_lib.f90.in: Added interface for omp_target_is_accessible.
2194 * omp_lib.h.in: Likewise.
2195 * target.c (omp_target_is_accessible): Added implementation of
2196 omp_target_is_accessible.
2197 * testsuite/libgomp.c-c++-common/target-is-accessible-1.c: New test.
2198 * testsuite/libgomp.fortran/target-is-accessible-1.f90: New test.
2199
ab869e7f
GA
22002022-05-05 Sandra Loosemore <sandra@codesourcery.com>
2201
2202 * libgomp.texi (OpenMP 5.0): Feature is now fully supported.
2203
3e7db517
GA
22042022-05-04 Tobias Burnus <tobias@codesourcery.com>
2205
2206 * plugin/plugin-gcn.c (isa_matches_agent): Suggest -foffload-options.
2207
22082022-05-04 Tobias Burnus <tobias@codesourcery.com>
2209
2210 * testsuite/libgomp.fortran/use_device_addr-5.f90: New test.
2211
e66af28d
GA
22122022-05-03 Marcel Vollweiler <marcel@codesourcery.com>
2213
2214 * libgomp.map: Added omp_get_mapped_ptr.
2215 * libgomp.texi: Tagged omp_get_mapped_ptr as supported.
2216 * omp.h.in: Added omp_get_mapped_ptr.
2217 * omp_lib.f90.in: Added interface for omp_get_mapped_ptr.
2218 * omp_lib.h.in: Likewise.
2219 * target.c (omp_get_mapped_ptr): Added implementation of
2220 omp_get_mapped_ptr.
2221 * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c: New test.
2222 * testsuite/libgomp.c-c++-common/get-mapped-ptr-2.c: New test.
2223 * testsuite/libgomp.c-c++-common/get-mapped-ptr-3.c: New test.
2224 * testsuite/libgomp.c-c++-common/get-mapped-ptr-4.c: New test.
2225 * testsuite/libgomp.fortran/get-mapped-ptr-1.f90: New test.
2226 * testsuite/libgomp.fortran/get-mapped-ptr-2.f90: New test.
2227 * testsuite/libgomp.fortran/get-mapped-ptr-3.f90: New test.
2228 * testsuite/libgomp.fortran/get-mapped-ptr-4.f90: New test.
2229
6b6f53d8
GA
22302022-04-28 Thomas Schwinge <thomas@codesourcery.com>
2231
2232 PR fortran/104717
2233 * testsuite/libgomp.oacc-fortran/print-1.f90: Add OpenACC
2234 privatization scanning. For GCN offloading compilation, raise
2235 '-mgang-private-size'.
2236
01ad093b
GA
22372022-04-26 Jakub Jelinek <jakub@redhat.com>
2238
2239 PR libgomp/105358
2240 * work.c (gomp_init_work_share): Don't mask of adjustment for
2241 dynamic long long realignment if struct gomp_work_share has smaller
2242 alignof than long long.
2243 * loop.c (GOMP_loop_start): Don't use inline_ordered_team_ids if
2244 struct gomp_work_share has smaller alignof than long long or if
2245 sizeof (struct gomp_work_share) is smaller than
2246 INLINE_ORDERED_TEAM_IDS_OFF.
2247 * loop_ull.c (GOMP_loop_ull_start): Likewise.
2248 * sections.c (GOMP_sections2_start): Likewise.
2249
98de0da6
GA
22502022-04-25 Jakub Jelinek <jakub@redhat.com>
2251 Thomas Schwinge <thomas@codesourcery.com>
2252
2253 PR fortran/104717
2254 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Adjust.
2255
247bbed1
GA
22562022-04-13 Jakub Jelinek <jakub@redhat.com>
2257
2258 * libgomp.texi: Fix a typo - mutexinouset -> mutexinoutset.
2259
80eb8ec6
GA
22602022-04-06 Thomas Schwinge <thomas@codesourcery.com>
2261
2262 * plugin/cuda/cuda.h: Remove file.
2263 * plugin/plugin-nvptx.c [PLUGIN_NVPTX_DYNAMIC]: Include
2264 "cuda/cuda.h" instead of <cuda.h>.
2265 * plugin/configfrag.ac <PLUGIN_NVPTX_DYNAMIC>: Don't set
2266 'PLUGIN_NVPTX_CPPFLAGS'.
2267 * configure: Regenerate.
2268
9d84ed68
GA
22692022-04-05 Chung-Lin Tang <cltang@codesourcery.com>
2270
2271 * testsuite/libgomp.fortran/use_device_ptr-4.f90: New testcase.
2272
5e09bb1b
GA
22732022-04-04 Tom de Vries <tdevries@suse.de>
2274
2275 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Use
2276 on_device_arch_nvptx instead of offload_target_nvptx.
2277 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
2278
8af4270d
GA
22792022-04-01 Tom de Vries <tdevries@suse.de>
2280
2281 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Define
2282 and use REC_DEPTH.
2283 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
2284
22852022-04-01 Tom de Vries <tdevries@suse.de>
2286
2287 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: Fix
2288 num_workers check.
2289
9f774626
GA
22902022-03-29 Chenghua Xu <xuchenghua@loongson.cn>
2291 Lulu Cheng <chenglulu@loongson.cn>
2292
2293 * configure.tgt: Add LoongArch triplet.
2294
aab0127d
GA
22952022-03-28 Tom de Vries <tdevries@suse.de>
2296
2297 * plugin/configfrag.ac: Use /$(libexecdir:\$(exec_prefix)/%=%)/
2298 instead of /libexec/.
2299 * configure: Regenerate.
2300
31e989a2
GA
23012022-03-25 Tom de Vries <tdevries@suse.de>
2302
2303 PR libgomp/105042
2304 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Reduce
2305 execution time.
2306 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Same.
2307 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Same.
2308
d1ca63a1
GA
23092022-03-23 Tobias Burnus <tobias@codesourcery.com>
2310
2311 PR middle-end/104285
2312 * testsuite/libgomp.c++/target-same-name-2-a.C: New test.
2313 * testsuite/libgomp.c++/target-same-name-2-b.C: New test.
2314 * testsuite/libgomp.c++/target-same-name-2.C: New test.
2315 * testsuite/libgomp.c-c++-common/target-same-name-1-a.c: New test.
2316 * testsuite/libgomp.c-c++-common/target-same-name-1-b.c: New test.
2317 * testsuite/libgomp.c-c++-common/target-same-name-1.c: New test.
2318
a2287813
GA
23192022-03-22 Tom de Vries <tdevries@suse.de>
2320
2321 PR target/104916
2322 PR target/104783
2323 * testsuite/libgomp.c/pr104783-2.c: New test.
2324
8ca61ad1
GA
23252022-03-18 Tobias Burnus <tobias@codesourcery.com>
2326
2327 PR fortran/103039
2328 * testsuite/libgomp.fortran/associate4.f90: New test.
2329
23302022-03-18 Tom de Vries <tdevries@suse.de>
2331
2332 PR target/104952
2333 * testsuite/libgomp.c/pr104952-1.c: New test.
2334 * testsuite/libgomp.c/pr104952-2.c: New test.
2335
23362022-03-18 Jakub Jelinek <jakub@redhat.com>
2337
2338 * config/linux/affinity.c (gomp_affinity_init_numa_domains): Move seen
2339 variable next to pl variable.
2340
e9ea3016
GA
23412022-03-17 Thomas Schwinge <thomas@codesourcery.com>
2342
2343 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
2344 Enhance.
2345 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
2346 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
2347
23482022-03-17 Thomas Schwinge <thomas@codesourcery.com>
2349
2350 PR middle-end/90115
2351 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Enhance.
2352 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
2353
9fc8f278
GA
23542022-03-16 Marcel Vollweiler <marcel@codesourcery.com>
2355
2356 * fortran.c (omp_set_num_teams_8_): Call omp_set_num_teams instead of
2357 omp_set_max_active_levels.
2358 * testsuite/libgomp.fortran/icv-8.f90: New test.
2359
23602022-03-16 Thomas Schwinge <thomas@codesourcery.com>
2361
2362 PR testsuite/102841
2363 * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Adjust.
2364
b9756c08
GA
23652022-03-13 Tobias Burnus <tobias@codesourcery.com>
2366
2367 * libgomp.texi: Fix typo.
2368
57eeedda
GA
23692022-03-12 Thomas Schwinge <thomas@codesourcery.com>
2370
2371 PR middle-end/100280
2372 PR middle-end/104892
2373 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
2374 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise.
2375 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
2376 Likewise.
2377 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
2378 Likewise.
2379 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
2380 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
2381 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
2382 Likewise.
2383
23842022-03-12 Thomas Schwinge <thomas@codesourcery.com>
2385
2386 PR middle-end/104892
2387 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Point
2388 to PR104892.
2389 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Likewise,
2390 enable '--param=openacc-kernels=decompose' and adjust.
2391 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
2392 Likewise.
2393 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
2394 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
2395 Likewise.
2396
23972022-03-12 Thomas Schwinge <thomas@codesourcery.com>
2398
2399 PR middle-end/90115
2400 * testsuite/libgomp.oacc-c-c++-common/default-1.c: Enhance.
2401 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c: Likewise.
2402 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
2403 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Likewise.
2404
24052022-03-12 Thomas Schwinge <thomas@codesourcery.com>
2406
2407 PR middle-end/100280
2408 PR middle-end/104086
2409 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
2410 Merge this...
2411 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
2412 ..., and this...
2413 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: ... into
2414 this, and adjust.
2415 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
2416 Extend.
2417
5e28be89
GA
24182022-03-10 Hafiz Abid Qadeer <abidh@codesourcery.com>
2419
2420 * testsuite/libgomp.fortran/allocate-1.f90: Remove pool_size
2421 trait. Test last index in w and v array. Remove redundant
2422 assignment to V(1). Move alignment checks at the end of
2423 parallel region.
2424
24252022-03-10 Tom de Vries <tdevries@suse.de>
2426
2427 * testsuite/libgomp.c/pr104783.c: New test.
2428
24292022-03-10 Thomas Schwinge <thomas@codesourcery.com>
2430
2431 PR middle-end/90115
2432 PR middle-end/102330
2433 PR middle-end/104774
2434 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
2435 Enhance.
2436 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
2437 Adjust.
2438 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
2439 Likewise.
2440 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
2441 Likewise.
2442 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
2443 Likewise.
2444 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
2445 Likewise.
2446 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
2447 Likewise.
2448 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
2449 Likewise.
2450 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
2451 Likewise.
2452 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
2453 Likewise.
2454 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
2455 Likewise.
2456 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
2457 Likewise.
2458 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
2459 Likewise.
2460 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
2461 Likewise.
2462 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
2463 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
2464 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
2465
24662022-03-10 Thomas Schwinge <thomas@codesourcery.com>
2467
2468 PR middle-end/90115
2469 * testsuite/libgomp.oacc-fortran/routine-1.f90: Enhance.
2470 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
2471 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
2472 * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
2473
8d96e14c
GA
24742022-03-04 Thomas Schwinge <thomas@codesourcery.com>
2475
2476 PR testsuite/104791
2477 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Fix
2478 expected diagnostics.
2479
24802022-03-04 Thomas Schwinge <thomas@codesourcery.com>
2481
2482 PR middle-end/104784
2483 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
2484 Test with '--param=openacc-kernels=decompose'.
2485 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
2486 Likewise.
2487 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
2488 Likewise.
2489 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
2490 Likewise.
2491 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
2492 Likewise.
2493 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
2494 Likewise.
2495 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
2496 Likewise.
2497 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
2498 Likewise.
2499 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
2500 Likewise.
2501 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
2502 Likewise.
2503 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
2504 Likewise.
2505 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
2506 Likewise.
2507 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
2508 Likewise.
2509 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
2510 Likewise.
2511 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
2512 Likewise.
2513 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
2514 Likewise.
2515 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
2516 Likewise.
2517 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
2518 Likewise.
2519 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
2520 Likewise.
2521 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
2522 Likewise.
2523 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
2524 Likewise.
2525 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
2526 Likewise.
2527 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
2528 Likewise.
2529 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
2530 Likewise.
2531 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
2532 Likewise.
2533 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
2534 Likewise.
2535 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
2536 Likewise.
2537 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
2538 Likewise.
2539 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
2540 Likewise.
2541 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
2542 Likewise.
2543 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
2544 Likewise.
2545 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
2546 Likewise.
2547 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
2548 Likewise.
2549
25502022-03-04 Thomas Schwinge <thomas@codesourcery.com>
2551
2552 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
2553 Test '-fopt-info-omp-all'.
2554 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
2555 Likewise.
2556 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
2557 Likewise.
2558 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
2559 Likewise.
2560 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
2561 Likewise.
2562 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
2563 Likewise.
2564 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
2565 Likewise.
2566 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
2567 Likewise.
2568 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
2569 Likewise.
2570 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
2571 Likewise.
2572 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
2573 Likewise.
2574 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
2575 Likewise.
2576 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
2577 Likewise.
2578 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
2579 Likewise.
2580 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
2581 Likewise.
2582 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
2583 Likewise.
2584 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
2585 Likewise.
2586 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
2587 Likewise.
2588 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
2589 Likewise.
2590 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
2591 Likewise.
2592 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
2593 Likewise.
2594 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
2595 Likewise.
2596 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
2597 Likewise.
2598 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
2599 Likewise.
2600 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
2601 Likewise.
2602 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
2603 Likewise.
2604 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
2605 Likewise.
2606 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
2607 Likewise.
2608 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
2609 Likewise.
2610 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
2611 Likewise.
2612 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
2613 Likewise.
2614 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
2615 Likewise.
2616 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
2617 Likewise.
2618
26192022-03-04 Thomas Schwinge <thomas@codesourcery.com>
2620
2621 PR middle-end/100280
2622 PR middle-end/104132
2623 PR middle-end/104133
2624 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
2625 Extend.
2626
26272022-03-04 Thomas Schwinge <thomas@codesourcery.com>
2628
2629 PR middle-end/100280
2630 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
2631 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
2632 Likewise.
2633
26342022-03-04 Thomas Schwinge <thomas@codesourcery.com>
2635
2636 PR middle-end/100280
2637 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Adjust.
2638 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
2639 Likewise.
2640
a35f1697
GA
26412022-02-28 Tom de Vries <tdevries@suse.de>
2642
2643 * testsuite/libgomp.c/declare-variant-3-sm30.c: Add -foffload=-mptx=_.
2644 * testsuite/libgomp.c/declare-variant-3-sm35.c: Same.
2645 * testsuite/libgomp.c/declare-variant-3-sm53.c: Same.
2646 * testsuite/libgomp.c/declare-variant-3-sm70.c: Same.
2647 * testsuite/libgomp.c/declare-variant-3-sm75.c: Same.
2648 * testsuite/libgomp.c/declare-variant-3-sm80.c: Same.
2649
756a6185
GA
26502022-02-24 Tom de Vries <tdevries@suse.de>
2651
2652 * testsuite/libgomp.c/declare-variant-3-sm30.c: New test.
2653 * testsuite/libgomp.c/declare-variant-3-sm35.c: New test.
2654 * testsuite/libgomp.c/declare-variant-3-sm53.c: New test.
2655 * testsuite/libgomp.c/declare-variant-3-sm70.c: New test.
2656 * testsuite/libgomp.c/declare-variant-3-sm75.c: New test.
2657 * testsuite/libgomp.c/declare-variant-3-sm80.c: New test.
2658 * testsuite/libgomp.c/declare-variant-3.h: New header file.
2659
2cfb33fc
GA
26602022-02-22 Thomas Schwinge <thomas@codesourcery.com>
2661
2662 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Fix OpenACC
2663 gang-redundant execution.
2664
26652022-02-22 Tom de Vries <tdevries@suse.de>
2666
2667 PR target/99555
2668 * config/nvptx/bar.c (generation_to_barrier): New function, copied
2669 from config/rtems/bar.c.
2670 (futex_wait, futex_wake): New function.
2671 (do_spin, do_wait): New function, copied from config/linux/wait.h.
2672 (gomp_barrier_wait_end, gomp_barrier_wait_last)
2673 (gomp_team_barrier_wake, gomp_team_barrier_wait_end):
2674 (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): Remove
2675 and replace with include of config/linux/bar.c.
2676 * config/nvptx/bar.h (gomp_barrier_t): Add fields waiters and lock.
2677 (gomp_barrier_init): Init new fields.
2678 * testsuite/libgomp.c-c++-common/task-detach-6.c: Remove nvptx-specific
2679 workarounds.
2680 * testsuite/libgomp.c/pr99555-1.c: Same.
2681 * testsuite/libgomp.fortran/task-detach-6.f90: Same.
2682
26832022-02-22 Tom de Vries <tdevries@suse.de>
2684
2685 PR testsuite/104146
2686 * testsuite/libgomp.c++/pr96390.C: Add additional-option
2687 -foffload=-Wa,--verify for nvptx.
2688 * testsuite/libgomp.c-c++-common/pr96390.c: Same.
2689
875e493b
GA
26902022-02-15 Tobias Burnus <tobias@codesourcery.com>
2691
2692 * testsuite/libgomp.fortran/depend-4.f90: New test.
2693
a645583d
GA
26942022-02-10 Tobias Burnus <tobias@codesourcery.com>
2695
2696 PR c++/102204
2697 * testsuite/libgomp.c++/target-virtual-1.C: New test.
2698
26992022-02-10 Marcel Vollweiler <marcel@codesourcery.com>
2700
2701 * libgomp.texi: Updated entry for HAS_DEVICE_ADDR.
2702 * target.c (copy_firstprivate_data): Copy only if host address is not
2703 NULL.
2704 * testsuite/libgomp.c++/target-has-device-addr-2.C: New test.
2705 * testsuite/libgomp.c++/target-has-device-addr-4.C: New test.
2706 * testsuite/libgomp.c++/target-has-device-addr-5.C: New test.
2707 * testsuite/libgomp.c++/target-has-device-addr-6.C: New test.
2708 * testsuite/libgomp.c-c++-common/target-has-device-addr-1.c: New test.
2709 * testsuite/libgomp.c/target-has-device-addr-3.c: New test.
2710 * testsuite/libgomp.fortran/target-has-device-addr-1.f90: New test.
2711 * testsuite/libgomp.fortran/target-has-device-addr-2.f90: New test.
2712 * testsuite/libgomp.fortran/target-has-device-addr-3.f90: New test.
2713 * testsuite/libgomp.fortran/target-has-device-addr-4.f90: New test.
2714
2a2fda2d
GA
27152022-02-08 Jakub Jelinek <jakub@redhat.com>
2716
2717 PR libgomp/104385
2718 * task.c (gomp_task_run_post_handle_dependers): If parent is NULL,
2719 clear task->parent.
2720 * testsuite/libgomp.c/pr104385.c: New test.
2721
3c1cbde1
GA
27222022-02-04 Tobias Burnus <tobias@codesourcery.com>
2723
2724 * testsuite/libgomp.fortran/allocate-1.f90: Remove spurious
2725 STOP of previous commit.
2726
27272022-02-04 Tobias Burnus <tobias@codesourcery.com>
2728
2729 * testsuite/libgomp.fortran/allocate-1.c (is_64bit_aligned): Renamed
2730 from is_64bit_aligned_.
2731 * testsuite/libgomp.fortran/allocate-1.f90: Fix interface decl
2732 and use it, more implicit none, remove unused argument.
2733
682ede39
GA
27342022-02-03 David Seifert <soap@gentoo.org>
2735 Jakub Jelinek <jakub@redhat.com>
2736
2737 * configure.ac: Support --disable-werror.
2738 * configure: Regenerate.
2739
ae7e4af9
GA
27402022-02-01 Tom de Vries <tdevries@suse.de>
2741
2742 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: Remove
2743 PR83812 workaround.
2744 * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: Same.
2745 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90: Same.
2746
27472022-02-01 Tom de Vries <tdevries@suse.de>
2748
2749 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Reduce
2750 num_workers for nvidia accelerator to fix libgomp error 'insufficient
2751 resources'.
2752 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
2753 Same.
2754 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Same.
2755
27562022-02-01 Tom de Vries <tdevries@suse.de>
2757
2758 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
2759 recursion depth.
2760 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
2761
1bb52662
GA
27622022-01-31 Martin Liska <mliska@suse.cz>
2763
2764 * acinclude.m4: Detect *_ld_is_mold and use it.
2765 * configure: Regenerate.
2766
99f17e99
GA
27672022-01-27 Tobias Burnus <tobias@codesourcery.com>
2768
2769 * libgomp.texi (OpenMP 5.0): Update implementation status.
2770
9dd44357
GA
27712022-01-21 Thomas Schwinge <thomas@codesourcery.com>
2772
2773 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Strengthen.
2774 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
2775 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
2776 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
2777 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
2778 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
2779 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
2780 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
2781 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
2782 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
2783 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
2784 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
2785 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
2786 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
2787 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
2788
fe1ad141
GA
27892022-01-19 Marcel Vollweiler <marcel@codesourcery.com>
2790
2791 * config/gcn/icv-device.c: Make GOMP_DEVICE_NUM_VAR public (remove
2792 "static") to make the device num available in the offload image.
2793
27942022-01-19 Martin Liska <mliska@suse.cz>
2795 Thomas Schwinge <thomas@codesourcery.com>
2796
2797 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update scanning
2798 patterns.
2799 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
2800 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
2801 Likewise.
2802 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
2803 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
2804 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
2805 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
2806 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
2807 Likewise.
2808 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c:
2809 Likewise.
2810 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c:
2811 Likewise.
2812 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c:
2813 Likewise.
2814 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90:
2815 Likewise.
2816 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
2817 Likewise.
2818 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
2819 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
2820 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
2821
7a761ae6
GA
28222022-01-18 Martin Liska <mliska@suse.cz>
2823
2824 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Update keyword
2825 in dg-warning.
2826 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
2827 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
2828 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Likewise.
2829 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
2830 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
2831 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: Likewise.
2832 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c: Likewise.
2833 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: Likewise.
2834 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: Likewise.
2835 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: Likewise.
2836 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Likewise.
2837 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: Likewise.
2838 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
2839 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
2840 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
2841
fc829782
GA
28422022-01-17 Thomas Schwinge <thomas@codesourcery.com>
2843
2844 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: Extend.
2845 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: Likewise.
2846 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: Likewise.
2847
28482022-01-17 Julian Brown <julian@codesourcery.com>
2849 Thomas Schwinge <thomas@codesourcery.com>
2850
2851 * testsuite/libgomp.oacc-fortran/privatized-ref-1.f95: New test.
2852 * testsuite/libgomp.oacc-c++/privatized-ref-2.C: New test.
2853 * testsuite/libgomp.oacc-c++/privatized-ref-3.C: New test.
2854
1e942d7c
GA
28552022-01-16 Kwok Cheung Yeung <kcy@codesourcery.com>
2856 Andrew Stubbs <ams@codesourcery.com>
2857
2858 * plugin/plugin-gcn.c (parse_target_attributes): Automatically set
2859 the number of teams and threads if necessary.
2860 (gcn_exec): Automatically set the number of gangs and workers if
2861 necessary.
2862
ad3f0d08
GA
28632022-01-13 Hafiz Abid Qadeer <abidh@codesourcery.com>
2864
2865 * testsuite/libgomp.fortran/allocate-1.c: New test.
2866 * testsuite/libgomp.fortran/allocate-1.f90: New test.
2867 * libgomp.texi: Remove string that says that allocate clause
2868 support is for C/C++ only.
2869
28702022-01-13 Thomas Schwinge <thomas@codesourcery.com>
2871
2872 * testsuite/libgomp.c-c++-common/on_device_arch.h
2873 (any_device_arch, any_device_arch_intel_mic): New.
2874 * testsuite/lib/libgomp.exp
2875 (check_effective_target_offload_device_any_intel_mic): New.
2876 * testsuite/libgomp.c-c++-common/target-45.c: Use it.
2877 * testsuite/libgomp.fortran/target10.f90: Likewise.
2878
28792022-01-13 Thomas Schwinge <thomas@codesourcery.com>
2880
2881 PR tree-optimization/102192
2882 * testsuite/libgomp.oacc-fortran/routine-10.f90: Document current
2883 '-Wuninitialized' diagnostics.
2884
28852022-01-13 Thomas Schwinge <thomas@codesourcery.com>
2886
2887 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: Document
2888 current '-Wuninitialized' diagnostics.
2889 * testsuite/libgomp.oacc-fortran/data-5.f90: Likewise.
2890 * testsuite/libgomp.oacc-fortran/gemm-2.f90: Likewise.
2891 * testsuite/libgomp.oacc-fortran/gemm.f90: Likewise.
2892 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Likewise.
2893 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
2894 * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
2895 * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: Likewise.
2896 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
2897 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
2898 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
2899 * testsuite/libgomp.oacc-fortran/reference-reductions.f90:
2900 Likewise.
2901
29022022-01-13 Thomas Schwinge <thomas@codesourcery.com>
2903
2904 * testsuite/libgomp.c/address-space-1.c: Remove 'dg-xfail-run-if'
2905 for 'offload_device_intel_mic'.
2906
29072022-01-13 Julian Brown <julian@codesourcery.com>
2908 Thomas Schwinge <thomas@codesourcery.com>
2909
2910 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Remove GCN
2911 offloading execution XFAIL.
2912
29132022-01-13 Thomas Schwinge <thomas@codesourcery.com>
2914
2915 PR middle-end/100280
2916 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
2917 Update.
2918 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
2919 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
2920 Likewise.
2921
29222022-01-13 Thomas Schwinge <thomas@codesourcery.com>
2923
2924 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
2925 Enhance.
2926 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
2927 Likewise.
2928 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Likewise.
2929 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: Likewise.
2930 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: Likewise.
2931 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: Likewise.
2932 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
2933 Likewise.
2934 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
2935 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
2936 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
2937 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
2938
7d11b64b
GA
29392022-01-04 Tobias Burnus <tobias@codesourcery.com>
2940
2941 * testsuite/libgomp.c-c++-common/target-45.c: Iterate over all devices.
2942 * testsuite/libgomp.fortran/target10.f90: Likewise.
2943
29442022-01-04 Chung-Lin Tang <cltang@codesourcery.com>
2945
2946 * plugin/plugin-gcn.c (GOMP_OFFLOAD_load_image): Change uses of STRINGX
2947 into XSTRING when looking for GOMP_DEVICE_NUM_VAR in offload image.
2948 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_load_image): Likewise.
2949
a4ae8c37
GA
29502022-01-03 Jakub Jelinek <jakub@redhat.com>
2951
2952 * libgomp.texi: Bump @copying's copyright year.
2953
7f1239cb
GA
29542021-12-13 Tobias Burnus <tobias@codesourcery.com>
2955
2956 * libgomp.texi (OpenMP 5.1): Set Fortran support for atomic to 'Y'.
2957 * testsuite/libgomp.fortran/atomic-19.f90: New test.
2958
0bceef16
GA
29592021-12-10 Andrew Stubbs <ams@codesourcery.com>
2960
2961 * plugin/plugin-gcn.c (struct gcn_image_desc): Remove global_variables.
2962 (GOMP_OFFLOAD_load_image): Locate the offload variables via the
2963 table, not individual symbols.
2964
4b4839e3
GA
29652021-12-09 Chung-Lin Tang <cltang@codesourcery.com>
2966
2967 * testsuite/libgomp.c++/target-lambda-1.C: Only run under
2968 "target offload_device_nonshared_as"
2969 * testsuite/libgomp.c++/target-this-3.C: Likewise.
2970 * testsuite/libgomp.c++/target-this-4.C: Likewise.
2971
641ff219
GA
29722021-12-08 Chung-Lin Tang <cltang@codesourcery.com>
2973
2974 * target.c (gomp_map_vars_existing): Make sure attached pointer is
2975 not overwritten during cross-host/device copying.
2976 (gomp_update): Likewise.
2977 (gomp_exit_data): Likewise.
2978 * testsuite/libgomp.c++/target-11.C: Adjust testcase.
2979 * testsuite/libgomp.c++/target-12.C: Likewise.
2980 * testsuite/libgomp.c++/target-15.C: Likewise.
2981 * testsuite/libgomp.c++/target-16.C: Likewise.
2982 * testsuite/libgomp.c++/target-17.C: Likewise.
2983 * testsuite/libgomp.c++/target-21.C: Likewise.
2984 * testsuite/libgomp.c++/target-23.C: Likewise.
2985 * testsuite/libgomp.c/target-23.c: Likewise.
2986 * testsuite/libgomp.c/target-29.c: Likewise.
2987 * testsuite/libgomp.c-c++-common/target-implicit-map-2.c: New testcase.
2988
29892021-12-08 Chung-Lin Tang <cltang@codesourcery.com>
2990
2991 PR middle-end/92120
2992 * libgomp.h (gomp_attach_pointer): Add bool parameter.
2993 * oacc-mem.c (acc_attach_async): Update call to gomp_attach_pointer.
2994 (goacc_enter_data_internal): Likewise.
2995 * target.c (gomp_map_vars_existing): Update assert condition to
2996 include GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION.
2997 (gomp_map_pointer): Add 'bool allow_zero_length_array_sections'
2998 parameter, add support for mapping a pointer with NULL target.
2999 (gomp_attach_pointer): Add 'bool allow_zero_length_array_sections'
3000 parameter, add support for attaching a pointer with NULL target.
3001 (gomp_map_vars_internal): Update calls to gomp_map_pointer and
3002 gomp_attach_pointer, add handling for
3003 GOMP_MAP_ATTACH_ZERO_LENGTH_ARRAY_SECTION, and
3004 GOMP_MAP_POINTER_TO_ZERO_LENGTH_ARRAY_SECTION cases.
3005 * testsuite/libgomp.c++/target-23.C: New testcase.
3006 * testsuite/libgomp.c++/target-lambda-1.C: New testcase.
3007 * testsuite/libgomp.c++/target-lambda-2.C: New testcase.
3008 * testsuite/libgomp.c++/target-this-1.C: New testcase.
3009 * testsuite/libgomp.c++/target-this-2.C: New testcase.
3010 * testsuite/libgomp.c++/target-this-3.C: New testcase.
3011 * testsuite/libgomp.c++/target-this-4.C: New testcase.
3012 * testsuite/libgomp.c++/target-this-5.C: New testcase.
3013
70e4cb66
GA
30142021-12-04 Tobias Burnus <tobias@codesourcery.com>
3015
3016 * libgomp.texi (OpenMP 5.1): Update status.
3017
30182021-12-04 Tobias Burnus <tobias@codesourcery.com>
3019
3020 * libgomp.texi (OMP_PLACES): Extend description for OMP 5.1 changes.
3021
ea6ef320
GA
30222021-12-02 Chung-Lin Tang <cltang@codesourcery.com>
3023
3024 PR fortran/90030
3025 * testsuite/libgomp.oacc-fortran/pr90030.f90: New test.
3026 * testsuite/libgomp.fortran/pr90030.f90: New test.
3027
c177e806
GA
30282021-11-30 Kwok Cheung Yeung <kcy@codesourcery.com>
3029 Thomas Schwinge <thomas@codesourcery.com>
3030
3031 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Remove
3032 temporary skip.
3033
30342021-11-30 Cesar Philippidis <cesar@codesourcery.com>
3035 Thomas Schwinge <thomas@codesourcery.com>
3036
3037 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Temporarily
3038 skip.
3039
87cd82c8
GA
30402021-11-29 Richard Biener <rguenther@suse.de>
3041
3042 * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): Remove unreachable
3043 return.
3044
d9ca4b45
GA
30452021-11-24 Jakub Jelinek <jakub@redhat.com>
3046
3047 PR middle-end/103384
3048 * testsuite/libgomp.c/declare-variant-2.c: New test.
3049
483092d3
GA
30502021-11-18 David Edelsohn <dje.gcc@gmail.com>
3051
3052 * alloc.c (gomp_aligned_alloc): Fix typo.
3053
30542021-11-18 Jakub Jelinek <jakub@redhat.com>
3055
3056 PR libgomp/102838
3057 * libgomp.h (GOMP_USE_ALIGNED_WORK_SHARES): Define if
3058 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined and __AMDGCN__ is not.
3059 (struct gomp_work_share): Use GOMP_USE_ALIGNED_WORK_SHARES instead of
3060 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
3061 * work.c (alloc_work_share, gomp_work_share_start): Likewise.
3062 * team.c (gomp_new_team): If GOMP_USE_ALIGNED_WORK_SHARES, use
3063 gomp_aligned_alloc instead of team_malloc.
3064
30652021-11-18 Jakub Jelinek <jakub@redhat.com>
3066
3067 PR libgomp/102838
3068 * alloc.c (gomp_aligned_alloc): Prefer _aligned_alloc over
3069 memalign over posix_memalign over aligned_alloc over fallback
3070 with malloc instead of aligned_alloc over _aligned_alloc over
3071 posix_memalign over memalign over fallback with malloc. For
3072 aligned_alloc, round up size up to multiple of al.
3073
6b1695f4
GA
30742021-11-16 Jakub Jelinek <jakub@redhat.com>
3075
3076 * libgomp.texi (OpenMP 5.1): Mark thread_limit clause to target
3077 construct as implemented.
3078
e2b57363
GA
30792021-11-15 Tobias Burnus <tobias@codesourcery.com>
3080
3081 * testsuite/libgomp.fortran/thread-limit-1.f90: New test.
3082
30832021-11-15 Jakub Jelinek <jakub@redhat.com>
3084
3085 * task.c (gomp_create_target_task): Copy args array as well.
3086 * target.c (gomp_target_fallback): Add args argument.
3087 Set gomp_icv (true)->thread_limit_var if thread_limit is present.
3088 (GOMP_target): Adjust gomp_target_fallback caller.
3089 (GOMP_target_ext): Likewise.
3090 (gomp_target_task_fn): Likewise.
3091 * config/nvptx/team.c (gomp_nvptx_main): Set
3092 gomp_global_icv.thread_limit_var.
3093 * testsuite/libgomp.c-c++-common/thread-limit-1.c: New test.
3094
30952021-11-15 Jakub Jelinek <jakub@redhat.com>
3096
3097 * config/nvptx/team.c (__gomp_team_num): Define as
3098 __attribute__((shared)) var.
3099 (gomp_nvptx_main): Initialize __gomp_team_num to 0.
3100 * config/nvptx/target.c (__gomp_team_num): Declare as
3101 extern __attribute__((shared)) var.
3102 (GOMP_teams4): Use __gomp_team_num as the team number instead of
3103 %ctaid.x. If first, initialize it to %ctaid.x. If num_teams_lower
3104 is bigger than num_blocks, use num_teams_lower teams and arrange for
3105 bumping of __gomp_team_num if !first and returning false once we run
3106 out of teams.
3107 * config/nvptx/teams.c (__gomp_team_num): Declare as
3108 extern __attribute__((shared)) var.
3109 (omp_get_team_num): Return __gomp_team_num value instead of %ctaid.x.
3110
31112021-11-15 Jakub Jelinek <jakub@redhat.com>
3112
3113 * testsuite/libgomp.c/teams-5.c: New test.
3114
af2852b9
GA
31152021-11-12 Jakub Jelinek <jakub@redhat.com>
3116
3117 PR target/103201
3118 * config/gcn/icv-device.c (omp_get_num_teams, omp_get_team_num): Move
3119 to ...
3120 * config/gcn/teams.c: ... here. New file.
3121
31222021-11-12 Chung-Lin Tang <cltang@codesourcery.com>
3123
3124 * target.c (gomp_map_vars_existing): Add 'bool implicit' parameter, add
3125 implicit map handling to allow a "superset" existing map as valid case.
3126 (get_kind): Adjust to filter out GOMP_MAP_IMPLICIT bits in return value.
3127 (get_implicit): New function to extract implicit status.
3128 (gomp_map_fields_existing): Adjust arguments in calls to
3129 gomp_map_vars_existing, and add uses of get_implicit.
3130 (gomp_map_vars_internal): Likewise.
3131 * testsuite/libgomp.c-c++-common/target-implicit-map-1.c: New test.
3132
31332021-11-12 Jakub Jelinek <jakub@redhat.com>
3134
3135 * libgomp_g.h (GOMP_teams4): Declare.
3136 * libgomp.map (GOMP_5.1): Export GOMP_teams4.
3137 * target.c (GOMP_teams4): New function.
3138 * config/nvptx/target.c (GOMP_teams): Remove.
3139 (GOMP_teams4): New function.
3140 * config/gcn/target.c (GOMP_teams): Remove.
3141 (GOMP_teams4): New function.
3142 * testsuite/libgomp.c/teams-4.c (main): Expect exactly 2
3143 teams instead of <= 2.
3144 * testsuite/libgomp.c-c++-common/teams-2.c: New test.
3145
b39265d4
GA
31462021-11-11 Tobias Burnus <tobias@codesourcery.com>
3147
3148 * testsuite/libgomp.fortran/teams-1.f90: New test.
3149
31502021-11-11 Jakub Jelinek <jakub@redhat.com>
3151
3152 * libgomp.h (struct gomp_thread): Add num_teams and team_num members.
3153 * team.c (struct gomp_thread_start_data): Likewise.
3154 (gomp_thread_start): Initialize thr->num_teams and thr->team_num.
3155 (gomp_team_start): Initialize start_data->num_teams and
3156 start_data->team_num. Update nthr->num_teams and nthr->team_num.
3157 * teams.c (gomp_num_teams, gomp_team_num): Remove.
3158 (GOMP_teams_reg): Set and restore thr->num_teams and thr->team_num
3159 instead of gomp_num_teams and gomp_team_num.
3160 (omp_get_num_teams): Use thr->num_teams + 1 instead of gomp_num_teams.
3161 (omp_get_team_num): Use thr->team_num instead of gomp_team_num.
3162 * testsuite/libgomp.c/teams-4.c: New test.
3163
31642021-11-11 Jakub Jelinek <jakub@redhat.com>
3165
3166 * testsuite/libgomp.c-c++-common/teams-1.c: New test.
3167
c9b1334e
GA
31682021-11-09 Thomas Schwinge <thomas@codesourcery.com>
3169
3170 * env.c (parse_gomp_openacc_dim): Restore parsing.
3171
0ef94462
GA
31722021-10-30 Tobias Burnus <tobias@codesourcery.com>
3173
3174 PR middle-end/102972
3175 * testsuite/libgomp.c-c++-common/icv-3.c: Nest API calls inside
3176 parallel construct.
3177 * testsuite/libgomp.c-c++-common/icv-4.c: Likewise.
3178 * testsuite/libgomp.c/target-3.c: Likewise.
3179 * testsuite/libgomp.c/target-5.c: Likewise.
3180 * testsuite/libgomp.c/target-6.c: Likewise.
3181 * testsuite/libgomp.c/target-teams-1.c: Likewise.
3182 * testsuite/libgomp.c/teams-1.c: Likewise.
3183 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
3184 * testsuite/libgomp.c/thread-limit-3.c: Likewise.
3185 * testsuite/libgomp.c/thread-limit-4.c: Likewise.
3186 * testsuite/libgomp.c/thread-limit-5.c: Likewise.
3187 * testsuite/libgomp.fortran/icv-3.f90: Likewise.
3188 * testsuite/libgomp.fortran/icv-4.f90: Likewise.
3189 * testsuite/libgomp.fortran/teams1.f90: Likewise.
3190
4c61300f
GA
31912021-10-29 Aldy Hernandez <aldyh@redhat.com>
3192
3193 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for threading changes.
3194 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
3195
04a2cf3f
GA
31962021-10-27 Jakub Jelinek <jakub@redhat.com>
3197
3198 * libgomp.texi (OpenMP 5.0): Mention that Non-rectangular loop nests
3199 aren't implemented for Fortran yet.
3200
32012021-10-27 Jakub Jelinek <jakub@redhat.com>
3202
3203 * testsuite/libgomp.c/loop-26.c: New test.
3204 * testsuite/libgomp.c/loop-27.c: New test.
3205
b621508d
GA
32062021-10-25 Tobias Burnus <tobias@codesourcery.com>
3207
3208 PR testsuite/102910
3209 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Use __builtin_alloca
3210 instead of #include <alloca.h> + alloca.
3211
ae5c5406
GA
32122021-10-21 Chung-Lin Tang <cltang@codesourcery.com>
3213
3214 * libgomp.texi (Support of strictly structured blocks in Fortran):
3215 Adjust to 'Y'.
3216 * testsuite/libgomp.fortran/task-reduction-16.f90: Adjust testcase.
3217
674dda6b
GA
32182021-10-20 Chung-Lin Tang <cltang@codesourcery.com>
3219
3220 * testsuite/libgomp.fortran/target-in-reduction-1.f90: New test.
3221 * testsuite/libgomp.fortran/target-in-reduction-2.f90: New test.
3222
32232021-10-20 Jakub Jelinek <jakub@redhat.com>
3224
3225 PR libgomp/102838
3226 * libgomp.h (struct gomp_work_share_1st_cacheline): New type.
3227 (struct gomp_work_share): Only use aligned(64) attribute if
3228 GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined, otherwise just
3229 add padding before lock to ensure lock is at offset 64 bytes
3230 into the structure.
3231 (gomp_workshare_struct_check1, gomp_workshare_struct_check2):
3232 New poor man's static assertions.
3233 * work.c (gomp_work_share_start): Use gomp_aligned_alloc instead of
3234 gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC.
3235
32362021-10-20 Aldy Hernandez <aldyh@redhat.com>
3237 Richard Biener <rguenther@suse.de>
3238
3239 * testsuite/libgomp.graphite/force-parallel-5.c: Remove xfail.
3240
ce4d1f63
GA
32412021-10-18 Jakub Jelinek <jakub@redhat.com>
3242
3243 * config/linux/affinity.c (gomp_affinity_init_numa_domains): Add
3244 && gomp_places_list_len < count after nfirst <= nlast loop condition.
3245
32462021-10-18 Tobias Burnus <tobias@codesourcery.com>
3247
3248 PR fortran/102086
3249 PR fortran/92189
3250 PR fortran/92621
3251 PR fortran/101308
3252 PR fortran/101309
3253 PR fortran/101635
3254 PR fortran/92482
3255 * testsuite/libgomp.fortran/optional-bind-c.f90: New test.
3256
93d183a5
GA
32572021-10-15 Jakub Jelinek <jakub@redhat.com>
3258
3259 * testsuite/libgomp.c/affinity-1.c (struct places): Change name field
3260 type from char [50] to const char *.
3261 (places_array): Add a testcase for simplified syntax place followed
3262 by length or length and stride.
3263
32642021-10-15 Jakub Jelinek <jakub@redhat.com>
3265
3266 * env.c (parse_one_place): Handle non-negative-number the same
3267 as { non-negative-number }. Reject even !number:1 and
3268 !number:1:stride or !place:1 or !place:1:stride instead of just
3269 length other than 1.
3270 * libgomp.texi (OpenMP 5.1): Document OMP_PLACES syntax extensions
3271 and OMP_NUM_TEAMS/OMP_TEAMS_THREAD_LIMIT and
3272 omp_{set_num,get_max}_teams/omp_{s,g}et_teams_thread_limit features
3273 as implemented.
3274 * testsuite/libgomp.c/affinity-1.c: Add a test for the 5.1 place
3275 simplified syntax.
3276
32772021-10-15 Jakub Jelinek <jakub@redhat.com>
3278
3279 * env.c (parse_schedule): For strtoul or strtoull calls which don't
3280 clearly reject return value 0 as invalid handle the case where end
3281 pointer is the same as first argument as invalid.
3282 (parse_unsigned_long_1): Likewise.
3283 (parse_one_place): Likewise.
3284 (parse_places_var): Likewise.
3285 (parse_stacksize): Likewise.
3286 (parse_spincount): Likewise.
3287 (parse_affinity): Likewise.
3288 (parse_gomp_openacc_dim): Likewise. Avoid strict aliasing violation.
3289 Make code valid C89.
3290 * config/linux/affinity.c (gomp_affinity_find_last_cache_level):
3291 For strtoul calls which don't clearly reject return value 0 as
3292 invalid handle the case where end pointer is the same as first
3293 argument as invalid.
3294 (gomp_affinity_init_level_1): Likewise.
3295 (gomp_affinity_init_numa_domains): Likewise.
3296 * config/rtems/proc.c (parse_thread_pools): Likewise.
3297
32982021-10-15 Jakub Jelinek <jakub@redhat.com>
3299
3300 * config/linux/affinity.c (gomp_affinity_init_level_1): For level 1
3301 after creating count places clean up and return immediately.
3302 * testsuite/libgomp.c/places-6.c: New test.
3303 * testsuite/libgomp.c/places-7.c: New test.
3304 * testsuite/libgomp.c/places-8.c: New test.
3305 * testsuite/libgomp.c/places-9.c: New test.
3306 * testsuite/libgomp.c/places-10.c: New test.
3307
33082021-10-15 Jakub Jelinek <jakub@redhat.com>
3309
3310 * env.c (parse_places_var): Handle numa_domains as level 5.
3311 * config/linux/affinity.c (gomp_affinity_init_numa_domains): New
3312 function.
3313 (gomp_affinity_init_level): Use it instead of
3314 gomp_affinity_init_level_1 for level == 5.
3315 * testsuite/libgomp.c/places-5.c: New test.
3316
33172021-10-15 Jakub Jelinek <jakub@redhat.com>
3318
3319 * env.c (parse_places_var): Handle ll_caches as level 4.
3320 * config/linux/affinity.c (gomp_affinity_find_last_cache_level): New
3321 function.
3322 (gomp_affinity_init_level_1): Handle level 4 as logical cpus sharing
3323 last level cache.
3324 (gomp_affinity_init_level): Likewise.
3325 * testsuite/libgomp.c/places-1.c: New test.
3326 * testsuite/libgomp.c/places-2.c: New test.
3327 * testsuite/libgomp.c/places-3.c: New test.
3328 * testsuite/libgomp.c/places-4.c: New test.
3329
5d5885c9
GA
33302021-10-14 Kwok Cheung Yeung <kcy@codesourcery.com>
3331
3332 * libgomp.texi (OpenMP 5.0): Update entry for declare variant
3333 directive.
3334
33352021-10-14 Kwok Cheung Yeung <kcy@codesourcery.com>
3336
3337 * testsuite/libgomp.fortran/declare-variant-1.f90: New test.
3338
52055987
GA
33392021-10-12 Julian Brown <julian@codesourcery.com>
3340
3341 * target.c (gomp_copy_host2dev): Release device lock on cbuf
3342 error path.
3343
33442021-10-12 Tobias Burnus <tobias@codesourcery.com>
3345
3346 * testsuite/libgomp.fortran/icv-3.f90: New.
3347 * testsuite/libgomp.fortran/icv-4.f90: New.
3348
33492021-10-12 Jakub Jelinek <jakub@redhat.com>
3350
3351 * libgomp.texi (omp_get_max_teams, omp_get_teams_thread_limit,
3352 omp_set_num_teams, omp_set_teams_thread_limit, OMP_NUM_TEAMS,
3353 OMP_TEAMS_THREAD_LIMIT): Document.
3354
33552021-10-12 Jakub Jelinek <jakub@redhat.com>
3356
3357 * libgomp.texi (omp_get_device_num): Move @node before omp_get_dynamic
3358 to avoid makeinfo warnings.
3359
33602021-10-12 Jakub Jelinek <jakub@redhat.com>
3361
3362 * testsuite/libgomp.c-c++-common/icv-3.c: New test.
3363 * testsuite/libgomp.c-c++-common/icv-4.c: New test.
3364
33652021-10-12 Jakub Jelinek <jakub@redhat.com>
3366
3367 PR libgomp/102628
3368 PR libgomp/102668
3369 * testsuite/libgomp.c-c++-common/alloc-9.c (main): Decrease
3370 allocation sizes from 420 to 320 and from 768 to 568.
3371 * testsuite/libgomp.fortran/alloc-11.f90: Likewise.
3372 * testsuite/libgomp.fortran/alloc-1.F90: Change expected alignment
3373 for cr from 16 to 4.
3374
33752021-10-12 Jakub Jelinek <jakub@redhat.com>
3376
3377 * testsuite/libgomp.c/scan-11.c: Remove option -fvect-cost-model=cheap.
3378 * testsuite/libgomp.c/scan-12.c: Likewise.
3379 * testsuite/libgomp.c/scan-13.c: Likewise.
3380 * testsuite/libgomp.c/scan-14.c: Likewise.
3381 * testsuite/libgomp.c/scan-15.c: Likewise.
3382 * testsuite/libgomp.c/scan-16.c: Likewise.
3383 * testsuite/libgomp.c/scan-17.c: Likewise.
3384 * testsuite/libgomp.c/scan-18.c: Likewise.
3385 * testsuite/libgomp.c/scan-19.c: Likewise.
3386 * testsuite/libgomp.c/scan-20.c: Likewise.
3387 * testsuite/libgomp.c/scan-21.c: Likewise.
3388 * testsuite/libgomp.c/scan-22.c: Likewise.
3389 * testsuite/libgomp.c++/scan-9.C: Likewise.
3390 * testsuite/libgomp.c++/scan-10.C: Likewise.
3391 * testsuite/libgomp.c++/scan-11.C: Likewise.
3392 * testsuite/libgomp.c++/scan-12.C: Likewise.
3393 * testsuite/libgomp.c++/scan-13.C: Likewise.
3394 * testsuite/libgomp.c++/scan-14.C: Likewise.
3395 * testsuite/libgomp.c++/scan-15.C: Likewise.
3396 * testsuite/libgomp.c++/scan-16.C: Likewise.
3397
33982021-10-12 Kewen Lin <linkw@linux.ibm.com>
3399
3400 * testsuite/libgomp.graphite/force-parallel-8.c: Add --param max-stores-to-sink=0.
3401
732d7638
GA
34022021-10-11 Marcel Vollweiler <marcel@codesourcery.com>
3403
3404 * allocator.c (omp_init_allocator): Replace omp_atv_sequential with
3405 omp_atv_serialized.
3406 * omp.h.in: Add deprecated flag for omp_atv_sequential.
3407 * omp_lib.f90.in: Add deprecated flag for omp_atv_sequential.
3408 * testsuite/libgomp.c-c++-common/alloc-10.c: New test.
3409 * testsuite/libgomp.fortran/alloc-12.f90: New test.
3410
34112021-10-11 Jakub Jelinek <jakub@redhat.com>
3412
3413 * omp.h.in (omp_set_num_teams, omp_get_max_teams,
3414 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
3415 * omp_lib.f90.in (omp_set_num_teams, omp_get_max_teams,
3416 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
3417 * omp_lib.h.in (omp_set_num_teams, omp_get_max_teams,
3418 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Declare.
3419 * libgomp.h (gomp_nteams_var, gomp_teams_thread_limit_var): Declare.
3420 * libgomp.map (OMP_5.1): Export omp_get_max_teams{,_},
3421 omp_get_teams_thread_limit{,_}, omp_set_num_teams{,_,_8_} and
3422 omp_set_teams_thread_limit{,_,_8_}.
3423 * icv.c (omp_set_num_teams, omp_get_max_teams,
3424 omp_set_teams_thread_limit, omp_get_teams_thread_limit): New
3425 functions.
3426 * env.c (gomp_nteams_var, gomp_teams_thread_limit_var): Define.
3427 (omp_display_env): Print OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT.
3428 (initialize_env): Handle OMP_NUM_TEAMS and OMP_TEAMS_THREAD_LIMIT env
3429 vars.
3430 * teams.c (GOMP_teams_reg): If thread_limit is not specified, use
3431 gomp_teams_thread_limit_var as fallback if not zero. If num_teams
3432 is not specified, use gomp_nteams_var.
3433 * fortran.c (omp_set_num_teams, omp_get_max_teams,
3434 omp_set_teams_thread_limit, omp_get_teams_thread_limit): Add
3435 ialias_redirect.
3436 (omp_set_num_teams_, omp_set_num_teams_8_, omp_get_max_teams_,
3437 omp_set_teams_thread_limit_, omp_set_teams_thread_limit_8_,
3438 omp_get_teams_thread_limit_): New functions.
3439
c9db17b8
GA
34402021-10-09 liuhongt <hongtao.liu@intel.com>
3441
3442 * testsuite/libgomp.c++/scan-10.C: Add option -fvect-cost-model=cheap.
3443 * testsuite/libgomp.c++/scan-11.C: Ditto.
3444 * testsuite/libgomp.c++/scan-12.C: Ditto.
3445 * testsuite/libgomp.c++/scan-13.C: Ditto.
3446 * testsuite/libgomp.c++/scan-14.C: Ditto.
3447 * testsuite/libgomp.c++/scan-15.C: Ditto.
3448 * testsuite/libgomp.c++/scan-16.C: Ditto.
3449 * testsuite/libgomp.c++/scan-9.C: Ditto.
3450 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: Ditto.
3451 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: Ditto.
3452 * testsuite/libgomp.c/scan-11.c: Ditto.
3453 * testsuite/libgomp.c/scan-12.c: Ditto.
3454 * testsuite/libgomp.c/scan-13.c: Ditto.
3455 * testsuite/libgomp.c/scan-14.c: Ditto.
3456 * testsuite/libgomp.c/scan-15.c: Ditto.
3457 * testsuite/libgomp.c/scan-16.c: Ditto.
3458 * testsuite/libgomp.c/scan-17.c: Ditto.
3459 * testsuite/libgomp.c/scan-18.c: Ditto.
3460 * testsuite/libgomp.c/scan-19.c: Ditto.
3461 * testsuite/libgomp.c/scan-20.c: Ditto.
3462 * testsuite/libgomp.c/scan-21.c: Ditto.
3463 * testsuite/libgomp.c/scan-22.c: Ditto.
3464
34652021-10-09 Jakub Jelinek <jakub@redhat.com>
3466
3467 * libgomp.texi (OpenMP 5.1): Mention implemented support for
3468 structured block sequences in C/C++. Mention support for
3469 unconstrained/reproducible modifiers on order clause.
3470 Mention partial (C/C++ only) support of extentensions to atomics
3471 construct. Mention partial (C/C++ on clause only) support of
3472 align/allocator modifiers on allocate clause.
3473
e3e07b89
GA
34742021-10-02 Tobias Burnus <tobias@codesourcery.com>
3475
3476 * testsuite/libgomp.fortran/order-reproducible-1.f90: New test
3477 based on libgomp.c-c++-common/order-reproducible-1.c.
3478 * testsuite/libgomp.fortran/order-reproducible-2.f90: Likewise.
3479 * testsuite/libgomp.fortran/my-usleep.c: New test.
3480
9d116bcc
GA
34812021-10-01 Tobias Burnus <tobias@codesourcery.com>
3482
3483 * testsuite/libgomp.fortran/alloc-10.f90: Fix alignment check.
3484 * testsuite/libgomp.fortran/alloc-7.f90: Fix array access.
3485 * testsuite/libgomp.fortran/alloc-8.f90: Likewise.
3486 * testsuite/libgomp.fortran/alloc-11.f90: New test for omp_realloc,
3487 based on libgomp.c-c++-common/alloc-9.c.
3488
34892021-10-01 Jakub Jelinek <jakub@redhat.com>
3490
3491 * testsuite/libgomp.c-c++-common/order-reproducible-1.c: New test.
3492 * testsuite/libgomp.c-c++-common/order-reproducible-2.c: New test.
3493
34942021-10-01 Jakub Jelinek <jakub@redhat.com>
3495
3496 * affinity-fmt.c (omp_get_team_num, omp_get_num_teams): Add
3497 ialias_redirect.
3498 * env.c (handle_omp_display_env): Use ialias_call.
3499 * icv-device.c: Move ialias right below each function.
3500 (omp_get_device_num): Use ialias_call.
3501 * fortran.c (omp_fulfill_event): Add ialias_redirect.
3502 * icv.c (omp_get_active_level): Add ialias_redirect.
3503
35042021-10-01 Jakub Jelinek <jakub@redhat.com>
3505
3506 * omp.h.in (omp_aligned_alloc, omp_aligned_calloc): Add
3507 __alloc_align__ (1) attribute.
3508 * testsuite/libgomp.c-c++-common/alloc-9.c: New test.
3509
24679983
GA
35102021-09-30 Tobias Burnus <tobias@codesourcery.com>
3511
3512 * testsuite/libgomp.fortran/alloc-7.f90: Add dg-prune-output
3513 for -fintrinsic-modules-path= warning of the C compiler.
3514 * testsuite/libgomp.fortran/alloc-9.f90: Likewise.
3515 * testsuite/libgomp.fortran/alloc-10.f90: Likewise.
3516
35172021-09-30 Tobias Burnus <tobias@codesourcery.com>
3518
3519 * libgomp.texi (OpenMP 5.1): Set implementation status to Y for
3520 omp_aligned_{,c}alloc and omp_{c,re}alloc routines.
3521 * omp_lib.f90.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
3522 omp_realloc): Add.
3523 * omp_lib.h.in (omp_aligned_alloc, omp_aligned_calloc, omp_calloc,
3524 omp_realloc): Add.
3525 * testsuite/libgomp.fortran/alloc-10.f90: New test.
3526 * testsuite/libgomp.fortran/alloc-6.f90: New test.
3527 * testsuite/libgomp.fortran/alloc-7.c: New test.
3528 * testsuite/libgomp.fortran/alloc-7.f90: New test.
3529 * testsuite/libgomp.fortran/alloc-8.f90: New test.
3530 * testsuite/libgomp.fortran/alloc-9.f90: New test.
3531
35322021-09-30 Jakub Jelinek <jakub@redhat.com>
3533
3534 * omp.h.in (omp_aligned_alloc, omp_calloc, omp_aligned_calloc,
3535 omp_realloc): New prototypes.
3536 (omp_alloc): Move after omp_free prototype, add __malloc__ (omp_free)
3537 attribute.
3538 * allocator.c: Include string.h.
3539 (omp_aligned_alloc): No longer static, add ialias. Add new_alignment
3540 variable and use it instead of alignment so that when retrying the old
3541 alignment is used again. Don't retry if new alignment is the same
3542 as old alignment, unless allocator had pool size.
3543 (omp_alloc, GOMP_alloc, GOMP_free): Use ialias_call.
3544 (omp_aligned_calloc, omp_calloc, omp_realloc): New functions.
3545 * libgomp.map (OMP_5.0.2): Export omp_aligned_alloc, omp_calloc,
3546 omp_aligned_calloc and omp_realloc.
3547 * testsuite/libgomp.c-c++-common/alloc-4.c (main): Add
3548 omp_aligned_alloc, omp_calloc and omp_aligned_calloc tests.
3549 * testsuite/libgomp.c-c++-common/alloc-5.c: New test.
3550 * testsuite/libgomp.c-c++-common/alloc-6.c: New test.
3551 * testsuite/libgomp.c-c++-common/alloc-7.c: New test.
3552 * testsuite/libgomp.c-c++-common/alloc-8.c: New test.
3553
fd133479
GA
35542021-09-28 Tobias Burnus <tobias@codesourcery.com>
3555
3556 PR libgomp/96661
3557 * configure.ac: Only check for int-type = 2*size_t support when
3558 building with Fortran support.
3559 * configure: Regenerate.
3560
35612021-09-28 Thomas Schwinge <thomas@codesourcery.com>
3562
3563 * testsuite/libgomp.oacc-fortran/if-1.f90: Adjust.
3564 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
3565
cf966403
GA
35662021-09-27 Aldy Hernandez <aldyh@redhat.com>
3567
3568 * team.c: Initialize start_data.
3569 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
3570 * testsuite/libgomp.graphite/force-parallel-8.c: Adjust.
3571
35722021-09-27 Tobias Burnus <tobias@codesourcery.com>
3573
3574 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Change
3575 dg-message back to dg-note.
3576
35772021-09-27 Tobias Burnus <tobias@codesourcery.com>
3578
3579 PR fortran/94070
3580 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Update
3581 expected dg-note output.
3582
e4777439
GA
35832021-09-22 Tobias Burnus <tobias@codesourcery.com>
3584
3585 PR fortran/55534
3586 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Revert
3587 r12-3722 by removing -Wno-missing-include-dirs.
3588 * testsuite/libgomp.oacc-fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
3589
35902021-09-22 Jakub Jelinek <jakub@redhat.com>
3591
3592 * testsuite/libgomp.c-c++-common/allocate-2.c: New test.
3593 * testsuite/libgomp.c-c++-common/allocate-3.c: New test.
3594
2c41dd82
GA
35952021-09-21 Tobias Burnus <tobias@codesourcery.com>
3596
3597 PR fortran/55534
3598 * testsuite/libgomp.fortran/fortran.exp: Add -Wno-missing-include-dirs
3599 to ALWAYS_CFLAGS.
3600 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
3601
cf74e7b5
GA
36022021-09-18 Jakub Jelinek <jakub@redhat.com>
3603
3604 * testsuite/libgomp.c++/default-1.C: New test.
3605 * testsuite/libgomp.c-c++-common/default-1.c: New test.
3606 * libgomp.texi (OpenMP 5.1): Mark "private and firstprivate argument
3607 to default clause in C and C++" as implemented.
3608
0a4cb439
GA
36092021-09-17 Julian Brown <julian@codesourcery.com>
3610
3611 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: Update.
3612
36132021-09-17 Julian Brown <julian@codesourcery.com>
3614
3615 * testsuite/libgomp.oacc-c-c++-common/broadcast-many.c: New test.
3616
36172021-09-17 Jakub Jelinek <jakub@redhat.com>
3618
3619 * libgomp.texi (OpenMP 5.1): Spelling fix,
3620 declare variante -> declare variant.
3621
36222021-09-17 Jakub Jelinek <jakub@redhat.com>
3623
3624 * testsuite/libgomp.c-c++-common/atomic-19.c: Drop c effective target.
3625 Use /* */ comments instead of //.
3626 * testsuite/libgomp.c-c++-common/atomic-20.c: Likewise.
3627 * testsuite/libgomp.c-c++-common/atomic-21.c: Likewise.
3628 * testsuite/libgomp.c++/atomic-16.C: New test.
3629 * testsuite/libgomp.c++/atomic-17.C: New test.
3630
a26206ec
GA
36312021-09-10 Jakub Jelinek <jakub@redhat.com>
3632
3633 * testsuite/libgomp.c-c++-common/atomic-19.c: New test.
3634 * testsuite/libgomp.c-c++-common/atomic-20.c: New test.
3635 * testsuite/libgomp.c-c++-common/atomic-21.c: New test.
3636
b2748138
GA
36372021-09-07 Tobias Burnus <tobias@codesourcery.com>
3638
3639 * libgomp.texi (OpenMP Implementation Status): Extend
3640 OpenMP 5.0 section.
3641 (OpenACC Profiling Interface): Fix typo.
3642
36432021-09-07 Tobias Burnus <tobias@codesourcery.com>
3644
3645 * libgomp.texi (Enabling OpenMP): Refer to OMP spec in general
3646 not to 4.5; link to new section.
3647 (OpenMP Implementation Status): New.
3648
9f99555f
GA
36492021-09-06 Thomas Schwinge <thomas@codesourcery.com>
3650
3651 * testsuite/libgomp.c/target-43.c: '-latomic' for nvptx offloading.
3652
7b739540
GA
36532021-09-03 Tobias Burnus <tobias@codesourcery.com>
3654
3655 * testsuite/libgomp.c-c++-common/error-1.c: Use \r\n not \n\r in
3656 dg-output.
3657 * testsuite/libgomp.fortran/error-1.f90: Likewise.
3658
38b19c5b
GA
36592021-08-23 Thomas Schwinge <thomas@codesourcery.com>
3660 Jakub Jelinek <jakub@redhat.com>
3661
3662 * testsuite/libgomp.c/address-space-1.c: New file.
3663
36642021-08-23 Thomas Schwinge <thomas@codesourcery.com>
3665
3666 * testsuite/lib/libgomp.exp
3667 (check_effective_target_offload_target_intelmic): Remove 'proc'.
3668 (check_effective_target_offload_device_intel_mic): New 'proc'.
3669 * testsuite/libgomp.c-c++-common/on_device_arch.h
3670 (device_arch_intel_mic, on_device_arch_intel_mic): New.
3671 * testsuite/libgomp.c-c++-common/target-45.c: Use that for
3672 'dg-xfail-run-if'.
3673 * testsuite/libgomp.fortran/target10.f90: Likewise.
3674
36752021-08-23 Tobias Burnus <tobias@codesourcery.com>
3676
3677 * testsuite/libgomp.fortran/taskloop-4-a.f90: New test.
3678 * testsuite/libgomp.fortran/taskloop-4.f90: New test.
3679 * testsuite/libgomp.fortran/taskloop-5-a.f90: New test.
3680 * testsuite/libgomp.fortran/taskloop-5.f90: New test.
3681
36822021-08-23 Jakub Jelinek <jakub@redhat.com>
3683
3684 * taskloop.c (GOMP_taskloop): Handle GOMP_TASK_FLAG_STRICT.
3685 * testsuite/libgomp.c-c++-common/taskloop-4.c (main): Fix up comment.
3686 * testsuite/libgomp.c-c++-common/taskloop-5.c: New test.
3687
5b2876f9
GA
36882021-08-22 Thomas Schwinge <thomas@codesourcery.com>
3689
3690 * config/nvptx/error.c (fwrite, exit): Override, too.
3691 * testsuite/libgomp.c-c++-common/error-1.c: Add a minimum amount
3692 of offloading testing.
3693 * testsuite/libgomp.fortran/error-1.f90: Likewise.
3694
7c9e1645
GA
36952021-08-20 Tobias Burnus <tobias@codesourcery.com>
3696
3697 * testsuite/libgomp.fortran/error-1.f90: New test.
3698
36992021-08-20 Jakub Jelinek <jakub@redhat.com>
3700
3701 * libgomp.map (GOMP_5.1): Add GOMP_error and GOMP_warning.
3702 * libgomp_g.h (GOMP_warning, GOMP_error): Declare.
3703 * error.c (GOMP_warning, GOMP_error): New functions.
3704 * testsuite/libgomp.c-c++-common/error-1.c: New test.
3705
6e529985
GA
37062021-08-18 Tobias Burnus <tobias@codesourcery.com>
3707
3708 * omp_lib.f90.in (omp_alloc, omp_free, omp_target_alloc,
3709 omp_target_free. omp_target_is_present, omp_target_memcpy,
3710 omp_target_memcpy_rect, omp_target_associate_ptr,
3711 omp_target_disassociate_ptr): Add interface.
3712 * omp_lib.h.in (omp_alloc, omp_free, omp_target_alloc,
3713 omp_target_free. omp_target_is_present, omp_target_memcpy,
3714 omp_target_memcpy_rect, omp_target_associate_ptr,
3715 omp_target_disassociate_ptr): Add interface.
3716 * testsuite/libgomp.fortran/alloc-1.F90: Remove local
3717 interface block for omp_alloc + omp_free.
3718 * testsuite/libgomp.fortran/alloc-4.f90: Likewise.
3719 * testsuite/libgomp.fortran/refcount-1.f90: New test.
3720 * testsuite/libgomp.fortran/target-12.f90: New test.
3721
37222021-08-18 Jakub Jelinek <jakub@redhat.com>
3723
3724 * testsuite/libgomp.c-c++-common/nothing-1.c: New test.
3725
2d14d64b
GA
37262021-08-17 Tobias Burnus <tobias@codesourcery.com>
3727
3728 * testsuite/libgomp.fortran/scope-1.f90: New test.
3729 * testsuite/libgomp.fortran/task-reduction-16.f90: New test.
3730
37312021-08-17 Jakub Jelinek <jakub@redhat.com>
3732
3733 * Makefile.am (libgomp_la_SOURCES): Add scope.c
3734 * Makefile.in: Regenerated.
3735 * libgomp_g.h (GOMP_scope_start): Declare.
3736 * libgomp.map: Add GOMP_scope_start@@GOMP_5.1.
3737 * scope.c: New file.
3738 * testsuite/libgomp.c-c++-common/scope-1.c: New test.
3739 * testsuite/libgomp.c-c++-common/task-reduction-16.c: New test.
3740
9d1d9fc8
GA
37412021-08-16 Thomas Schwinge <thomas@codesourcery.com>
3742
3743 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Address
3744 '?:' issues.
3745
37462021-08-16 Tobias Burnus <tobias@codesourcery.com>
3747
3748 * testsuite/libgomp.fortran/masked-1.f90: New test.
3749
261512fa
GA
37502021-08-13 Thomas Schwinge <thomas@codesourcery.com>
3751
3752 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Adjust.
3753
72be20e2
GA
37542021-08-12 Jakub Jelinek <jakub@redhat.com>
3755
3756 * testsuite/libgomp.c-c++-common/masked-1.c: New test.
3757
37582021-08-12 Tobias Burnus <tobias@codesourcery.com>
3759
3760 * env.c (parse_bind_var): Accept 'primary' as alias for
3761 'master'.
3762 (omp_display_env): Add TODO comment to
3763 change 'master' to 'primary' in proc_bind for OpenMP 5.1.
3764 * libgomp.texi: Change 'master thread' to 'primary thread'
3765 in line with OpenMP 5.1.
3766 (omp_get_proc_bind): Add omp_proc_bind_primary and note that
3767 omp_proc_bind_master is an alias of it.
3768 (OMP_PROC_BIND): Mention 'PRIMARY'.
3769 * omp.h.in (__GOMP_DEPRECATED_5_1): Define.
3770 (omp_proc_bind_primary): Add.
3771 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
3772 * omp_lib.f90.in (omp_proc_bind_primary): Add.
3773 (omp_proc_bind_master): Deprecate for OpenMP 5.1.
3774 * omp_lib.h.in (omp_proc_bind_primary): Add.
3775 * testsuite/libgomp.c/affinity-1.c: Check that
3776 'primary' works and is identical to 'master'.
3777
37768150
GA
37782021-08-09 Julian Brown <julian@codesourcery.com>
3779 Kwok Cheung Yeung <kcy@codesourcery.com>
3780 Thomas Schwinge <thomas@codesourcery.com>
3781
3782 * plugin/plugin-gcn.c (gcn_exec): Change default number of workers to
3783 16.
3784 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
3785 [acc_device_radeon]: Update.
3786 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c
3787 [ACC_DEVICE_TYPE_radeon]: Likewise.
3788 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
3789 [acc_device_radeon]: Likewise.
3790 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c
3791 [ACC_DEVICE_TYPE_radeon]: Likewise.
3792 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: XFAIL for
3793 'openacc_radeon_accel_selected' and '-O0'.
3794 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
3795
8ebf4fb5
GA
37962021-08-05 Chung-Lin Tang <cltang@codesourcery.com>
3797
3798 * icv-device.c (omp_get_device_num): New API function, host side.
3799 * fortran.c (omp_get_device_num_): New interface function.
3800 * libgomp-plugin.h (GOMP_DEVICE_NUM_VAR): Define macro symbol.
3801 * libgomp.map (OMP_5.0.2): New version space with omp_get_device_num,
3802 omp_get_device_num_.
3803 * libgomp.texi (omp_get_device_num): Add documentation for new API
3804 function.
3805 * omp.h.in (omp_get_device_num): Add declaration.
3806 * omp_lib.f90.in (omp_get_device_num): Likewise.
3807 * omp_lib.h.in (omp_get_device_num): Likewise.
3808 * target.c (gomp_load_image_to_device): If additional entry for device
3809 number exists at end of returned entries from 'load_image_func' hook,
3810 copy the assigned device number over to the device variable.
3811 * config/gcn/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
3812 (omp_get_device_num): New API function, device side.
3813 * plugin/plugin-gcn.c ("symcat.h"): Add include.
3814 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
3815 at end of returned 'target_table' entries.
3816 * config/nvptx/icv-device.c (GOMP_DEVICE_NUM_VAR): Define static global.
3817 (omp_get_device_num): New API function, device side.
3818 * plugin/plugin-nvptx.c ("symcat.h"): Add include.
3819 (GOMP_OFFLOAD_load_image): Add addresses of device GOMP_DEVICE_NUM_VAR
3820 at end of returned 'target_table' entries.
3821 * testsuite/lib/libgomp.exp
3822 (check_effective_target_offload_target_intelmic): New function for
3823 testing for intelmic offloading.
3824 * testsuite/libgomp.c-c++-common/target-45.c: New test.
3825 * testsuite/libgomp.fortran/target10.f90: New test.
3826
4d17ca1b
GA
38272021-07-30 Thomas Schwinge <thomas@codesourcery.com>
3828 Ulrich Drepper <drepper@redhat.com>
3829
3830 * fortran.c (omp_display_env_, omp_display_env_8_): Only
3831 '#ifndef LIBGOMP_OFFLOADED_ONLY'.
3832
38332021-07-29 Thomas Schwinge <thomas@codesourcery.com>
3834 Julian Brown <julian@codesourcery.com>
3835 Kwok Cheung Yeung <kcy@codesourcery.com>
3836
3837 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c:
3838 's%oaccdevlow%oaccloops%g'.
3839 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
3840 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
3841 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c:
3842 Likewise.
3843 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c:
3844 Likewise.
3845 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c:
3846 Likewise.
3847 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c:
3848 Likewise.
3849 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c:
3850 Likewise.
3851 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c:
3852 Likewise.
3853 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c:
3854 Likewise.
3855 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c:
3856 Likewise.
3857 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
3858
872c1a56
ML
38592021-07-29 Aldy Hernandez <aldyh@redhat.com>
3860
3861 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust for
3862 threader.
3863 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
3864
af3f12e6
GA
38652021-07-27 Ulrich Drepper <drepper@gmail.com>
3866
3867 * env.c (wait_policy, stacksize): New static variables,
3868 move out of handle_omp_display_env.
3869 (omp_display_env): New function. The meat of the old
3870 handle_omp_display_env function.
3871 (handle_omp_display_env): Change to not take parameters
3872 and instead use the global variables. Only perform
3873 parsing, defer to omp_display_env for the implementation.
3874 (initialize_env): Remove local variables wait_policy and
3875 stacksize. Don't pass parameters to handle_omp_display_env.
3876 * fortran.c: Add ialias_redirect for omp_display_env.
3877 (omp_display_env_, omp_display_env_8_): New functions.
3878 * libgomp.map (OMP_5.1): New version. Add omp_display_env,
3879 omp_display_env_, and omp_display_env_8_.
3880 * omp.h.in: Declare omp_display_env.
3881 * omp_lib.f90.in: Likewise.
3882 * omp_lib.h.in: Likewise.
3883
38842021-07-27 Thomas Schwinge <thomas@codesourcery.com>
3885 Julian Brown <julian@codesourcery.com>
3886
3887 * target.c (gomp_coalesce_buf_add): Update comment.
3888 (gomp_copy_host2dev, gomp_map_vars_internal): Don't expect to see
3889 'aq && cbuf'.
3890 (gomp_map_vars_internal): Only 'if (!aq)', do
3891 'gomp_coalesce_buf_add'.
3892 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Remove
3893 XFAIL.
3894
38952021-07-27 Julian Brown <julian@codesourcery.com>
3896 Thomas Schwinge <thomas@codesourcery.com>
3897
3898 * libgomp.h (gomp_copy_host2dev): Update prototype.
3899 * oacc-mem.c (memcpy_tofrom_device, update_dev_host): Add new
3900 argument to gomp_copy_host2dev (false).
3901 * plugin/plugin-gcn.c (struct copy_data): Remove free_src field.
3902 (copy_data): Don't free src.
3903 (queue_push_copy): Remove free_src handling.
3904 (GOMP_OFFLOAD_dev2dev): Update call to queue_push_copy.
3905 (GOMP_OFFLOAD_openacc_async_host2dev): Remove source-data
3906 snapshotting.
3907 (GOMP_OFFLOAD_openacc_async_dev2host): Update call to
3908 queue_push_copy.
3909 * target.c (goacc_device_copy_async): Add SRCADDR_ORIG parameter.
3910 (gomp_copy_host2dev): Add EPHEMERAL parameter. Snapshot source
3911 data when true, and set up deferred freeing of temporary buffer.
3912 (gomp_copy_dev2host): Update call to goacc_device_copy_async.
3913 (gomp_map_vars_existing, gomp_map_pointer, gomp_attach_pointer)
3914 (gomp_detach_pointer, gomp_map_vars_internal, gomp_update): Update
3915 calls to gomp_copy_host2dev with appropriate ephemeral argument.
3916 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: Remove
3917 XFAIL.
3918
39192021-07-27 Thomas Schwinge <thomas@codesourcery.com>
3920 Tom de Vries <tom@codesourcery.com>
3921
3922 * testsuite/libgomp.oacc-c-c++-common/async-data-1-1.c: New file.
3923 * testsuite/libgomp.oacc-c-c++-common/async-data-1-2.c: Likewise.
3924
39252021-07-27 Thomas Schwinge <thomas@codesourcery.com>
3926
3927 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Clarify
3928 sequencing of 'async' data copying vs. profiling events.
3929 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
3930 Likewise.
3931
39322021-07-27 Thomas Schwinge <thomas@codesourcery.com>
3933 Julian Brown <julian@codesourcery.com>
3934
3935 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: Fix OpenACC
3936 'async'/'wait' issue.
3937 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: Likewise.
3938 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: Likewise.
3939 * testsuite/libgomp.oacc-fortran/lib-16.f90: Likewise.
3940
419c6c68
GA
39412021-07-21 Thomas Schwinge <thomas@codesourcery.com>
3942 Joseph Myers <joseph@codesourcery.com>
3943 Cesar Philippidis <cesar@codesourcery.com>
3944
3945 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-1.c: New
3946 file.
3947 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2.c:
3948 Likewise.
3949 * testsuite/libgomp.oacc-c-c++-common/routine-nohost-2_2.c:
3950 Likewise.
3951 * testsuite/libgomp.oacc-fortran/routine-nohost-1.f90: Likewise.
3952
92d45509
GA
39532021-07-20 Thomas Schwinge <thomas@codesourcery.com>
3954
3955 PR target/101484
3956 * configure.tgt [amdgcn*-*-*] (XCFLAGS): Add
3957 '-Wno-error=array-bounds'.
3958 * config/gcn/team.c: Remove '-Werror=array-bounds' work-around.
3959 * libgomp.h [__AMDGCN__]: Likewise.
3960
21ea2f93
GA
39612021-07-19 Thomas Schwinge <thomas@codesourcery.com>
3962
3963 PR target/101484
3964 * config/gcn/team.c: Apply '-Werror=array-bounds' work-around.
3965 * libgomp.h [__AMDGCN__]: Likewise.
3966
0e775456
GA
39672021-07-13 Jakub Jelinek <jakub@redhat.com>
3968 Florian Weimer <fweimer@redhat.com>
3969
3970 * config/linux/sem.h: Don't include limits.h.
3971 (SEM_WAIT): Define to -__INT_MAX__ - 1 instead of INT_MIN.
3972 * config/linux/affinity.c: Include limits.h.
3973
bea7c16a
GA
39742021-07-01 Jakub Jelinek <jakub@redhat.com>
3975
3976 PR middle-end/94366
3977 * testsuite/libgomp.c-c++-common/pr94366.c: New test.
3978
6bc18203
GA
39792021-06-29 Tobias Burnus <tobias@codesourcery.com>
3980
3981 PR other/67300
3982 * testsuite/libgomp.c-c++-common/reduction-16.c: Replace
3983 -foffload=nvptx-none= by -foffload-options=nvptx-none= to
3984 avoid disabling other offload targets.
3985 * testsuite/libgomp.c-c++-common/reduction-5.c: Likewise.
3986 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
3987 * testsuite/libgomp.c/target-44.c: Likewise.
3988
39892021-06-29 Tobias Burnus <tobias@codesourcery.com>
3990
3991 * testsuite/libgomp.fortran/defaultmap-8.f90 (bar): Determine whether
3992 target has shared memory and disable some scalar pointer/allocatable
3993 checks if not as firstprivate does not work.
3994
90708f87
GA
39952021-06-25 Chung-Lin Tang <cltang@codesourcery.com>
3996
3997 PR testsuite/101114
3998 * testsuite/libgomp.c-c++-common/struct-elem-5.c:
3999 Add "target offload_device_nonshared_as" condition for enabling test.
4000
9aa8327e
GA
40012021-06-24 Jakub Jelinek <jakub@redhat.com>
4002
4003 * testsuite/libgomp.c-c++-common/target-in-reduction-1.c: New test.
4004 * testsuite/libgomp.c-c++-common/target-in-reduction-2.c: New test.
4005 * testsuite/libgomp.c++/target-in-reduction-1.C: New test.
4006 * testsuite/libgomp.c++/target-in-reduction-2.C: New test.
4007
fcf617f0
GA
40082021-06-23 Jakub Jelinek <jakub@redhat.com>
4009
4010 PR middle-end/101167
4011 * testsuite/libgomp.c-c++-common/task-reduction-15.c: New test.
4012
688359a2
GA
40132021-06-17 Chung-Lin Tang <cltang@codesourcery.com>
4014
4015 * hashtab.h (htab_clear): New function with initialization code
4016 factored out from...
4017 (htab_create): ...here, adjust to use htab_clear function.
4018 * libgomp.h (REFCOUNT_SPECIAL): New symbol to denote range of
4019 special refcount values, add comments.
4020 (REFCOUNT_INFINITY): Adjust definition to use REFCOUNT_SPECIAL.
4021 (REFCOUNT_LINK): Likewise.
4022 (REFCOUNT_STRUCTELEM): New special refcount range for structure
4023 element siblings.
4024 (REFCOUNT_STRUCTELEM_P): Macro for testing for structure element
4025 sibling maps.
4026 (REFCOUNT_STRUCTELEM_FLAG_FIRST): Flag to indicate first sibling.
4027 (REFCOUNT_STRUCTELEM_FLAG_LAST): Flag to indicate last sibling.
4028 (REFCOUNT_STRUCTELEM_FIRST_P): Macro to test _FIRST flag.
4029 (REFCOUNT_STRUCTELEM_LAST_P): Macro to test _LAST flag.
4030 (struct splay_tree_key_s): Add structelem_refcount and
4031 structelem_refcount_ptr fields into a union with dynamic_refcount.
4032 Add comments.
4033 (gomp_map_vars): Delete declaration.
4034 (gomp_map_vars_async): Likewise.
4035 (gomp_unmap_vars): Likewise.
4036 (gomp_unmap_vars_async): Likewise.
4037 (goacc_map_vars): New declaration.
4038 (goacc_unmap_vars): Likewise.
4039 * oacc-mem.c (acc_map_data): Adjust to use goacc_map_vars.
4040 (goacc_enter_datum): Likewise.
4041 (goacc_enter_data_internal): Likewise.
4042 * oacc-parallel.c (GOACC_parallel_keyed): Adjust to use goacc_map_vars
4043 and goacc_unmap_vars.
4044 (GOACC_data_start): Adjust to use goacc_map_vars.
4045 (GOACC_data_end): Adjust to use goacc_unmap_vars.
4046 * target.c (hash_entry_type): New typedef.
4047 (htab_alloc): New function hook for hashtab.h.
4048 (htab_free): Likewise.
4049 (htab_hash): Likewise.
4050 (htab_eq): Likewise.
4051 (hashtab.h): Add file include.
4052 (gomp_increment_refcount): New function.
4053 (gomp_decrement_refcount): Likewise.
4054 (gomp_map_vars_existing): Add refcount_set parameter, adjust to use
4055 gomp_increment_refcount.
4056 (gomp_map_fields_existing): Add refcount_set parameter, adjust calls
4057 to gomp_map_vars_existing.
4058 (gomp_map_vars_internal): Add refcount_set parameter, add local openmp_p
4059 variable to guard OpenMP specific paths, adjust calls to
4060 gomp_map_vars_existing, add structure element sibling splay_tree_key
4061 sequence creation code, adjust Fortran map case to avoid increment
4062 under OpenMP.
4063 (gomp_map_vars): Adjust to static, add refcount_set parameter, manage
4064 local refcount_set if caller passed in NULL, adjust call to
4065 gomp_map_vars_internal.
4066 (gomp_map_vars_async): Adjust and rename into...
4067 (goacc_map_vars): ...this new function, adjust call to
4068 gomp_map_vars_internal.
4069 (gomp_remove_splay_tree_key): New function with code factored out from
4070 gomp_remove_var_internal.
4071 (gomp_remove_var_internal): Add code to handle removing multiple
4072 splay_tree_key sequence for structure elements, adjust code to use
4073 gomp_remove_splay_tree_key for splay-tree key removal.
4074 (gomp_unmap_vars_internal): Add refcount_set parameter, adjust to use
4075 gomp_decrement_refcount.
4076 (gomp_unmap_vars): Adjust to static, add refcount_set parameter, manage
4077 local refcount_set if caller passed in NULL, adjust call to
4078 gomp_unmap_vars_internal.
4079 (gomp_unmap_vars_async): Adjust and rename into...
4080 (goacc_unmap_vars): ...this new function, adjust call to
4081 gomp_unmap_vars_internal.
4082 (GOMP_target): Manage refcount_set and adjust calls to gomp_map_vars and
4083 gomp_unmap_vars.
4084 (GOMP_target_ext): Likewise.
4085 (gomp_target_data_fallback): Adjust call to gomp_map_vars.
4086 (GOMP_target_data): Likewise.
4087 (GOMP_target_data_ext): Likewise.
4088 (GOMP_target_end_data): Adjust call to gomp_unmap_vars.
4089 (gomp_exit_data): Add refcount_set parameter, adjust to use
4090 gomp_decrement_refcount, adjust to queue splay-tree keys for removal
4091 after main loop.
4092 (GOMP_target_enter_exit_data): Manage refcount_set and adjust calls to
4093 gomp_map_vars and gomp_exit_data.
4094 (gomp_target_task_fn): Likewise.
4095 * testsuite/libgomp.c-c++-common/refcount-1.c: New testcase.
4096 * testsuite/libgomp.c-c++-common/struct-elem-1.c: New testcase.
4097 * testsuite/libgomp.c-c++-common/struct-elem-2.c: New testcase.
4098 * testsuite/libgomp.c-c++-common/struct-elem-3.c: New testcase.
4099 * testsuite/libgomp.c-c++-common/struct-elem-4.c: New testcase.
4100 * testsuite/libgomp.c-c++-common/struct-elem-5.c: New testcase.
4101
ede6c356
GA
41022021-06-15 Tobias Burnus <tobias@codesourcery.com>
4103
4104 PR fortran/92568
4105 * testsuite/libgomp.fortran/defaultmap-8.f90: New test.
4106
43c35d0d
GA
41072021-06-10 Andrew Stubbs <ams@codesourcery.com>
4108 Thomas Schwinge <thomas@codesourcery.com>
4109
4110 * libgomp.map (GOACC_2.0.2): New symbol version.
4111 * libgomp_g.h (GOACC_enter_data, GOACC_exit_data) New prototypes.
4112 * oacc-mem.c (GOACC_enter_data, GOACC_exit_data) New functions.
4113
41142021-06-10 Thomas Schwinge <thomas@codesourcery.com>
4115 Andrew Stubbs <ams@codesourcery.com>
4116
4117 * oacc-mem.c (goacc_enter_exit_data_internal): New function,
4118 extracted from...
4119 (GOACC_enter_exit_data): ... here.
4120 (GOACC_declare): Use it.
4121
41222021-06-10 Thomas Schwinge <thomas@codesourcery.com>
4123
4124 * oacc-parallel.c (GOACC_declare): Move...
4125 * oacc-mem.c: ... here.
4126 * libgomp_g.h: Adjust.
4127
41282021-06-10 Andrew Stubbs <ams@codesourcery.com>
4129 Thomas Schwinge <thomas@codesourcery.com>
4130
4131 * oacc-parallel.c (GOACC_declare): Clean up 'GOMP_MAP_POINTER'
4132 handling.
4133
41342021-06-10 Jakub Jelinek <jakub@redhat.com>
4135
4136 PR tree-optimization/100981
4137 * testsuite/libgomp.fortran/pr100981-2.f90 (cdcdot): Initialize
4138 dsdotr and dsdoti to 0.
4139
4f625f47
GA
41402021-06-09 H.J. Lu <hjl.tools@gmail.com>
4141
4142 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -march=i486
4143 if atomic compare-and-swap is supported on 'int'.
4144
41452021-06-09 Richard Biener <rguenther@suse.de>
4146
4147 PR tree-optimization/100981
4148 * testsuite/libgomp.fortran/pr100981-2.f90: New testcase.
4149
c6038721
GA
41502021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4151
4152 * plugin/plugin-gcn.c (gcn_exec): Force 'num_workers (1)'
4153 unconditionally.
4154 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
4155 Update.
4156 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4157 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
4158
41592021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4160
4161 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Enable for all but
4162 '-DACC_MEM_SHARED=0'.
4163 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
4164 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
4165 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
4166 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
4167 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
4168 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
4169 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
4170 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
4171 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
4172 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
4173 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
4174 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
4175 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
4176 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
4177 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Add
4178 'acc_device_radeon' testing.
4179 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
4180 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
4181 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
4182 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Enable for all.
4183 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
4184 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
4185 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
4186 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
4187 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
4188 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
4189 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Improve checking
4190 for non-'openacc_nvidia_accel_selected'.
4191 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
4192 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Clarify that "Not
4193 all implement this checking".
4194 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
4195 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
4196 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
4197 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
4198 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
4199
42002021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4201
4202 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Simplify.
4203 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: Update.
4204
42052021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4206
4207 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Fix
4208 for 'acc_device_radeon'.
4209
42102021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4211
4212 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Enhance
4213 for non-'acc_device_nvidia'.
4214
42152021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4216
4217 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Add
4218 'acc_device_radeon' testing.
4219 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
4220 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
4221 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
4222
42232021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4224
4225 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Don't
4226 require 'openacc_nvidia_accel_selected'. Fix up for
4227 'ACC_DEVICE_TYPE_radeon'.
4228
42292021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4230
4231 * testsuite/libgomp.oacc-c++/declare-1.C: Don't require
4232 'openacc_nvidia_accel_selected'.
4233 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
4234
42352021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4236
4237 * testsuite/lib/libgomp.exp
4238 (check_effective_target_openacc_radeon_accel_selected):
4239 Streamline.
4240
42412021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4242
4243 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Revert
4244 PR80547 workaround.
4245
42462021-06-08 Thomas Schwinge <thomas@codesourcery.com>
4247
4248 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
4249 <acc_device_nvidia>: Update comment.
4250
48166757
GA
42512021-05-28 Tobias Burnus <tobias@codesourcery.com>
4252
4253 * testsuite/libgomp.fortran/depend-iterator-2.f90: New test.
4254
cd62d089
GA
42552021-05-27 Jakub Jelinek <jakub@redhat.com>
4256
4257 * testsuite/lib/libgomp.exp (check_effective_target_openacc_cuda,
4258 check_effective_target_openacc_cublas,
4259 check_effective_target_openacc_cudart): New.
4260 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Require effective
4261 target openacc_cublas.
4262 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
4263 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
4264 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Require effective
4265 target openacc_cuda.
4266 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
4267 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
4268 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
4269 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
4270 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
4271 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
4272 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
4273 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
4274 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Likewise.
4275 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
4276 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
4277 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
4278 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
4279 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
4280 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
4281 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
4282 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Require effective
4283 targets openacc_cublas and openacc_cudart.
4284 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
4285 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
4286 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
4287 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
4288 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c:
4289 Require effective target openacc_cudart.
4290 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Add -DUSE_CUDA_H
4291 for effective target openacc_cuda and add && defined USE_CUDA_H to
4292 preprocessor conditionals. Guard -lcuda also on openacc_cuda
4293 effective target.
4294
01c59ef2
GA
42952021-05-26 Jakub Jelinek <jakub@redhat.com>
4296
4297 PR libgomp/100573
4298 * config/nvptx/target.c (GOMP_target_ext, GOMP_target_data_ext,
4299 GOMP_target_end_data, GOMP_target_update_ext,
4300 GOMP_target_enter_exit_data): New dummy entrypoints.
4301 * config/gcn/target.c (GOMP_target_ext, GOMP_target_data_ext,
4302 GOMP_target_end_data, GOMP_target_update_ext,
4303 GOMP_target_enter_exit_data): Likewise.
4304 * testsuite/libgomp.c-c++-common/for-3.c (DO_PRAGMA, OMPTEAMS,
4305 OMPFROM, OMPTO): Define.
4306 (main): Remove #pragma omp target teams around all the tests.
4307 * testsuite/libgomp.c-c++-common/target-41.c: New test.
4308 * testsuite/libgomp.c-c++-common/target-42.c: New test.
4309
2bc6dace
GA
43102021-05-25 Jakub Jelinek <jakub@redhat.com>
4311
4312 PR middle-end/99928
4313 * testsuite/libgomp.c-c++-common/reduction-17.c: New test.
4314
637569df
GA
43152021-05-24 Tobias Burnus <tobias@codesourcery.com>
4316
4317 PR fortran/86470
4318 * testsuite/libgomp.fortran/class-firstprivate-1.f90: New test.
4319 * testsuite/libgomp.fortran/class-firstprivate-2.f90: New test.
4320 * testsuite/libgomp.fortran/class-firstprivate-3.f90: New test.
4321
15d30d2f
GA
43222021-05-22 Thomas Schwinge <thomas@codesourcery.com>
4323
4324 PR testsuite/90115
4325 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Prune
4326 uninteresting/varying diagnostics.
4327
2832d51b
GA
43282021-05-21 Thomas Schwinge <thomas@codesourcery.com>
4329
4330 PR middle-end/90115
4331 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: Update.
4332 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
4333
43342021-05-21 Thomas Schwinge <thomas@codesourcery.com>
4335
4336 PR middle-end/90115
4337 * testsuite/libgomp.oacc-fortran/private-atomic-1-vector.f90: New
4338 file.
4339 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
4340 * testsuite/libgomp.oacc-c-c++-common/host_data-7.c: Likewise.
4341 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4342 Likewise.
4343 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
4344 Likewise.
4345 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
4346 Likewise.
4347 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
4348 Likewise.
4349 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
4350 Likewise.
4351 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
4352 Likewise.
4353 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
4354 Likewise.
4355 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
4356 Likewise.
4357 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
4358 Likewise.
4359 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
4360 Likewise.
4361 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
4362 Likewise.
4363 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
4364 Likewise.
4365 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
4366 Likewise.
4367 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
4368 Likewise.
4369 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
4370 Likewise.
4371 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
4372 Likewise.
4373 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
4374 Likewise.
4375 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
4376 Likewise.
4377 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
4378 Likewise.
4379 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
4380 Likewise.
4381 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
4382 Likewise.
4383 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
4384 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
4385 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
4386 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: Likewise.
4387 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
4388 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
4389 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
4390 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
4391 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
4392 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
4393 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
4394 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
4395 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
4396 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
4397 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
4398 Likewise.
4399 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c:
4400 Likewise.
4401 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c:
4402 Likewise.
4403 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
4404 Likewise.
4405 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
4406 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
4407 Likewise.
4408 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
4409 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
4410 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
4411 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
4412 * testsuite/libgomp.oacc-fortran/host_data-5.F90: Likewise.
4413 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
4414 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
4415 Likewise.
4416 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
4417 Likewise.
4418 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
4419 Likewise.
4420 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
4421 Likewise.
4422 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
4423 Likewise.
4424 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
4425 Likewise.
4426 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
4427 Likewise.
4428 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
4429 Likewise.
4430 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
4431 Likewise.
4432 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
4433 Likewise.
4434 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
4435 Likewise.
4436 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
4437 Likewise.
4438 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
4439 Likewise.
4440 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
4441 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
4442 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
4443 Likewise.
4444 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
4445 Likewise.
4446 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
4447 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Likewise.
4448 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
4449
44502021-05-21 Julian Brown <julian@codesourcery.com>
4451 Chung-Lin Tang <cltang@codesourcery.com>
4452 Thomas Schwinge <thomas@codesourcery.com>
4453
4454 PR middle-end/90115
4455 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1-gang.c: New
4456 test.
4457 * testsuite/libgomp.oacc-fortran/private-atomic-1-gang.f90:
4458 Likewise.
4459 * testsuite/libgomp.oacc-fortran/private-atomic-1-worker.f90:
4460 Likewise.
4461
44622021-05-21 Thomas Schwinge <thomas@codesourcery.com>
4463
4464 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: Don't skip
4465 for nvptx offloading.
4466
44672021-05-21 Tobias Burnus <tobias@codesourcery.com>
4468
4469 * testsuite/libgomp.oacc-fortran/privatized-ref-2.f90: New.
4470
65f32e5d
GA
44712021-05-19 Thomas Schwinge <thomas@codesourcery.com>
4472
4473 PR target/83812
4474 * testsuite/libgomp.oacc-c-c++-common/private-atomic-1.c: New.
4475
44762021-05-19 Julian Brown <julian@codesourcery.com>
4477
4478 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-2.c: New.
4479
a8daf9a1
GA
44802021-05-18 Thomas Schwinge <thomas@codesourcery.com>
4481
4482 * testsuite/lib/libgomp.exp
4483 (check_effective_target_offload_target_nvptx): Don't shadow global
4484 'offload_targets' variable.
4485
44862021-05-18 Thomas Schwinge <thomas@codesourcery.com>
4487
4488 * testsuite/libgomp.c-c++-common/reduction-5.c: Restrict
4489 '-latomic' to nvptx offloading compilation.
4490 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
4491
44922021-05-18 Thomas Schwinge <thomas@codesourcery.com>
4493
4494 * testsuite/libgomp.c/target-44.c: Restrict '-latomic' to nvptx
4495 offloading compilation.
4496
a7ffc1ef
GA
44972021-05-17 Kwok Cheung Yeung <kcy@codesourcery.com>
4498
4499 * task.c (omp_fulfill_event): Call gomp_team_barrier_set_task_pending
4500 if new tasks generated.
4501 * testsuite/libgomp.c-c++-common/task-detach-13.c: New.
4502
87a7d10c
GA
45032021-05-14 Tobias Burnus <tobias@codesourcery.com>
4504
4505 * testsuite/libgomp.fortran/parallel-master.f90: New test.
4506
f9af11c7
GA
45072021-05-13 Martin Liska <mliska@suse.cz>
4508
4509 PR testsuite/100569
4510 * testsuite/libgomp.c/omp-nested-3.c: Prune new LTO warning.
4511 * testsuite/libgomp.c/pr46032-2.c: Likewise.
4512 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c: Likewise.
4513 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c: Likewise.
4514
0ff3a0f2
GA
45152021-05-12 Tobias Burnus <tobias@codesourcery.com>
4516
4517 * testsuite/libgomp.c-c++-common/task-detach-12.c: New test.
4518 * testsuite/libgomp.fortran/task-detach-12.f90: New test.
4519
037e3661
GA
45202021-05-11 Jakub Jelinek <jakub@redhat.com>
4521
4522 PR middle-end/100471
4523 * taskloop.c (GOMP_taskloop): If GOMP_TASK_FLAG_REDUCTION and not
4524 GOMP_TASK_FLAG_NOGROUP, when doing early return clear the task
4525 reduction pointer.
4526 * testsuite/libgomp.c/task-reduction-4.c: New test.
4527
62d87a32
GA
45282021-05-07 Tobias Burnus <tobias@codesourcery.com>
4529 Tom de Vries <tdevries@suse.de>
4530
4531 * testsuite/libgomp.c-c++-common/reduction-5.c: New test, testing
4532 complex/floating-point || + && reduction with 'omp target'.
4533 * testsuite/libgomp.c-c++-common/reduction-6.c: Likewise.
4534
99e8df7a
GA
45352021-05-04 Tobias Burnus <tobias@codesourcery.com>
4536
4537 * testsuite/libgomp.c-c++-common/reduction-1.c: New test.
4538 * testsuite/libgomp.c-c++-common/reduction-2.c: New test.
4539 * testsuite/libgomp.c-c++-common/reduction-3.c: New test.
4540 * testsuite/libgomp.c-c++-common/reduction-4.c: New file.
4541
45422021-05-04 Tobias Burnus <tobias@codesourcery.com>
4543
4544 PR testsuite/100397
4545 * testsuite/libgomp.fortran/depobj-1.f90 (dep2, dep3): Move var
4546 declaration to scope of non-'depend'-guarded assignment to avoid races.
4547
e690396d
GA
45482021-05-03 Tom de Vries <tdevries@suse.de>
4549
4550 PR target/100321
4551 * testsuite/libgomp.c/target-44.c: New test.
4552
9326049e
GA
45532021-04-30 Roman Zhuykov <zhroma@ispras.ru>
4554
4555 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-3.c: New test.
4556
3c8e539d
GA
45572021-04-29 Tom de Vries <tdevries@suse.de>
4558
4559 * testsuite/libgomp.c/pr81778.c: New test.
4560
45612021-04-29 Tom de Vries <tdevries@suse.de>
4562
4563 PR target/100232
4564 * testsuite/libgomp.c/target-43.c: New file.
4565
e4ff4ffb
GA
45662021-04-28 Jakub Jelinek <jakub@redhat.com>
4567 Tobias Burnus <tobias@codesourcery.com>
4568
4569 * configure.ac (OFFLOAD_DEFAULTED): AC_DEFINE if offload-defaulted.
4570 * target.c (gomp_load_plugin_for_device): If set and if a plugin
4571 can't be dlopened, silently assume it has no devices.
4572 * Makefile.in: Regenerate.
4573 * config.h.in: Regenerate.
4574 * configure: Regenerate.
4575
c0fa3f2f
GA
45762021-04-26 Tobias Burnus <tobias@codesourcery.com>
4577
4578 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
4579 Use [Ww]arning in dg-bogus as FE diagnostic and default
4580 diagnostic differ and the result depends on ENABLE_OFFLOAD.
4581 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
4582 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
4583 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
4584
45852021-04-26 Tobias Burnus <tobias@codesourcery.com>
4586
4587 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f:
4588 Correct spelling in dg-bogus to match -Wopenacc-parallelism.
4589 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
4590 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
4591 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
4592
45932021-04-26 Thomas Schwinge <thomas@codesourcery.com>
4594 Nathan Sidwell <nathan@codesourcery.com>
4595 Tom de Vries <vries@codesourcery.com>
4596 Julian Brown <julian@codesourcery.com>
4597 Kwok Cheung Yeung <kcy@codesourcery.com>
4598
4599 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Specify
4600 '-Wopenacc-parallelism', and match diagnostics, as appropriate.
4601 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
4602 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
4603 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
4604 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
4605 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c:
4606 Likewise.
4607 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
4608 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
4609 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
4610 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
4611 Likewise.
4612 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
4613 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
4614 Likewise.
4615 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
4616 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
4617 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
4618 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
4619 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
4620 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c:
4621 Likewise.
4622 * testsuite/libgomp.oacc-fortran/optional-private.f90: Likewise.
4623 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
4624 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
4625 * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Likewise.
4626 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
4627 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
4628 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
4629 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
4630 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
4631 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
4632 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
4633
46342021-04-26 Thomas Schwinge <thomas@codesourcery.com>
4635
4636 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Don't
4637 compile with '-w'.
4638 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
4639 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c:
4640 Likewise.
4641 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
4642 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: Likewise.
4643 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
4644 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
4645 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
4646 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
4647 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
4648
e3948473
GA
46492021-04-22 Richard Biener <rguenther@suse.de>
4650
4651 * testsuite/libgomp.c-c++-common/reduction-16.c: Use -latomic
4652 only on nvptx-none.
4653
c1ef0c92
GA
46542021-04-21 Tobias Burnus <tobias@codesourcery.com>
4655
4656 * testsuite/libgomp.fortran/depobj-1.f90: Use omp_lib's
4657 omp_depend_kind instead of defining it as 16.
4658
46592021-04-21 Tobias Burnus <tobias@codesourcery.com>
4660
4661 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
4662 New, based on check_effective_target_offload_target_nvptx.
4663 (check_effective_target_offload_target_nvptx): Call it.
4664 (check_effective_target_offload_target_amdgcn): New.
4665 * testsuite/libgomp.c-c++-common/function-not-offloaded.c:
4666 Require target offload_target_nvptx || offload_target_amdgcn.
4667 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: Likewise.
4668 * testsuite/libgomp.c/pr86416-1.c: Likewise.
4669 * testsuite/libgomp.c/pr86416-2.c: Likewise.
4670
46712021-04-21 Tobias Burnus <tobias@codesourcery.com>
4672
4673 * testsuite/libgomp.fortran/depobj-1.f90: New test.
4674
6e81e015
GA
46752021-04-19 Thomas Schwinge <thomas@codesourcery.com>
4676
4677 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
4678 '-fopenacc-kernels=[...]' -> '--param=openacc-kernels=[...]'.
4679 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
4680 Likewise.
4681 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
4682 Likewise.
4683 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
4684
ee351f7f
GA
46852021-04-15 Thomas Schwinge <thomas@codesourcery.com>
4686
4687 PR target/99555
4688 * testsuite/lib/libgomp.exp
4689 (check_effective_target_offload_device_nvptx): New.
4690 * testsuite/libgomp.c/pr99555-1.c <nvptx offload device>: Until
4691 resolved, make sure that we exit quickly, with error status,
4692 XFAILed.
4693 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise.
4694 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
4695
df3b1289
GA
46962021-04-14 Jakub Jelinek <jakub@redhat.com>
4697
4698 PR testsuite/100071
4699 * testsuite/libgomp.fortran/alloc-1.F90: Call c_f_pointer after last
4700 cp = omp_alloc with cp, p arguments instead of cq, q and call
4701 c_f_pointer after last cq = omp_alloc with cq, q.
4702
a0ecde22
GA
47032021-04-11 Hafiz Abid Qadeer <abidh@codesourcery.com>
4704
4705 PR middle-end/98088
4706 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Add check
4707 for loop with GT/GE condition.
4708 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
4709
3115aba8
GA
47102021-04-09 Thomas Schwinge <thomas@codesourcery.com>
4711
4712 PR middle-end/84991
4713 PR middle-end/84992
4714 PR middle-end/90779
4715 * testsuite/libgomp.oacc-c-c++-common/static-variable-1.c: New.
4716
47172021-04-09 Jakub Jelinek <jakub@redhat.com>
4718
4719 PR libgomp/99984
4720 * team.c (gomp_thread_start): Call pthread_setspecific for
4721 !(defined HAVE_TLS || defined USE_EMUTLS) only after local_thr
4722 has been initialized to avoid false positive warning.
4723
65374af2
GA
47242021-03-29 Tobias Burnus <tobias@codesourcery.com>
4725
4726 PR target/99555
4727 * testsuite/lib/on_device_arch.c: Move to ...
4728 * testsuite/libgomp.c-c++-common/on_device_arch.h: ... here.
4729 * testsuite/libgomp.fortran/on_device_arch.c: New file;
4730 #include on_device_arch.h.
4731 * testsuite/libgomp.c-c++-common/task-detach-6.c: #include
4732 on_device_arch.h instead of using dg-additional-source.
4733 * testsuite/libgomp.c/pr99555-1.c: Likewise.
4734 * testsuite/libgomp.fortran/task-detach-6.f90: Update to use
4735 on_device_arch.c without relative paths.
4736
4493b1c1
GA
47372021-03-25 Thomas Schwinge <thomas@codesourcery.com>
4738
4739 * plugin/plugin-gcn.c (init_environment_variables): Don't prepend
4740 the 'HSA_RUNTIME_LIB' path to 'libhsa-runtime64.so'.
4741 * plugin/configfrag.ac (HSA_RUNTIME_LIB): Clean up.
4742 * config.h.in: Regenerate.
4743 * configure: Likewise.
4744
47452021-03-25 Thomas Schwinge <thomas@codesourcery.com>
4746
4747 PR target/99555
4748 * testsuite/lib/on_device_arch.c: New file.
4749 * testsuite/libgomp.c/pr99555-1.c: Likewise.
4750 * testsuite/libgomp.c-c++-common/task-detach-6.c: Until resolved,
4751 skip for nvptx offloading, with error status.
4752 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
4753
47542021-03-25 Thomas Schwinge <thomas@codesourcery.com>
4755
4756 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90:
4757 OpenACC 'serial' construct diagnostic for nvptx offloading.
4758
3c5b6d24
GA
47592021-03-15 Tobias Burnus <tobias@codesourcery.com>
4760
4761 PR c++/99509
4762 * testsuite/libgomp.c-c++-common/declare_target-1.c: New test.
4763
6da2762a
GA
47642021-03-12 Tobias Burnus <tobias@codesourcery.com>
4765
4766 PR fortran/98858
4767 * testsuite/libgomp.fortran/use_device_ptr-3.f90: New test.
4768
67f10d28
GA
47692021-03-04 Jakub Jelinek <jakub@redhat.com>
4770
4771 * configure.ac: Add AC_CHECK_SIZEOF([void *]).
4772 * plugin/configfrag.ac: Check $ac_cv_sizeof_void_p value instead of
4773 checking of -m32 or -mx32 options on the command line.
4774 * config.h.in: Regenerated.
4775 * configure: Regenerated.
4776
ec9dc4fa
GA
47772021-02-27 Iain Sandoe <iain@sandoe.co.uk>
4778
4779 * testsuite/libgomp.c-c++-common/pr96390.c: Require alias
4780 support from the target.
4781
daa68844
GA
47822021-02-25 Kwok Cheung Yeung <kcy@codesourcery.com>
4783 Jakub Jelinek <jakub@redhat.com>
4784
4785 PR libgomp/98738
4786 * libgomp.h (enum gomp_task_kind): Add GOMP_TASK_DETACHED.
4787 (struct gomp_task): Replace detach and completion_sem fields with
4788 union containing completion_sem and detach_team. Add deferred_p
4789 field.
4790 (struct gomp_team): Remove task_detach_queue.
4791 * task.c: Include assert.h.
4792 (gomp_init_task): Initialize deferred_p and completion_sem fields.
4793 Rearrange initialization order of fields.
4794 (task_fulfilled_p): Delete.
4795 (GOMP_task): Use address of task as the event handle. Remove
4796 initialization of detach field. Initialize deferred_p field.
4797 Use automatic local for completion_sem. Initialize detach_team field
4798 for deferred tasks.
4799 (gomp_barrier_handle_tasks): Remove handling of task_detach_queue.
4800 Set kind of suspended detach task to GOMP_TASK_DETACHED and
4801 decrement task_running_count. Move finish_cancelled block out of
4802 else branch. Relocate call to gomp_team_barrier_done.
4803 (GOMP_taskwait): Handle tasks with completion events that have not
4804 been fulfilled.
4805 (GOMP_taskgroup_end): Likewise.
4806 (omp_fulfill_event): Use address of task as event handle. Post to
4807 completion_sem for undeferred tasks. Clear detach_team if task
4808 has not finished. For finished tasks, handle post-execution tasks,
4809 call gomp_team_barrier_wake if necessary, and free task.
4810 * team.c (gomp_new_team): Remove initialization of task_detach_queue.
4811 (free_team): Remove free of task_detach_queue.
4812 * testsuite/libgomp.c-c++-common/task-detach-1.c: Fix formatting.
4813 * testsuite/libgomp.c-c++-common/task-detach-2.c: Fix formatting.
4814 * testsuite/libgomp.c-c++-common/task-detach-3.c: Fix formatting.
4815 * testsuite/libgomp.c-c++-common/task-detach-4.c: Fix formatting.
4816 * testsuite/libgomp.c-c++-common/task-detach-5.c: Fix formatting.
4817 Change data-sharing of detach events on enclosing parallel to private.
4818 * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise. Remove
4819 taskwait directive.
4820 * testsuite/libgomp.c-c++-common/task-detach-7.c: New.
4821 * testsuite/libgomp.c-c++-common/task-detach-8.c: New.
4822 * testsuite/libgomp.c-c++-common/task-detach-9.c: New.
4823 * testsuite/libgomp.c-c++-common/task-detach-10.c: New.
4824 * testsuite/libgomp.c-c++-common/task-detach-11.c: New.
4825 * testsuite/libgomp.fortran/task-detach-1.f90: Fix formatting.
4826 * testsuite/libgomp.fortran/task-detach-2.f90: Fix formatting.
4827 * testsuite/libgomp.fortran/task-detach-3.f90: Fix formatting.
4828 * testsuite/libgomp.fortran/task-detach-4.f90: Fix formatting.
4829 * testsuite/libgomp.fortran/task-detach-5.f90: Fix formatting.
4830 Change data-sharing of detach events on enclosing parallel to private.
4831 * testsuite/libgomp.fortran/task-detach-6.f90: Likewise. Remove
4832 taskwait directive.
4833 * testsuite/libgomp.fortran/task-detach-7.f90: New.
4834 * testsuite/libgomp.fortran/task-detach-8.f90: New.
4835 * testsuite/libgomp.fortran/task-detach-9.f90: New.
4836 * testsuite/libgomp.fortran/task-detach-10.f90: New.
4837 * testsuite/libgomp.fortran/task-detach-11.f90: New.
4838
2f5765cf
GA
48392021-02-22 Tobias Burnus <tobias@codesourcery.com>
4840
4841 PR fortran/99171
4842 * testsuite/libgomp.fortran/dummy-procs-1.f90: New test.
4843
acc0ee5c
GA
48442021-02-17 Julian Brown <julian@codesourcery.com>
4845
4846 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Remove
4847 expected errors.
4848
48492021-02-17 Julian Brown <julian@codesourcery.com>
4850
4851 * testsuite/libgomp.oacc-fortran/derivedtypes-arrays-1.f90: New test.
4852 * testsuite/libgomp.oacc-fortran/update-dt-array.f90: Likewise.
4853
0c5cdb31
GA
48542021-02-11 Uroš Bizjak <ubizjak@gmail.com>
4855
4856 * config/linux/x86/futex.h (__futex_wait):
4857 Revert output type back to long.
4858 (__futex_wake): Ditto.
4859 (futex_wait): Update for revert.
4860 (futex_wake): Ditto.
4861
48622021-02-11 Uroš Bizjak <ubizjak@gmail.com>
4863
4864 * config/linux/x86/futex.h (__futex_wait): New static inline
4865 wrapper function. Correct output type to int and
4866 timeout type to void *.
4867 (__futex_wake): New static inline wrapper function.
4868 Correct output type to int.
4869 (futex_wait): Use __futex_wait.
4870 (futex_wake): Use __futex_wake.
4871
4b37c3ea
GA
48722021-02-10 Julian Brown <julian@codesourcery.com>
4873
4874 PR fortran/98979
4875 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: Add expected
4876 errors.
4877
a19dd5e6
GA
48782021-02-04 Julian Brown <julian@codesourcery.com>
4879
4880 * testsuite/libgomp.oacc-fortran/array-stride-dt-1.f90: New test.
4881
9faaa807
GA
48822021-02-03 Andrew Stubbs <ams@codesourcery.com>
4883
4884 * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
4885 EF_AMDGPU_MACH_AMDGCN_GFX908.
4886 (gcn_gfx908_s): New constant string.
4887 (isa_hsa_name): Add gfx908.
4888 (isa_code): Add gfx908.
4889
161e4c08
GA
48902021-01-25 Kwok Cheung Yeung <kcy@codesourcery.com>
4891
4892 * libgomp.texi (omp_fulfill_event): New entry.
4893
b93d0e36
GA
48942021-01-20 Jakub Jelinek <jakub@redhat.com>
4895
4896 * task.c (GOMP_task): Rename priority argument to priority_arg,
4897 add priority automatic variable and modify that variable. Instead of
4898 clearing detach argument when GOMP_TASK_FLAG_DETACH bit is not set,
4899 check flags for that bit.
4900
f35a4f96
GA
49012021-01-19 Tobias Burnus <tobias@codesourcery.com>
4902
4903 PR fortran/98476
4904 * testsuite/libgomp.fortran/is_device_ptr-1.f90: New test.
4905
ef1f8ee6
GA
49062021-01-18 Andreas Schwab <schwab@suse.de>
4907
4908 * configure.tgt (riscv64*-*-linux*): Add linux to config_path.
4909
49102021-01-18 Sebastian Huber <sebastian.huber@embedded-brains.de>
4911
4912 * config/rtems/sem.h (gomp_sem_getcount): New function.
4913
49142021-01-18 Jakub Jelinek <jakub@redhat.com>
4915
4916 * config/linux/sem.h (gomp_sem_getcount): New function.
4917 * config/posix/sem.h (gomp_sem_getcount): New function.
4918 * config/posix/sem.c (gomp_sem_getcount): New function.
4919 * config/accel/sem.h (gomp_sem_getcount): New function.
4920 * task.c (task_fulfilled_p): Use gomp_sem_getcount.
4921 (omp_fulfill_event): Likewise.
4922
59cf67d1
GA
49232021-01-16 Kwok Cheung Yeung <kcy@codesourcery.com>
4924
4925 * fortran.c (omp_fulfill_event_): New.
4926 * libgomp.h (struct gomp_task): Add detach and completion_sem fields.
4927 (struct gomp_team): Add task_detach_queue and task_detach_count
4928 fields.
4929 * libgomp.map (OMP_5.0.1): Add omp_fulfill_event and omp_fulfill_event_.
4930 * libgomp_g.h (GOMP_task): Add extra argument.
4931 * omp.h.in (enum omp_event_handle_t): New.
4932 (omp_fulfill_event): New.
4933 * omp_lib.f90.in (omp_event_handle_kind): New.
4934 (omp_fulfill_event): New.
4935 * omp_lib.h.in (omp_event_handle_kind): New.
4936 (omp_fulfill_event): Declare.
4937 * priority_queue.c (priority_tree_find): New.
4938 (priority_list_find): New.
4939 (priority_queue_find): New.
4940 * priority_queue.h (priority_queue_predicate): New.
4941 (priority_queue_find): New.
4942 * task.c (gomp_init_task): Initialize detach field.
4943 (task_fulfilled_p): New.
4944 (GOMP_task): Add detach argument. Ignore detach argument if
4945 GOMP_TASK_FLAG_DETACH not set in flags. Initialize completion_sem
4946 field. Copy address of completion_sem into detach argument and
4947 into the start of the data record. Wait for detach event if task
4948 not deferred.
4949 (gomp_barrier_handle_tasks): Queue tasks with unfulfilled events.
4950 Remove completed tasks and requeue dependent tasks.
4951 (omp_fulfill_event): New.
4952 * team.c (gomp_new_team): Initialize task_detach_queue and
4953 task_detach_count fields.
4954 (free_team): Free task_detach_queue field.
4955 * testsuite/libgomp.c-c++-common/task-detach-1.c: New testcase.
4956 * testsuite/libgomp.c-c++-common/task-detach-2.c: New testcase.
4957 * testsuite/libgomp.c-c++-common/task-detach-3.c: New testcase.
4958 * testsuite/libgomp.c-c++-common/task-detach-4.c: New testcase.
4959 * testsuite/libgomp.c-c++-common/task-detach-5.c: New testcase.
4960 * testsuite/libgomp.c-c++-common/task-detach-6.c: New testcase.
4961 * testsuite/libgomp.fortran/task-detach-1.f90: New testcase.
4962 * testsuite/libgomp.fortran/task-detach-2.f90: New testcase.
4963 * testsuite/libgomp.fortran/task-detach-3.f90: New testcase.
4964 * testsuite/libgomp.fortran/task-detach-4.f90: New testcase.
4965 * testsuite/libgomp.fortran/task-detach-5.f90: New testcase.
4966 * testsuite/libgomp.fortran/task-detach-6.f90: New testcase.
4967
2f7f0d32
GA
49682021-01-15 Jakub Jelinek <jakub@redhat.com>
4969
4970 PR target/70454
4971 * configure.tgt: For i?86 and x86_64 determine if -march=i486 needs to
4972 be added through preprocessor check on
4973 __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4.
4974
5fff80fd
GA
49752021-01-14 Thomas Schwinge <thomas@codesourcery.com>
4976
4977 PR libgomp/65099
4978 * plugin/configfrag.ac (PLUGIN_NVPTX): Restrict to supported
4979 configurations.
4980 * configure: Regenerate.
4981 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Remove 64-bit
4982 check.
4983
651b8a50
GA
49842021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
4985
4986 * configure: Re-generate.
4987
49882021-01-05 Samuel Thibault <samuel.thibault@ens-lyon.org>
4989
4990 * configure: Re-generate.
4991
49922021-01-05 Julian Brown <julian@codesourcery.com>
4993
4994 * plugin/plugin-nvptx.c (SOFTSTACK_CACHE_LIMIT): New define.
4995 (struct ptx_device): Add omp_stacks struct.
4996 (nvptx_open_device): Initialise cached-stacks housekeeping info.
4997 (nvptx_close_device): Free cached stacks block and mutex.
4998 (nvptx_stacks_free): New function.
4999 (nvptx_alloc): Add SUPPRESS_ERRORS parameter.
5000 (GOMP_OFFLOAD_alloc): Add strategies for freeing soft-stacks block.
5001 (nvptx_stacks_alloc): Rename to...
5002 (nvptx_stacks_acquire): This. Cache stacks block between runs if same
5003 size or smaller is required.
5004 (nvptx_stacks_free): Remove.
5005 (GOMP_OFFLOAD_run): Call nvptx_stacks_acquire and lock stacks block
5006 during kernel execution.
5007
b6dd195a
GA
50082021-01-01 Jakub Jelinek <jakub@redhat.com>
5009
5010 * libgomp.texi: Bump @copying's copyright year.
5011
2d3425a5
GA
50122020-12-28 Gerald Pfeifer <gerald@pfeifer.com>
5013
5014 * libgomp.texi (Top): Avoid bad "up" link.
5015
b1a2242e
GA
50162020-12-18 Jakub Jelinek <jakub@redhat.com>
5017
5018 * testsuite/libgomp.c/task-6.c: New test.
5019
ca2bd949
GA
50202020-12-09 Andrew Stubbs <ams@codesourcery.com>
5021
5022 * plugin/plugin-gcn.c: Include hsa_ext_amd.h.
5023 (HSA_AMD_AGENT_INFO_COMPUTE_UNIT_COUNT): Delete redundant definition.
5024
f6e8e279
GA
50252020-12-08 Tobias Burnus <tobias@codesourcery.com>
5026
5027 * testsuite/libgomp.fortran/scan-1.f90: New test.
5028
6e1edf48
GA
50292020-12-05 Iain Sandoe <iain@sandoe.co.uk>
5030
5031 PR target/97865
5032 * configure: Regenerate.
5033
a9625c50
GA
50342020-11-29 John David Anglin <danglin@gcc.gnu.org>
5035
5036 * configure: Regenerate.
5037
360258da
GA
50382020-11-25 Thomas Schwinge <thomas@codesourcery.com>
5039
5040 * testsuite/libgomp.oacc-c++/cache-1.C: New.
5041 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Update.
5042
50432020-11-25 Andrew Stubbs <ams@codesourcery.com>
5044
5045 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Adjust
5046 expected results.
5047
1e2c9a27
GA
50482020-11-24 Andrew Stubbs <ams@codesourcery.com>
5049
5050 * plugin/plugin-gcn.c: Don't redefine relocations if elf.h has them.
5051 (reserved): Delete unused define.
5052
50532020-11-24 Thomas Schwinge <thomas@codesourcery.com>
5054
5055 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c: Avoid
5056 Tcl 8.5-specific behavior.
5057 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
5058
25bb75f8
GA
50592020-11-18 Kwok Cheung Yeung <kcy@codesourcery.com>
5060
5061 * env.c (gomp_global_icv): Remove nest_var field. Add
5062 max_active_levels_var field.
5063 (gomp_max_active_levels_var): Remove.
5064 (parse_boolean): Return true on success.
5065 (handle_omp_display_env): Express OMP_NESTED in terms of
5066 max_active_levels_var. Change format specifier for
5067 max_active_levels_var.
5068 (initialize_env): Set max_active_levels_var from
5069 OMP_MAX_ACTIVE_LEVELS, OMP_NESTED, OMP_NUM_THREADS and
5070 OMP_PROC_BIND.
5071 * icv.c (omp_set_nested): Express in terms of
5072 max_active_levels_var.
5073 (omp_get_nested): Likewise.
5074 (omp_set_max_active_levels): Use max_active_levels_var field instead
5075 of gomp_max_active_levels_var.
5076 (omp_get_max_active_levels): Likewise.
5077 * libgomp.h (struct gomp_task_icv): Remove nest_var field. Add
5078 max_active_levels_var field.
5079 (gomp_supported_active_levels): Set to UCHAR_MAX.
5080 (gomp_max_active_levels_var): Delete.
5081 * libgomp.texi (omp_get_nested): Update documentation.
5082 (omp_set_nested): Likewise.
5083 (OMP_MAX_ACTIVE_LEVELS): Likewise.
5084 (OMP_NESTED): Likewise.
5085 (OMP_NUM_THREADS): Likewise.
5086 (OMP_PROC_BIND): Likewise.
5087 * parallel.c (gomp_resolve_num_threads): Replace reference
5088 to nest_var with max_active_levels_var. Use max_active_levels_var
5089 field instead of gomp_max_active_levels_var.
5090
50912020-11-18 Tobias Burnus <tobias@codesourcery.com>
5092
5093 * testsuite/libgomp.c/usleep.h (fallback_usleep): Renamed from
5094 nvptx_usleep; use also for device={arch(gcn)}.
5095
faab61b5
GA
50962020-11-14 Jakub Jelinek <jakub@redhat.com>
5097
5098 * testsuite/libgomp.c-c++-common/allocate-1.c (struct S): New type.
5099 (foo): Add tests for non-VLA private and firstprivate clauses on
5100 omp task.
5101 (bar): Likewise. Remove taking of address from private/firstprivate
5102 variables.
5103 * testsuite/libgomp.c++/allocate-1.C (struct S): New type.
5104 (foo): Add p, q, px and s arguments. Add tests for array reductions
5105 and for non-VLA private and firstprivate clauses on omp task.
5106 (bar): Removed.
5107 (main): Adjust foo caller. Don't call bar.
5108
77f67db2
GA
51092020-11-13 Gergö Barany <gergo@codesourcery.com>
5110 Thomas Schwinge <thomas@codesourcery.com>
5111
5112 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose-ice-1.c:
5113 New.
5114 * testsuite/libgomp.oacc-c-c++-common/declare-vla-kernels-decompose.c:
5115 Likewise.
5116 * testsuite/libgomp.oacc-c-c++-common/kernels-decompose-1.c:
5117 Likewise.
5118 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Adjust.
5119 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: Likewise.
5120
51212020-11-13 Gergö Barany <gergo@codesourcery.com>
5122 Thomas Schwinge <thomas@codesourcery.com>
5123
5124 PR fortran/94358
5125 * testsuite/libgomp.oacc-fortran/pr94358-1.f90: New.
5126
51272020-11-13 Jakub Jelinek <jakub@redhat.com>
5128
5129 * testsuite/libgomp.c-c++-common/allocate-1.c (foo): Add tests
5130 for array reductions.
5131 (main): Adjust foo callers.
5132
a5a11525
GA
51332020-11-12 Jakub Jelinek <jakub@redhat.com>
5134
5135 * libgomp.map (GOMP_alloc, GOMP_free): Export at GOMP_5.0.1.
5136 * omp.h.in (omp_alloc): Add malloc and alloc_size attributes.
5137 * libgomp_g.h (GOMP_alloc, GOMP_free): Declare.
5138 * allocator.c (omp_aligned_alloc): New for now static function,
5139 add alignment argument and handle it.
5140 (omp_alloc): Reimplement using omp_aligned_alloc.
5141 (GOMP_alloc, GOMP_free): New functions.
5142 (omp_free): Add ialias.
5143 * testsuite/libgomp.c-c++-common/allocate-1.c: New test.
5144 * testsuite/libgomp.c++/allocate-1.C: New test.
5145
51462020-11-12 Thomas Schwinge <thomas@codesourcery.com>
5147
5148 PR fortran/97782
5149 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Adjust.
5150
bb622641
GA
51512020-11-10 Chung-Lin Tang <cltang@codesourcery.com>
5152
5153 * libgomp.h (enum gomp_map_vars_kind): Adjust enum values to be bit-flag
5154 usable.
5155 * oacc-mem.c (acc_map_data): Adjust gomp_map_vars argument flags to
5156 'GOMP_MAP_VARS_OPENACC | GOMP_MAP_VARS_ENTER_DATA'.
5157 (goacc_enter_datum): Likewise for call to gomp_map_vars_async.
5158 (goacc_enter_data_internal): Likewise.
5159 * target.c (gomp_map_vars_internal):
5160 Change checks of GOMP_MAP_VARS_ENTER_DATA to use bit-and (&). Adjust use
5161 of gomp_attach_pointer for OpenMP cases.
5162 (gomp_exit_data): Add handling of GOMP_MAP_DETACH.
5163 (GOMP_target_enter_exit_data): Add handling of GOMP_MAP_ATTACH.
5164 * testsuite/libgomp.c-c++-common/ptr-attach-1.c: New testcase.
5165
0cfd9109
GA
51662020-11-05 Ulrich Drepper <drepper@redhat.com>
5167 Kwok Cheung Yeung <kcy@codesourcery.com>
5168
5169 * Makefile.am (%.mod): Add -cpp and -fopenmp to compile flags.
5170 * Makefile.in: Regenerate.
5171 * fortran.c: Wrap uses of omp_set_nested and omp_get_nested with
5172 pragmas to ignore -Wdeprecated-declarations warnings.
5173 * icv.c: Likewise.
5174 * omp.h.in (__GOMP_DEPRECATED_5_0): Define.
5175 Mark omp_lock_hint_* enum values, omp_lock_hint_t, omp_set_nested,
5176 and omp_get_nested with __GOMP_DEPRECATED_5_0.
5177 * omp_lib.f90.in: Mark omp_get_nested and omp_set_nested as
5178 deprecated.
5179 * testsuite/libgomp.c++/affinity-1.C: Add -Wno-deprecated-declarations
5180 to test options.
5181 * testsuite/libgomp.c/affinity-1.c: Likewise.
5182 * testsuite/libgomp.c/affinity-2.c: Likewise.
5183 * testsuite/libgomp.c/appendix-a/a.15.1.c: Likewise.
5184 * testsuite/libgomp.c/lib-1.c: Likewise.
5185 * testsuite/libgomp.c/nested-1.c: Likewise.
5186 * testsuite/libgomp.c/nested-2.c: Likewise.
5187 * testsuite/libgomp.c/nested-3.c: Likewise.
5188 * testsuite/libgomp.c/pr32362-1.c: Likewise.
5189 * testsuite/libgomp.c/pr32362-2.c: Likewise.
5190 * testsuite/libgomp.c/pr32362-3.c: Likewise.
5191 * testsuite/libgomp.c/pr35549.c: Likewise.
5192 * testsuite/libgomp.c/pr42942.c: Likewise.
5193 * testsuite/libgomp.c/pr61200.c: Likewise.
5194 * testsuite/libgomp.c/sort-1.c: Likewise.
5195 * testsuite/libgomp.c/target-5.c: Likewise.
5196 * testsuite/libgomp.c/target-6.c: Likewise.
5197 * testsuite/libgomp.c/teams-1.c: Likewise.
5198 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
5199 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
5200 * testsuite/libgomp.c/thread-limit-4.c: Likewise.
5201 * testsuite/libgomp.fortran/affinity1.f90: Likewise.
5202 * testsuite/libgomp.fortran/lib1.f90: Likewise.
5203 * testsuite/libgomp.fortran/lib2.f: Likewise.
5204 * testsuite/libgomp.fortran/nested1.f90: Likewise.
5205 * testsuite/libgomp.fortran/teams1.f90: Likewise.
5206
88ce3d5f
GA
52072020-11-02 Thomas Schwinge <thomas@codesourcery.com>
5208
5209 PR target/85486
5210 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: Simplify and enhance.
5211 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: Likewise.
5212 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: Likewise.
5213
52142020-11-02 Thomas Schwinge <thomas@codesourcery.com>
5215
5216 PR testsuite/80219
5217 PR testsuite/85303
5218 * testsuite/lib/libgomp.exp (libgomp_init): Set
5219 'gcc_warning_prefix', 'gcc_error_prefix'.
5220
52212020-10-30 Jakub Jelinek <jakub@redhat.com>
5222
5223 * target.c (gomp_map_vars_internal): Use FIELD_TGT_EMPTY macro
5224 even in field_tgt_clear initializer.
5225
e93aae4a
GA
52262020-10-28 Jakub Jelinek <jakub@redhat.com>
5227
5228 * testsuite/libgomp.c/target-42.c: New test.
5229
52302020-10-28 Jakub Jelinek <jakub@redhat.com>
5231 Tom de Vries <tdevries@suse.de>
5232
5233 PR testsuite/81690
5234 * testsuite/libgomp.c/usleep.h: New file.
5235 * testsuite/libgomp.c/target-32.c: Include usleep.h.
5236 (main): Use tgt_usleep instead of usleep.
5237 * testsuite/libgomp.c/thread-limit-2.c: Include usleep.h.
5238 (main): Use tgt_usleep instead of usleep.
5239
52402020-10-28 Jakub Jelinek <jakub@redhat.com>
5241
5242 PR lto/96680
5243 * testsuite/libgomp.c/declare-variant-1.c: New test.
5244
56ddd5e2
GA
52452020-10-22 Jakub Jelinek <jakub@redhat.com>
5246
5247 * testsuite/libgomp.c/target-41.c: New test.
5248
52492020-10-22 Jakub Jelinek <jakub@redhat.com>
5250
5251 * icv.c (omp_get_initial_device): Remove including corresponding
5252 ialias.
5253 * icv-device.c (omp_get_initial_device): New function. Return
5254 gomp_get_num_devices (). Add ialias.
5255 * target.c (resolve_device): Don't fail with
5256 OMP_TARGET_OFFLOAD=mandatory if device_id is equal to
5257 gomp_get_num_devices ().
5258 (omp_target_alloc, omp_target_free, omp_target_is_present,
5259 omp_target_memcpy, omp_target_memcpy_rect, omp_target_associate_ptr,
5260 omp_target_disassociate_ptr, omp_pause_resource): Use
5261 gomp_get_num_devices () instead of GOMP_DEVICE_HOST_FALLBACK on the
5262 first use in the functions, in uses dominated by the
5263 gomp_get_num_devices call use num_devices_openmp instead.
5264 * libgomp.texi (omp_get_initial_device): Document.
5265 * config/gcn/icv-device.c (omp_get_initial_device): New function.
5266 Add ialias.
5267 * config/nvptx/icv-device.c (omp_get_initial_device): Likewise.
5268 * testsuite/libgomp.c/target-40.c: New test.
5269
52702020-10-21 Jakub Jelinek <jakub@redhat.com>
5271
5272 * env.c (parse_target_offload): Change new_offload var type to int,
5273 preinitialize to -1, remove found var and test new_offload != -1
5274 instead of found.
5275
e2e04288
GA
52762020-10-20 Jakub Jelinek <jakub@redhat.com>
5277
5278 * target.c (gomp_target_init): Inside of the function, use automatic
5279 variables corresponding to num_devices, num_devices_openmp and devices
5280 global variables and update the globals only at the end of the
5281 function.
5282
52832020-10-20 Kwok Cheung Yeung <kcy@codesourcery.com>
5284
5285 * env.c (gomp_target_offload_var): New.
5286 (parse_target_offload): New.
5287 (handle_omp_display_env): Print value of OMP_TARGET_OFFLOAD.
5288 (initialize_env): Parse OMP_TARGET_OFFLOAD.
5289 * libgomp.h (gomp_target_offload_t): New.
5290 (gomp_target_offload_var): New.
5291 * libgomp.texi (OMP_TARGET_OFFLOAD): New section.
5292 * target.c (resolve_device): Generate error if device not found and
5293 offloading is mandatory.
5294 (gomp_target_fallback): Generate error if offloading is mandatory.
5295 (GOMP_target): Add argument in call to gomp_target_fallback.
5296 (GOMP_target_ext): Likewise.
5297 (gomp_target_data_fallback): Generate error if offloading is mandatory.
5298 (GOMP_target_data): Add argument in call to gomp_target_data_fallback.
5299 (GOMP_target_data_ext): Likewise.
5300 (gomp_target_task_fn): Add argument in call to gomp_target_fallback.
5301 (gomp_target_init): Return early if offloading is disabled.
5302
b85d5dc5
GA
53032020-10-15 Kwok Cheung Yeung <kcy@codesourcery.com>
5304
5305 * libgomp.texi (omp_get_max_active_levels): Modify description.
5306 (omp_get_supported_active_levels): Make descriptions consistent.
5307
b2698c21
GA
53082020-10-14 Jakub Jelinek <jakub@redhat.com>
5309
5310 * libgomp.texi (omp_get_supported_active_levels): Fix a typo.
5311
bdd74cc2
GA
53122020-10-13 Kwok Cheung Yeung <kcy@codesourcery.com>
5313
5314 * env.c (gomp_max_active_levels_var): Initialize to
5315 gomp_supported_active_levels.
5316 (initialize_env): Limit gomp_max_active_levels_var to be at most
5317 equal to gomp_supported_active_levels.
5318 * fortran.c (omp_get_supported_active_levels): Add ialias_redirect.
5319 (omp_get_supported_active_levels_): New.
5320 * icv.c (omp_set_max_active_levels): Limit gomp_max_active_levels_var
5321 to at most equal to gomp_supported_active_levels.
5322 (omp_get_supported_active_levels): New.
5323 * libgomp.h (gomp_supported_active_levels): New.
5324 * libgomp.map (OMP_5.0.1): Add omp_get_supported_active_levels and
5325 omp_get_supported_active_levels_.
5326 * libgomp.texi (omp_get_supported_active_levels): New.
5327 (omp_set_max_active_levels): Update. Add reference to
5328 omp_get_supported_active_levels.
5329 * omp.h.in (omp_get_supported_active_levels): New.
5330 * omp_lib.f90.in (omp_get_supported_active_levels): New.
5331 * omp_lib.h.in (omp_get_supported_active_levels): New.
5332 * testsuite/libgomp.c/lib-2.c (main): Check omp_get_max_active_levels
5333 against omp_get_supported_active_levels.
5334 * testsuite/libgomp.fortran/lib4.f90 (lib4): Likewise.
5335
2baa36d4
GA
53362020-10-11 Clement Chigot <clement.chigot@atos.net>
5337
5338 * config/t-aix: Delete and recreate libgomp before creating
5339 FAT library.
5340
da9df699
GA
53412020-10-08 Tom de Vries <tdevries@suse.de>
5342
5343 PR libgomp/81802
5344 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_run): Report launch
5345 dimensions.
5346
8e97b905
GA
53472020-10-06 Tom de Vries <tdevries@suse.de>
5348
5349 * testsuite/libgomp.oacc-fortran/declare-5.f90: Add xfail for PR92790.
5350
53512020-10-06 Tom de Vries <tdevries@suse.de>
5352
5353 PR middle-end/90861
5354 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Remove xfail.
5355
7e9282ae
GA
53562020-10-05 Tom de Vries <tdevries@suse.de>
5357
5358 PR fortran/95654
5359 * testsuite/libgomp.fortran/pr95654.f90: New test.
5360
b0b9b8f0
GA
53612020-10-02 Tobias Burnus <tobias@codesourcery.com>
5362
5363 * Makefile.in: Regenerate with automake 1.15.1.
5364 * aclocal.m4: Likewise.
5365 * configure: Likewise.
5366 * testsuite/Makefile.in: Likewise.
5367
660bfe61
GA
53682020-09-30 Andrew Stubbs <ams@codesourcery.com>
5369
5370 * parallel.c (gomp_resolve_num_threads): Ignore nest_var on nvptx
5371 and amdgcn targets.
5372
53732020-09-30 Tobias Burnus <tobias@codesourcery.com>
5374
5375 * testsuite/libgomp.fortran/declare-target-3.f90: New test.
5376
93bca37c
GA
53772020-09-29 Andrew Stubbs <ams@codesourcery.com>
5378
5379 * config/gcn/bar.c (gomp_barrier_wait_end): Skip the barrier if the
5380 total number of threads is one.
5381 (gomp_team_barrier_wake): Likewise.
5382 (gomp_team_barrier_wait_end): Likewise.
5383 (gomp_team_barrier_wait_cancel_end): Likewise.
5384 * config/nvptx/bar.c (gomp_barrier_wait_end): Likewise.
5385 (gomp_team_barrier_wake): Likewise.
5386 (gomp_team_barrier_wait_end): Likewise.
5387 (gomp_team_barrier_wait_cancel_end): Likewise.
5388 * testsuite/libgomp.c-c++-common/nested-parallel-unbalanced.c: New test.
5389
e84761c6
GA
53902020-09-28 Tobias Burnus <tobias@codesourcery.com>
5391
5392 PR middle-end/96390
5393 * testsuite/libgomp.c++/pr96390.C: New test.
5394 * testsuite/libgomp.c-c++-common/pr96390.c: New test.
5395
4383c595
GA
53962020-09-27 Clement Chigot <clement.chigot@atos.net>
5397
5398 * config/t-aix: Use $(AR) without -X32_64.
5399
cdd8f031
GA
54002020-09-25 Jakub Jelinek <jakub@redhat.com>
5401
5402 * testsuite/libgomp.c/loop-25.c: New test.
5403
521d2711
GA
54042020-09-22 Tobias Burnus <tobias@codesourcery.com>
5405
5406 PR fortran/95654
5407 * testsuite/libgomp.fortran/pr66199-5.f90: Make stop codes unique.
5408
54092020-09-22 Tom de Vries <tdevries@suse.de>
5410
5411 * plugin/plugin-nvptx.c (link_ptx): Print elog if cuLinkComplete call
5412 fails.
5413
ecde1b0a
GA
54142020-09-16 Nathan Sidwell <nathan@acm.org>
5415
5416 * testsuite/libgomp.c++/udr-3.C: Add missing ctor.
5417
9f7ab8c5
GA
54182020-09-15 Tobias Burnus <tobias@codesourcery.com>
5419
5420 PR fortran/96668
5421 * target.c (gomp_map_vars_internal): Initialize has_nullptr.
5422
54232020-09-15 Tobias Burnus <tobias@codesourcery.com>
5424
5425 PR fortran/96668
5426 * libgomp.h (struct target_var_desc): Add has_null_ptr_assoc member.
5427 * target.c (gomp_map_vars_existing): Add always_to_flag flag.
5428 (gomp_map_vars_existing): Update call to it.
5429 (gomp_map_fields_existing): Likewise
5430 (gomp_map_vars_internal): Update PSET handling such that if a nullptr is
5431 now allocated or if GOMP_MAP_POINTER is used PSET is updated and pointer
5432 remapped.
5433 (GOMP_target_enter_exit_data): Hanlde GOMP_MAP_ALWAYS_POINTER like
5434 GOMP_MAP_POINTER.
5435 * testsuite/libgomp.fortran/map-alloc-ptr-1.f90: New test.
5436 * testsuite/libgomp.fortran/map-alloc-ptr-2.f90: New test.
5437
50a71cd0
GA
54382020-09-14 Tom de Vries <tdevries@suse.de>
5439
5440 * config/nvptx/atomic.c: New file. Add
5441 __sync_val_compare_and_swap_16.
5442 * testsuite/libgomp.c-c++-common/reduction-16.c: Add -latomic for
5443 target offload_target_nvptx.
5444
31a05046
GA
54452020-09-08 Julian Brown <julian@codesourcery.com>
5446
5447 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c: Remove
5448 iteration-ordering assumptions.
5449
54502020-09-08 Julian Brown <julian@codesourcery.com>
5451
5452 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Fix race condition.
5453 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
5454
5b9a3d2a
GA
54552020-08-20 Chung-Lin Tang <cltang@codesourcery.com>
5456
5457 * plugin/plugin-nvptx.c (nvptx_free):
5458 Change "GOMP_PLUGIN_acc_thread () == NULL" test into check of
5459 CUDA_ERROR_NOT_PERMITTED status for cuMemGetAddressRange. Adjust
5460 comments.
5461
54622020-08-20 Tobias Burnus <tobias@codesourcery.com>
5463
5464 * testsuite/libgomp.fortran/lastprivate-conditional-10.f90: New test.
5465
b3cb5606
GA
54662020-08-13 Kwok Cheung Yeung <kcy@codesourcery.com>
5467
5468 * testsuite/libgomp.c-c++-common/reduction-16.c: New.
5469
54702020-08-13 Jakub Jelinek <jakub@redhat.com>
5471
5472 * testsuite/libgomp.c/loop-22.c (main): Add some further tests.
5473 * testsuite/libgomp.c/loop-23.c (main): Likewise.
5474 * testsuite/libgomp.c/loop-24.c: New test.
5475
bc0ca715
GA
54762020-08-08 Jakub Jelinek <jakub@redhat.com>
5477 Tobias Burnus <tobias@codesourcery.com>
5478
5479 PR fortran/93553
5480 * testsuite/libgomp.fortran/pr93553.f90: New test.
5481
aa5ea20c
GA
54822020-08-05 Jakub Jelinek <jakub@redhat.com>
5483
5484 * testsuite/libgomp.c/loop-22.c: New test.
5485 * testsuite/libgomp.c/loop-23.c: New test.
5486
54872020-08-05 Jakub Jelinek <jakub@redhat.com>
5488
5489 PR middle-end/96459
5490 * testsuite/libgomp.c/teams-3.c: New test.
5491 * testsuite/libgomp.c-c++-common/for-2.h (OMPTEAMS): Define to nothing
5492 if not defined yet.
5493 (N(test)): Use it before all N(f*) calls.
5494 * testsuite/libgomp.c-c++-common/for-14.c (DO_PRAGMA, OMPTEAMS): Define.
5495 (main): Don't call all test_* functions from within
5496 #pragma omp teams reduction(|:err), call them directly.
5497
abba2591
GA
54982020-08-04 Tom de Vries <tdevries@suse.de>
5499
5500 PR target/96428
5501 * testsuite/libgomp.oacc-fortran/pr96628-part1.f90: New test.
5502 * testsuite/libgomp.oacc-fortran/pr96628-part2.f90: New test.
5503
6a1ad710
GA
55042020-08-03 Julian Brown <julian@codesourcery.com>
5505 Thomas Schwinge <thomas@codesourcery.com>
5506
5507 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: Don't run for
5508 shared-memory devices. Extend with further checking.
5509
55102020-08-03 Martin Jambor <mjambor@suse.cz>
5511
5512 * plugin/Makefrag.am: Remove configuration of HSA plugin.
5513 * aclocal.m4: Regenerated.
5514 * Makefile.in: Regenerated.
5515 * config.h.in: Regenerated.
5516 * configure: Regenerated.
5517 * plugin/configfrag.ac: Likewise.
5518 * plugin/hsa_ext_finalize.h: Removed.
5519 * plugin/plugin-hsa.c: Likewise.
5520 * testsuite/Makefile.in: Regenerated.
5521 * testsuite/lib/libgomp.exp
5522 (offload_target_to_openacc_device_type): Remove hsa case.
5523 (check_effective_target_hsa_offloading_selected_nocache): Removed
5524 (check_effective_target_hsa_offloading_selected): Likewise.
5525 (libgomp_init): Do not add -Wno-hsa to additional_flags.
5526 * testsuite/libgomp.hsa.c/alloca-1.c: Removed test.
5527 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
5528 * testsuite/libgomp.hsa.c/bits-insns.c: Likewise.
5529 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
5530 * testsuite/libgomp.hsa.c/c.exp: Likewise.
5531 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
5532 * testsuite/libgomp.hsa.c/complex-align-2.c: Likewise.
5533 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
5534 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
5535 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
5536 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
5537 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
5538 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
5539 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
5540 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
5541 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
5542 * testsuite/libgomp.hsa.c/pr82416.c: Likewise.
5543 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
5544 * testsuite/libgomp.hsa.c/staticvar.c: Likewise.
5545 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
5546 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
5547 * testsuite/libgomp.hsa.c/switch-sbr-2.c: Likewise.
5548 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
5549 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
5550
e71dab87
GA
55512020-07-27 Julian Brown <julian@codesourcery.com>
5552 Thomas Schwinge <thomas@codesourcery.com>
5553
5554 * libgomp.h (struct target_var_desc): Rename do_detach field to
5555 is_attach.
5556 * oacc-mem.c (goacc_exit_datum_1): Add assert. Don't set finalize for
5557 GOMP_MAP_FORCE_DETACH. Update checking to use is_attach field.
5558 (goacc_enter_data_internal): Don't affect reference counts
5559 for attach mappings.
5560 (goacc_exit_data_internal): Don't affect reference counts for detach
5561 mappings.
5562 * target.c (gomp_map_vars_existing): Don't affect reference counts for
5563 attach mappings.
5564 (gomp_map_vars_internal): Set renamed is_attach flag unconditionally to
5565 mark attach mappings.
5566 (gomp_unmap_vars_internal): Use is_attach flag to prevent affecting
5567 reference count for attach mappings.
5568 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-1.c: New test.
5569 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
5570 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-2.c: New test.
5571 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Mark
5572 test as shouldfail.
5573 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust to fail
5574 gracefully in no-finalize mode.
5575 * testsuite/libgomp.oacc-c-c++-common/mdc-refcount-3.c: New file.
5576
53256ee3
GA
55772020-07-24 Thomas Schwinge <thomas@codesourcery.com>
5578
5579 * testsuite/libgomp.oacc-c++/c++.exp: Unset 'offload_target' after
5580 use.
5581 * testsuite/libgomp.oacc-c/c.exp: Likewise.
5582 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
5583
9bb403dc
GA
55842020-07-23 Julian Brown <julian@codesourcery.com>
5585 Thomas Schwinge <thomas@codesourcery.com>
5586
5587 * target.c (gomp_unmap_vars_internal): Remove unnecessary forcing of
5588 finalization for detach operation.
5589 * testsuite/libgomp.oacc-c-c++-common/structured-detach-underflow.c:
5590 New test.
5591
55922020-07-23 Tobias Burnus <tobias@codesourcery.com>
5593
5594 * configure.ac: Add OMP_DEPEND_KIND and OMP_INT128_SIZE.
5595 * libgomp_f.h.in (omp_check_defines): Check whether
5596 sizeof of determined Fortran kind and C typedef match.
5597 * omp_lib.f90.in: Add omp_depened_kind.
5598 * omp_lib.h.in: Likewise; fix omp_alloctrait_key_kind.
5599 * configure: Regenerate.
5600 * Makefile.in: Regenerate.
5601 * testsuite/Makefile.in: Regenerate.
5602
3ea9abca
GA
56032020-07-22 Tobias Burnus <tobias@codesourcery.com>
5604
5605 * testsuite/libgomp.c-c++-common/critical-hint-1.c: New; moved from
5606 gcc/testsuite/c-c++-common/gomp/.
5607 * testsuite/libgomp.c-c++-common/critical-hint-2.c: Likewise.
5608 * testsuite/libgomp.fortran/critical-hint-1.f90: New; moved
5609 from gcc/testsuite/gfortran.dg/gomp/.
5610 * testsuite/libgomp.fortran/critical-hint-2.f90: Likewise.
5611
56122020-07-22 Tobias Burnus <tobias@codesourcery.com>
5613
5614 * omp_lib.f90.in: Add omp_sync_hint_* and omp_sync_hint_kind.
5615 * omp_lib.h.in: Likewise.
5616
aeb34e15
GA
56172020-07-18 H.J. Lu <hjl.tools@gmail.com>
5618
5619 PR target/95620
5620 * testsuite/libgomp.c/pr95620.c: New test.
5621
96686b3f
GA
56222020-07-16 Julian Brown <julian@codesourcery.com>
5623 Thomas Schwinge <thomas@codesourcery.com>
5624
5625 * testsuite/libgomp.oacc-fortran/attach-descriptor-1.f90: New test.
5626 * testsuite/libgomp.oacc-fortran/attach-descriptor-2.f90: New test.
5627
fe8185b5
GA
56282020-07-15 Tobias Burnus <tobias@codesourcery.com>
5629
5630 * testsuite/libgomp.fortran/alloc-1.F90: Use c_size_t to
5631 avoid conversion on 32bit systems from 32bit to 64bit due
5632 to -fdefault-integer-8.
5633
56342020-07-15 Tobias Burnus <tobias@codesourcery.com>
5635
5636 * testsuite/libgomp.fortran/struct-elem-map-1.f90: Remove unused
5637 variables; add character(kind=4) tests; update TODO comment.
5638
56392020-07-15 Tobias Burnus <tobias@codesourcery.com>
5640
5641 * allocator.c: Add ialias for omp_init_allocator and
5642 omp_destroy_allocator.
5643 * configure.ac: Set INTPTR_T_KIND.
5644 * configure: Regenerate.
5645 * Makefile.in: Regenerate.
5646 * testsuite/Makefile.in: Regenerate.
5647 * fortran.c (omp_init_allocator_, omp_destroy_allocator_,
5648 omp_set_default_allocator_, omp_get_default_allocator_): New
5649 functions and ialias_redirect.
5650 * icv.c: Add ialias for omp_set_default_allocator and
5651 omp_get_default_allocator.
5652 * libgomp.map (OMP_5.0.1): Add omp_init_allocator_,
5653 omp_destroy_allocator_, omp_set_default_allocator_ and
5654 omp_get_default_allocator_.
5655 * omp_lib.f90.in: Add allocator traits parameters, declare
5656 allocator routines and add related kind parameters.
5657 * omp_lib.h.in: Likewise.
5658 * testsuite/libgomp.c-c++-common/alloc-2.c: Fix sizeof.
5659 * testsuite/libgomp.fortran/alloc-1.F90: New test.
5660 * testsuite/libgomp.fortran/alloc-2.F90: New test.
5661 * testsuite/libgomp.fortran/alloc-3.F: New test.
5662 * testsuite/libgomp.fortran/alloc-4.f90: New test.
5663 * testsuite/libgomp.fortran/alloc-5.f90: New test.
5664
8ca07a30
GA
56652020-07-14 Tom de Vries <tom@codesourcery.com>
5666 Cesar Philippidis <cesar@codesourcery.com>
5667 Thomas Schwinge <thomas@codesourcery.com>
5668 Kwok Cheung Yeung <kcy@codesourcery.com>
5669
5670 * oacc-init.c (acc_init_state_lock, acc_init_state, acc_init_thread):
5671 New variable.
5672 (acc_init_1): Set acc_init_thread to pthread_self (). Set
5673 acc_init_state to initializing at the start, and to initialized at the
5674 end.
5675 (self_initializing_p): New function.
5676 (acc_get_device_type): Return acc_device_none if called by thread that
5677 is currently executing acc_init_1.
5678 * libgomp.texi (acc_get_device_type): Update documentation.
5679 (Implementation Status and Implementation-Defined Behavior): Likewise.
5680 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-2.c: New.
5681
56822020-07-14 David Edelsohn <dje.gcc@gmail.com>
5683
5684 * config/t-aix: Set BITS from compiler cpp macro.
5685
56862020-07-14 Tobias Burnus <tobias@codesourcery.com>
5687
5688 * testsuite/libgomp.fortran/struct-elem-map-1.f90: New test.
5689
56902020-07-14 Tobias Burnus <tobias@codesourcery.com>
5691
5692 PR fortran/67311
5693 * testsuite/libgomp.fortran/target-map-1.f90: New test.
5694
56952020-07-14 Jakub Jelinek <jakub@redhat.com>
5696
5697 * testsuite/libgomp.c/loop-21.c: New test.
5698
ea69fcf9
GA
56992020-07-13 Julian Brown <julian@codesourcery.com>
5700 Thomas Schwinge <thomas@codesourcery.com>
5701
5702 * testsuite/libgomp.oacc-fortran/dynamic-pointer-1.f90: New test.
5703
86536295
GA
57042020-07-10 Julian Brown <julian@codesourcery.com>
5705 Thomas Schwinge <thomas@codesourcery.com>
5706
5707 * libgomp.h (struct splay_tree_key_s): Change virtual_refcount to
5708 dynamic_refcount.
5709 (struct gomp_device_descr): Remove GOMP_MAP_VARS_OPENACC_ENTER_DATA.
5710 * oacc-mem.c (acc_map_data): Substitute virtual_refcount for
5711 dynamic_refcount.
5712 (acc_unmap_data): Update comment.
5713 (goacc_map_var_existing, goacc_enter_datum): Adjust for
5714 dynamic_refcount semantics.
5715 (goacc_exit_datum_1, goacc_exit_datum): Re-add some error checking.
5716 Adjust for dynamic_refcount semantics.
5717 (goacc_enter_data_internal): Implement "present" case of dynamic
5718 memory-map handling here. Update "non-present" case for
5719 dynamic_refcount semantics.
5720 (goacc_exit_data_internal): Use goacc_exit_datum_1.
5721 * target.c (gomp_map_vars_internal): Remove
5722 GOMP_MAP_VARS_OPENACC_ENTER_DATA handling. Update for dynamic_refcount
5723 handling.
5724 (gomp_unmap_vars_internal): Remove virtual_refcount handling.
5725 (gomp_load_image_to_device): Substitute dynamic_refcount for
5726 virtual_refcount.
5727 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Remove XFAILs.
5728 * testsuite/libgomp.oacc-c-c++-common/refcounting-1.c: New test.
5729 * testsuite/libgomp.oacc-c-c++-common/refcounting-2.c: New test.
5730 * testsuite/libgomp.oacc-c-c++-common/struct-3-1-1.c: New test.
5731 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Remove XFAILs and
5732 trace output.
5733 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: Remove
5734 trace output.
5735 * testsuite/libgomp.oacc-fortran/dynamic-incr-structural-1.f90: New
5736 test.
5737 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
5738 Remove stale comment.
5739 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Remove XFAILs.
5740 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
5741 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
5742 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
5743 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
5744 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Adjust XFAIL.
5745
57462020-07-10 Julian Brown <julian@codesourcery.com>
5747 Thomas Schwinge <thomas@codesourcery.com>
5748
5749 * oacc-mem.c (goacc_map_var_existing): New function.
5750 (goacc_enter_datum): Use above function.
5751 (goacc_exit_datum_1): New function.
5752 (goacc_exit_datum): Use above function.
5753
3f8ca9cb
GA
57542020-07-09 Julian Brown <julian@codesourcery.com>
5755 Thomas Schwinge <thomas@codesourcery.com>
5756
5757 PR middle-end/95270
5758 * testsuite/libgomp.oacc-c-c++-common/pr95270-1.c: New test.
5759 * testsuite/libgomp.oacc-c-c++-common/pr95270-2.c: New test.
5760
57612020-07-09 Julian Brown <julian@codesourcery.com>
5762
5763 * oacc-mem.c (find_group_last): Group data-movement clauses
5764 (GOMP_MAP_TO_PSET, GOMP_MAP_TO, etc.) together with a subsequent
5765 GOMP_MAP_ATTACH. Allow standalone GOMP_MAP_ATTACH also.
5766
57672020-07-09 Jakub Jelinek <jakub@redhat.com>
5768
5769 * testsuite/libgomp.c/loop-19.c: New test.
5770 * testsuite/libgomp.c/loop-20.c: New test.
5771
57722020-07-09 Jakub Jelinek <jakub@redhat.com>
5773
5774 * omp.h.in (omp_alloctrait_value_t): Change omp_atv_default from
5775 2 to -1. Add omp_atv_serialized and define omp_atv_sequential using
5776 it. Remove __omp_alloctrait_value_max__.
5777 * allocator.c (omp_init_allocator): Handle omp_atv_default for
5778 omp_atk_alignment and omp_atk_pool_size.
5779
b991c834
GA
57802020-07-03 Thomas Schwinge <thomas@codesourcery.com>
5781
5782 * oacc-mem.c (goacc_exit_data_internal): Revert always-copyfrom
5783 behavior for 'GOMP_MAP_FORCE_FROM'.
5784 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Adjust XFAIL.
5785
57862020-07-03 Thomas Schwinge <thomas@codesourcery.com>
5787
5788 * oacc-mem.c (goacc_exit_data_internal): Remove
5789 'GOMP_MAP_ALWAYS_FROM' handling.
5790
46fbb6c6
GA
57912020-06-30 Thomas Schwinge <thomas@codesourcery.com>
5792
5793 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Replace fragile
5794 'scan-assembler' with 'scan-offload-rtl'.
5795 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: Likewise.
5796 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
5797 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: Likewise.
5798 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: Likewise.
5799
58002020-06-30 Thomas Schwinge <thomas@codesourcery.com>
5801
5802 * target.c (gomp_map_vars_existing): Assert 'kind !=
5803 GOMP_MAP_ATTACH'.
5804 (gomp_map_vars_internal): Clean up.
5805
9a33c41f
GA
58062020-06-27 Jakub Jelinek <jakub@redhat.com>
5807
5808 * testsuite/libgomp.c/loop-17.c: New test.
5809 * testsuite/libgomp.c/loop-18.c: New test.
5810
c9c05f73
GA
58112020-06-26 Marek Polacek <polacek@redhat.com>
5812
5813 * testsuite/libgomp.c++/atomic-3.C: Use -std=gnu++14.
5814
4543acc8
GA
58152020-06-23 Alexandre Oliva <oliva@adacore.com>
5816
5817 * testsuite/lib/libgomp.exp: Load gcc lib scanoffload.exp.
5818 * testsuite/lib/libgomp-dg.exp: Drop now-obsolete -save-temps.
5819
605a8f3b
GA
58202020-06-22 David Edelsohn <dje.gcc@gmail.com>
5821
5822 * Makefile.am: Use -include.
5823 * Makefile.in: Regenerate.
5824
f86e11a2
GA
58252020-06-21 David Edelsohn <dje.gcc@gmail.com>
5826
5827 * Makefile.am (tmake_file): Build and install AIX-style FAT libraries.
5828 * Makefile.in: Regenerate
5829 * configure.ac (tmake_file): Substitute.
5830 * configure: Regenerate.
5831 * configure.tgt (powerpc-ibm-aix*): Define tmake_file.
5832 * config/t-aix: New file.
5833
aff95ee7
GA
58342020-06-17 Thomas Schwinge <thomas@codesourcery.com>
5835
5836 PR lto/94848
5837 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: Add
5838 'dg-do run'.
5839
58402020-06-17 Andrew Stubbs <ams@codesourcery.com>
5841
5842 * plugin/plugin-gcn.c (init_environment_variables): Use ".so.1"
5843 variant for HSA_RUNTIME_LIB name.
5844 (find_executable_symbol_1): Delete.
5845 (find_executable_symbol): Delete.
5846 (init_kernel_properties): Add ".kd" suffix to symbol names.
5847 (find_load_offset): Delete.
5848 (create_and_finalize_hsa_program): Remove relocation handling.
5849
56638b9b
GA
58502020-06-16 Tobias Burnus <tobias@codesourcery.com>
5851
5852 * testsuite/libgomp.oacc-fortran/routine-10.f90: New test.
5853
2c455ae0
GA
58542020-06-08 Tobias Burnus <tobias@codesourcery.com>
5855
5856 PR lto/94848
5857 PR middle-end/95551
5858 * testsuite/libgomp.fortran/target-var.f90: New test.
5859
1a59f3db
GA
58602020-06-05 Thomas Schwinge <thomas@codesourcery.com>
5861 Julian Brown <julian@codesourcery.com>
5862
5863 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>: Explain
5864 special handling.
5865
58662020-06-05 Thomas Schwinge <thomas@codesourcery.com>
5867 Julian Brown <julian@codesourcery.com>
5868
5869 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
5870 Simplify.
5871
58722020-06-05 Julian Brown <julian@codesourcery.com>
5873
5874 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-1.c: New test.
5875 * testsuite/libgomp.oacc-c-c++-common/struct-copyout-2.c: New test.
5876
3add3425
GA
58772020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5878
5879 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
5880 Evaluate 'copyfrom' individually for each entry.
5881 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: Update.
5882
58832020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5884
5885 * oacc-mem.c (goacc_exit_data_internal) <GOMP_MAP_STRUCT>:
5886 Evaluate 'finalize' individually for each entry.
5887 * testsuite/libgomp.oacc-c-c++-common/struct-1.c: New file.
5888 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: Remove
5889 file.
5890
58912020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5892
5893 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: Fix 'sizeof'
5894 usage.
5895 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: Likewise.
5896
58972020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5898 Julian Brown <julian@codesourcery.com>
5899
5900 * oacc-mem.c (goacc_exit_datum): Repair 'is_tgt_unmapped'
5901 checking.
5902 (acc_unmap_data, goacc_exit_data_internal): Restore
5903 'is_tgt_unmapped' checking.
5904 * testsuite/libgomp.oacc-c-c++-common/struct-refcount-1.c: New
5905 file.
5906 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: Adjust.
5907 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
5908 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
5909 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
5910 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
5911 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
5912
59132020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5914 Julian Brown <julian@codesourcery.com>
5915
5916 * oacc-mem.c (acc_unmap_data): Don't open-code 'gomp_remove_var'.
5917
59182020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5919
5920 PR libgomp/92854
5921 * oacc-mem.c (acc_unmap_data): Remove 'tgt' reference counting.
5922
59232020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5924
5925 PR libgomp/92854
5926 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: Extend some
5927 more.
5928
59292020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5930 Julian Brown <julian@codesourcery.com>
5931
5932 * oacc-mem.c (goacc_enter_datum): Use 'tgt' returned from
5933 'gomp_map_vars'.
3d3b561f 5934 (acc_map_data): Clean up accordingly.
3add3425
GA
5935
59362020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5937
5938 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: XFAIL behavior
5939 of over-eager 'finalize' clause.
5940 * testsuite/libgomp.oacc-fortran/deep-copy-6-no_finalize.F90: New
5941 file.
5942 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-1.f90: Likewise.
5943 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-1-2.F90: Likewise.
5944 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-1.f90: Likewise.
5945 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-2-2.f90: Likewise.
5946 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-1.f90: Likewise.
5947 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-3-2.f90: Likewise.
5948 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-1.f90: Likewise.
5949 * testsuite/libgomp.oacc-fortran/mdc-refcount-1-4-2.f90: Likewise.
5950
59512020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5952
5953 * oacc-mem.c (goacc_exit_data_internal): Unlock on error path.
5954
59552020-06-04 Julian Brown <julian@codesourcery.com>
5956
5957 * oacc-mem.c (acc_attach_async): Add missing gomp_mutex_unlock on
5958 error path.
5959 (goacc_detach_internal): Likewise.
5960
59612020-06-04 Thomas Schwinge <thomas@codesourcery.com>
5962
5963 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Initialize before
5964 the checkpoint.
5965 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
5966 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
5967 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
5968 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
5969 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
5970
a9312a79
GA
59712020-06-02 Jakub Jelinek <jakub@redhat.com>
5972
5973 * allocator.c (omp_free): Fix up build if HAVE_SYNC_BUILTINS is not
5974 defined.
5975
945b53cc
GA
59762020-05-30 Jakub Jelinek <jakub@redhat.com>
5977
5978 * testsuite/libgomp.c-c++-common/alloc-4.c: New test.
5979
59802020-05-30 Jakub Jelinek <jakub@redhat.com>
5981
5982 * allocator.c (omp_alloc): For size == 0, return NULL early.
5983
885ef72f
GA
59842020-05-29 H.J. Lu <hjl.tools@gmail.com>
5985
5986 PR bootstrap/95413
5987 * configure: Regenerated.
5988
8df7ee67
TK
59892020-05-23 Thomas Koenig <tkoenig@gcc.gnu.org>
5990
5991 PR libfortran/95191
5992 * testsuite/libgomp.fortran/async_io_9.f90: New test.
5993
800bcc8c
JJ
59942020-05-19 Jakub Jelinek <jakub@redhat.com>
5995
5996 * omp.h.in (omp_uintptr_t): New typedef.
5997 (__GOMP_UINTPTR_T_ENUM): Define.
5998 (omp_memspace_handle_t, omp_allocator_handle_t, omp_alloctrait_key_t,
5999 omp_alloctrait_value_t, omp_alloctrait_t): New typedefs.
6000 (__GOMP_DEFAULT_NULL_ALLOCATOR): Define.
6001 (omp_init_allocator, omp_destroy_allocator, omp_set_default_allocator,
6002 omp_get_default_allocator, omp_alloc, omp_free): Declare.
6003 * libgomp.h (struct gomp_team_state): Add def_allocator field.
6004 (gomp_def_allocator): Declare.
6005 * libgomp.map (OMP_5.0.1): Export omp_set_default_allocator,
6006 omp_get_default_allocator, omp_init_allocator, omp_destroy_allocator,
6007 omp_alloc and omp_free.
6008 * team.c (gomp_team_start): Copy over ts.def_allocator.
6009 * env.c (gomp_def_allocator): New variable.
6010 (parse_wait_policy): Adjust function comment.
6011 (parse_allocator): New function.
6012 (handle_omp_display_env): Print OMP_ALLOCATOR.
6013 (initialize_env): Call parse_allocator.
6014 * Makefile.am (libgomp_la_SOURCES): Add allocator.c.
6015 * allocator.c: New file.
6016 * icv.c (omp_set_default_allocator, omp_get_default_allocator): New
6017 functions.
6018 * testsuite/libgomp.c-c++-common/alloc-1.c: New test.
6019 * testsuite/libgomp.c-c++-common/alloc-2.c: New test.
6020 * testsuite/libgomp.c-c++-common/alloc-3.c: New test.
6021 * Makefile.in: Regenerated.
6022
4c1a5d8b
L
60232020-05-15 H.J. Lu <hongjiu.lu@intel.com>
6024
6025 PR bootstrap/95147
6026 * configure: Regenerated.
6027
cdc34b50
TK
60282020-05-14 Thomas Koenig <tkoenig@gcc.gnu.org>
6029
6030 PR libfortran/95119
6031 * testsuite/libgomp.fortran/close_errors_1.f90: New test.
6032
60332020-05-14 H.J. Lu <hongjiu.lu@intel.com>
6034
6035 * configure: Regenerated.
6036
60372020-05-14 Jakub Jelinek <jakub@redhat.com>
6038
6039 * testsuite/libgomp.c-c++-common/target-40.c: New test.
6040
f884bef2
TB
60412020-05-13 Tobias Burnus <tobias@codesourcery.com>
6042
6043 PR fortran/94690
6044 * testsuite/libgomp.fortran/pr66199-3.f90: New.
6045 * testsuite/libgomp.fortran/pr66199-4.f90: New.
6046 * testsuite/libgomp.fortran/pr66199-5.f90: New.
6047 * testsuite/libgomp.fortran/pr66199-6.f90: New.
6048 * testsuite/libgomp.fortran/pr66199-7.f90: New.
6049 * testsuite/libgomp.fortran/pr66199-8.f90: New.
6050 * testsuite/libgomp.fortran/pr66199-9.f90: New.
6051
dc703151
JJ
60522020-05-12 Jakub Jelinek <jakub@redhat.com>
6053
6054 * testsuite/libgomp.c/target-39.c: New test.
6055
b9dc11b6
TS
60562020-04-29 Thomas Schwinge <thomas@codesourcery.com>
6057
a5d0bc12
TS
6058 * config/accel/openacc.f90 (acc_device_current): Set to '-1'.
6059 * openacc.f90 (acc_device_current): Likewise.
6060 * openacc.h (acc_device_current): Likewise.
6061 * openacc_lib.h (acc_device_current): Likewise.
6062
7f198924
TS
6063 PR target/94282
6064 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Remove
6065 'dg-allow-blank-lines-in-output'.
6066
4912a04f
TS
6067 * oacc-init.c (get_openacc_name): Handle 'gcn'.
6068 * testsuite/lib/libgomp.exp
6069 (offload_target_to_openacc_device_type) [amdgcn*]: Return
6070 'radeon'. Adjust all users.
6071 (check_effective_target_openacc_amdgcn_accel_present): Rename
6072 to...
6073 (check_effective_target_openacc_radeon_accel_present): ... this.
6074 Adjust all users.
6075 (check_effective_target_openacc_amdgcn_accel_selected): Rename to...
6076 (check_effective_target_openacc_radeon_accel_selected): ... this.
6077 Adjust all users.
6078
b9dc11b6
TS
6079 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Add
6080 'dg-do run'.
6081
966de09b
AS
60822020-04-23 Andrew Stubbs <ams@codesourcery.com>
6083
6084 PR other/94629
6085
6086 * plugin/plugin-gcn.c (init_hsa_context): Check return value from
6087 hsa_iterate_agents.
6088 (GOMP_OFFLOAD_init_device): Check return values from both calls to
6089 hsa_agent_iterate_regions.
6090
3f5d94c1
TS
60912020-04-20 Thomas Schwinge <thomas@codesourcery.com>
6092
6093 PR middle-end/94635
6094 * testsuite/libgomp.fortran/target-enter-data-2.F90: Add 'dg-do
6095 run'.
6096
85d8c05a
TB
60972020-04-20 Tobias Burnus <tobias@codesourcery.com>
6098
6099 PR middle-end/94120
6100 * testsuite/libgomp.oacc-c++/declare-pr94120.C: Fix 'declare copy(out)'
6101 test case.
6102
af557050
TB
61032020-04-17 Tobias Burnus <tobias@codesourcery.com>
6104
6105 PR middle-end/94635
6106 * testsuite/libgomp.fortran/target-enter-data-2.F90: New.
6107
af4c9257
TS
61082020-04-13 Thomas Schwinge <thomas@codesourcery.com>
6109
6110 PR libgomp/92843
6111 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
6112 Rename to...
6113 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1-lib.c:
6114 ... this.
6115 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
6116 Rename to...
6117 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-1.c:
6118 ... this.
6119 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
6120 Rename to...
6121 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2-lib.c:
6122 ... this.
6123 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
6124 Rename to...
6125 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-2.c:
6126 ... this.
6127 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
6128 Rename to...
6129 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3-lib.c:
6130 ... this.
6131 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
6132 Rename to...
6133 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-3.c:
6134 ... this.
6135 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
6136 Rename to...
6137 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4-lib.c:
6138 ... this.
6139 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
6140 Rename to...
6141 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-4.c:
6142 ... this.
6143 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
6144 Rename to...
6145 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5-lib.c:
6146 ... this.
6147 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
6148 Rename to...
6149 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-5.c:
6150 ... this.
6151 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
6152 Rename to...
6153 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6-lib.c:
6154 ... this.
6155 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
6156 Rename to...
6157 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-6.c:
6158 ... this.
6159 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
6160 Rename to...
6161 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7-lib.c:
6162 ... this.
6163 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
6164 Rename to...
6165 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-7.c:
6166 ... this.
6167 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
6168 Rename to...
6169 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8-lib.c:
6170 ... this.
6171 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c::
6172 Rename to...
6173 * testsuite/libgomp.oacc-c-c++-common/structured-dynamic-lifetimes-8.c:
6174 ... this.
6175
be9862dd
JB
61762020-04-10 Julian Brown <julian@codesourcery.com>
6177 Thomas Schwinge <thomas@codesourcery.com>
6178
6179 PR libgomp/92843
6180 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1-lib.c:
6181 New file.
6182 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-1.c:
6183 Likewise.
6184 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2-lib.c:
6185 Likewise.
6186 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-2.c:
6187 Likewise.
6188 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3-lib.c:
6189 Likewise.
6190 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-3.c:
6191 Likewise.
6192 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4-lib.c:
6193 Likewise.
6194 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-4.c:
6195 Likewise.
6196 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5-lib.c:
6197 Likewise.
6198 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-5.c:
6199 Likewise.
6200 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6-lib.c:
6201 Likewise.
6202 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-6.c:
6203 Likewise.
6204 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7-lib.c:
6205 Likewise.
6206 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-7.c:
6207 Likewise.
6208 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8-lib.c:
6209 Likewise.
6210 * testsuite/libgomp.oacc-c-c++-common/static-dynamic-lifetimes-8.c:
6211 Likewise.
6212
6b816a5f
TS
62132020-04-10 Thomas Schwinge <thomas@codesourcery.com>
6214
6215 * testsuite/libgomp.fortran/target-enter-data-1.f90: Add 'dg-do
6216 run'.
6217
13e41d8b
TB
62182020-04-08 Tobias Burnus <tobias@codesourcery.com>
6219
6220 PR middle-end/94120
6221 * libgomp.oacc-c++/declare-pr94120.C: New.
6222
749bd22d
MR
62232020-04-06 Maciej W. Rozycki <macro@wdc.com>
6224
6225 * configure.ac: Add testsuite/libgomp-site-extra.exp to output
6226 files.
6227 * configure: Regenerate.
6228 * testsuite/libgomp-site-extra.exp.in: New file.
6229 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): Remove
6230 variable.
6231 * testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): New
6232 variable.
6233 * testsuite/Makefile.in: Regenerate.
6234
2b1e849b
TS
62352020-04-03 Thomas Schwinge <thomas@codesourcery.com>
6236
6237 PR tree-optimization/89713
6238 PR c/94392
6239 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Again expect
6240 'bar.sync'.
6241 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Likewise.
6242
689418b9
TB
62432020-03-31 Tobias Burnus <tobias@codesourcery.com>
6244
6245 * target.c (GOMP_target_enter_exit_data): Handle PSET/MAP_POINTER.
6246 * testsuite/libgomp.fortran/target-enter-data-1.f90: New.
6247
c2211a60
TB
62482020-03-24 Tobias Burnus <tobias@codesourcery.com>
6249
6250 PR libgomp/81689
6251 * testsuite/libgomp.c/target-link-1.c: Remove xfail.
6252
4897bb00
TB
62532020-03-20 Tobias Burnus <tobias@codesourcery.com>
6254
6255 PR libgomp/94251
6256 * target.c (gomp_load_image_to_device): Fix link
6257 variable handling.
6258
02f7334a
JJ
62592020-03-19 Jakub Jelinek <jakub@redhat.com>
6260
6261 PR c++/93931
6262 * testsuite/libgomp.c++/pr93931.C: New test.
6263
bb83e069
TB
62642020-03-19 Tobias Burnus <tobias@codesourcery.com>
6265
6266 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: Add
6267 dg-allow-blank-lines-in-output.
6268
26cbcfe5
TB
62692020-03-18 Julian Brown <julian@codesourcery.com>
6270 Tobias Burnus <tobias@codesourcery.com>
6271
6272 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Really make
6273 it work concurrently.
6274
4da92887
TB
62752020-03-18 Tobias Burnus <tobias@codesourcery.com>
6276
6277 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: Add
6278 #define DO_LONG_DOUBLE; set to 1, except for nvidia + gcn.
6279 * libgomp.oacc-c-c++-common/firstprivate-mappings-1.c: Likewise.
6280
9c3cdb43
JJ
62812020-03-14 Jakub Jelinek <jakub@redhat.com>
6282
6283 PR middle-end/93566
6284 * testsuite/libgomp.c/pr93566.c: New test.
6285
83d45e1d
FH
62862020-02-21 Frederik Harwath <frederik@codesourcery.com>
6287
6288 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Adapt to
6289 changes from 2020-02-19, i.e. use integer(c_size_t) instead of
6290 integer(acc_device_property) for the type of the return value of
6291 acc_get_property.
6292
8d1a1cb1
TB
62932020-02-19 Tobias Burnus <tobias@codesourcery.com>
6294
6295 * .gitattributes: New; whitespace handling for Fortran's openacc_lib.h.
6296 * config/accel/openacc.f90 (openacc_kinds): Add acc_device_current.
6297 (openacc_internal, acc_on_device_h): Fix argument name; minor cleanup.
6298 * libgomp.texi (Enabling OpenACC): No longer mark as experimental.
6299 (acc_set_device_num): Fix Fortran argument name, use same name for C.
6300 (acc_get_property): Update Fortran interface to post-OpenACC 3.0
6301 corrections; add note about the previous interface and named constant.
6302 (OpenACC library and environment variables): Fix two typos.
6303 * openacc.f90: Use for all procedures the argument names from the spec
6304 as for …_h they are user visible.
6305 (openacc_kinds): Rename acc_device_property to
6306 acc_device_property_kinds and change value to int32 ; and update users.
6307 Re-add acc_device_property for for backward compatibility.
6308 (acc_get_property_string_h): Clean up as acc_device_property_kind
6309 changed.
6310 (acc_get_property_h): Likewise and return c_size_t instead of
6311 acc_device_property.
6312 (openacc): Also export acc_device_property_kinds.
6313 (acc_async_test_h, acc_async_test_all_h, acc_on_device_h,
6314 acc_is_present_32_h, acc_is_present_64_h): Simplify logical-return-value
6315 handling; check against /= 0 instead of == 1 to match C.
6316 * openacc_lib.h: Use for all procedures the argument names from the spec
6317 as for …_h they are user visible. Place !GCC$ into the first column to
6318 be active also for fixed-form souce form.
6319 (acc_device_current, acc_device_property_kind, acc_device_property,
6320 acc_property_memory, acc_property_free_memory, acc_property_name,
6321 acc_property_vendor, acc_property_driver): New named constants.
6322 (acc_get_property, acc_get_property_string): New generic interface.
6323
2d9eb4e4
FH
63242020-02-13 Frederik Harwath <frederik@codesourcery.com>
6325
6326 PR libgomp/93481
6327 * plugin/plugin-nvptx.c: Remove GOMP_OFFLOAD_async_run stub.
6328 * target.c (gomp_load_plugin_for_device): Make "async_run" loading
6329 optional.
6330 (gomp_target_task_fn): Assert "devicep->async_run_func".
6331 (clear_unsupported_flags): New function to remove unsupported flags
6332 (right now only GOMP_TARGET_FLAG_NOWAIT) that can be be ignored.
6333 (GOMP_target_ext): Apply clear_unsupported_flags to flags.
6334 * testsuite/libgomp.c/target-33.c:
6335 Remove xfail for offload_target_nvptx.
6336 * testsuite/libgomp.c/target-34.c: Likewise.
fd789c81
FH
6337
63382020-02-10 Frederik Harwath <frederik@codesourcery.com>
6339
6340 * testsuite/libgomp.c/target-33.c: Add xfail for execution on
6341 offload_target_nvptx, cf. https://gcc.gnu.org/PR81688.
6342 * testsuite/libgomp.c/target-34.c: Likewise.
6343 * testsuite/libgomp.c/target-link-1.c: Add xfail for
6344 offload_target_nvptx, cf. https://gcc.gnu.org/PR81689.
6345
9bc3b95d
JJ
63462020-02-09 Jakub Jelinek <jakub@redhat.com>
6347
6348 * testsuite/libgomp.c/target-38.c: New test.
6349
cb3f0648
JJ
63502020-02-06 Jakub Jelinek <jakub@redhat.com>
6351
6352 PR libgomp/93515
6353 * testsuite/libgomp.c-c++-common/pr93515.c: New test.
6354
91bc3c98
TB
63552020-02-05 Tobias Burnus <tobias@codesourcery.com>
6356
6357 * testsuite/lib/libgomp.exp
6358 (check_effective_target_offload_target_nvptx): Pass flags as 'options'
6359 and not as 'source' argument to libgomp_target_compile.
6360
591f869a
AS
63612020-02-03 Andrew Stubbs <ams@codesourcery.com>
6362
6363 * plugin/plugin-gcn.c (EF_AMDGPU_MACH_AMDGCN_GFX801): Remove.
6364 (gcn_gfx801_s): Remove.
6365 (isa_hsa_name): Remove gfx801.
6366 (isa_gcc_name): Remove gfx801/carizzo.
6367 (isa_code): Remove gfx801.
6368
e464fc90
TB
63692020-02-03 Julian Brown <julian@codesourcery.com>
6370 Tobias Burnus <tobias@codesourcery.com>
6371
6372 * libgomp.texi (OpenACC Runtime Library Routines): Document *_async
6373 and *_finalize variants; document acc_attach and acc_detach; update
6374 references from OpenACC 2.0 to 2.6.
6375 * openacc.f90 (openacc_version): Update to 201711.
6376 * openacc_lib.h (openacc_version): Update to 201711.
6377 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Update expected
6378 openacc_version to 201711.
6379 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
6380
5a28e272
KCY
63812020-01-31 Kwok Cheung Yeung <kcy@codesourcery.com>
6382
6383 * plugin/plugin-gcn.c (struct hsa_kernel_description): Add sgpr_count
6384 and vgpr_count fields.
6385 (struct kernel_info): Add a field for a hsa_kernel_description.
6386 (run_kernel): Reduce the number of threads/workers if the requested
6387 number would require too many VGPRs.
6388 (init_basic_kernel_info): Initialize description field with
6389 the hsa_kernel_description entry for the kernel.
6390
5ab5d81b
TB
63912020-01-29 Tobias Burnus <tobias@codesourcery.com>
6392
6393 PR bootstrap/93409
6394 * plugin/configfrag.ac (enable_offload_targets): Skip
6395 HSA and GCN plugin besides -m32 also for -mx32.
6396 * configure: Regenerate.
6397
989a5fb3
FH
63982020-01-29 Frederik Harwath <frederik@codesourcery.com>
6399
6400 * oacc-init.c (name_of_acc_device_t): Handle acc_device_radeon.
2e5ea579
FH
6401
64022020-01-29 Frederik Harwath <frederik@codesourcery.com>
6403
6404 * plugin-gcn.c (struct agent_info): Add fields "name" and
6405 "vendor_name" ...
6406 (GOMP_OFFLOAD_init_device): ... and init from here.
6407 (struct hsa_context_info): Add field "driver_version_s" ...
6408 (init_hsa_contest): ... and init from here.
6409 (GOMP_OFFLOAD_openacc_get_property): Replace stub with a proper
6410 implementation.
6411 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
6412 Enable test execution for amdgcn and host offloading targets.
6413 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: Likewise.
6414 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
6415 (expect_device_properties): Split function into ...
6416 (expect_device_string_properties): ... this new function ...
6417 (expect_device_memory): ... and this new function.
6418 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c:
6419 Add test.
6420
278c3214
JB
64212020-01-28 Julian Brown <julian@codesourcery.com>
6422
6423 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: Remove test from here.
6424 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: Don't use mixed
6425 component/non-component variable refs in a single directive.
6426 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: Likewise.
6427
e8e66971
MR
64282020-01-24 Maciej W. Rozycki <macro@wdc.com>
6429
6430 * configure.ac: Handle `--with-toolexeclibdir='.
6431 * Makefile.in: Regenerate.
6432 * aclocal.m4: Regenerate.
6433 * configure: Regenerate.
6434 * testsuite/Makefile.in: Regenerate.
6435
9e424d97
FH
64362020-01-24 Frederik Harwath <frederik@codesourcery.com>
6437
6438 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c
6439 (expect_device_properties): Remove "expected_free_mem" argument,
6440 change "expected_total_mem" argument type to size_t;
6441 change types of acc_get_property results to size_t,
6442 adapt format strings.
6443 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c:
6444 Use %zu instead of %zd to print size_t values.
6445 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: Adapt and
6446 rename to ...
6447 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-nvptx.c: ... this.
6448 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: Adapt and
6449 rename to ...
6450 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-host.c: ... this.
6451
14e5e746
AS
64522020-01-23 Andrew Stubbs <ams@codesourcery.com>
6453
6454 * plugin/plugin-gcn.c (parse_target_attributes): Use correct mask for
6455 the device id.
6456
09e0ad62
AS
64572020-01-20 Andrew Stubbs <ams@codesourcery.com>
6458
6459 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Skip test on gcn.
6460 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c (main):
6461 Adjust test dimensions for amdgcn.
6462 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c (main): Adjust
6463 gang/worker/vector expectations dynamically.
6464 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c
6465 (main): Likewise.
6466 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c (main): Likewise.
6467 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c (main): Likewise.
6468 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c (main): Likewise.
6469 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c (main): Likewise.
6470 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c (main): Likewise.
6471 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c (main): Likewise.
6472 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c (main): Likewise.
6473 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c (main): Likewise.
6474 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c
6475 (acc_gang): Recognise acc_device_radeon.
6476 (acc_worker): Likewise.
6477 (acc_vector): Likewise.
6478 (main): Set expectations for amdgcn.
6479 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c
6480 (main): Adjust gang/worker/vector expectations dynamically.
6481 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c (main): Likewise.
6482 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c (main): Likewise.
6483 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c (main): Likewise.
6484 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Set expectations
6485 for amdgcn.
6486
6687d13a
AS
64872020-01-17 Andrew Stubbs <ams@codesourcery.com>
6488
6489 * config/accel/openacc.f90 (openacc_kinds): Rename acc_device_gcn to
6490 acc_device_radeon.
6491 (openacc): Likewise.
6492 * openacc.f90 (openacc_kinds): Likewise.
6493 (openacc): Likewise.
6494 * openacc.h (acc_device_t): Likewise.
6495 * openacc_lib.h: Likewise.
6496 * testsuite/lib/libgomp.exp
6497 (check_effective_target_openacc_amdgcn_accel_present): Likewise.
6498 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c
6499 (cb_compute_construct_end): Likewise.
6500 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c
6501 (cb_enqueue_launch_start): Likewise.
6502 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c
6503 (cb_enter_data_end): Likewise.
6504 (cb_exit_data_start): Likewise.
6505 (cb_exit_data_end): Likewise.
6506 (cb_compute_construct_end): Likewise.
6507 (cb_enqueue_launch_start): Likewise.
6508 (cb_enqueue_launch_end): Likewise.
6509 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c
6510 (main): Likewise.
6511
b3b75e66
TS
65122020-01-10 Thomas Schwinge <thomas@codesourcery.com>
6513
6fc0385c
TS
6514 * libgomp-plugin.h (enum goacc_property): New. Adjust all users
6515 to use this instead of 'enum gomp_device_property'.
6516 (GOMP_OFFLOAD_get_property): Rename to...
6517 (GOMP_OFFLOAD_openacc_get_property): ... this. Adjust all users.
6518 * libgomp.h (struct gomp_device_descr): Move
6519 'GOMP_OFFLOAD_openacc_get_property'...
6520 (struct acc_dispatch_t): ... here. Adjust all users.
6521 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): Remove.
6522
b3b75e66
TS
6523 * target.c (gomp_map_vars_internal)
6524 <GOMP_MAP_USE_DEVICE_PTR_IF_PRESENT>: Clean up/elaborate code
6525 paths.
6526
91df4397
JJ
65272020-01-10 Jakub Jelinek <jakub@redhat.com>
6528
6529 PR libgomp/93219
6530 * libgomp.h (gomp_print_string): Change return type from void to int.
6531 * affinity-fmt.c (gomp_print_string): Likewise. Return true if
6532 not all characters have been written.
6533
df2c0d36
TB
65342020-01-08 Tobias Burnus <tobias@codesourcery.com>
6535
6536 * libgomp.texi: Fix typos, use https.
6537
f760c0c7
TB
65382020-01-03 Tobias Burnus <tobias@codesourcery.com>
6539
6540 * testsuite/libgomp.fortran/optional-map.f90: Add test for
6541 unallocated/disassociated actual arguments to nonallocatable/nonpointer
6542 dummy arguments; those are/shall be regarded as absent arguments.
6543 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
6544 * testsuite/libgomp.fortran/use_device_ptr-optional-3.f90: New.
6545
7e7065b9
JJ
65462020-01-01 Jakub Jelinek <jakub@redhat.com>
6547
8d9254fc
JJ
6548 Update copyright years.
6549
7e7065b9
JJ
6550 * libgomp.texi: Bump @copying's copyright year.
6551
2c829799
AM
65522019-12-31 Ayush Mittal <ayush.m@samsung.com>
6553
6554 PR libgomp/93065
6555 * oacc-init.c (goacc_runtime_deinitialize): New function.
6556
e9dcb75e
JJ
65572019-12-28 Jakub Jelinek <jakub@redhat.com>
6558
6559 PR bootstrap/93074
6560 * plugin/cuda/cuda.h (cuDeviceGetName, cuDriverGetVersion): Declare.
6561 (cuDeviceTotalMem, cuMemGetInfo): Likewise. Define to *_v2.
6562
6c84c8bf
MR
65632019-12-22 Maciej W. Rozycki <macro@codesourcery.com>
6564 Frederik Harwath <frederik@codesourcery.com>
6565 Thomas Schwinge <tschwinge@codesourcery.com>
6566
6567 * libgomp.h (gomp_device_descr): Add `get_property_func' member.
6568 * libgomp-plugin.h (gomp_device_property_value): New union.
6569 (gomp_device_property_value): New prototype.
6570 * openacc.h (acc_device_t): Add `acc_device_current' enumeration
6571 constant.
6572 (acc_device_property_t): New enum.
6573 (acc_get_property, acc_get_property_string): New prototypes.
6574 * oacc-init.c (acc_get_device_type): Also assert that result
6575 is not `acc_device_current'.
6576 (get_property_any, acc_get_property, acc_get_property_string):
6577 New functions.
6578 * openacc.f90 (openacc_kinds): Add `acc_device_current' and
6579 `acc_property_memory', `acc_property_free_memory',
6580 `acc_property_name', `acc_property_vendor' and
6581 `acc_property_driver' constants. Add `acc_device_property' data
6582 type.
6583 (openacc_internal): Add `acc_get_property' and
6584 `acc_get_property_string' interfaces. Add `acc_get_property_h',
6585 `acc_get_property_string_h', `acc_get_property_l' and
6586 `acc_get_property_string_l'.
6587 * oacc-host.c (host_get_property): New function.
6588 (host_dispatch): Wire it.
6589 * target.c (gomp_load_plugin_for_device): Handle `get_property'.
6590 * libgomp.map (OACC_2.6): Add `acc_get_property', `acc_get_property_h_',
6591 `acc_get_property_string' and `acc_get_property_string_h_' symbols.
6592 * libgomp.texi (OpenACC Runtime Library Routines): Add
6593 `acc_get_property'.
6594 (acc_get_property): New node.
6595 * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_property): New
6596 function (stub).
6597 * plugin/plugin-hsa.c (GOMP_OFFLOAD_get_property): New function.
6598 * plugin/plugin-nvptx.c (CUDA_CALLS): Add `cuDeviceGetName',
6599 `cuDeviceTotalMem', `cuDriverGetVersion' and `cuMemGetInfo'
6600 calls.
6601 (GOMP_OFFLOAD_get_property): New function.
6602 (struct ptx_device): Add new field "name".
6603 (cuda_driver_version_s): Add new static variable ...
6604 (nvptx_init): ... and init from here.
6605
6606 * testsuite/libgomp.oacc-c-c++-common/acc_get_property.c: New test.
6607 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-2.c: New test.
6608 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-3.c: New test.
6609 * testsuite/libgomp.oacc-c-c++-common/acc_get_property-aux.c: New file
6610 with test helper functions.
6611
6612 * testsuite/libgomp.oacc-fortran/acc_get_property.f90: New test.
6613
c8e759b4
MR
66142019-12-22 Maciej W. Rozycki <macro@wdc.com>
6615
6616 * testsuite/libgomp-test-support.exp.in (GCC_UNDER_TEST): New
6617 variable.
6618
b092fb3b
TS
66192019-12-21 Thomas Schwinge <thomas@codesourcery.com>
6620
6621 * target.c (gomp_map_vars_internal): Restore 'omp declare target
6622 link' handling.
6623
9be3ac5d
JB
66242019-12-19 Julian Brown <julian@codesourcery.com>
6625
6626 * testsuite/libgomp.oacc-fortran/class-ptr-param.f95: New test.
6627 * testsuite/libgomp.oacc-fortran/classtypes-1.f95: New test.
6628 * testsuite/libgomp.oacc-fortran/classtypes-2.f95: New test.
6629
02817027
JB
66302019-12-19 Julian Brown <julian@codesourcery.com>
6631 Cesar Philippidis <cesar@codesourcery.com>
6632
6633 * testsuite/libgomp.oacc-fortran/deep-copy-1.f90: New test.
6634 * testsuite/libgomp.oacc-fortran/deep-copy-2.f90: New test.
6635 * testsuite/libgomp.oacc-fortran/deep-copy-3.f90: New test.
6636 * testsuite/libgomp.oacc-fortran/deep-copy-4.f90: New test.
6637 * testsuite/libgomp.oacc-fortran/deep-copy-5.f90: New test.
6638 * testsuite/libgomp.oacc-fortran/deep-copy-6.f90: New test.
6639 * testsuite/libgomp.oacc-fortran/deep-copy-7.f90: New test.
6640 * testsuite/libgomp.oacc-fortran/deep-copy-8.f90: New test.
6641 * testsuite/libgomp.oacc-fortran/derived-type-1.f90: New test.
6642 * testsuite/libgomp.oacc-fortran/derivedtype-1.f95: New test.
6643 * testsuite/libgomp.oacc-fortran/derivedtype-2.f95: New test.
6644 * testsuite/libgomp.oacc-fortran/multidim-slice.f95: New test.
6645 * testsuite/libgomp.oacc-fortran/update-2.f90: New test.
6646
c2eb021f
JB
66472019-12-19 Julian Brown <julian@codesourcery.com>
6648
6649 * testsuite/libgomp.oacc-c-c++-common/deep-copy-1.c: New test.
6650 * testsuite/libgomp.oacc-c-c++-common/deep-copy-2.c: New test.
6651 * testsuite/libgomp.oacc-c-c++-common/deep-copy-4.c: New test.
6652 * testsuite/libgomp.oacc-c-c++-common/deep-copy-6.c: New test.
6653 * testsuite/libgomp.oacc-c-c++-common/deep-copy-7.c: New test.
6654 * testsuite/libgomp.oacc-c-c++-common/deep-copy-8.c: New test.
6655 * testsuite/libgomp.oacc-c-c++-common/deep-copy-9.c: New test.
6656 * testsuite/libgomp.oacc-c-c++-common/deep-copy-10.c: New test.
6657 * testsuite/libgomp.oacc-c-c++-common/deep-copy-11.c: New test.
6658 * testsuite/libgomp.oacc-c-c++-common/deep-copy-14.c: New test.
6659 * testsuite/libgomp.oacc-c++/deep-copy-12.C: New test.
6660 * testsuite/libgomp.oacc-c++/deep-copy-13.C: New test.
6661
8e7e71ff
JB
66622019-12-19 Julian Brown <julian@codesourcery.com>
6663
6664 * libgomp.h (struct target_var_desc): Add do_detach flag.
6665 * oacc-init.c (acc_shutdown_1): Free aux block if present.
6666 * oacc-mem.c (find_group_last): Add SIZES parameter. Support
6667 struct components. Tidy up and add some new checks.
6668 (goacc_enter_data_internal): Update call to find_group_last.
6669 (goacc_exit_data_internal): Support detach operations and
6670 GOMP_MAP_STRUCT.
6671 (GOACC_enter_exit_data): Handle initial GOMP_MAP_STRUCT or
6672 GOMP_MAP_FORCE_PRESENT in finalization detection code. Handle
6673 attach/detach in enter/exit data detection code.
6674 * target.c (gomp_map_vars_existing): Initialise do_detach field of
6675 tgt_var_desc.
6676 (gomp_map_vars_internal): Support attach.
6677 (gomp_unmap_vars_internal): Support detach.
6678
5d5be7bf
JB
66792019-12-19 Julian Brown <julian@codesourcery.com>
6680 Thomas Schwinge <thomas@codesourcery.com>
6681
6682 * libgomp.h (struct splay_tree_aux): Add attach_count field.
6683 (gomp_attach_pointer, gomp_detach_pointer): Add prototypes.
6684 * libgomp.map (OACC_2.6): New section. Add acc_attach,
6685 acc_attach_async, acc_detach, acc_detach_async, acc_detach_finalize,
6686 acc_detach_finalize_async.
6687 * oacc-mem.c (acc_attach_async, acc_attach, goacc_detach_internal,
6688 acc_detach, acc_detach_async, acc_detach_finalize,
6689 acc_detach_finalize_async): New functions.
6690 * openacc.h (acc_attach, acc_attach_async, acc_detach,
6691 (acc_detach_async, acc_detach_finalize, acc_detach_finalize_async): Add
6692 prototypes.
6693 * target.c (gomp_attach_pointer, gomp_detach_pointer): New functions.
6694 (gomp_remove_var_internal): Free attachment counts if present.
6695 * testsuite/libgomp.oacc-c-c++-common/deep-copy-3.c: New test.
6696 * testsuite/libgomp.oacc-c-c++-common/deep-copy-5.c: New test.
6697
5bcd470b
JB
66982019-12-19 Julian Brown <julian@codesourcery.com>
6699 Cesar Philippidis <cesar@codesourcery.com>
6700
6701 * libgomp.h (gomp_map_val): Add prototype.
6702 * oacc-parallel.c (GOACC_parallel_keyed): Use gomp_map_val instead of
6703 open-coding device-address calculation.
6704 * target.c (gomp_map_val): Make global. Use OFFSET_POINTER in
6705 non-present case.
6706
378da98f
JB
67072019-12-19 Julian Brown <julian@codesourcery.com>
6708
6709 * libgomp.h (struct splay_tree_key_s): Substitute dynamic_refcount
6710 field for virtual_refcount.
6711 (enum gomp_map_vars_kind): Add GOMP_MAP_VARS_OPENACC_ENTER_DATA.
6712 (gomp_free_memmap): Remove prototype.
6713 * oacc-init.c (acc_shutdown_1): Iteratively call gomp_remove_var
6714 instead of calling gomp_free_memmap.
6715 * oacc-mem.c (acc_map_data): Use virtual_refcount instead of
6716 dynamic_refcount.
6717 (acc_unmap_data): Open code instead of forcing target_mem_desc's
6718 to_free field to NULL then calling gomp_unmap_vars. Handle
6719 REFCOUNT_INFINITY on target blocks.
6720 (goacc_enter_data): Rename to...
6721 (goacc_enter_datum): ...this. Remove MAPNUM parameter and special
6722 handling for mapping groups. Use virtual_refcount instead of
6723 dynamic_refcount. Use GOMP_MAP_VARS_OPENACC_ENTER_DATA for
6724 map_map_vars_async call. Re-do lookup for target pointer return value.
6725 (acc_create, acc_create_async, acc_copyin, acc_copyin_async): Call
6726 renamed goacc_enter_datum function.
6727 (goacc_exit_data): Rename to...
6728 (goacc_exit_datum): ...this. Update for virtual_refcount semantics.
6729 (acc_delete, acc_delete_async, acc_delete_finalize,
6730 acc_delete_finalize_async, acc_copyout, acc_copyout_async,
6731 acc_copyout_finalize, acc_copyout_finalize_async): Call renamed
6732 goacc_exit_datum function.
6733 (gomp_acc_remove_pointer, find_pointer): Remove functions.
6734 (find_group_last, goacc_enter_data_internal, goacc_exit_data_internal):
6735 New functions.
6736 (GOACC_enter_exit_data): Use goacc_enter_data_internal and
6737 goacc_exit_data_internal helper functions.
6738 * target.c (gomp_map_vars_internal): Handle
6739 GOMP_MAP_VARS_OPENACC_ENTER_DATA. Update for virtual_refcount
6740 semantics.
6741 (gomp_unmap_vars_internal): Update for virtual_refcount semantics.
6742 (gomp_load_image_to_device, omp_target_associate_ptr): Zero-initialise
6743 virtual_refcount field instead of dynamic_refcount.
6744 (gomp_free_memmap): Remove function.
6745 * testsuite/libgomp.oacc-c-c++-common/unmap-infinity-1.c: New test.
6746 * testsuite/libgomp.c-c++-common/unmap-infinity-2.c: New test.
6747 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: Add XFAIL.
6748
2a656a93
JB
67492019-12-19 Julian Brown <julian@codesourcery.com>
6750 Thomas Schwinge <thomas@codesourcery.com>
6751
6752 * libgomp.h (struct splay_tree_aux): New.
6753 (struct splay_tree_key_s): Replace link_key field with aux pointer.
6754 * target.c (gomp_map_vars_internal): Adjust for link_key being moved
6755 to aux struct.
6756 (gomp_remove_var_internal): Free aux block if present.
6757 (gomp_load_image_to_device): Zero-initialise aux field instead of
6758 link_key field.
6759 (omp_target_associate_pointer): Zero-initialise aux field.
6760
601399c0
JJ
67612019-12-18 Jakub Jelinek <jakub@redhat.com>
6762
6763 PR middle-end/86416
6764 * testsuite/libgomp.c/pr86416-1.c (main): Use L suffixes rather than
6765 q or none.
6766 * testsuite/libgomp.c/pr86416-2.c (main): Use Q suffixes rather than
6767 L or none.
6768
a6163563
JB
67692019-12-19 Julian Brown <julian@codesourcery.com>
6770 Maciej W. Rozycki <macro@codesourcery.com>
6771 Tobias Burnus <tobias@codesourcery.com>
6772 Thomas Schwinge <thomas@codesourcery.com>
6773
6774 * target.c (gomp_map_vars_async): Support GOMP_MAP_NO_ALLOC.
6775 * testsuite/libgomp.oacc-c-c++-common/no_create-1.c: New test.
6776 * testsuite/libgomp.oacc-c-c++-common/no_create-2.c: New test.
6777 * testsuite/libgomp.oacc-c-c++-common/no_create-3.c: New test.
6778 * testsuite/libgomp.oacc-c-c++-common/no_create-4.c: New test.
6779 * testsuite/libgomp.oacc-c-c++-common/no_create-5.c: New test.
6780 * testsuite/libgomp.oacc-fortran/no_create-1.f90: New test.
6781 * testsuite/libgomp.oacc-fortran/no_create-2.f90: New test.
6782 * testsuite/libgomp.oacc-fortran/no_create-3.F90: New test.
6783
6278b549
TS
67842019-12-18 Thomas Schwinge <thomas@codesourcery.com>
6785
77ce5555
TS
6786 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
6787 called...
6788 (goacc_insert_pointer): ... from here, "present" case.
6789 (goacc_insert_pointer): Inline function into...
6790 (GOACC_enter_exit_data): ... here, and simplify.
6791
9444a299
TS
6792 * oacc-mem.c (goacc_enter_data): Refactor, so that it can be
6793 called...
6794 (goacc_insert_pointer): ... from here, "not present" case.
6795
5031b619
TS
6796 * oacc-mem.c (goacc_remove_pointer): Refactor interface. Adjust
6797 all users.
6798
1a79b578
TS
6799 * oacc-mem.c (GOACC_enter_exit_data): Refactor code to call
6800 'goacc_enter_data', 'goacc_exit_data'.
6801
34cfe31e
TS
6802 * oacc-mem.c (delete_copyout): Refactor into...
6803 (goacc_exit_data): ... this. Adjust all users.
6804
aaf0e9d7
TS
6805 * oacc-mem.c (present_create_copy): Refactor into...
6806 (goacc_enter_data): ... this. Adjust all users.
6807
83d1d065
TS
6808 * target.c (gomp_unmap_vars_internal): Add a safeguard to
6809 'gomp_remove_var'.
6810
cc3f11f5
TS
6811 * target.c (gomp_to_device_kind_p): Handle 'GOMP_MAP_FORCE_FROM'
6812 like 'GOMP_MAP_FROM'.
6813
ddb25eb9
TS
6814 PR libgomp/92726
6815 PR libgomp/92970
6816 PR libgomp/92984
6817 * oacc-mem.c (delete_copyout): No-op behavior if 'lookup_host'
6818 fails.
6819 (GOACC_enter_exit_data): Simplify accordingly.
6820 * testsuite/libgomp.oacc-c-c++-common/pr92970-1.c: New file,
6821 subsuming...
6822 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: ... this file...
6823 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: ..., and this
6824 file.
6825 * testsuite/libgomp.oacc-c-c++-common/pr92984-1.c: New file,
6826 subsuming...
6827 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: ... this file...
6828 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: ..., and this
6829 file.
6830 * testsuite/libgomp.oacc-c-c++-common/pr92726-1.c: New file,
6831 subsuming...
6832 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: ... this file.
6833
32128577
TS
6834 * oacc-mem.c (GOACC_enter_exit_data): Simplify 'exit data'
6835 'finalize' handling.
6836
ba40277f
TS
6837 PR libgomp/92848
6838 * oacc-mem.c (acc_map_data, present_create_copy)
6839 (goacc_insert_pointer): Use 'GOMP_MAP_VARS_ENTER_DATA'.
6840 (acc_unmap_data, delete_copyout, goacc_remove_pointer): Adjust.
6841 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Remove.
6842 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-a.c: New file
6843 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-d-p.c: Likewise.
6844 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-a.c: Likewise.
6845 * testsuite/libgomp.oacc-c-c++-common/pr92848-1-r-p.c: Likewise.
6846 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
6847 Remove "XFAIL"s.
6848
6278b549
TS
6849 * target.c (gomp_unmap_tgt): Make it 'static'.
6850 * libgomp.h (gomp_unmap_tgt): Remove.
6851
c80c9e26
TB
68522019-12-18 Tobias Burnus <tobias@codesourcery.com>
6853
6854 PR middle-end/86416
6855 * testsuite/libgomp.c/pr86416-1.c: New.
6856 * testsuite/libgomp.c/pr86416-2.c: New.
6857
0b8499a4
TB
68582019-12-17 Tobias Burnus <tobias@codesourcery.com>
6859
6860 * config/accel/openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark
6861 all symbols as public except for the 'use …, only' imported symbol,
6862 which is private.
6863 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
6864 all symbols from module openacc_kinds as PUBLIC
6865 * openacc.f90: Add comment with crossref to that file and openmp_lib.h;
6866 fix comment typo.
6867 * openacc_lib.h (acc_device_gcn): Add this PARAMETER.
6868
1cbd94e8
JB
68692019-12-13 Julian Brown <julian@codesourcery.com>
6870
6871 PR libgomp/92881
6872
6873 * libgomp.h (gomp_remove_var_async): Add prototype.
6874 * oacc-mem.c (delete_copyout): Call gomp_remove_var_async instead of
6875 gomp_remove_var.
6876 * target.c (gomp_unref_tgt): Change return type to bool, indicating
6877 whether target_mem_desc was unmapped.
6878 (gomp_unref_tgt_void): New.
6879 (gomp_remove_var): Reimplement in terms of...
6880 (gomp_remove_var_internal): ...this new helper function.
6881 (gomp_remove_var_async): New, implemented using above helper function.
6882 (gomp_unmap_vars_internal): Use gomp_unref_tgt_void instead of
6883 gomp_unref_tgt.
6884
26b74ed0
AS
68852019-12-13 Andrew Stubbs <ams@codesourcery.com>
6886
6887 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Handle gcn.
6888 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c: Likewise.
6889 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c: Likewise.
6890 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Likewise.
6891 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c:
6892 Likewise.
6893 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Disable on GCN.
6894 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Likewise.
6895
7858bb96
TB
68962019-12-13 Tobias Burnus <tobias@codesourcery.com>
6897
6898 * openacc.f90 (module openacc_kinds): Use 'PUBLIC' to mark all symbols
6899 as public except for the 'use …, only' imported symbol, which is
6900 private.
6901 (module openacc): Default to 'PRIVATE' to exclude openacc_internal; mark
6902 all symbols from module openacc_kinds as PUBLIC; add missing PUBLIC
6903 attributes for acc_copyout_finalize and acc_delete_finalize.
6904
f8ac7d8f
JJ
69052019-12-11 Jakub Jelinek <jakub@redhat.com>
6906
6907 PR fortran/92899
6908 * testsuite/libgomp.fortran/atomic1.f90: New test.
6909
3d1b5e71
TS
69102019-12-11 Thomas Schwinge <thomas@codesourcery.com>
6911
d6e8c01c
TS
6912 PR libgomp/92843
6913 * oacc-mem.c (present_create_copy, delete_copyout): Fix dynamic
6914 reference counting for structured 'REFCOUNT_INFINITY'. Add some
6915 assertions.
6916 (goacc_insert_pointer, goacc_remove_pointer): Adjust accordingly.
6917 * testsuite/libgomp.oacc-c-c++-common/pr92843-1.c: New file.
6918 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Fix OpenACC.
6919 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
6920 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
6921
57963e39
TS
6922 * oacc-parallel.c (find_pointer, GOACC_enter_exit_data): Move...
6923 * oacc-mem.c: ... here.
6924 (gomp_acc_insert_pointer, gomp_acc_remove_pointer): Rename to
6925 'goacc_insert_pointer', 'goacc_remove_pointer', and make 'static'.
6926 * libgomp.h (gomp_acc_insert_pointer, gomp_acc_remove_pointer):
6927 Remove.
6928 * libgomp_g.h: Update.
6929
c5578b56
TS
6930 * oacc-parallel.c (GOACC_wait, goacc_wait): Move...
6931 * oacc-async.c: ... here.
6932 * oacc-int.h (goacc_wait): Declare.
6933 * libgomp_g.h: Update
6934
3d1b5e71
TS
6935 PR libgomp/92854
6936 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-1.c:
6937 New file.
6938 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-2.c:
6939 Likewise.
6940 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-device_already-3.c:
6941 Likewise.
6942 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-1.c:
6943 Likewise.
6944 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-2.c:
6945 Likewise.
6946 * testsuite/libgomp.oacc-c-c++-common/acc_map_data-host_already-3.c:
6947 Likewise.
6948
5e939438
TS
69492019-12-11 Thomas Schwinge <thomas@codesourcery.com>
6950 Julian Brown <julian@codesourcery.com>
6951
6952 * target.c (gomp_load_image_to_device, omp_target_associate_ptr):
6953 Initialize 'dynamic_refcount' whenever we initialize 'refcount'.
6954
93d90219
TB
69552019-12-11 Tobias Burnus <tobias@codesourcery.com>
6956
6957 * omp_lib.h.in: Fix spelling of function declaration
6958 omp_get_cancell(l)ation.
6959 * libgomp.texi (acc_is_present, acc_async_test, acc_async_test_all):
6960 Fix typos.
6961 * env.c: Fix comment typos.
6962 * oacc-host.c: Likewise.
6963 * ordered.c: Likewise.
6964 * task.c: Likewise.
6965 * team.c: Likewise.
6966 * config/gcn/task.c: Likewise.
6967 * config/gcn/team.c: Likewise.
6968 * config/nvptx/task.c: Likewise.
6969 * config/nvptx/team.c: Likewise.
6970 * plugin/plugin-gcn.c: Likewise.
6971 * testsuite/libgomp.fortran/jacobi.f: Likewise.
6972 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
6973 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: Likewise.
6974
a0221aee
TB
69752019-12-11 Tobias Burnus <tobias@codesourcery.com>
6976
6977 * testsuite/libgomp.oacc-fortran/optional-cache.f95: Add 'dg-do run'.
6978 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: Remove
6979 unnecessary 'dg-additional-options "-w"'.
6980
47afc7b4
TS
69812019-12-09 Thomas Schwinge <thomas@codesourcery.com>
6982 Julian Brown <julian@codesourcery.com>
6983
6984 PR libgomp/92116
6985 PR libgomp/92877
6986
6987 * oacc-mem.c (lookup_dev): Reimplement. Adjust all users.
6988 * libgomp.h (struct acc_dispatch_t): Remove 'data_environ' member.
6989 Adjust all users.
6990 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
6991 Remove XFAIL.
6992 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
6993 Likewise.
6994 * testsuite/libgomp.oacc-c-c++-common/pr92877-1.c: New file.
6995
b5859e40
TS
69962019-12-09 Thomas Schwinge <thomas@codesourcery.com>
6997
cec41816
TS
6998 PR libgomp/92503
6999 * oacc-mem.c (acc_free): Error out instead of 'acc_unmap_data'.
7000 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-1.c: New
7001 file.
7002 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-2.c:
7003 Likewise.
7004 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3-2.c:
7005 Likewise.
7006 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-3.c:
7007 Likewise.
7008 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4-2.c:
7009 Likewise.
7010 * testsuite/libgomp.oacc-c-c++-common/acc_free-pr92503-4.c:
7011 Likewise.
7012 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
7013 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
7014 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
7015 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
7016 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
7017 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
7018 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
7019 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
7020 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
7021 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
7022
e103542b
TS
7023 PR libgomp/92840
7024 * oacc-mem.c (acc_map_data): Clarify reference counting behavior.
7025 (acc_unmap_data): Add error case for 'REFCOUNT_INFINITY'.
7026 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-1.c:
7027 New file.
7028 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-2.c:
7029 Likewise.
7030 * testsuite/libgomp.oacc-c-c++-common/acc_unmap_data-pr92840-3.c:
7031 Likewise.
7032 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Adjust.
7033 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Adjust.
7034
41f36f22
TS
7035 PR libgomp/92511
7036 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: Remove
7037 this file...
7038 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: ..., and
7039 this file...
7040 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: ..., and this
7041 file...
7042 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: ..., and this
7043 file...
7044 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-p.c:
7045 ... with their content moved into, and extended in this new file.
7046 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-a.c:
7047 New file.
7048 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-d-p.c:
7049 Likewise.
7050 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-1-r-a.c:
7051 Likewise.
7052 * testsuite/libgomp.oacc-c-c++-common/subset-subarray-mappings-2.c:
7053 Likewise.
7054
6effebe1
TS
7055 * testsuite/libgomp.oacc-c-c++-common/map-data-1.c: New file.
7056
7d020473
TS
7057 PR libgomp/92854
7058 * testsuite/libgomp.oacc-c-c++-common/pr92854-1.c: New file.
7059
1e1fb715
TS
7060 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New file.
7061
b5859e40
TS
7062 * target.c (gomp_exit_data): Use 'gomp_remove_var'.
7063
11586ed9
TB
70642019-12-09 Tobias Burnus <tobias@codesourcery.com>
7065
7066 * testsuite/libgomp.fortran/use_device_addr-3.f90: Make 'stop' codes
7067 unique.
7068 * testsuite/libgomp.fortran/use_device_addr-4.f90: Ditto.
7069 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: Ditto.
7070 * testsuite/libgomp.oacc-fortran/declare-5.f90: Ditto.
7071 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90:
7072 Ditto.
7073 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: Ditto.
7074 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: Ditto.
7075
3ad4a03a
KCY
70762019-12-06 Kwok Cheung Yeung <kcy@codesourcery.com>
7077
7078 * config/accel/proc.c (omp_get_num_procs): Apply ialias macro.
7079
6e4d01d6
TB
70802019-12-06 Tobias Burnus <tobias@codesourcery.com>
7081 Kwok Cheung Yeung <kcy@codesourcery.com>
7082
7083 * oacc-mem.c (update_dev_host, gomp_acc_insert_pointer): Just return
7084 if input it a NULL pointer.
7085 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Remove; dependent on
7086 diagnostic of NULL pointer.
7087 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Ditto.
7088 * testsuite/libgomp.fortran/optional-map.f90: New.
7089 * testsuite/libgomp.fortran/use_device_addr-1.f90
7090 (test_dummy_opt_callee_1_absent): New.
7091 (test_dummy_opt_call_1): Call it.
7092 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
7093 * testsuite/libgomp.fortran/use_device_addr-3.f90: Likewise.
7094 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
7095 * testsuite/libgomp.oacc-fortran/optional-cache.f95: New.
7096 * testsuite/libgomp.oacc-fortran/optional-data-copyin-by-value.f90: New.
7097 * testsuite/libgomp.oacc-fortran/optional-data-copyin.f90: New.
7098 * testsuite/libgomp.oacc-fortran/optional-data-copyout.f90: New.
7099 * testsuite/libgomp.oacc-fortran/optional-data-enter-exit.f90: New.
7100 * testsuite/libgomp.oacc-fortran/optional-declare.f90: New.
7101 * testsuite/libgomp.oacc-fortran/optional-firstprivate.f90: New.
7102 * testsuite/libgomp.oacc-fortran/optional-host_data.f90: New.
7103 * testsuite/libgomp.oacc-fortran/optional-nested-calls.f90: New.
7104 * testsuite/libgomp.oacc-fortran/optional-private.f90: New.
7105 * testsuite/libgomp.oacc-fortran/optional-reduction.f90: New.
7106 * testsuite/libgomp.oacc-fortran/optional-update-device.f90: New.
7107 * testsuite/libgomp.oacc-fortran/optional-update-host.f90: New.
7108
ad80ec46
TB
71092019-12-05 Tobias Burnus <tobias@codesourcery.com>
7110
7111 * testsuite/libgomp.oacc-fortran/error_stop-1.f: Also don't
7112 expect dg-output of 'Error termination.' for GCN.
7113 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
7114 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
7115
a8a5f4cc
JJ
71162019-12-04 Jakub Jelinek <jakub@redhat.com>
7117
7118 PR fortran/92756
7119 * testsuite/libgomp.fortran/teams1.f90: New test.
7120 * testsuite/libgomp.fortran/teams2.f90: New test.
7121
d8f0024b
FH
71222019-12-03 Frederik Harwath <frederik@codesourcery.com>
7123
7124 * oacc-init.c (acc_known_device_type): Add function.
7125 (unknown_device_type_error): Add function.
7126 (name_of_acc_device_t): Change to call unknown_device_type_error
7127 on unknown type.
7128 (resolve_device): Use acc_known_device_type.
7129 (acc_init): Fail if acc_device_t argument is not valid.
7130 (acc_shutdown): Likewise.
7131 (acc_get_num_devices): Likewise.
7132 (acc_set_device_type): Likewise.
7133 (acc_get_device_num): Likewise.
7134 (acc_set_device_num): Likewise.
7135 (acc_on_device): Add comment that argument validity is not checked.
7136
83caa34e
AS
71372019-12-03 Andrew Stubbs <ams@codesourcery.com>
7138
7139 * testsuite/lib/libgomp.exp (offload_target_to_openacc_device_type):
7140 Recognize amdgcn.
7141 (check_effective_target_openacc_amdgcn_accel_present): New proc.
7142 (check_effective_target_openacc_amdgcn_accel_selected): New proc.
7143 * testsuite/libgomp.oacc-c++/c++.exp: Add support for amdgcn.
7144 * testsuite/libgomp.oacc-c/c.exp: Likewise.
7145 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
7146
00484365
SN
71472019-12-03 Szabolcs Nagy <szabolcs.nagy@arm.com>
7148
7149 PR libgomp/91938
7150 * configure.tgt: Avoid IE tls on *-*-musl*.
7151
9909a059
TB
71522019-11-29 Tobias Burnus <tobias@codesourcery.com>
7153
7154 * testsuite/libgomp.oacc-fortran/declare-5.f90: Extend by
7155 adding a common-block test case.
7156
b3f44388
JJ
71572019-11-29 Jakub Jelinek <jakub@redhat.com>
7158
7159 PR c++/60228
7160 * testsuite/libgomp.c++/udr-20.C: New test.
7161 * testsuite/libgomp.c++/udr-21.C: New test.
7162
b1a73b48
TS
71632019-11-27 Thomas Schwinge <thomas@codesourcery.com>
7164
7165 * testsuite/lib/libgomp.exp
7166 (check_effective_target_offload_target_nvptx): New proc.
7167 * testsuite/libgomp.fortran/target-print-1.f90: Use it with
7168 'dg-skip-if'.
7169 * testsuite/libgomp.oacc-fortran/print-1.f90: Likewise.
7170 * testsuite/libgomp.fortran/target-print-1-nvptx.f90: New file.
7171 * testsuite/libgomp.oacc-fortran/print-1-nvptx.f90: Likewise.
7172
b8e72446
RO
71732019-11-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
7174
7175 * testsuite/libgomp.c/pr39591-1.c: Rename err to e.
7176 * testsuite/libgomp.c/pr39591-2.c: Likewise.
7177 * testsuite/libgomp.c/pr39591-3.c: Likewise.
7178 * testsuite/libgomp.c/private-1.c: Likewise.
7179 * testsuite/libgomp.c/task-1.c: Likewise.
7180 * testsuite/libgomp.c/task-5.c: Renamed err to serr.
7181
d88b27da
JB
71822019-11-20 Julian Brown <julian@codesourcery.com>
7183
7184 * plugin/plugin-gcn.c (wait_for_queue_nonfull): Don't lock/unlock
7185 aq->mutex here.
7186 (queue_push_launch): Lock aq->mutex before calling
7187 wait_for_queue_nonfull.
7188 (queue_push_callback): Likewise.
7189 (queue_push_asyncwait): Likewise.
7190 (queue_push_placeholder): Likewise.
7191
8d2f4ddf
JB
71922019-11-20 Julian Brown <julian@codesourcery.com>
7193
7194 * plugin/plugin-gcn.c (hsa_memory_copy_wrapper): New.
7195 (copy_data, GOMP_OFFLOAD_host2dev): Use above function.
7196 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_dev2dev): Check hsa_memory_copy
7197 return code.
7198
e307b05f
JB
71992019-11-20 Julian Brown <julian@codesourcery.com>
7200
7201 PR libgomp/92511
7202
7203 * oacc-mem.c (present_create_copy): Fix device pointer return value in
7204 case of "present" subarray. Use tgt->tgt_start instead of tgt->to_free
7205 in non-present/create case.
7206 (delete_copyout): Change error condition to fail only on copies outside
7207 of mapped block. Adjust error message accordingly.
7208 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-1.c: New test.
7209 * testsuite/libgomp.oacc-c-c++-common/copyin-devptr-2.c: New test.
7210 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Adjust expected error
7211 message.
7212 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
7213 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Allow test to pass now.
7214 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
7215
83115e9e
MR
72162019-11-20 Maciej W. Rozycki <macro@wdc.com>
7217
7218 * testsuite/lib/libgomp.exp (libgomp_init): Add flags to find
7219 libatomic in build-tree testing.
7220
a1289887
MR
72212019-11-18 Maciej W. Rozycki <macro@wdc.com>
7222
7223 * testsuite/Makefile.in: Regenerate.
7224
8916ba87
AS
72252019-11-15 Andrew Stubbs <ams@codesourcery.com>
7226
7227 * testsuite/libgomp.c/target-print-1.c: New file.
7228 * testsuite/libgomp.fortran/target-print-1.f90: New file.
7229 * testsuite/libgomp.oacc-c/print-1.c: New file.
7230 * testsuite/libgomp.oacc-fortran/print-1.f90: New file.
7231
237957cc
AS
72322019-11-13 Andrew Stubbs <ams@codesourcery.com>
7233 Kwok Cheung Yeung <kcy@codesourcery.com>
7234 Julian Brown <julian@codesourcery.com>
7235 Tom de Vries <tom@codesourcery.com>
7236
7237 * plugin/Makefrag.am: Add amdgcn plugin support.
7238 * plugin/configfrag.ac: Likewise.
7239 * plugin/plugin-gcn.c: New file.
7240 * configure: Regenerate.
7241 * Makefile.in: Regenerate.
7242 * testsuite/Makefile.in: Regenerate.
7243
cee16451
AS
72442019-11-13 Andrew Stubbs <ams@codesourcery.com>
7245
7246 * config/gcn/team.c (gomp_gcn_enter_kernel): Set up the team arena
7247 and use team_malloc variants.
7248 (gomp_gcn_exit_kernel): Use team_free.
7249 * libgomp.h (TEAM_ARENA_SIZE): Define.
7250 (TEAM_ARENA_START): Define.
7251 (TEAM_ARENA_FREE): Define.
7252 (TEAM_ARENA_END): Define.
7253 (team_malloc): New function.
7254 (team_malloc_cleared): New function.
7255 (team_free): New function.
7256 * team.c (gomp_new_team): Initialize and use team_malloc.
7257 (free_team): Use team_free.
7258 (gomp_free_thread): Use team_free.
7259 (gomp_pause_host): Use team_free.
7260 * work.c (gomp_init_work_share): Use team_malloc.
7261 (gomp_fini_work_share): Use team_free.
7262
fa499995
AS
72632019-11-13 Andrew Stubbs <ams@codesourcery.com>
7264 Kwok Cheung Yeung <kcy@codesourcery.com>
7265 Julian Brown <julian@codesourcery.com>
7266 Tom de Vries <tom@codesourcery.com>
7267
7268 * Makefile.am (libgomp_la_SOURCES): Add oacc-target.c.
7269 * Makefile.in: Regenerate.
7270 * config.h.in (PLUGIN_GCN): Add new undef.
7271 * config/accel/openacc.f90 (acc_device_gcn): New parameter.
7272 * config/gcn/affinity-fmt.c: New file.
7273 * config/gcn/bar.c: New file.
7274 * config/gcn/bar.h: New file.
7275 * config/gcn/doacross.h: New file.
7276 * config/gcn/icv-device.c: New file.
7277 * config/gcn/oacc-target.c: New file.
7278 * config/gcn/simple-bar.h: New file.
7279 * config/gcn/target.c: New file.
7280 * config/gcn/task.c: New file.
7281 * config/gcn/team.c: New file.
7282 * config/gcn/time.c: New file.
7283 * configure.ac: Add amdgcn*-*-*.
7284 * configure: Regenerate.
7285 * configure.tgt: Add amdgcn*-*-*.
7286 * libgomp-plugin.h (offload_target_type): Add OFFLOAD_TARGET_TYPE_GCN.
7287 * libgomp.h (gcn_thrs): Add amdgcn variant.
7288 (set_gcn_thrs): Likewise.
7289 (gomp_thread): Likewise.
7290 * oacc-int.h (goacc_thread): Likewise.
7291 * oacc-target.c: New file.
7292 * openacc.f90 (acc_device_gcn): New parameter.
7293 * openacc.h (acc_device_t): Add acc_device_gcn.
7294 * team.c (gomp_free_pool_helper): Add amdgcn support.
7295
d2903ce0
AS
72962019-11-13 Andrew Stubbs <ams@codesourcery.com>
7297 Julian Brown <julian@codesourcery.com>
7298
7299 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_async_construct): Add int
7300 parameter.
7301 * oacc-async.c (lookup_goacc_asyncqueue): Pass device number to the
7302 queue constructor.
7303 * oacc-host.c (host_openacc_async_construct): Add device parameter.
7304 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_openacc_async_construct): Add
7305 device parameter.
7306
b3d14b3a
AS
73072019-11-13 Andrew Stubbs <ams@codesourcery.com>
7308
7309 * configure.tgt (nvptx*-*-*): Add "accel" directory.
7310 * config/nvptx/libgomp-plugin.c: Move ...
7311 * config/accel/libgomp-plugin.c: ... to here.
7312 * config/nvptx/lock.c: Move ...
7313 * config/accel/lock.c: ... to here.
7314 * config/nvptx/mutex.c: Move ...
7315 * config/accel/mutex.c: ... to here.
7316 * config/nvptx/mutex.h: Move ...
7317 * config/accel/mutex.h: ... to here.
7318 * config/nvptx/oacc-async.c: Move ...
7319 * config/accel/oacc-async.c: ... to here.
7320 * config/nvptx/oacc-cuda.c: Move ...
7321 * config/accel/oacc-cuda.c: ... to here.
7322 * config/nvptx/oacc-host.c: Move ...
7323 * config/accel/oacc-host.c: ... to here.
7324 * config/nvptx/oacc-init.c: Move ...
7325 * config/accel/oacc-init.c: ... to here.
7326 * config/nvptx/oacc-mem.c: Move ...
7327 * config/accel/oacc-mem.c: ... to here.
7328 * config/nvptx/oacc-plugin.c: Move ...
7329 * config/accel/oacc-plugin.c: ... to here.
7330 * config/nvptx/omp-lock.h: Move ...
7331 * config/accel/omp-lock.h: ... to here.
7332 * config/nvptx/openacc.f90: Move ...
7333 * config/accel/openacc.f90: ... to here.
7334 * config/nvptx/pool.h: Move ...
7335 * config/accel/pool.h: ... to here.
7336 * config/nvptx/proc.c: Move ...
7337 * config/accel/proc.c: ... to here.
7338 * config/nvptx/ptrlock.c: Move ...
7339 * config/accel/ptrlock.c: ... to here.
7340 * config/nvptx/ptrlock.h: Move ...
7341 * config/accel/ptrlock.h: ... to here.
7342 * config/nvptx/sem.c: Move ...
7343 * config/accel/sem.c: ... to here.
7344 * config/nvptx/sem.h: Move ...
7345 * config/accel/sem.h: ... to here.
7346 * config/nvptx/thread-stacksize.h: Move ...
7347 * config/accel/thread-stacksize.h: ... to here.
7348
62aee289
MR
73492019-11-12 Maciej W. Rozycki <macro@codesourcery.com>
7350 Tobias Burnus <tobias@codesourcery.com>
7351 Frederik Harwath <frederik@codesourcery.com>
7352 Thomas Schwinge <thomas@codesourcery.com>
7353
7354 libgomp/
7355 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New test.
7356 * testsuite/libgomp.oacc-fortran/parallel-dims-aux.c: New test.
7357 * testsuite/libgomp.oacc-fortran/parallel-dims.f89: New test.
7358
a2c26c50
TB
73592019-11-11 Tobias Burnus <tobias@codesourcery.com>
7360 Kwok Cheung Yeung <kcy@codesourcery.com>
7361
7362 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90: Extend.
7363 * testsuite/libgomp.fortran/use_device_ptr-optional-2.f90: New.
7364
6d4868f3
TS
73652019-11-11 Thomas Schwinge <thomas@codesourcery.com>
7366
bfa1837b
TS
7367 * testsuite/libgomp.fortran/target9.f90: Specify 'dg-do run'.
7368
6d4868f3
TS
7369 * testsuite/libgomp.fortran/use_device_addr-3.f90: Specify 'dg-do
7370 run'.
7371 * testsuite/libgomp.fortran/use_device_addr-4.f90: Likewise.
7372 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Likewise.
7373
5d183d17
FH
73742019-11-06 Thomas Schwinge <thomas@codesourcery.com>
7375
7376 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c:
7377 Add expected warnings about missing reduction clauses.
7378 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
7379 Likewise.
7380 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c:
7381 Likewise.
7382 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c:
7383 Likewise.
7384
d8f03b03
TB
73852019-11-04 Tobias Burnus <tobias@codesourcery.com>
7386
7387 * testsuite/libgomp.fortran/pr66199-1.f90: Remove
7388 'dg-do run' (implies torture test) as 'dg-options "O2"' is used.
7389 * testsuite/libgomp.fortran/pr66199-2.f90: Ditto.
7390 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
7391 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
7392 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
7393
12fd2ec5
TB
73942019-11-04 Tobias Burnus <tobias@codesourcery.com>
7395
7396 PR fortran/92305
7397 * testsuite/libgomp.fortran/allocatable2.f90: Use
7398 unique numbers with 'stop'.
7399 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
7400 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
7401 * testsuite/libgomp.fortran/use_device_ptr-1.f90: Ditto.
7402 * testsuite/libgomp.oacc-fortran/lib-15.f90: Ditto.
7403 * testsuite/libgomp.oacc-fortran/pset-1.f90: Ditto.
7404
92e63bd2
TB
74052019-11-01 Tobias Burnus <tobias@codesourcery.com>
7406
7407 * testsuite/libgomp.fortran/use_device_addr-1.f90 (test_nullptr_1,
7408 test_dummy_opt_nullptr_callee_1): Add present but unallocated test.
7409 * testsuite/libgomp.fortran/use_device_addr-2.f90: Likewise.
7410 * testsuite/libgomp.fortran/use_device_addr-3.f90: New.
7411 * testsuite/libgomp.fortran/use_device_addr-4.f90: New.
7412 * testsuite/testsuite/libgomp.fortran/use_device_ptr-1.f90: New.
7413
91ae0a46
TB
74142019-10-30 Tobias Burnus <tobias@codesourcery.com>
7415
7416 * testsuite/libgomp.fortran/target9.f90: New.
7417
c425e66b
TB
74182019-10-30 Tobias Burnus <tobias@codesourcery.com>
7419
7420 * testsuite/libgomp.fortran/aligned1.f03: Replace 'STOP' by 'stop'.
7421 * testsuite/libgomp.fortran/alloc-comp-1.f90: Ditto.
7422 * testsuite/libgomp.fortran/alloc-comp-2.f90: Ditto.
7423 * testsuite/libgomp.fortran/alloc-comp-3.f90: Ditto.
7424 * testsuite/libgomp.fortran/allocatable1.f90: Ditto.
7425 * testsuite/libgomp.fortran/allocatable10.f90: Ditto.
7426 * testsuite/libgomp.fortran/allocatable11.f90: Ditto.
7427 * testsuite/libgomp.fortran/allocatable12.f90: Ditto.
7428 * testsuite/libgomp.fortran/allocatable2.f90: Ditto.
7429 * testsuite/libgomp.fortran/allocatable3.f90: Ditto.
7430 * testsuite/libgomp.fortran/allocatable4.f90: Ditto.
7431 * testsuite/libgomp.fortran/allocatable5.f90: Ditto.
7432 * testsuite/libgomp.fortran/allocatable6.f90: Ditto.
7433 * testsuite/libgomp.fortran/allocatable7.f90: Ditto.
7434 * testsuite/libgomp.fortran/allocatable8.f90: Ditto.
7435 * testsuite/libgomp.fortran/allocatable9.f90: Ditto.
7436 * testsuite/libgomp.fortran/associate1.f90: Ditto.
7437 * testsuite/libgomp.fortran/associate2.f90: Ditto.
7438 * testsuite/libgomp.fortran/associate3.f90: Ditto.
7439 * testsuite/libgomp.fortran/async_io_4.f90: Ditto.
7440 * testsuite/libgomp.fortran/async_io_5.f90: Ditto.
7441 * testsuite/libgomp.fortran/async_io_6.f90: Ditto.
7442 * testsuite/libgomp.fortran/async_io_7.f90: Ditto.
7443 * testsuite/libgomp.fortran/cancel-do-1.f90: Ditto.
7444 * testsuite/libgomp.fortran/cancel-do-2.f90: Ditto.
7445 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Ditto.
7446 * testsuite/libgomp.fortran/cancel-sections-1.f90: Ditto.
7447 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Ditto.
7448 * testsuite/libgomp.fortran/character1.f90: Ditto.
7449 * testsuite/libgomp.fortran/character2.f90: Ditto.
7450 * testsuite/libgomp.fortran/collapse1.f90: Ditto.
7451 * testsuite/libgomp.fortran/collapse2.f90: Ditto.
7452 * testsuite/libgomp.fortran/collapse3.f90: Ditto.
7453 * testsuite/libgomp.fortran/collapse4.f90: Ditto.
7454 * testsuite/libgomp.fortran/crayptr1.f90: Ditto.
7455 * testsuite/libgomp.fortran/crayptr2.f90: Ditto.
7456 * testsuite/libgomp.fortran/crayptr3.f90: Ditto.
7457 * testsuite/libgomp.fortran/declare-simd-1.f90: Ditto.
7458 * testsuite/libgomp.fortran/declare-simd-3.f90: Ditto.
7459 * testsuite/libgomp.fortran/declare-target-2.f90: Ditto.
7460 * testsuite/libgomp.fortran/depend-1.f90: Ditto.
7461 * testsuite/libgomp.fortran/depend-2.f90: Ditto.
7462 * testsuite/libgomp.fortran/depend-3.f90: Ditto.
7463 * testsuite/libgomp.fortran/do1.f90: Ditto.
7464 * testsuite/libgomp.fortran/do2.f90: Ditto.
7465 * testsuite/libgomp.fortran/do_concurrent_5.f90: Ditto.
7466 * testsuite/libgomp.fortran/doacross1.f90: Ditto.
7467 * testsuite/libgomp.fortran/doacross2.f90: Ditto.
7468 * testsuite/libgomp.fortran/doacross3.f90: Ditto.
7469 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Ditto.
7470 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Ditto.
7471 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Ditto.
7472 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Ditto.
7473 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Ditto.
7474 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Ditto.
7475 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Ditto.
7476 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Ditto.
7477 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Ditto.
7478 * testsuite/libgomp.fortran/examples-4/device-1.f90: Ditto.
7479 * testsuite/libgomp.fortran/examples-4/device-2.f90: Ditto.
7480 * testsuite/libgomp.fortran/examples-4/device-3.f90: Ditto.
7481 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Ditto.
7482 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Ditto.
7483 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Ditto.
7484 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Ditto.
7485 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Ditto.
7486 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Ditto.
7487 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Ditto.
7488 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Ditto.
7489 * testsuite/libgomp.fortran/examples-4/target-1.f90: Ditto.
7490 * testsuite/libgomp.fortran/examples-4/target-2.f90: Ditto.
7491 * testsuite/libgomp.fortran/examples-4/target-3.f90: Ditto.
7492 * testsuite/libgomp.fortran/examples-4/target-4.f90: Ditto.
7493 * testsuite/libgomp.fortran/examples-4/target-5.f90: Ditto.
7494 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Ditto.
7495 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Ditto.
7496 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Ditto.
7497 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Ditto.
7498 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Ditto.
7499 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Ditto.
7500 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Ditto.
7501 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Ditto.
7502 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Ditto.
7503 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Ditto.
7504 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Ditto.
7505 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Ditto.
7506 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Ditto.
7507 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Ditto.
7508 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Ditto.
7509 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Ditto.
7510 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Ditto.
7511 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Ditto.
7512 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Ditto.
7513 * testsuite/libgomp.fortran/lastprivate1.f90: Ditto.
7514 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
7515 * testsuite/libgomp.fortran/lib1.f90: Ditto.
7516 * testsuite/libgomp.fortran/lib4.f90: Ditto.
7517 * testsuite/libgomp.fortran/lock-1.f90: Ditto.
7518 * testsuite/libgomp.fortran/lock-2.f90: Ditto.
7519 * testsuite/libgomp.fortran/nested1.f90: Ditto.
7520 * testsuite/libgomp.fortran/nestedfn1.f90: Ditto.
7521 * testsuite/libgomp.fortran/nestedfn2.f90: Ditto.
7522 * testsuite/libgomp.fortran/nestedfn3.f90: Ditto.
7523 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
7524 * testsuite/libgomp.fortran/nestedfn5.f90: Ditto.
7525 * testsuite/libgomp.fortran/omp_atomic1.f90: Ditto.
7526 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
7527 * testsuite/libgomp.fortran/omp_atomic3.f90: Ditto.
7528 * testsuite/libgomp.fortran/omp_atomic4.f90: Ditto.
7529 * testsuite/libgomp.fortran/omp_atomic5.f90: Ditto.
7530 * testsuite/libgomp.fortran/omp_cond1.f: Ditto.
7531 * testsuite/libgomp.fortran/omp_cond2.f: Ditto.
7532 * testsuite/libgomp.fortran/omp_cond3.F90: Ditto.
7533 * testsuite/libgomp.fortran/omp_cond4.F90: Ditto.
7534 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
7535 * testsuite/libgomp.fortran/omp_parse2.f90: Ditto.
7536 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
7537 * testsuite/libgomp.fortran/omp_parse4.f90: Ditto.
7538 * testsuite/libgomp.fortran/openmp_version-1.f: Ditto.
7539 * testsuite/libgomp.fortran/openmp_version-2.f90: Ditto.
7540 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Ditto.
7541 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Ditto.
7542 * testsuite/libgomp.fortran/pointer1.f90: Ditto.
7543 * testsuite/libgomp.fortran/pointer2.f90: Ditto.
7544 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
7545 * testsuite/libgomp.fortran/pr27395-1.f90: Ditto.
7546 * testsuite/libgomp.fortran/pr27395-2.f90: Ditto.
7547 * testsuite/libgomp.fortran/pr27416-1.f90: Ditto.
7548 * testsuite/libgomp.fortran/pr27916-1.f90: Ditto.
7549 * testsuite/libgomp.fortran/pr27916-2.f90: Ditto.
7550 * testsuite/libgomp.fortran/pr28390.f: Ditto.
7551 * testsuite/libgomp.fortran/pr29629.f90: Ditto.
7552 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
7553 * testsuite/libgomp.fortran/pr33880.f90: Ditto.
7554 * testsuite/libgomp.fortran/pr34020.f90: Ditto.
7555 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
7556 * testsuite/libgomp.fortran/pr42162.f90: Ditto.
7557 * testsuite/libgomp.fortran/pr46753.f90: Ditto.
7558 * testsuite/libgomp.fortran/pr48894.f90: Ditto.
7559 * testsuite/libgomp.fortran/pr49792-1.f90: Ditto.
7560 * testsuite/libgomp.fortran/pr49792-2.f90: Ditto.
7561 * testsuite/libgomp.fortran/pr63938-1.f90: Ditto.
7562 * testsuite/libgomp.fortran/pr63938-2.f90: Ditto.
7563 * testsuite/libgomp.fortran/pr65597.f90: Ditto.
7564 * testsuite/libgomp.fortran/pr66199-1.f90: Ditto.
7565 * testsuite/libgomp.fortran/pr71014.f90: Ditto.
7566 * testsuite/libgomp.fortran/pr81304.f90: Ditto.
7567 * testsuite/libgomp.fortran/pr81841.f90: Ditto.
7568 * testsuite/libgomp.fortran/pr84418-1.f90: Ditto.
7569 * testsuite/libgomp.fortran/pr84418-2.f90: Ditto.
7570 * testsuite/libgomp.fortran/procptr1.f90: Ditto.
7571 * testsuite/libgomp.fortran/recursion1.f90: Ditto.
7572 * testsuite/libgomp.fortran/reduction1.f90: Ditto.
7573 * testsuite/libgomp.fortran/reduction2.f90: Ditto.
7574 * testsuite/libgomp.fortran/reduction3.f90: Ditto.
7575 * testsuite/libgomp.fortran/reduction4.f90: Ditto.
7576 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
7577 * testsuite/libgomp.fortran/reduction6.f90: Ditto.
7578 * testsuite/libgomp.fortran/reference1.f90: Ditto.
7579 * testsuite/libgomp.fortran/reference2.f90: Ditto.
7580 * testsuite/libgomp.fortran/retval1.f90: Ditto.
7581 * testsuite/libgomp.fortran/retval2.f90: Ditto.
7582 * testsuite/libgomp.fortran/sharing1.f90: Ditto.
7583 * testsuite/libgomp.fortran/sharing2.f90: Ditto.
7584 * testsuite/libgomp.fortran/simd1.f90: Ditto.
7585 * testsuite/libgomp.fortran/simd2.f90: Ditto.
7586 * testsuite/libgomp.fortran/simd3.f90: Ditto.
7587 * testsuite/libgomp.fortran/simd4.f90: Ditto.
7588 * testsuite/libgomp.fortran/simd5.f90: Ditto.
7589 * testsuite/libgomp.fortran/simd6.f90: Ditto.
7590 * testsuite/libgomp.fortran/simd7.f90: Ditto.
7591 * testsuite/libgomp.fortran/stack.f90: Ditto.
7592 * testsuite/libgomp.fortran/strassen.f90: Ditto.
7593 * testsuite/libgomp.fortran/tabs1.f90: Ditto.
7594 * testsuite/libgomp.fortran/tabs2.f: Ditto.
7595 * testsuite/libgomp.fortran/target1.f90: Ditto.
7596 * testsuite/libgomp.fortran/target2.f90: Ditto.
7597 * testsuite/libgomp.fortran/target3.f90: Ditto.
7598 * testsuite/libgomp.fortran/target4.f90: Ditto.
7599 * testsuite/libgomp.fortran/target5.f90: Ditto.
7600 * testsuite/libgomp.fortran/target6.f90: Ditto.
7601 * testsuite/libgomp.fortran/target7.f90: Ditto.
7602 * testsuite/libgomp.fortran/target8.f90: Ditto.
7603 * testsuite/libgomp.fortran/task1.f90: Ditto.
7604 * testsuite/libgomp.fortran/task2.f90: Ditto.
7605 * testsuite/libgomp.fortran/task3.f90: Ditto.
7606 * testsuite/libgomp.fortran/task4.f90: Ditto.
7607 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
7608 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
7609 * testsuite/libgomp.fortran/taskloop2.f90: Ditto.
7610 * testsuite/libgomp.fortran/taskloop3.f90: Ditto.
7611 * testsuite/libgomp.fortran/taskloop4.f90: Ditto.
7612 * testsuite/libgomp.fortran/threadprivate1.f90: Ditto.
7613 * testsuite/libgomp.fortran/threadprivate2.f90: Ditto.
7614 * testsuite/libgomp.fortran/threadprivate3.f90: Ditto.
7615 * testsuite/libgomp.fortran/threadprivate4.f90: Ditto.
7616 * testsuite/libgomp.fortran/udr1.f90: Ditto.
7617 * testsuite/libgomp.fortran/udr10.f90: Ditto.
7618 * testsuite/libgomp.fortran/udr11.f90: Ditto.
7619 * testsuite/libgomp.fortran/udr12.f90: Ditto.
7620 * testsuite/libgomp.fortran/udr13.f90: Ditto.
7621 * testsuite/libgomp.fortran/udr14.f90: Ditto.
7622 * testsuite/libgomp.fortran/udr15.f90: Ditto.
7623 * testsuite/libgomp.fortran/udr2.f90: Ditto.
7624 * testsuite/libgomp.fortran/udr3.f90: Ditto.
7625 * testsuite/libgomp.fortran/udr4.f90: Ditto.
7626 * testsuite/libgomp.fortran/udr5.f90: Ditto.
7627 * testsuite/libgomp.fortran/udr6.f90: Ditto.
7628 * testsuite/libgomp.fortran/udr7.f90: Ditto.
7629 * testsuite/libgomp.fortran/udr8.f90: Ditto.
7630 * testsuite/libgomp.fortran/udr9.f90: Ditto.
7631 * testsuite/libgomp.fortran/vla1.f90: Ditto.
7632 * testsuite/libgomp.fortran/vla2.f90: Ditto.
7633 * testsuite/libgomp.fortran/vla3.f90: Ditto.
7634 * testsuite/libgomp.fortran/vla4.f90: Ditto.
7635 * testsuite/libgomp.fortran/vla5.f90: Ditto.
7636 * testsuite/libgomp.fortran/vla6.f90: Ditto.
7637 * testsuite/libgomp.fortran/vla7.f90: Ditto.
7638 * testsuite/libgomp.fortran/vla8.f90: Ditto.
7639 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
7640 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
7641
01509e2f
TB
76422019-10-30 Tobias Burnus <tobias@codesourcery.com>
7643
7644 * testsuite/libgomp.fortran/target-simd.f90: Use stop not abort.
7645 * testsuite/libgomp.fortran/use_device_ptr-optional-1.f90:
7646 Ditto; add 'dg-do run' for torture testing.
7647 * testsuite/libgomp.fortran/lastprivate1.f90: Add 'dg-do run'.
7648 * testsuite/libgomp.fortran/lastprivate2.f90: Ditto.
7649 * testsuite/libgomp.fortran/nestedfn4.f90: Ditto.
7650 * testsuite/libgomp.fortran/pr25219.f90: Ditto.
7651 * testsuite/libgomp.fortran/pr28390.f: Ditto.
7652 * testsuite/libgomp.fortran/pr35130.f90: Ditto.
7653 * testsuite/libgomp.fortran/pr90779.f90: Ditto.
7654 * testsuite/libgomp.fortran/task2.f90: Ditto.
7655 * testsuite/libgomp.fortran/taskgroup1.f90: Ditto.
7656 * testsuite/libgomp.fortran/taskloop1.f90: Ditto.
7657 * testsuite/libgomp.fortran/use_device_addr-1.f90: Ditto.
7658 * testsuite/libgomp.fortran/use_device_addr-2.f90: Ditto.
7659 * testsuite/libgomp.fortran/workshare1.f90: Ditto.
7660 * testsuite/libgomp.fortran/workshare2.f90: Ditto.
7661
ffbdd78a
TB
76622019-10-28 Tobias Burnus <tobias@codesourcery.com>
7663
7664 * testsuite/libgomp.oacc-fortran/abort-1.f90: Add 'dg-do run'.
7665 * testsuite/libgomp.oacc-fortran/abort-2.f90: Ditto.
7666 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Ditto.
7667 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f90: Ditto.
7668 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f90: Ditto.
7669 * testsuite/libgomp.oacc-fortran/lib-1.f90: Ditto.
7670 * testsuite/libgomp.oacc-fortran/common-block-1.f90:
7671 Use 'stop' not abort().
7672 * testsuite/libgomp.oacc-fortran/common-block-2.f90: Ditto.
7673 * testsuite/libgomp.oacc-fortran/common-block-3.f90: Ditto.
7674 * testsuite/libgomp.oacc-fortran/data-1.f90: Ditto.
7675 * testsuite/libgomp.oacc-fortran/data-2.f90: Ditto.
7676 * testsuite/libgomp.oacc-fortran/data-5.f90: Ditto.
7677 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Ditto.
7678 * testsuite/libgomp.oacc-fortran/gemm-2.f90: Ditto.
7679 * testsuite/libgomp.oacc-fortran/gemm.f90: Ditto.
7680 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Ditto.
7681 * testsuite/libgomp.oacc-fortran/host_data-3.f90: Ditto.
7682 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Ditto.
7683 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Ditto.
7684 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Ditto.
7685 * testsuite/libgomp.oacc-fortran/kernels-independent.f90: Ditto.
7686 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Ditto.
7687 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Ditto.
7688 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
7689 Ditto.
7690 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
7691 Ditto.
7692 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
7693 Ditto.
7694 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
7695 Ditto.
7696 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
7697 Ditto.
7698 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-1.f90:
7699 Ditto.
7700 * testsuite/libgomp.oacc-fortran/kernels-private-vars-vector-2.f90:
7701 Ditto.
7702 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-1.f90:
7703 Ditto.
7704 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-2.f90:
7705 Ditto.
7706 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-3.f90:
7707 Ditto.
7708 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-4.f90:
7709 Ditto.
7710 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-5.f90:
7711 Ditto.
7712 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-6.f90:
7713 Ditto.
7714 * testsuite/libgomp.oacc-fortran/kernels-private-vars-worker-7.f90:
7715 Ditto.
7716 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90: Ditto.
7717 * testsuite/libgomp.oacc-fortran/lib-12.f90: Ditto.
7718 * testsuite/libgomp.oacc-fortran/lib-13.f90: Ditto.
7719 * testsuite/libgomp.oacc-fortran/lib-14.f90: Ditto.
7720 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
7721 Likewise and also add 'dg-do run'.
7722 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
7723 Ditto.
7724
ec084613
CP
77252019-10-25 Cesar Philippidis <cesar@codesourcery.com>
7726 Tobias Burnus <tobias@codesourcery.com>
7727
7728 * testsuite/libgomp.oacc-fortran/common-block-1.f90: New test.
7729 * testsuite/libgomp.oacc-fortran/common-block-2.f90: New test.
7730 * testsuite/libgomp.oacc-fortran/common-block-3.f90: New test.
7731
77ef3394
JJ
77322019-10-14 Jakub Jelinek <jakub@redhat.com>
7733
7734 PR libgomp/92081
7735 * testsuite/libgomp.fortran/target-simd.f90: Iterate from 1 rather
7736 than 0.
7737
08c14aaa
TB
77382019-10-11 Tobias Burnus <tobias@codesourcery.com>
7739
7740 * testsuite/libgomp.fortran/use_device_addr-1.f90: New.
7741 * testsuite/libgomp.fortran/use_device_addr-2.f90: New.
7742
6bbead0c
TS
77432019-10-09 Thomas Schwinge <thomas@codesourcery.com>
7744
7745 PR middle-end/92036
7746 * testsuite/libgomp.oacc-c-c++-common/data-firstprivate-1.c: New
7747 file.
7748
eba3dee8
TB
77492019-10-09 Tobias Burnus <tobias@codesourcery.com>
7750
7751 PR testsuite/91884
7752 * testsuite/libgomp.fortran/fortran.exp: Conditionally
7753 add -lquadmath.
7754 * testsuite/libgomp.oacc-fortran/fortran.exp: Ditto.
7755
7d48e14f
JJ
77562019-10-09 Jakub Jelinek <jakub@redhat.com>
7757
7758 PR libgomp/92028
7759 * target.c (gomp_map_vars_internal): Readd the previous
7760 GOMP_MAP_USE_DEVICE_PTR handling code in the first loop,
7761 though do that just in the !not_found_cnt case.
7762
65b67cf3
TB
77632019-10-08 Tobias Burnus <tobias@codesourcery.com>
7764
7765 * gfortran.dg/gomp/target-simd.f90: New.
7766
6c7e076b
JB
77672019-10-02 Julian Brown <julian@codesourcery.com>
7768 Cesar Philippidis <cesar@codesourcery.com>
7769
7770 * libgomp.h (OFFSET_INLINED, OFFSET_POINTER, OFFSET_STRUCT): Define.
7771 * target.c (FIELD_TGT_EMPTY): Define.
7772 (gomp_map_val): Use OFFSET_* macros instead of magic constants. Write
7773 as switch instead of list of ifs.
7774 (gomp_map_vars_internal): Use OFFSET_* and FIELD_TGT_EMPTY macros.
7775
d61bff85
AT
77762019-10-02 Andreas Tobler <andreast@gcc.gnu.org>
7777
7778 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: Remove alloca.h
7779 include. Replace alloca () with __builtin_alloca ().
7780 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Likewise.
7781
810f316d
JJ
77822019-10-01 Jakub Jelinek <jakub@redhat.com>
7783
7784 * configure.ac: Remove GCC_HEADER_STDINT(gstdint.h).
7785 * libgomp.h: Include <stdint.h> instead of "gstdint.h".
7786 * oacc-parallel.c: Don't include "libgomp_g.h".
7787 * plugin/plugin-hsa.c: Include <stdint.h> instead of "gstdint.h".
7788 * plugin/plugin-nvptx.c: Don't include "gstdint.h".
7789 * aclocal.m4: Regenerated.
7790 * config.h.in: Regenerated.
7791 * configure: Regenerated.
7792 * Makefile.in: Regenerated.
7793
d7f9ee98
KCY
77942019-09-30 Kwok Cheung Yeung <kcy@codesourcery.com>
7795
7796 * libgomp_g.h: Include stdint.h instead of gstdint.h.
7797
e9085da5
MR
77982019-09-27 Maciej W. Rozycki <macro@wdc.com>
7799
7800 * configure: Regenerate.
7801
c28712be
TB
78022019-09-13 Tobias Burnus <tobias@codesourcery.com>
7803
7804 * plugin/plugin-hsa.c (hsa_warn, hsa_fatal, hsa_error): Ensure
7805 string is initialized.
7806
3c086f8d
FW
78072019-09-06 Florian Weimer <fweimer@redhat.com>
7808
7809 * configure: Regenerate.
7810
c6c2d1bc
CLT
78112019-09-03 Chung-Lin Tang <cltang@codesourcery.com>
7812
7813 PR other/79543
7814 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Fix GNU ld --version
7815 scanning to conform to the GNU Coding Standards.
7816 * configure: Regenerate.
7817
5cb72d83
JJ
78182019-08-28 Jakub Jelinek <jakub@redhat.com>
7819
7820 PR libgomp/91530
7821 * testsuite/libgomp.c/scan-21.c: New test.
7822 * testsuite/libgomp.c/scan-22.c: New test.
7823
0ad7981c
JJ
78242019-08-27 Jakub Jelinek <jakub@redhat.com>
7825
7826 PR libgomp/91530
7827 * testsuite/libgomp.c/scan-11.c: Add -msse2 option for sse2_runtime
7828 targets.
7829 * testsuite/libgomp.c/scan-12.c: Likewise.
7830 * testsuite/libgomp.c/scan-13.c: Likewise.
7831 * testsuite/libgomp.c/scan-14.c: Likewise.
7832 * testsuite/libgomp.c/scan-15.c: Likewise.
7833 * testsuite/libgomp.c/scan-16.c: Likewise.
7834 * testsuite/libgomp.c/scan-17.c: Likewise.
7835 * testsuite/libgomp.c/scan-18.c: Likewise.
7836 * testsuite/libgomp.c/scan-19.c: Likewise.
7837 * testsuite/libgomp.c/scan-20.c: Likewise.
7838 * testsuite/libgomp.c++/scan-9.C: Likewise.
7839 * testsuite/libgomp.c++/scan-10.C: Likewise.
7840 * testsuite/libgomp.c++/scan-11.C: Likewise.
7841 * testsuite/libgomp.c++/scan-12.C: Likewise.
7842 * testsuite/libgomp.c++/scan-14.C: Likewise.
7843 * testsuite/libgomp.c++/scan-15.C: Likewise.
7844 * testsuite/libgomp.c++/scan-13.C: Likewise. Use sse2_runtime
7845 instead of i?86-*-* x86_64-*-* as target for scan-tree-dump-times.
7846 * testsuite/libgomp.c++/scan-16.C: Likewise.
7847
1e67491a
TK
78482019-08-17 Thomas Koenig <tkoenig@gcc.gnu.org>
7849
7850 PR fortran/91473
7851 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add
7852 -std=legacy so invalid code in the test case is accepted.
7853
393fdeb1
TK
78542019-08-12 Thomas Koenig <tkoenig@gcc.gnu.org>
7855
7856 PR fortran/91422
7857 * testsuite/libgomp.oacc-fortran/routine-7.f90: Correct array
7858 dimension.
7859
8860d270
JJ
78602019-08-08 Jakub Jelinek <jakub@redhat.com>
7861
7862 * target.c (gomp_map_vars_internal): For GOMP_MAP_USE_DEVICE_PTR
7863 perform the lookup in the first loop only if !not_found_cnt, otherwise
7864 perform lookups for it in the second loop guarded with
7865 if (not_found_cnt || has_firstprivate).
7866 * testsuite/libgomp.c/target-37.c: New test.
7867 * testsuite/libgomp.c++/target-22.C: New test.
7868
398e3feb
JJ
78692019-08-07 Jakub Jelinek <jakub@redhat.com>
7870
7871 * testsuite/libgomp.c/target-18.c (struct S): New type.
7872 (foo): Use use_device_addr clause instead of use_device_ptr clause
7873 where required by OpenMP 5.0, add further tests for both use_device_ptr
7874 and use_device_addr clauses.
7875 * testsuite/libgomp.c++/target-9.C (struct S): New type.
7876 (foo): Use use_device_addr clause instead of use_device_ptr clause
7877 where required by OpenMP 5.0, add further tests for both use_device_ptr
7878 and use_device_addr clauses. Add t and u arguments.
7879 (main): Adjust caller.
7880
d81ab49d
JJ
78812019-08-06 Jakub Jelinek <jakub@redhat.com>
7882
7883 * testsuite/libgomp.c++/loop-13.C: New test.
7884 * testsuite/libgomp.c++/loop-14.C: New test.
7885 * testsuite/libgomp.c++/loop-15.C: New test.
7886
c3ac76aa
JJ
78872019-07-31 Jakub Jelinek <jakub@redhat.com>
7888
7889 PR middle-end/91301
7890 * testsuite/libgomp.c++/for-27.C: New test.
7891
8dc63166
SK
78922019-07-23 Steven G. Kargl <kargl@gcc.gnu.org>
7893
393fdeb1 7894 * testsuite/libgomp.fortran/reduction4.f90: Update BOZ usage.
8dc63166 7895 * testsuite/libgomp.fortran/reduction5.f90: Ditto.
393fdeb1 7896
554a530f
JJ
78972019-07-20 Jakub Jelinek <jakub@redhat.com>
7898
7899 * testsuite/libgomp.c-c++-common/loop-1.c: New test.
7900
6cda84b5
JJ
79012019-07-08 Jakub Jelinek <jakub@redhat.com>
7902
7903 * testsuite/libgomp.c++/scan-13.C: Replace xfail with target x86.
7904 * testsuite/libgomp.c++/scan-16.C: Likewise.
7905
1f52d1a8
JJ
79062019-07-06 Jakub Jelinek <jakub@redhat.com>
7907
6f67abcd
JJ
7908 * testsuite/libgomp.c/scan-19.c: New test.
7909 * testsuite/libgomp.c/scan-20.c: New test.
7910
1f52d1a8
JJ
7911 * testsuite/libgomp.c/scan-11.c: New test.
7912 * testsuite/libgomp.c/scan-12.c: New test.
7913 * testsuite/libgomp.c/scan-13.c: New test.
7914 * testsuite/libgomp.c/scan-14.c: New test.
7915 * testsuite/libgomp.c/scan-15.c: New test.
7916 * testsuite/libgomp.c/scan-16.c: New test.
7917 * testsuite/libgomp.c/scan-17.c: New test.
7918 * testsuite/libgomp.c/scan-18.c: New test.
7919 * testsuite/libgomp.c++/scan-9.C: New test.
7920 * testsuite/libgomp.c++/scan-10.C: New test.
7921 * testsuite/libgomp.c++/scan-11.C: New test.
7922 * testsuite/libgomp.c++/scan-12.C: New test.
7923 * testsuite/libgomp.c++/scan-13.C: New test.
7924 * testsuite/libgomp.c++/scan-14.C: New test.
7925 * testsuite/libgomp.c++/scan-15.C: New test.
7926 * testsuite/libgomp.c++/scan-16.C: New test.
7927
2f03073f
JJ
79282019-07-04 Jakub Jelinek <jakub@redhat.com>
7929
7930 * testsuite/libgomp.c/scan-9.c: New test.
7931 * testsuite/libgomp.c/scan-10.c: New test.
7932
2f6bb511
JJ
79332019-07-03 Jakub Jelinek <jakub@redhat.com>
7934
7935 * testsuite/libgomp.c++/scan-1.C: New test.
7936 * testsuite/libgomp.c++/scan-2.C: New test.
7937 * testsuite/libgomp.c++/scan-3.C: New test.
7938 * testsuite/libgomp.c++/scan-4.C: New test.
7939 * testsuite/libgomp.c++/scan-5.C: New test.
7940 * testsuite/libgomp.c++/scan-6.C: New test.
7941 * testsuite/libgomp.c++/scan-7.C: New test.
7942 * testsuite/libgomp.c++/scan-8.C: New test.
7943 * testsuite/libgomp.c/scan-1.c: New test.
7944 * testsuite/libgomp.c/scan-2.c: New test.
7945 * testsuite/libgomp.c/scan-3.c: New test.
7946 * testsuite/libgomp.c/scan-4.c: New test.
7947 * testsuite/libgomp.c/scan-5.c: New test.
7948 * testsuite/libgomp.c/scan-6.c: New test.
7949 * testsuite/libgomp.c/scan-7.c: New test.
7950 * testsuite/libgomp.c/scan-8.c: New test.
7951
bd194a51
TS
79522019-06-18 Thomas Schwinge <thomas@codesourcery.com>
7953
85fca03a
TS
7954 * testsuite/libgomp.oacc-c++/firstprivate-mappings-1.C: New file.
7955 * testsuite/libgomp.oacc-c-c++-common/firstprivate-mappings-1.c:
7956 Likewise.
7957
bd194a51
TS
7958 * testsuite/libgomp.fortran/allocatable3.f90: Add missing results
7959 check.
7960
6652161e
CP
79612019-06-18 Cesar Philippidis <cesar@codesourcery.com>
7962
7963 * testsuite/libgomp.oacc-fortran/allocatable-array-1.f90: New
7964 file.
7965
3a37d6f6
TS
79662019-06-18 Thomas Schwinge <thomas@codesourcery.com>
7967
4017da8d
TS
7968 PR fortran/90743
7969 * oacc-parallel.c (GOACC_parallel_keyed): Handle NULL mapping
7970 case.
7971 * testsuite/libgomp.fortran/target-allocatable-1-1.f90: New file.
7972 * testsuite/libgomp.fortran/target-allocatable-1-2.f90: Likewise.
7973 * testsuite/libgomp.oacc-fortran/allocatable-1-1.f90: Likewise.
7974 * testsuite/libgomp.oacc-fortran/allocatable-1-2.f90: Likewise.
7975
6f7c1f65
TS
7976 PR testsuite/90861
7977 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: Update.
7978
3a37d6f6
TS
7979 PR middle-end/90862
7980 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Update.
7981
f45ce17d
TV
79822019-06-16 Tom de Vries <tdevries@suse.de>
7983
7984 PR tree-optimization/89376
7985 * testsuite/libgomp.oacc-c-c++-common/pr89376.c: New test.
7986
00908992
TV
79872019-06-15 Tom de Vries <tdevries@suse.de>
7988
7989 PR tree-optimization/89713
7990 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: Expect no bar.sync.
7991 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: Same.
7992
211b7533
JJ
79932019-06-15 Jakub Jelinek <jakub@redhat.com>
7994
7995 PR middle-end/90779
7996 * testsuite/libgomp.c/pr90779.c: New test.
7997 * testsuite/libgomp.fortran/pr90779.f90: New test.
7998
120a01d1
TV
79992019-06-15 Tom de Vries <tdevries@suse.de>
8000
8001 PR tree-optimization/90009
8002 * testsuite/libgomp.oacc-c-c++-common/pr90009.c: New test.
8003
c29c92c7
FX
80042019-06-13 Feng Xue <fxue@os.amperecomputing.com>
8005
8006 PR tree-optimization/89713
8007 * testsuite/libgomp.oacc-c-c++-common/pr84955-1.c: New test.
8008
ce9c4ec3
JJ
80092019-06-11 Jakub Jelinek <jakub@redhat.com>
8010
8011 PR target/90811
8012 * testsuite/libgomp.c/pr90811.c: New test.
8013
28b3a77c
JJ
80142019-06-05 Jakub Jelinek <jakub@redhat.com>
8015
8016 * testsuite/libgomp.c++/lastprivate-conditional-1.C: New test.
8017 * testsuite/libgomp.c++/lastprivate-conditional-2.C: New test.
8018
7855700e
JJ
80192019-06-04 Jakub Jelinek <jakub@redhat.com>
8020
8021 * testsuite/libgomp.c-c++-common/lastprivate-conditional-7.c: New test.
8022 * testsuite/libgomp.c-c++-common/lastprivate-conditional-8.c: New test.
8023 * testsuite/libgomp.c-c++-common/lastprivate-conditional-9.c: New test.
8024 * testsuite/libgomp.c-c++-common/lastprivate-conditional-10.c: New test.
8025
a7155c2e
RO
80262019-05-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8027
8028 * configure.ac: Call AX_COUNT_CPUS.
8029 Substitute CPU_COUNT.
8030 * testsuite/Makefile.am (check-am): Use CPU_COUNT as processor
8031 count fallback.
8032 * aclocal.m4: Regenerate.
8033 * configure: Regenerate.
8034 * Makefile.in, testsuite/Makefile.in: Regenerate.
8035
7e47198b
JJ
80362019-05-29 Jakub Jelinek <jakub@redhat.com>
8037
8038 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: Rename
8039 to ...
8040 * testsuite/libgomp.c-c++-common/lastprivate-conditional-4.c: ... this.
8041 * testsuite/libgomp.c-c++-common/lastprivate-conditional-5.c: New test.
8042 * testsuite/libgomp.c-c++-common/lastprivate-conditional-6.c: New test.
8043
fcfb8032
JJ
80442019-05-27 Jakub Jelinek <jakub@redhat.com>
8045
8e7757ba
JJ
8046 * testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: New test.
8047
36c7a3ff
JJ
8048 * testsuite/libgomp.c-c++-common/lastprivate-conditional-3.c: New test.
8049
fcfb8032
JJ
8050 PR libgomp/90641
8051 * work.c (gomp_init_work_share): Instead of aligning final ordered
8052 value to multiples of long long alignment, align to that the
8053 first part (ordered team ids) and if inline_ordered_team_ids
8054 is not on a long long alignment boundary within the structure,
8055 use __alignof__ (long long) - 1 pad size always.
8056 * loop.c (GOMP_loop_start): Fix *mem computation if
8057 inline_ordered_team_ids is not aligned on long long alignment boundary
8058 within the structure.
8059 * loop-ull.c (GOMP_loop_ull_start): Likewise.
8060 * sections.c (GOMP_sections2_start): Likewise.
8061
b5c26449
JJ
80622019-05-24 Jakub Jelinek <jakub@redhat.com>
8063
6c7ae8c5
JJ
8064 * testsuite/libgomp.c-c++-common/lastprivate-conditional-1.c: New test.
8065 * testsuite/libgomp.c-c++-common/lastprivate-conditional-2.c: New test.
8066
b5c26449
JJ
8067 PR libgomp/90585
8068 * plugin/plugin-hsa.c: Include gstdint.h. Include inttypes.h only if
8069 HAVE_INTTYPES_H is defined.
8070 (print_uint64_t): New typedef.
8071 (PRIu64): Define if HAVE_INTTYPES_H is not defined.
8072 (print_kernel_dispatch, run_kernel): Use PRIu64 macro instead of
8073 "lu", cast uint64_t HSA_DEBUG and fprintf arguments to print_uint64_t.
8074 (release_kernel_dispatch): Likewise. Cast shadow->debug to uintptr_t
8075 before casting to void *.
8076 * plugin/plugin-nvptx.c: Include gstdint.h instead of stdint.h.
8077 * oacc-mem.c: Don't include config.h nor stdint.h.
8078 * target.c: Don't include config.h.
8079 * oacc-cuda.c: Likewise.
8080 * oacc-host.c: Don't include stdint.h.
8081
3e03ed66
JJ
80822019-05-20 Jakub Jelinek <jakub@redhat.com>
8083
8084 PR libgomp/90527
8085 * alloc.c (_GNU_SOURCE): Define.
8086
5fae049d
TS
80872019-05-17 Thomas Schwinge <thomas@codesourcery.com>
8088
8089 * acc_prof.h: New file.
8090 * oacc-profiling.c: Likewise.
8091 * Makefile.am (nodist_libsubinclude_HEADERS, libgomp_la_SOURCES):
8092 Add these, respectively.
8093 * Makefile.in: Regenerate.
8094 * env.c (initialize_env): Call goacc_profiling_initialize.
8095 * oacc-plugin.c (GOMP_PLUGIN_goacc_thread)
8096 (GOMP_PLUGIN_goacc_profiling_dispatch): New functions.
8097 * oacc-plugin.h (GOMP_PLUGIN_goacc_thread)
8098 (GOMP_PLUGIN_goacc_profiling_dispatch): Declare.
8099 * libgomp.map (OACC_2.5.1): Add acc_prof_lookup,
8100 acc_prof_register, acc_prof_unregister, and acc_register_library.
8101 (GOMP_PLUGIN_1.3): Add GOMP_PLUGIN_goacc_profiling_dispatch, and
8102 GOMP_PLUGIN_goacc_thread.
8103 * oacc-int.h (struct goacc_thread): Add prof_info, api_info,
8104 prof_callbacks_enabled members.
8105 (goacc_prof_enabled, goacc_profiling_initialize)
8106 (_goacc_profiling_dispatch_p, _goacc_profiling_setup_p)
8107 (goacc_profiling_dispatch): Declare.
8108 (GOACC_PROF_ENABLED, GOACC_PROFILING_DISPATCH_P)
8109 (GOACC_PROFILING_SETUP_P): Define.
8110 * oacc-async.c (acc_async_test, acc_async_test_all, acc_wait)
8111 (acc_wait_async, acc_wait_all, acc_wait_all_async): Update for
8112 OpenACC Profiling Interface.
8113 * oacc-cuda.c (acc_get_current_cuda_device)
8114 (acc_get_current_cuda_context, acc_get_cuda_stream)
8115 (acc_set_cuda_stream): Likewise.
8116 * oacc-init.c (acc_init_1, goacc_attach_host_thread_to_device)
8117 (acc_init, acc_set_device_type, acc_get_device_type)
8118 (acc_get_device_num, goacc_lazy_initialize): Likewise.
8119 * oacc-mem.c (acc_malloc, acc_free, memcpy_tofrom_device)
8120 (acc_deviceptr, acc_hostptr, acc_is_present, acc_map_data)
8121 (acc_unmap_data, present_create_copy, delete_copyout)
8122 (update_dev_host): Likewise.
8123 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_data_start)
8124 (GOACC_data_end, GOACC_enter_exit_data, GOACC_update, GOACC_wait):
8125 Likewise.
8126 * plugin/plugin-nvptx.c (nvptx_exec, nvptx_alloc, nvptx_free)
8127 (GOMP_OFFLOAD_openacc_exec, GOMP_OFFLOAD_openacc_async_exec):
8128 Likewise.
8129 * libgomp.texi: Update.
8130 * testsuite/libgomp.oacc-c-c++-common/acc_prof-dispatch-1.c: New
8131 file.
8132 * testsuite/libgomp.oacc-c-c++-common/acc_prof-init-1.c: Likewise.
8133 * testsuite/libgomp.oacc-c-c++-common/acc_prof-kernels-1.c:
8134 Likewise.
8135 * testsuite/libgomp.oacc-c-c++-common/acc_prof-parallel-1.c:
8136 Likewise.
8137 * testsuite/libgomp.oacc-c-c++-common/acc_prof-valid_bytes-1.c:
8138 Likewise.
8139 * testsuite/libgomp.oacc-c-c++-common/acc_prof-version-1.c:
8140 Likewise.
8141
1f4c5b9b
CLT
81422019-05-13 Chung-Lin Tang <cltang@codesourcery.com>
8143
8144 * libgomp-plugin.h (struct goacc_asyncqueue): Declare.
8145 (struct goacc_asyncqueue_list): Likewise.
8146 (goacc_aq): Likewise.
8147 (goacc_aq_list): Likewise.
8148 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
8149 (GOMP_OFFLOAD_openacc_async_test): Remove.
8150 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
8151 (GOMP_OFFLOAD_openacc_async_wait): Remove.
8152 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
8153 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
8154 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
8155 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
8156 (GOMP_OFFLOAD_openacc_exec): Adjust declaration.
8157 (GOMP_OFFLOAD_openacc_cuda_get_stream): Likewise.
8158 (GOMP_OFFLOAD_openacc_cuda_set_stream): Likewise.
8159 (GOMP_OFFLOAD_openacc_async_exec): Declare.
8160 (GOMP_OFFLOAD_openacc_async_construct): Declare.
8161 (GOMP_OFFLOAD_openacc_async_destruct): Declare.
8162 (GOMP_OFFLOAD_openacc_async_test): Declare.
8163 (GOMP_OFFLOAD_openacc_async_synchronize): Declare.
8164 (GOMP_OFFLOAD_openacc_async_serialize): Declare.
8165 (GOMP_OFFLOAD_openacc_async_queue_callback): Declare.
8166 (GOMP_OFFLOAD_openacc_async_host2dev): Declare.
8167 (GOMP_OFFLOAD_openacc_async_dev2host): Declare.
8168
8169 * libgomp.h (struct acc_dispatch_t): Define 'async' sub-struct.
8170 (gomp_acc_insert_pointer): Adjust declaration.
8171 (gomp_copy_host2dev): New declaration.
8172 (gomp_copy_dev2host): Likewise.
8173 (gomp_map_vars_async): Likewise.
8174 (gomp_unmap_tgt): Likewise.
8175 (gomp_unmap_vars_async): Likewise.
8176 (gomp_fini_device): Likewise.
8177
8178 * oacc-async.c (get_goacc_thread): New function.
8179 (get_goacc_thread_device): New function.
8180 (lookup_goacc_asyncqueue): New function.
8181 (get_goacc_asyncqueue): New function.
8182 (acc_async_test): Adjust code to use new async design.
8183 (acc_async_test_all): Likewise.
8184 (acc_wait): Likewise.
8185 (acc_wait_async): Likewise.
8186 (acc_wait_all): Likewise.
8187 (acc_wait_all_async): Likewise.
8188 (goacc_async_free): New function.
8189 (goacc_init_asyncqueues): Likewise.
8190 (goacc_fini_asyncqueues): Likewise.
8191 * oacc-cuda.c (acc_get_cuda_stream): Adjust code to use new async
8192 design.
8193 (acc_set_cuda_stream): Likewise.
8194 * oacc-host.c (host_openacc_exec): Adjust parameters, remove 'async'.
8195 (host_openacc_register_async_cleanup): Remove.
8196 (host_openacc_async_exec): New function.
8197 (host_openacc_async_test): Adjust parameters.
8198 (host_openacc_async_test_all): Remove.
8199 (host_openacc_async_wait): Remove.
8200 (host_openacc_async_wait_async): Remove.
8201 (host_openacc_async_wait_all): Remove.
8202 (host_openacc_async_wait_all_async): Remove.
8203 (host_openacc_async_set_async): Remove.
8204 (host_openacc_async_synchronize): New function.
8205 (host_openacc_async_serialize): New function.
8206 (host_openacc_async_host2dev): New function.
8207 (host_openacc_async_dev2host): New function.
8208 (host_openacc_async_queue_callback): New function.
8209 (host_openacc_async_construct): New function.
8210 (host_openacc_async_destruct): New function.
8211 (struct gomp_device_descr host_dispatch): Remove initialization of old
93d90219 8212 interface, add initialization of new async sub-struct.
1f4c5b9b
CLT
8213 * oacc-init.c (acc_shutdown_1): Adjust to use gomp_fini_device.
8214 (goacc_attach_host_thread_to_device): Remove old async code usage.
8215 * oacc-int.h (goacc_init_asyncqueues): New declaration.
8216 (goacc_fini_asyncqueues): Likewise.
8217 (goacc_async_copyout_unmap_vars): Likewise.
8218 (goacc_async_free): Likewise.
8219 (get_goacc_asyncqueue): Likewise.
8220 (lookup_goacc_asyncqueue): Likewise.
8221 * oacc-mem.c (memcpy_tofrom_device): Adjust code to use new async
8222 design.
8223 (present_create_copy): Adjust code to use new async design.
8224 (delete_copyout): Likewise.
8225 (update_dev_host): Likewise.
8226 (gomp_acc_insert_pointer): Add async parameter, adjust code to use new
8227 async design.
8228 (gomp_acc_remove_pointer): Adjust code to use new async design.
8229 * oacc-parallel.c (GOACC_parallel_keyed): Adjust code to use new async
8230 design.
8231 (GOACC_enter_exit_data): Likewise.
8232 (goacc_wait): Likewise.
8233 (GOACC_update): Likewise.
8234 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Change to assert fail
8235 when called, warn as obsolete in comment.
8236 * target.c (goacc_device_copy_async): New function.
8237 (gomp_copy_host2dev): Remove 'static', add goacc_asyncqueue parameter,
8238 add goacc_device_copy_async case.
8239 (gomp_copy_dev2host): Likewise.
8240 (gomp_map_vars_existing): Add goacc_asyncqueue parameter, adjust code.
8241 (gomp_map_pointer): Likewise.
8242 (gomp_map_fields_existing): Likewise.
8243 (gomp_map_vars_internal): New always_inline function, renamed from
8244 gomp_map_vars.
8245 (gomp_map_vars): Implement by calling gomp_map_vars_internal.
8246 (gomp_map_vars_async): Implement by calling gomp_map_vars_internal,
8247 passing goacc_asyncqueue argument.
8248 (gomp_unmap_tgt): Remove static, add attribute_hidden.
8249 (gomp_unref_tgt): New function.
8250 (gomp_unmap_vars_internal): New always_inline function, renamed from
8251 gomp_unmap_vars.
8252 (gomp_unmap_vars): Implement by calling gomp_unmap_vars_internal.
8253 (gomp_unmap_vars_async): Implement by calling
8254 gomp_unmap_vars_internal, passing goacc_asyncqueue argument.
8255 (gomp_fini_device): New function.
8256 (gomp_exit_data): Adjust gomp_copy_dev2host call.
8257 (gomp_load_plugin_for_device): Remove old interface, adjust to load
8258 new async interface.
8259 (gomp_target_fini): Adjust code to call gomp_fini_device.
8260
8261 * plugin/plugin-nvptx.c (struct cuda_map): Remove.
8262 (struct ptx_stream): Remove.
8263 (struct nvptx_thread): Remove current_stream field.
8264 (cuda_map_create): Remove.
8265 (cuda_map_destroy): Remove.
8266 (map_init): Remove.
8267 (map_fini): Remove.
8268 (map_pop): Remove.
8269 (map_push): Remove.
8270 (struct goacc_asyncqueue): Define.
8271 (struct nvptx_callback): Define.
8272 (struct ptx_free_block): Define.
8273 (struct ptx_device): Remove null_stream, active_streams, async_streams,
8274 stream_lock, and next fields.
8275 (enum ptx_event_type): Remove.
8276 (struct ptx_event): Remove.
8277 (ptx_event_lock): Remove.
8278 (ptx_events): Remove.
8279 (init_streams_for_device): Remove.
8280 (fini_streams_for_device): Remove.
8281 (select_stream_for_async): Remove.
8282 (nvptx_init): Remove ptx_events and ptx_event_lock references.
8283 (nvptx_attach_host_thread_to_device): Remove CUDA_ERROR_NOT_PERMITTED
8284 case.
8285 (nvptx_open_device): Add free_blocks initialization, remove
8286 init_streams_for_device call.
8287 (nvptx_close_device): Remove fini_streams_for_device call, add
8288 free_blocks destruct code.
8289 (event_gc): Remove.
8290 (event_add): Remove.
8291 (nvptx_exec): Adjust parameters and code.
8292 (nvptx_free): Likewise.
8293 (nvptx_host2dev): Remove.
8294 (nvptx_dev2host): Remove.
8295 (nvptx_set_async): Remove.
8296 (nvptx_async_test): Remove.
8297 (nvptx_async_test_all): Remove.
8298 (nvptx_wait): Remove.
8299 (nvptx_wait_async): Remove.
8300 (nvptx_wait_all): Remove.
8301 (nvptx_wait_all_async): Remove.
8302 (nvptx_get_cuda_stream): Remove.
8303 (nvptx_set_cuda_stream): Remove.
8304 (GOMP_OFFLOAD_alloc): Adjust code.
8305 (GOMP_OFFLOAD_free): Likewise.
8306 (GOMP_OFFLOAD_openacc_register_async_cleanup): Remove.
8307 (GOMP_OFFLOAD_openacc_exec): Adjust parameters and code.
8308 (GOMP_OFFLOAD_openacc_async_test_all): Remove.
8309 (GOMP_OFFLOAD_openacc_async_wait): Remove.
8310 (GOMP_OFFLOAD_openacc_async_wait_async): Remove.
8311 (GOMP_OFFLOAD_openacc_async_wait_all): Remove.
8312 (GOMP_OFFLOAD_openacc_async_wait_all_async): Remove.
8313 (GOMP_OFFLOAD_openacc_async_set_async): Remove.
8314 (cuda_free_argmem): New function.
8315 (GOMP_OFFLOAD_openacc_async_exec): New plugin hook function.
8316 (GOMP_OFFLOAD_openacc_create_thread_data): Adjust code.
8317 (GOMP_OFFLOAD_openacc_cuda_get_stream): Adjust code.
8318 (GOMP_OFFLOAD_openacc_cuda_set_stream): Adjust code.
8319 (GOMP_OFFLOAD_openacc_async_construct): New plugin hook function.
8320 (GOMP_OFFLOAD_openacc_async_destruct): New plugin hook function.
8321 (GOMP_OFFLOAD_openacc_async_test): Remove and re-implement.
8322 (GOMP_OFFLOAD_openacc_async_synchronize): New plugin hook function.
8323 (GOMP_OFFLOAD_openacc_async_serialize): New plugin hook function.
8324 (GOMP_OFFLOAD_openacc_async_queue_callback): New plugin hook function.
8325 (cuda_callback_wrapper): New function.
8326 (cuda_memcpy_sanity_check): New function.
8327 (GOMP_OFFLOAD_host2dev): Remove and re-implement.
8328 (GOMP_OFFLOAD_dev2host): Remove and re-implement.
8329 (GOMP_OFFLOAD_openacc_async_host2dev): New plugin hook function.
8330 (GOMP_OFFLOAD_openacc_async_dev2host): New plugin hook function.
8331
da2d30c1
TS
83322019-05-07 Thomas Schwinge <thomas@codesourcery.com>
8333
8334 PR target/87835
8335 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: Update.
8336
2bbbfa4e
TS
83372019-05-06 Thomas Schwinge <thomas@codesourcery.com>
8338
8339 * oacc-parallel.c: Add comments to legacy entry points (GCC 5).
8340
bbf1efe1
KB
83412019-03-27 Kevin Buettner <kevinb@redhat.com>
8342
8343 * team.c (gomp_team_start): Initialize pool->threads[0].
8344
1241136c
TS
83452019-02-22 Thomas Schwinge <thomas@codesourcery.com>
8346
b03d721a
TS
8347 * testsuite/libgomp.oacc-c++/c++.exp: Specify
8348 "-foffload=$offload_target".
8349 * testsuite/libgomp.oacc-c/c.exp: Likewise.
8350 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
8351 * testsuite/lib/libgomp.exp
8352 (check_effective_target_openacc_nvidia_accel_configured): Remove,
8353 as (conceptually) merged into
8354 check_effective_target_openacc_nvidia_accel_selected. Adjust all
8355 users.
8356
0a0384b4
TS
8357 * plugin/configfrag.ac: Populate and AC_SUBST offload_targets.
8358 * testsuite/libgomp-test-support.exp.in: Adjust.
8359 * testsuite/lib/libgomp.exp: Likewise. Don't populate
8360 openacc_device_types_s.
8361 (offload_target_to_openacc_device_type): New proc.
8362 * testsuite/libgomp.oacc-c++/c++.exp: Adjust.
8363 * testsuite/libgomp.oacc-c/c.exp: Likewise.
8364 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
8365 * Makefile.in: Regenerate.
8366 * configure: Likewise.
8367 * testsuite/Makefile.in: Likewise.
8368
ee332b4a
TS
8369 * plugin/configfrag.ac: Populate and AC_SUBST offload_plugins
8370 instead of offload_targets, and AC_DEFINE_UNQUOTED OFFLOAD_PLUGINS
8371 instead of OFFLOAD_TARGETS.
8372 * target.c (gomp_target_init): Adjust.
8373 * testsuite/libgomp-test-support.exp.in: Likewise.
8374 * testsuite/lib/libgomp.exp: Likewise. Populate
8375 openacc_device_types_s instead of offload_targets_s_openacc.
8376 (check_effective_target_openacc_nvidia_accel_selected)
8377 (check_effective_target_openacc_host_selected): Adjust.
8378 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
8379 * testsuite/libgomp.oacc-c/c.exp: Likewise.
8380 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
8381 * Makefile.in: Regenerate.
8382 * config.h.in: Likewise.
8383 * configure: Likewise.
8384 * testsuite/Makefile.in: Likewise.
8385
1241136c
TS
8386 * testsuite/lib/libgomp.exp: Error out for unknown offload target.
8387 * testsuite/libgomp.oacc-c++/c++.exp: Likewise. Report if
8388 "offloading: supported, but hardware not accessible".
8389 * testsuite/libgomp.oacc-c/c.exp: Likewise.
8390 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
8391
19695f4d
CLT
83922019-02-19 Chung-Lin Tang <cltang@codesourcery.com>
8393
8394 PR c/87924
8395 * oacc-parallel.c (GOACC_parallel_keyed): Remove condition on call to
8396 goacc_wait().
8397 (goacc_wait): Handle ACC_ASYNC_NOVAL case, remove goacc_thread() call
8398 and related adjustment.
8399
8b44f8ec
JJ
84002019-01-30 Jakub Jelinek <jakub@redhat.com>
8401
8402 PR c++/88988
8403 * testsuite/libgomp.c++/pr88988.C: New test.
8404
be3a87e7
JJ
84052019-01-28 Jakub Jelinek <jakub@redhat.com>
8406
8407 PR middle-end/89002
8408 * testsuite/libgomp.c/pr89002.c: New test.
8409
497ef4d7
RB
84102019-01-28 Richard Biener <rguenther@suse.de>
8411
8412 PR testsuite/89064
8413 PR tree-optimization/86865
8414 * testsuite/libgomp.graphite/force-parallel-5.c: XFAIL.
8415
738c56d4
TV
84162019-01-24 Tom de Vries <tdevries@suse.de>
8417
8418 * plugin/plugin-nvptx.c (GOMP_OFFLOAD_fini_device): Free ptx_devices
8419 once instantiated_devices drops to 0.
8420
4a75460b
TV
84212019-01-23 Tom de Vries <tdevries@suse.de>
8422
8423 PR target/PR88946
8424 * plugin/plugin-nvptx.c (cuda_map_destroy): Use CUDA_CALL_NOCHECK for
8425 cuMemFree.
8426 (nvptx_exec): Don't call map_push if mapnum == 0.
8427 * testsuite/libgomp.oacc-c-c++-common/pr88946.c: New test.
8428
4fef8e4d
TV
84292019-01-23 Tom de Vries <tdevries@suse.de>
8430
8431 PR target/88941
8432 PR target/88939
8433 * plugin/plugin-nvptx.c (cuda_map_destroy): Handle map->active case.
8434 (map_fini): Remove "assert (!s->map->active)".
8435 * testsuite/libgomp.oacc-c-c++-common/pr88941.c: New test.
8436
2ee6cb22
TV
84372019-01-23 Tom de Vries <tdevries@suse.de>
8438
8439 PR target/87835
8440 * plugin/plugin-nvptx.c (map_push): Fix adding of allocated element.
8441 * testsuite/libgomp.oacc-c-c++-common/pr87835.c: New test.
8442
d41d952c
TV
84432019-01-15 Tom de Vries <tdevries@suse.de>
8444
8445 PR target/80547
8446 * testsuite/libgomp.oacc-c-c++-common/gang-reduction-var-assignment.c:
8447 New test.
8448
efb56ae8
TV
84492019-01-12 Tom de Vries <tdevries@suse.de>
8450
8451 * testsuite/libgomp.oacc-c-c++-common/pr85486-2.c: New test.
8452 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-2.c: New test.
8453 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-5.c: New test.
8454 * testsuite/libgomp.oacc-fortran/gemm-2.f90: New test.
8455
2c2ff168
TV
84562019-01-12 Tom de Vries <tdevries@suse.de>
8457
8458 * plugin/plugin-nvptx.c (nvptx_exec): Update error message.
8459
a1057758
TV
84602019-01-12 Tom de Vries <tdevries@suse.de>
8461
8462 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-1.c: New test.
8463 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-2.c: New test.
8464 * testsuite/libgomp.oacc-c-c++-common/vector-length-64-3.c: New test.
8465
56314b77
TV
84662019-01-12 Tom de Vries <tdevries@suse.de>
8467
8468 PR target/85486
8469 * testsuite/libgomp.oacc-c-c++-common/pr85486-3.c: New test.
8470 * testsuite/libgomp.oacc-c-c++-common/pr85486.c: New test.
8471
b39e4366
TV
84722019-01-12 Tom de Vries <tdevries@suse.de>
8473
8474 PR target/85381
8475 * testsuite/libgomp.oacc-c-c++-common/pr85381-5.c: New test.
8476 * testsuite/libgomp.oacc-c-c++-common/pr85381.c: New test.
8477
2cb7a501
TV
84782019-01-12 Tom de Vries <tdevries@suse.de>
8479
8480 * testsuite/libgomp.oacc-c-c++-common/vred2d-128.c: New test.
8481 * testsuite/libgomp.oacc-fortran/gemm.f90: New test.
8482 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-10.c: New test.
8483
8e77f71e
TV
84842019-01-12 Tom de Vries <tdevries@suse.de>
8485
8486 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-7.c: New test.
8487 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-4.c: New test.
8488 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-6.c: New test.
8489
52d22ece
TV
84902019-01-12 Tom de Vries <tdevries@suse.de>
8491
8492 * plugin/plugin-nvptx.c (nvptx_exec): Update insufficient hardware
8493 resources diagnostic.
8494
2b9d9e39
TV
84952019-01-12 Tom de Vries <tdevries@suse.de>
8496
8497 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: Expect
8498 vector length to be 128.
8499 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Expect vector
8500 length 2097152 to be reduced to 1024 instead of 32.
8501
4102bda6
TS
85022019-01-11 Thomas Schwinge <thomas@codesourcery.com>
8503 James Norris <jnorris@codesourcery.com>
8504
8505 * libgomp.texi: Better distinguish OpenACC and OpenMP "Runtime
8506 Library Routines", and "Environment Variables".
8507
052aaace
TV
85082019-01-11 Tom de Vries <tdevries@suse.de>
8509
8510 * plugin/plugin-nvptx.c (nvptx_exec): Prevent vector_length 64 and
8511 num_workers 16.
8512
9390f916
TV
85132019-01-11 Tom de Vries <tdevries@suse.de>
8514
8515 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Remove
8516 -foffload=-w.
8517 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Same.
8518 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Same.
8519 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Same.
8520 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Same.
8521
2c3e7ad2
TV
85222019-01-11 Tom de Vries <tdevries@suse.de>
8523
8524 * testsuite/libgomp.oacc-c-c++-common/insufficient-resources.c: New
8525 test.
8526
e222497d
NS
85272019-01-10 Nathan Sidwell <nathan@acm.org>
8528 Julian Brown <julian@codesourcery.com>
8529
8530 PR lto/71959
8531 * testsuite/libgomp.oacc-c++/pr71959-aux.cc: New.
8532 * testsuite/libgomp.oacc-c++/pr71959.C: New.
8533
cb87fec3
SH
85342019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
8535
8536 * config/rtems/bar.c: Include "../linux/bar.c" and delete copy
8537 and paste code.
8538
30b4d0d0
SH
85392019-01-09 Sebastian Huber <sebastian.huber@embedded-brains.de>
8540
8541 * config/rtems/affinity-fmt.c: New file. Include affinity-fmt.c,
8542 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
8543 write.
8544
5d0bc70a
TV
85452019-01-09 Tom de Vries <tdevries@suse.de>
8546
8547 PR target/88756
8548 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (ng, nw, vl): Use
8549 #define instead of "const int".
8550 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c (ng, nw, vl): Same.
8551 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c (ng, nw, vl): Same.
8552 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (ng, nw, vl): Same.
8553 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c (ng, nw, vl): Same.
8554
2c372e81
TV
85552019-01-09 Tom de Vries <tdevries@suse.de>
8556
8557 * plugin/plugin-nvptx.c (nvptx_exec): Make sure to launch with at least
8558 one worker.
8559
43493c97
TV
85602019-01-07 Tom de Vries <tdevries@suse.de>
8561
8562 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: Fix
8563 GOMP_OPENACC_DIM argument.
8564
5c571497
TV
85652019-01-03 Tom de Vries <tdevries@suse.de>
8566
8567 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: New test.
8568 * testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: New test.
8569
a5544970
JJ
85702019-01-01 Jakub Jelinek <jakub@redhat.com>
8571
8572 Update copyright years.
8573
3f27508c
JJ
85742019-01-01 Jakub Jelinek <jakub@redhat.com>
8575
8576 * libgomp.texi: Bump @copying's copyright year.
8577
59d5960c
TS
85782018-12-28 Thomas Schwinge <thomas@codesourcery.com>
8579
8580 * oacc-parallel.c (GOACC_parallel_keyed, GOACC_parallel)
8581 (GOACC_data_start, GOACC_enter_exit_data, GOACC_update)
8582 (GOACC_declare): Redefine the "device" argument to "flags".
8583
a44c1790
TS
85842018-12-28 Thomas Schwinge <thomas@codesourcery.com>
8585 Cesar Philippidis <cesar@codesourcery.com>
8586
8587 * target.c (struct gomp_coalesce_chunk): New structure.
8588 (struct gomp_coalesce_buf): Update the chunks member to use that
8589 type. Adjust all users.
8590
a152954e
TV
85912018-12-19 Tom de Vries <tdevries@suse.de>
8592
8593 * testsuite/libgomp.oacc-c-c++-common/pr85381-2.c: New test.
8594 * testsuite/libgomp.oacc-c-c++-common/pr85381-3.c: New test.
8595 * testsuite/libgomp.oacc-c-c++-common/pr85381-4.c: New test.
8596
49188cd1
TV
85972018-12-19 Tom de Vries <tdevries@suse.de>
8598
8599 * testsuite/lib/libgomp.exp: Add load_lib of scanoffloadrtl.exp.
8600 * testsuite/libgomp.oacc-c-c++-common/nvptx-merged-loop.c: Move from
8601 gcc/testsuite/gcc.dg/goacc.
8602 * testsuite/libgomp.oacc-c-c++-common/nvptx-sese-1.c: Same.
8603
c759830b
TS
86042018-12-14 Thomas Schwinge <thomas@codesourcery.com>
8605 Chung-Lin Tang <cltang@codesourcery.com>
8606
8607 * oacc-mem.c (acc_present_or_create): Remove definition and change
8608 to alias of acc_create.
8609 (acc_present_or_copyin): Remove definition and change to alias of
8610 acc_copyin.
8611 * oacc-parallel.c (GOACC_enter_exit_data): Call acc_create instead
8612 of acc_present_or_create.
8613 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Remove.
8614 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
8615 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
8616 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
8617 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
8618 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
8619 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
8620 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
8621 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
8622 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
8623 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
8624 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
8625 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
8626 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
8627 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
8628 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
8629
7de562ee
TS
86302018-12-14 Thomas Schwinge <thomas@codesourcery.com>
8631
f847198e
TS
8632 PR libgomp/88495
8633 * plugin/plugin-nvptx.c (nvptx_wait_async): Don't refuse
8634 "identical parameters".
8635 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: Update.
8636 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Remove.
8637
c8ab8aab
TS
8638 PR libgomp/88484
8639 * oacc-parallel.c (GOACC_wait): Correct handling for "async >= 0".
8640 * testsuite/libgomp.oacc-c-c++-common/asyncwait-nop-1.c: New file.
8641
1404af62
TS
8642 PR libgomp/88407
8643 * plugin/plugin-nvptx.c (nvptx_async_test, nvptx_wait)
8644 (nvptx_wait_async): Unseen async-argument is a no-op.
8645 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Update.
8646 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Likewise.
8647 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
8648 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
8649 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
8650 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Merge into...
8651 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: ... this. Update.
8652 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Merge into...
8653 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: ... this. Update
8654
7de562ee
TS
8655 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Revise.
8656 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
8657
17469af7
CLT
86582018-12-14 Chung-Lin Tang <cltang@codesourcery.com>
8659
8660 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Adjust.
8661 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
8662 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
8663
18c247cc
TS
86642018-12-14 Thomas Schwinge <thomas@codesourcery.com>
8665
8666 PR libgomp/88370
8667 * libgomp.texi (acc_get_current_cuda_context, acc_get_cuda_stream)
8668 (acc_set_cuda_stream): Clarify.
8669 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
8670 "async_valid_p".
8671 * plugin/plugin-nvptx.c (nvptx_set_cuda_stream): Refuse "async ==
8672 acc_async_sync".
8673 * testsuite/libgomp.oacc-c-c++-common/acc_set_cuda_stream-1.c: New file.
8674 * testsuite/libgomp.oacc-c-c++-common/async_queue-1.c: Likewise.
8675 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Update.
8676 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
8677
b0aba46c
TV
86782018-12-14 Tom de Vries <tdevries@suse.de>
8679
8680 * testsuite/libgomp.c-c++-common/function-not-offloaded-aux.c: New test.
8681 * testsuite/libgomp.c-c++-common/function-not-offloaded.c: New test.
8682 * testsuite/libgomp.c-c++-common/variable-not-offloaded.c: New test.
8683 * testsuite/libgomp.oacc-c-c++-common/function-not-offloaded.c: New test.
8684 * testsuite/libgomp.oacc-c-c++-common/variable-not-offloaded.c: New test.
8685
fe0827ee
TV
86862018-12-13 Tom de Vries <tdevries@suse.de>
8687
8688 * affinity-fmt.c (gomp_print_string): New function, factored out of ...
8689 (omp_display_affinity, gomp_display_affinity_thread): ... here, and ...
8690 * fortran.c (omp_display_affinity_): ... here.
8691 * libgomp.h (gomp_print_string): Declare.
8692 * config/nvptx/affinity-fmt.c: New file. Include affinity-fmt.c,
8693 undefining HAVE_GETPID and HAVE_GETHOSTNAME, and mapping fwrite to
8694 write.
8695
a51f8c92
JJ
86962018-12-13 Jakub Jelinek <jakub@redhat.com>
8697
8698 PR libgomp/88460
8699 * testsuite/libgomp.c++/for-24.C (results): Include it in
8700 omp declare target region.
8701 (main): Use map (always, tofrom: results) instead of
8702 map (tofrom: results).
8703
a6ef2ac9
JJ
87042018-12-12 Jakub Jelinek <jakub@redhat.com>
8705
7a289b7d
JJ
8706 PR fortran/88463
8707 * testsuite/libgomp.fortran/pr88463-1.f90: New test.
8708 * testsuite/libgomp.fortran/pr88463-2.f90: New test.
8709
a6ef2ac9
JJ
8710 * testsuite/libgomp.c-c++-common/for-16.c: New test.
8711
9c47a019
AS
87122018-12-12 Andreas Schwab <schwab@suse.de>
8713
8714 * config/linux/ia64/futex.h (sys_futex0): Don't mark r12 as
8715 clobbered.
8716
d0cbb206
TK
87172018-12-09 Thomas Koenig <tkoenig@gcc.gnu.org>
8718
8719 PR fortran/88411
8720 * testsuite/libgomp.fortran/async_io_8.f90: New test.
8721
84ca08d2
TS
87222018-12-09 Thomas Schwinge <thomas@codesourcery.com>
8723 Jakub Jelinek <jakub@redhat.com>
8724
8725 * target.c (gomp_map_vars): Call gomp_copy_host2dev instead of
8726 devicep->host2dev_func.
8727
6997628d
JJ
87282018-12-08 Jakub Jelinek <jakub@redhat.com>
8729
8730 PR libgomp/87995
8731 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: Require
8732 tls_runtime effective target.
8733 (t): New threadprivate variable.
8734 (main): Set t in threads which execute iterations of the worksharing
8735 loop. Propagate that to the task after the loop and don't abort
8736 if the current taskgroup hasn't been cancelled.
8737
daa8c1d7
JJ
87382018-12-02 Jakub Jelinek <jakub@redhat.com>
8739
4a82df9a
JJ
8740 * testsuite/libgomp.c/task-reduction-3.c: New test.
8741
daa8c1d7
JJ
8742 * testsuite/libgomp.c-c++-common/cancel-taskgroup-4.c: New test.
8743
fe570ff8
CP
87442018-11-30 Cesar Philippidis <cesar@codesourcery.com>
8745
8746 PR libgomp/88288
8747 * oacc-parallel.c (GOACC_parallel_keyed): Add offset to devaddrs.
8748 * testsuite/libgomp.oacc-c-c++-common/pr88288.c: New test.
8749
c223608f
TS
87502018-11-30 Thomas Schwinge <thomas@codesourcery.com>
8751
8752 * testsuite/libgomp.oacc-fortran/lib-16-2.f90: New file.
8753
fc60283c
RB
87542018-10-19 Richard Biener <rguenther@suse.de>
8755
8756 PR tree-optimization/88182
8757 * testsuite/libgomp.c++/pr88182.C: Move to g++.dg/gomp.
8758
ffcf3b79
JJ
87592018-11-26 Jakub Jelinek <jakub@redhat.com>
8760
8761 * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Drop dejagnu.
8762 (RUNTEST): Don't define.
8763 (RUNTESTDEFAULTFLAGS): Add.
8764 (check-DEJAGNU, site.exp, distclean-DEJAGNU): New goals.
8765 (distclean-am): Depend on distclean-DEJAGNU.
8766 (check-am): If -j% option is present in MFLAGS and if
8767 `getconf _NPROCESSORS_ONLN` is more than 8, export OMP_NUM_THREADS=8.
8768 (.PHONY): Add check-DEJAGNU and distclean-DEJAGNU.
8769 * testsuite/Makefile.in: Regenerated.
8770
ef6e6914
RB
87712018-11-26 Richard Biener <rguenther@suse.de>
8772
8773 PR tree-optimization/88182
8774 * testsuite/libgomp.c++/pr88182.C: New testcase.
8775
72d3bb76
JJ
87762018-11-20 Jakub Jelinek <jakub@redhat.com>
8777
8778 PR bootstrap/88106
8779 * config/mingw32/affinity-fmt.c: New file.
8780
207286c3
JJ
87812018-11-09 Jakub Jelinek <jakub@redhat.com>
8782
9666c522
JJ
8783 * affinity-fmt.c: Include inttypes.h if HAVE_INTTYPES_H.
8784 (gomp_display_affinity): Use __builtin_choose_expr to handle
8785 properly handle argument having integral, or pointer or some other
8786 type. If inttypes.h is available and PRIx64 is defined, use PRIx64
8787 with uint64_t type instead of %llx and unsigned long long.
8788
207286c3
JJ
8789 * testsuite/libgomp.c-c++-common/task-reduction-13.c: New test.
8790 * testsuite/libgomp.c-c++-common/task-reduction-14.c: New test.
8791
2033f45b
RO
87922018-11-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
8793
8794 * affinity.c: Include <string.h>, <stdio.h>.
8795 (gomp_display_affinity_place): Remove cpusetp.
8796 * teams.c: Include <limits.h>.
8797
28567c40
JJ
87982018-11-08 Jakub Jelinek <jakub@redhat.com>
8799
8991d779
JJ
8800 * testsuite/libgomp.c-c++-common/task-reduction-8.c (bar): Add
8801 in_reduction clause for s[0].
8802
28567c40
JJ
8803 * affinity.c (gomp_display_affinity_place): New function.
8804 * affinity-fmt.c: New file.
8805 * alloc.c (gomp_aligned_alloc, gomp_aligned_free): New functions.
8806 * config/linux/affinity.c (gomp_display_affinity_place): New function.
8807 * config/nvptx/icv-device.c (omp_get_num_teams, omp_get_team_num):
8808 Move these functions to ...
8809 * config/nvptx/teams.c: ... here. New file.
8810 * config/nvptx/target.c (omp_pause_resource, omp_pause_resource_all):
8811 New functions.
8812 * config/nvptx/team.c (gomp_team_start, gomp_pause_host): New
8813 functions.
8814 * configure.ac: Check for aligned_alloc, posix_memalign, memalign
8815 and _aligned_malloc.
8816 (HAVE_UNAME, HAVE_GETHOSTNAME, HAVE_GETPID): Add new tests.
8817 * configure.tgt: Add -DUSING_INITIAL_EXEC_TLS to XCFLAGS for Linux.
8818 * env.c (gomp_display_affinity_var, gomp_affinity_format_var,
8819 gomp_affinity_format_len): New variables.
8820 (parse_schedule): Parse monotonic and nonmonotonic modifiers in
8821 OMP_SCHEDULE variable. Set GFS_MONOTONIC for monotonic schedules.
8822 (handle_omp_display_env): Display monotonic/nonmonotonic schedule
8823 modifiers. Display (non-default) chunk sizes. Print
8824 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT.
8825 (initialize_env): Don't call pthread_attr_setdetachstate. Handle
8826 OMP_DISPLAY_AFFINITY and OMP_AFFINITY_FORMAT env vars.
8827 * fortran.c: Include stdio.h and string.h.
8828 (omp_pause_resource, omp_pause_resource_all): Add ialias_redirect.
8829 (omp_get_schedule_, omp_get_schedule_8_): Mask off GFS_MONOTONIC bit.
8830 (omp_set_affinity_format_, omp_get_affinity_format_,
8831 omp_display_affinity_, omp_capture_affinity_, omp_pause_resource_,
8832 omp_pause_resource_all_): New functions.
8833 * icv.c (omp_set_schedule): Mask off omp_sched_monotonic bit in
8834 switch.
8835 * icv-device.c (omp_get_num_teams, omp_get_team_num): Move these
8836 functions to ...
8837 * teams.c: ... here. New file.
8838 * libgomp_g.h: Include gstdint.h.
8839 (GOMP_loop_nonmonotonic_runtime_start,
8840 GOMP_loop_maybe_nonmonotonic_runtime_start, GOMP_loop_start,
8841 GOMP_loop_ordered_start, GOMP_loop_nonmonotonic_runtime_next,
8842 GOMP_loop_maybe_nonmonotonic_runtime_next, GOMP_loop_doacross_start,
8843 GOMP_parallel_loop_nonmonotonic_runtime,
8844 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
8845 GOMP_loop_ull_nonmonotonic_runtime_start,
8846 GOMP_loop_ull_maybe_nonmonotonic_runtime_start, GOMP_loop_ull_start,
8847 GOMP_loop_ull_ordered_start, GOMP_loop_ull_nonmonotonic_runtime_next,
8848 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
8849 GOMP_loop_ull_doacross_start, GOMP_parallel_reductions,
8850 GOMP_taskwait_depend, GOMP_taskgroup_reduction_register,
8851 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
8852 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
8853 GOMP_teams_reg): Declare.
8854 * libgomp.h (GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC): Define unless
8855 gomp_aligned_alloc uses fallback implementation.
8856 (gomp_aligned_alloc, gomp_aligned_free): Declare.
8857 (enum gomp_schedule_type): Add GFS_MONOTONIC.
8858 (struct gomp_doacross_work_share): Add extra field.
8859 (struct gomp_work_share): Add task_reductions field.
8860 (struct gomp_taskgroup): Add workshare and reductions fields.
8861 (GOMP_NEEDS_THREAD_HANDLE): Define if needed.
8862 (gomp_thread_handle): New typedef.
8863 (gomp_display_affinity_place, gomp_set_affinity_format,
8864 gomp_display_string, gomp_display_affinity,
8865 gomp_display_affinity_thread): Declare.
8866 (gomp_doacross_init, gomp_doacross_ull_init): Add size_t argument.
8867 (gomp_parallel_reduction_register, gomp_workshare_taskgroup_start,
8868 gomp_workshare_task_reduction_register): Declare.
8869 (gomp_team_start): Add taskgroup argument.
8870 (gomp_pause_host): Declare.
8871 (gomp_init_work_share, gomp_work_share_start): Change bool argument
8872 to size_t.
8873 (gomp_thread_self, gomp_thread_to_pthread_t): New inline functions.
8874 * libgomp.map (GOMP_5.0): Export GOMP_loop_start,
8875 GOMP_loop_ordered_start, GOMP_loop_doacross_start,
8876 GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
8877 GOMP_loop_ull_doacross_start,
8878 GOMP_workshare_task_reduction_unregister, GOMP_sections2_start,
8879 GOMP_loop_maybe_nonmonotonic_runtime_next,
8880 GOMP_loop_maybe_nonmonotonic_runtime_start,
8881 GOMP_loop_nonmonotonic_runtime_next,
8882 GOMP_loop_nonmonotonic_runtime_start,
8883 GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
8884 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
8885 GOMP_loop_ull_nonmonotonic_runtime_next,
8886 GOMP_loop_ull_nonmonotonic_runtime_start,
8887 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
8888 GOMP_parallel_loop_nonmonotonic_runtime, GOMP_parallel_reductions,
8889 GOMP_taskgroup_reduction_register,
8890 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
8891 GOMP_teams_reg and GOMP_taskwait_depend.
8892 (OMP_5.0): Export omp_pause_resource{,_all}{,_},
8893 omp_{capture,display}_affinity{,_}, and
8894 omp_[gs]et_affinity_format{,_}.
8895 * loop.c: Include string.h.
8896 (GOMP_loop_runtime_next): Add ialias.
8897 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
8898 (gomp_loop_static_start, gomp_loop_dynamic_start,
8899 gomp_loop_guided_start, gomp_loop_ordered_static_start,
8900 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
8901 gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
8902 gomp_loop_doacross_guided_start): Adjust gomp_work_share_start
8903 or gomp_doacross_init callers.
8904 (gomp_adjust_sched, GOMP_loop_start, GOMP_loop_ordered_start,
8905 GOMP_loop_doacross_start): New functions.
8906 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
8907 GOMP_loop_doacross_runtime_start, GOMP_parallel_loop_runtime_start):
8908 Mask off GFS_MONOTONIC bit.
8909 (GOMP_loop_maybe_nonmonotonic_runtime_next,
8910 GOMP_loop_maybe_nonmonotonic_runtime_start,
8911 GOMP_loop_nonmonotonic_runtime_next,
8912 GOMP_loop_nonmonotonic_runtime_start,
8913 GOMP_parallel_loop_maybe_nonmonotonic_runtime,
8914 GOMP_parallel_loop_nonmonotonic_runtime): New aliases or wrapper
8915 functions.
8916 (gomp_parallel_loop_start): Pass NULL as taskgroup to
8917 gomp_team_start.
8918 * loop_ull.c: Include string.h.
8919 (GOMP_loop_ull_runtime_next): Add ialias.
8920 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
8921 (gomp_loop_ull_static_start, gomp_loop_ull_dynamic_start,
8922 gomp_loop_ull_guided_start, gomp_loop_ull_ordered_static_start,
8923 gomp_loop_ull_ordered_dynamic_start,
8924 gomp_loop_ull_ordered_guided_start,
8925 gomp_loop_ull_doacross_static_start,
8926 gomp_loop_ull_doacross_dynamic_start,
8927 gomp_loop_ull_doacross_guided_start): Adjust gomp_work_share_start
8928 and gomp_doacross_ull_init callers.
8929 (gomp_adjust_sched, GOMP_loop_ull_start, GOMP_loop_ull_ordered_start,
8930 GOMP_loop_ull_doacross_start): New functions.
8931 (GOMP_loop_ull_runtime_start,
8932 GOMP_loop_ull_ordered_runtime_start,
8933 GOMP_loop_ull_doacross_runtime_start): Mask off GFS_MONOTONIC bit.
8934 (GOMP_loop_ull_maybe_nonmonotonic_runtime_next,
8935 GOMP_loop_ull_maybe_nonmonotonic_runtime_start,
8936 GOMP_loop_ull_nonmonotonic_runtime_next,
8937 GOMP_loop_ull_nonmonotonic_runtime_start): Likewise.
8938 * Makefile.am (libgomp_la_SOURCES): Add teams.c and affinity-fmt.c.
8939 * omp.h.in (enum omp_sched_t): Add omp_sched_monotonic.
8940 (omp_pause_resource_t, omp_depend_t): New typedefs.
8941 (enum omp_lock_hint_t): Renamed to ...
8942 (enum omp_sync_hint_t): ... this. Define omp_sync_hint_*
8943 enumerators using numbers and omp_lock_hint_* as their aliases.
8944 (omp_lock_hint_t): New typedef. Rename to ...
8945 (omp_sync_hint_t): ... this.
8946 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint): Use
8947 omp_sync_hint_t instead of omp_lock_hint_t.
8948 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
8949 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
8950 Declare.
8951 (omp_target_is_present, omp_target_disassociate_ptr):
8952 Change first argument from void * to const void *.
8953 (omp_target_memcpy, omp_target_memcpy_rect): Change second argument
8954 from void * to const void *.
8955 (omp_target_associate_ptr): Change first and second arguments from
8956 void * to const void *.
8957 * omp_lib.f90.in (omp_pause_resource_kind, omp_pause_soft,
8958 omp_pause_hard): New parameters.
8959 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
8960 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
8961 New interfaces.
8962 * omp_lib.h.in (omp_pause_resource_kind, omp_pause_soft,
8963 omp_pause_hard): New parameters.
8964 (omp_pause_resource, omp_pause_resource_all, omp_set_affinity_format,
8965 omp_get_affinity_format, omp_display_affinity, omp_capture_affinity):
8966 New externals.
8967 * ordered.c (gomp_doacross_init, gomp_doacross_ull_init): Add
8968 EXTRA argument. If not needed to prepare array, if extra is 0,
8969 clear ws->doacross, otherwise allocate just doacross structure and
8970 extra payload. If array is needed, allocate also extra payload.
8971 (GOMP_doacross_post, GOMP_doacross_wait, GOMP_doacross_ull_post,
8972 GOMP_doacross_ull_wait): Handle doacross->array == NULL like
8973 doacross == NULL.
8974 * parallel.c (GOMP_parallel_start): Pass NULL as taskgroup to
8975 gomp_team_start.
8976 (GOMP_parallel): Likewise. Formatting fix.
8977 (GOMP_parallel_reductions): New function.
8978 (GOMP_cancellation_point): If taskgroup has workshare
8979 flag set, check cancelled of prev taskgroup if any.
8980 (GOMP_cancel): If taskgroup has workshare flag set, set cancelled
8981 on prev taskgroup if any.
8982 * sections.c: Include string.h.
8983 (GOMP_taskgroup_reduction_register): Add ialias_redirect.
8984 (GOMP_sections_start): Adjust gomp_work_share_start caller.
8985 (GOMP_sections2_start): New function.
8986 (GOMP_parallel_sections_start, GOMP_parallel_sections):
8987 Pass NULL as taskgroup to gomp_team_start.
8988 * single.c (GOMP_single_start, GOMP_single_copy_start): Adjust
8989 gomp_work_share_start callers.
8990 * target.c (GOMP_target_update_ext, GOMP_target_enter_exit_data):
8991 If taskgroup has workshare flag set, check cancelled on prev
8992 taskgroup if any. Guard all cancellation tests with
8993 gomp_cancel_var test.
8994 (omp_target_is_present, omp_target_disassociate_ptr):
8995 Change ptr argument from void * to const void *.
8996 (omp_target_memcpy): Change src argument from void * to const void *.
8997 (omp_target_memcpy_rect): Likewise.
8998 (omp_target_memcpy_rect_worker): Likewise. Use const char * casts
8999 instead of char * where needed.
9000 (omp_target_associate_ptr): Change host_ptr and device_ptr arguments
9001 from void * to const void *.
9002 (omp_pause_resource, omp_pause_resource_all): New functions.
9003 * task.c (gomp_task_handle_depend): Handle new depend array format
9004 in addition to the old. Handle mutexinoutset kinds the same as
9005 inout for now, handle unspecified kinds.
9006 (gomp_create_target_task): If taskgroup has workshare flag set, check
9007 cancelled on prev taskgroup if any. Guard all cancellation tests with
9008 gomp_cancel_var test. Handle new depend array format count in
9009 addition to the old.
9010 (GOMP_task): Likewise. Adjust function comment.
9011 (gomp_task_run_pre): If taskgroup has workshare flag set, check
9012 cancelled on prev taskgroup if any. Guard all cancellation tests with
9013 gomp_cancel_var test.
9014 (GOMP_taskwait_depend): New function.
9015 (gomp_task_maybe_wait_for_dependencies): Handle new depend array
9016 format in addition to the old. Handle mutexinoutset kinds the same as
9017 inout for now, handle unspecified kinds. Fix a function comment typo.
9018 (gomp_taskgroup_init): New function.
9019 (GOMP_taskgroup_start): Use it.
9020 (gomp_reduction_register, gomp_create_artificial_team,
9021 GOMP_taskgroup_reduction_register,
9022 GOMP_taskgroup_reduction_unregister, GOMP_task_reduction_remap,
9023 gomp_parallel_reduction_register,
9024 gomp_workshare_task_reduction_register,
9025 gomp_workshare_taskgroup_start,
9026 GOMP_workshare_task_reduction_unregister): New functions.
9027 * taskloop.c (GOMP_taskloop): If taskgroup has workshare flag set,
9028 check cancelled on prev taskgroup if any. Guard all cancellation
9029 tests with gomp_cancel_var test. Handle GOMP_TASK_FLAG_REDUCTION flag
9030 by calling GOMP_taskgroup_reduction_register.
9031 * team.c (gomp_thread_attr): Remove comment.
9032 (struct gomp_thread_start_data): Add handle field.
9033 (gomp_thread_start): Call pthread_detach.
9034 (gomp_new_team): Adjust gomp_init_work_share caller.
9035 (gomp_free_pool_helper): Call pthread_detach.
9036 (gomp_team_start): Add taskgroup argument, initialize implicit
9037 tasks' taskgroup field to that. Don't call
9038 pthread_attr_setdetachstate. Handle OMP_DISPLAY_AFFINITY env var.
9039 (gomp_team_end): Determine nesting by thr->ts.level != 0
9040 rather than thr->ts.team != NULL.
9041 (gomp_pause_pool_helper, gomp_pause_host): New functions.
9042 * work.c (alloc_work_share): Use gomp_aligned_alloc instead of
9043 gomp_malloc if GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is defined.
9044 (gomp_init_work_share): Change ORDERED argument from bool to size_t,
9045 if more than 1 allocate also extra payload at the end of array. Never
9046 keep ordered_team_ids NULL, set it to inline_ordered_team_ids instead.
9047 (gomp_work_share_start): Change ORDERED argument from bool to size_t,
9048 return true instead of ws.
9049 * Makefile.in: Regenerated.
9050 * configure: Regenerated.
9051 * config.h.in: Regenerated.
9052 * testsuite/libgomp.c/cancel-for-2.c (foo): Use cancel modifier
9053 in some cases.
9054 * testsuite/libgomp.c-c++-common/cancel-parallel-1.c: New test.
9055 * testsuite/libgomp.c-c++-common/cancel-taskgroup-3.c: New test.
9056 * testsuite/libgomp.c-c++-common/depend-iterator-1.c: New test.
9057 * testsuite/libgomp.c-c++-common/depend-iterator-2.c: New test.
9058 * testsuite/libgomp.c-c++-common/depend-mutexinout-1.c: New test.
9059 * testsuite/libgomp.c-c++-common/depend-mutexinout-2.c: New test.
9060 * testsuite/libgomp.c-c++-common/depobj-1.c: New test.
9061 * testsuite/libgomp.c-c++-common/display-affinity-1.c: New test.
9062 * testsuite/libgomp.c-c++-common/for-10.c: New test.
9063 * testsuite/libgomp.c-c++-common/for-11.c: New test.
9064 * testsuite/libgomp.c-c++-common/for-12.c: New test.
9065 * testsuite/libgomp.c-c++-common/for-13.c: New test.
9066 * testsuite/libgomp.c-c++-common/for-14.c: New test.
9067 * testsuite/libgomp.c-c++-common/for-15.c: New test.
9068 * testsuite/libgomp.c-c++-common/for-2.h: If CONDNE macro is defined,
9069 define a different N(test), don't define N(f0) to N(f14), but instead
9070 define N(f20) to N(f34) using != comparisons.
9071 * testsuite/libgomp.c-c++-common/for-7.c: New test.
9072 * testsuite/libgomp.c-c++-common/for-8.c: New test.
9073 * testsuite/libgomp.c-c++-common/for-9.c: New test.
9074 * testsuite/libgomp.c-c++-common/master-combined-1.c: New test.
9075 * testsuite/libgomp.c-c++-common/pause-1.c: New test.
9076 * testsuite/libgomp.c-c++-common/pause-2.c: New test.
9077 * testsuite/libgomp.c-c++-common/pr66199-10.c: New test.
9078 * testsuite/libgomp.c-c++-common/pr66199-11.c: New test.
9079 * testsuite/libgomp.c-c++-common/pr66199-12.c: New test.
9080 * testsuite/libgomp.c-c++-common/pr66199-13.c: New test.
9081 * testsuite/libgomp.c-c++-common/pr66199-14.c: New test.
9082 * testsuite/libgomp.c-c++-common/simd-1.c: New test.
9083 * testsuite/libgomp.c-c++-common/taskloop-reduction-1.c: New test.
9084 * testsuite/libgomp.c-c++-common/taskloop-reduction-2.c: New test.
9085 * testsuite/libgomp.c-c++-common/taskloop-reduction-3.c: New test.
9086 * testsuite/libgomp.c-c++-common/taskloop-reduction-4.c: New test.
9087 * testsuite/libgomp.c-c++-common/task-reduction-11.c: New test.
9088 * testsuite/libgomp.c-c++-common/task-reduction-12.c: New test.
9089 * testsuite/libgomp.c-c++-common/task-reduction-1.c: New test.
9090 * testsuite/libgomp.c-c++-common/task-reduction-2.c: New test.
9091 * testsuite/libgomp.c-c++-common/task-reduction-3.c: New test.
9092 * testsuite/libgomp.c-c++-common/task-reduction-4.c: New test.
9093 * testsuite/libgomp.c-c++-common/task-reduction-5.c: New test.
9094 * testsuite/libgomp.c-c++-common/task-reduction-6.c: New test.
9095 * testsuite/libgomp.c-c++-common/task-reduction-7.c: New test.
9096 * testsuite/libgomp.c-c++-common/task-reduction-8.c: New test.
9097 * testsuite/libgomp.c-c++-common/task-reduction-9.c: New test.
9098 * testsuite/libgomp.c-c++-common/taskwait-depend-1.c: New test.
9099 * testsuite/libgomp.c++/depend-1.C: New test.
9100 * testsuite/libgomp.c++/depend-iterator-1.C: New test.
9101 * testsuite/libgomp.c++/depobj-1.C: New test.
9102 * testsuite/libgomp.c++/for-16.C: New test.
9103 * testsuite/libgomp.c++/for-21.C: New test.
9104 * testsuite/libgomp.c++/for-22.C: New test.
9105 * testsuite/libgomp.c++/for-23.C: New test.
9106 * testsuite/libgomp.c++/for-24.C: New test.
9107 * testsuite/libgomp.c++/for-25.C: New test.
9108 * testsuite/libgomp.c++/for-26.C: New test.
9109 * testsuite/libgomp.c++/taskloop-reduction-1.C: New test.
9110 * testsuite/libgomp.c++/taskloop-reduction-2.C: New test.
9111 * testsuite/libgomp.c++/taskloop-reduction-3.C: New test.
9112 * testsuite/libgomp.c++/taskloop-reduction-4.C: New test.
9113 * testsuite/libgomp.c++/task-reduction-10.C: New test.
9114 * testsuite/libgomp.c++/task-reduction-11.C: New test.
9115 * testsuite/libgomp.c++/task-reduction-12.C: New test.
9116 * testsuite/libgomp.c++/task-reduction-13.C: New test.
9117 * testsuite/libgomp.c++/task-reduction-14.C: New test.
9118 * testsuite/libgomp.c++/task-reduction-15.C: New test.
9119 * testsuite/libgomp.c++/task-reduction-16.C: New test.
9120 * testsuite/libgomp.c++/task-reduction-17.C: New test.
9121 * testsuite/libgomp.c++/task-reduction-18.C: New test.
9122 * testsuite/libgomp.c++/task-reduction-19.C: New test.
9123 * testsuite/libgomp.c/task-reduction-1.c: New test.
9124 * testsuite/libgomp.c++/task-reduction-1.C: New test.
9125 * testsuite/libgomp.c/task-reduction-2.c: New test.
9126 * testsuite/libgomp.c++/task-reduction-2.C: New test.
9127 * testsuite/libgomp.c++/task-reduction-3.C: New test.
9128 * testsuite/libgomp.c++/task-reduction-4.C: New test.
9129 * testsuite/libgomp.c++/task-reduction-5.C: New test.
9130 * testsuite/libgomp.c++/task-reduction-6.C: New test.
9131 * testsuite/libgomp.c++/task-reduction-7.C: New test.
9132 * testsuite/libgomp.c++/task-reduction-8.C: New test.
9133 * testsuite/libgomp.c++/task-reduction-9.C: New test.
9134 * testsuite/libgomp.c/teams-1.c: New test.
9135 * testsuite/libgomp.c/teams-2.c: New test.
9136 * testsuite/libgomp.c/thread-limit-4.c: New test.
9137 * testsuite/libgomp.c/thread-limit-5.c: New test.
9138 * testsuite/libgomp.fortran/display-affinity-1.f90: New test.
9139
58168bbf
CLT
91402018-11-06 Chung-Lin Tang <cltang@codesourcery.com>
9141
9142 * oacc-mem.c (memcpy_tofrom_device): New function, combined from
9143 acc_memcpy_to/from_device functions, now with async parameter.
9144 (acc_memcpy_to_device): Modify to use memcpy_tofrom_device.
9145 (acc_memcpy_from_device): Likewise.
9146 (acc_memcpy_to_device_async): New API function.
9147 (acc_memcpy_from_device_async): Likewise.
9148 (present_create_copy): Add async parameter and async setting/unsetting.
9149 (acc_create): Adjust present_create_copy call.
9150 (acc_copyin): Likewise.
9151 (acc_present_or_create): Likewise.
9152 (acc_present_or_copyin): Likewise.
9153 (acc_create_async): New API function.
9154 (acc_copyin_async): New API function.
9155 (delete_copyout): Add async parameter and async setting/unsetting.
9156 (acc_delete): Adjust delete_copyout call.
9157 (acc_copyout): Likewise.
9158 (acc_delete_async): New API function.
9159 (acc_copyout_async): Likewise.
9160 (update_dev_host): Add async parameter and async setting/unsetting.
9161 (acc_update_device): Adjust update_dev_host call.
9162 (acc_update_self): Likewise.
9163 (acc_update_device_async): New API function.
9164 (acc_update_self_async): Likewise.
9165 * openacc.h (acc_copyin_async): Declare new API function.
9166 (acc_create_async): Likewise.
9167 (acc_copyout_async): Likewise.
9168 (acc_delete_async): Likewise.
9169 (acc_update_device_async): Likewise.
9170 (acc_update_self_async): Likewise.
9171 (acc_memcpy_to_device_async): Likewise.
9172 (acc_memcpy_from_device_async): Likewise.
9173 * openacc_lib.h (acc_copyin_async_32_h): New subroutine.
9174 (acc_copyin_async_64_h): New subroutine.
9175 (acc_copyin_async_array_h): New subroutine.
9176 (acc_create_async_32_h): New subroutine.
9177 (acc_create_async_64_h): New subroutine.
9178 (acc_create_async_array_h): New subroutine.
9179 (acc_copyout_async_32_h): New subroutine.
9180 (acc_copyout_async_64_h): New subroutine.
9181 (acc_copyout_async_array_h): New subroutine.
9182 (acc_delete_async_32_h): New subroutine.
9183 (acc_delete_async_64_h): New subroutine.
9184 (acc_delete_async_array_h): New subroutine.
9185 (acc_update_device_async_32_h): New subroutine.
9186 (acc_update_device_async_64_h): New subroutine.
9187 (acc_update_device_async_array_h): New subroutine.
9188 (acc_update_self_async_32_h): New subroutine.
9189 (acc_update_self_async_64_h): New subroutine.
9190 (acc_update_self_async_array_h): New subroutine.
9191 * openacc.f90 (acc_copyin_async_32_h): New subroutine.
9192 (acc_copyin_async_64_h): New subroutine.
9193 (acc_copyin_async_array_h): New subroutine.
9194 (acc_create_async_32_h): New subroutine.
9195 (acc_create_async_64_h): New subroutine.
9196 (acc_create_async_array_h): New subroutine.
9197 (acc_copyout_async_32_h): New subroutine.
9198 (acc_copyout_async_64_h): New subroutine.
9199 (acc_copyout_async_array_h): New subroutine.
9200 (acc_delete_async_32_h): New subroutine.
9201 (acc_delete_async_64_h): New subroutine.
9202 (acc_delete_async_array_h): New subroutine.
9203 (acc_update_device_async_32_h): New subroutine.
9204 (acc_update_device_async_64_h): New subroutine.
9205 (acc_update_device_async_array_h): New subroutine.
9206 (acc_update_self_async_32_h): New subroutine.
9207 (acc_update_self_async_64_h): New subroutine.
9208 (acc_update_self_async_array_h): New subroutine.
9209 * libgomp.map (OACC_2.5): Add acc_copyin_async*, acc_copyout_async*,
9210 acc_copyout_finalize_async*, acc_create_async*, acc_delete_async*,
9211 acc_delete_finalize_async*, acc_memcpy_from_device_async*,
9212 acc_memcpy_to_device_async*, acc_update_device_async*, and
9213 acc_update_self_async* entries.
9214 * testsuite/libgomp.oacc-c-c++-common/lib-94.c: New test.
9215 * testsuite/libgomp.oacc-c-c++-common/lib-95.c: New test.
9216 * testsuite/libgomp.oacc-fortran/lib-16.f90: New test.
9217
22e05272
JM
92182018-10-31 Joseph Myers <joseph@codesourcery.com>
9219
9220 PR bootstrap/82856
9221 * Makefile.am: Include multilib.am
9222 (AUTOMAKE_OPTIONS): Add info-in-builddir.
9223 (CLEANFILES): Remove libgomp.info.
9224 * configure.ac: Remove AC_PREREQ.
9225 * testsuite/Makefile.am (RUNTEST): Remove quotes.
9226 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in:
9227 Regenerate.
9228
87a5ccfb
JM
92292018-10-29 Joseph Myers <joseph@codesourcery.com>
9230 Julian Brown <julian@codesourcery.com>
9231
9232 * testsuite/libgomp.oacc-c++/this.C: New.
9233
2049befd
CP
92342018-09-18 Cesar Philippidis <cesar@codesourcery.com>
9235
9236 * plugin/plugin-nvptx.c (struct cuda_map): New.
9237 (struct ptx_stream): Replace d, h, h_begin, h_end, h_next, h_prev,
9238 h_tail with (cuda_map *) map.
9239 (cuda_map_create): New function.
9240 (cuda_map_destroy): New function.
9241 (map_init): Update to use a linked list of cuda_map objects.
9242 (map_fini): Likewise.
9243 (map_pop): Likewise.
9244 (map_push): Likewise. Return CUdeviceptr instead of void.
9245 (init_streams_for_device): Remove stales references to ptx_stream
9246 members.
9247 (select_stream_for_async): Likewise.
9248 (nvptx_exec): Update call to map_init.
9249
8e36332c
CP
92502018-09-09 Cesar Philippidis <cesar@codesourcery.com>
9251 Julian Brown <julian@codesourcery.com>
9252
9253 PR middle-end/86336
9254 * testsuite/libgomp.oacc-c++/non-scalar-data.C: Remove XFAIL.
9255
2b4c9065
NK
92562018-08-21 Nicolas Koenig <koenigni@gcc.gnu.org>
9257 Thomas Koenig <tkoenig@gcc.gnu.org>
9258
9259 PR fortran/25829
9260 * testsuite/libgomp.fortran/async_io_1.f90: New test.
9261 * testsuite/libgomp.fortran/async_io_2.f90: New test.
9262 * testsuite/libgomp.fortran/async_io_3.f90: New test.
9263 * testsuite/libgomp.fortran/async_io_4.f90: New test.
9264 * testsuite/libgomp.fortran/async_io_5.f90: New test.
9265 * testsuite/libgomp.fortran/async_io_6.f90: New test.
9266 * testsuite/libgomp.fortran/async_io_7.f90: New test.
9267
bd9b3d3d
CP
92682018-08-13 Cesar Philippidis <cesar@codesourcery.com>
9269 Tom de Vries <tdevries@suse.de>
9270
9271 PR target/85590
9272 * plugin/cuda/cuda.h (CUoccupancyB2DSize): New typedef.
9273 (cuOccupancyMaxPotentialBlockSize): Declare.
9274 * plugin/cuda-lib.def (cuOccupancyMaxPotentialBlockSize): New
9275 CUDA_ONE_CALL_MAYBE_NULL.
9276 * plugin/plugin-nvptx.c (CUDA_VERSION < 6050): Define
9277 CUoccupancyB2DSize and declare
9278 cuOccupancyMaxPotentialBlockSize.
9279 (nvptx_exec): Use cuOccupancyMaxPotentialBlockSize to set the
9280 default num_gangs and num_workers when the driver supports it.
9281
8e09a12f
TV
92822018-08-08 Tom de Vries <tdevries@suse.de>
9283
9284 * plugin/cuda-lib.def (cuLinkAddData_v2, cuLinkCreate_v2): Declare using
9285 CUDA_ONE_CALL_MAYBE_NULL.
9286 * plugin/plugin-nvptx.c (cuLinkAddData, cuLinkCreate): Undef and declare.
9287 (cuLinkAddData_v2, cuLinkCreate_v2): Declare.
9288 (link_ptx): Fall back to cuLinkAddData/cuLinkCreate if the _v2 versions
9289 are not found.
9290
cedd9bd0
TV
92912018-08-08 Tom de Vries <tdevries@suse.de>
9292
9293 * plugin/cuda-lib.def (cuGetErrorString): Use CUDA_ONE_CALL_MAYBE_NULL.
9294 * plugin/plugin-nvptx.c (cuda_error): Handle if cuGetErrorString is not
9295 present.
9296
b113af95
TV
92972018-08-08 Tom de Vries <tdevries@suse.de>
9298
9299 * plugin/plugin-nvptx.c
9300 (CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR): Define.
9301 (nvptx_open_device): Use
9302 CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR.
9303
94767dac
TV
93042018-08-08 Tom de Vries <tdevries@suse.de>
9305
9306 * plugin/plugin-nvptx.c (cuda_error): Move declaration of cuGetErrorString ...
9307 (cuGetErrorString): ... here. Guard with CUDA_VERSION < 6000.
9308
02150de8
TV
93092018-08-07 Tom de Vries <tdevries@suse.de>
9310
9311 * plugin/plugin-nvptx.c (DO_PRAGMA): Define.
9312 (struct cuda_lib_s): Add def/undef of CUDA_ONE_CALL_MAYBE_NULL.
9313 (init_cuda_lib): Add new param to CUDA_ONE_CALL_1. Add arg to
9314 corresponding call in CUDA_ONE_CALL. Add def/undef of
9315 CUDA_ONE_CALL_MAYBE_NULL.
9316 (CUDA_CALL_EXISTS): Define.
9317
9e28b107
TV
93182018-08-07 Tom de Vries <tdevries@suse.de>
9319
9320 * plugin/plugin-nvptx.c (struct cuda_lib_s, init_cuda_lib): Put
9321 CUDA_ONE_CALL defines right before the cuda-lib.def include, and the
9322 corresponding undefs right after.
9323
09940090
TV
93242018-08-04 Tom de Vries <tdevries@suse.de>
9325
9326 * plugin/configfrag.ac: For --without-cuda-driver, set
9327 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB to no. Handle
9328 CUDA_DRIVER_INCLUDE == no and CUDA_DRIVER_LIB == no.
9329 * configure: Regenerate.
9330
77e0a97a
TV
93312018-08-02 Tom de Vries <tdevries@suse.de>
9332
9333 PR target/86660
9334 * testsuite/libgomp.oacc-c++/routine-1-auto.C: Remove -fno-exceptions.
9335 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Same.
9336 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
9337 Same.
9338 * testsuite/libgomp.oacc-c++/routine-1-template.C: Same.
9339 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C: Same.
9340 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Same.
9341
701d080a
CP
93422018-08-01 Cesar Philippidis <cesar@codesourcery.com>
9343 Thomas Schwinge <thomas@codesourcery.com>
9344
9345 * config/nvptx/oacc-parallel.c: Truncate.
9346
094db6be
CP
93472018-08-01 Cesar Philippidis <cesar@codesourcery.com>
9348 James Norris <jnorris@codesourcery.com>
9349
9350 * plugin/plugin-nvptx.c (struct map): Removed.
701d080a
CP
9351 (map_init, map_pop): Remove use of struct map.
9352 (map_push): Likewise and change argument list.
094db6be
CP
9353 * testsuite/libgomp.oacc-c-c++-common/mapping-1.c: New
9354
8c6310a2
TV
93552018-08-01 Tom de Vries <tdevries@suse.de>
9356
9357 * plugin/cuda-lib.def: New file. Factor out of ...
9358 * plugin/plugin-nvptx.c (CUDA_CALLS): ... here.
9359 (struct cuda_lib_s, init_cuda_lib): Include cuda-lib.def instead of
9360 using CUDA_CALLS.
9361
1d4a51cf
AV
93622018-07-31 Andre Vieira <andre.simoesdiasvieira@arm.com>
9363
9364 Revert 'AsyncI/O patch committed'.
9365 2018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
9366 Thomas Koenig <tkoenig@gcc.gnu.org>
9367
9368 PR fortran/25829
9369 * testsuite/libgomp.fortran/async_io_1.f90: New test.
9370 * testsuite/libgomp.fortran/async_io_2.f90: New test.
9371 * testsuite/libgomp.fortran/async_io_3.f90: New test.
9372 * testsuite/libgomp.fortran/async_io_4.f90: New test.
9373 * testsuite/libgomp.fortran/async_io_5.f90: New test.
9374 * testsuite/libgomp.fortran/async_io_6.f90: New test.
9375 * testsuite/libgomp.fortran/async_io_7.f90: New test.
9376
4cdfee3f
TV
93772018-07-30 Tom de Vries <tdevries@suse.de>
9378
9379 * plugin/plugin-nvptx.c (MIN, MAX): Redefine.
9380 (nvptx_exec): Ensure worker and vector default dims don't exceed
9381 targ_fn->max_threads_per_block.
9382
0b210c43
TV
93832018-07-30 Tom de Vries <tdevries@suse.de>
9384
9385 * plugin/plugin-nvptx.c (struct ptx_device): Add default_dims field.
9386 (nvptx_open_device): Init default_dims for device.
9387 (nvptx_exec): Use default_dims from device.
9388
5883c5cc
JJ
93892018-07-26 Jakub Jelinek <jakub@redhat.com>
9390
5d36384c
JJ
9391 PR testsuite/86660
9392 * testsuite/libgomp.c++/for-15.C (results): Include it in
9393 omp declare target region.
9394 (main): Use map (always, tofrom: results) instead of
9395 map (tofrom: results).
9396
5883c5cc
JJ
9397 PR middle-end/86660
9398 * testsuite/libgomp.c/pr86660.c: New test.
9399
88a4654d
CP
94002018-07-26 Cesar Philippidis <cesar@codesourcery.com>
9401 Tom de Vries <tdevries@suse.de>
9402
9403 * plugin/plugin-nvptx.c (nvptx_exec): Error if the hardware doesn't have
9404 sufficient resources to launch a kernel, and give a hint on how to fix
9405 it.
9406
0c6c2f5f
CP
94072018-07-26 Cesar Philippidis <cesar@codesourcery.com>
9408 Tom de Vries <tdevries@suse.de>
9409
9410 * plugin/plugin-nvptx.c (struct ptx_device): Add warp_size,
9411 max_threads_per_block and max_threads_per_multiprocessor fields.
9412 (nvptx_open_device): Initialize new fields.
9413 (nvptx_exec): Use num_sms, and new fields.
9414
6dd58010
TV
94152018-07-26 Tom de Vries <tdevries@suse.de>
9416
9417 * testsuite/libgomp.oacc-fortran/lib-12.f90: Move acc_async_test calls
9418 to correct locations. Remove xfail.
9419
b2eb1779
TV
94202018-07-26 Tom de Vries <tdevries@suse.de>
9421
9422 * testsuite/libgomp.oacc-fortran/lib-13.f90: Replace acc_wait_all with
9423 acc_wait. Move acc_async_test calls to correct locations. Remove
9424 xfail.
9425
b1f45884
NK
94262018-07-25 Nicolas Koenig <koenigni@gcc.gnu.org>
9427 Thomas Koenig <tkoenig@gcc.gnu.org>
9428
9429 PR fortran/25829
9430 * testsuite/libgomp.fortran/async_io_1.f90: New test.
9431 * testsuite/libgomp.fortran/async_io_2.f90: New test.
9432 * testsuite/libgomp.fortran/async_io_3.f90: New test.
9433 * testsuite/libgomp.fortran/async_io_4.f90: New test.
9434 * testsuite/libgomp.fortran/async_io_5.f90: New test.
9435 * testsuite/libgomp.fortran/async_io_6.f90: New test.
9436 * testsuite/libgomp.fortran/async_io_7.f90: New test.
9437
3a106211
JJ
94382018-07-17 Jakub Jelinek <jakub@redhat.com>
9439
a3bccfa1
JJ
9440 PR middle-end/86542
9441 * testsuite/libgomp.c++/pr86542.C: New test.
9442
3a106211
JJ
9443 PR middle-end/86539
9444 * testsuite/libgomp.c++/pr86539.C: New test.
9445
2bae8b2f
JJ
94462018-07-11 Jakub Jelinek <jakub@redhat.com>
9447
9448 PR c++/86443
9449 * testsuite/libgomp.c++/for-15.C (a): Remove unused variable.
9450 (results): Make sure the variable is not inside declare target region.
9451 (qux): Remove unused function.
9452
0b27c3ed
JJ
94532018-07-10 Jakub Jelinek <jakub@redhat.com>
9454
9455 PR c++/86443
9456 * testsuite/libgomp.c++/for-15.C: New test.
9457
f0391511
JJ
94582018-06-26 Jakub Jelinek <jakub@redhat.com>
9459
9460 PR c++/86291
9461 * testsuite/libgomp.c++/pr86291.C: New test.
9462
1a6d1d24
GP
94632018-06-24 Gerald Pfeifer <gerald@pfeifer.com>
9464
9465 * libgomp.texi (Top): Move www.openmp.org to https.
9466 (Enabling OpenMP): Ditto.
9467 (omp_get_active_level): Ditto.
9468 (omp_get_ancestor_thread_num): Ditto.
9469 (omp_get_cancellation): Ditto.
9470 (omp_get_default_device): Ditto.
9471 (omp_get_dynamic): Ditto.
9472 (omp_get_level): Ditto.
9473 (omp_get_max_active_levels): Ditto.
9474 (omp_get_max_task_priority): Ditto.
9475 (omp_get_max_threads): Ditto.
9476 (omp_get_nested): Ditto.
9477 (omp_get_num_devices): Ditto.
9478 (omp_get_num_procs): Ditto.
9479 (omp_get_num_teams): Ditto.
9480 (omp_get_num_threads): Ditto.
9481 (omp_get_proc_bind): Ditto.
9482 (omp_get_schedule): Ditto.
9483 (omp_get_team_num): Ditto.
9484 (omp_get_team_size): Ditto.
9485 (omp_get_thread_limit): Ditto.
9486 (omp_get_thread_num): Ditto.
9487 (omp_in_parallel): Ditto.
9488 (omp_in_final): Ditto.
9489 (omp_is_initial_device): Ditto.
9490 (omp_set_default_device): Ditto.
9491 (omp_set_dynamic): Ditto.
9492 (omp_set_max_active_levels): Ditto.
9493 (omp_set_nested): Ditto.
9494 (omp_set_num_threads): Ditto.
9495 (omp_set_schedule): Ditto.
9496 (omp_init_lock): Ditto.
9497 (omp_set_lock): Ditto.
9498 (omp_test_lock): Ditto.
9499 (omp_unset_lock): Ditto.
9500 (omp_destroy_lock): Ditto.
9501 (omp_init_nest_lock): Ditto.
9502 (omp_set_nest_lock): Ditto.
9503 (omp_test_nest_lock): Ditto.
9504 (omp_unset_nest_lock): Ditto.
9505 (omp_destroy_nest_lock): Ditto.
9506 (omp_get_wtick): Ditto.
9507 (omp_get_wtime): Ditto.
9508 (OMP_CANCELLATION): Ditto.
9509 (OMP_DISPLAY_ENV): Ditto.
9510 (OMP_DEFAULT_DEVICE): Ditto.
9511 (OMP_DYNAMIC): Ditto.
9512 (OMP_MAX_ACTIVE_LEVELS): Ditto.
9513 (OMP_MAX_TASK_PRIORITY): Ditto.
9514 (OMP_NESTED): Ditto.
9515 (OMP_NUM_THREADS): Ditto.
9516 (OMP_PROC_BIND): Ditto.
9517 (OMP_PLACES): Ditto.
9518 (OMP_STACKSIZE): Ditto.
9519 (OMP_SCHEDULE): Ditto.
9520 (OMP_THREAD_LIMIT): Ditto.
9521 (OMP_WAIT_POLICY): Ditto.
9522
31dd69b7
CP
95232018-06-22 Cesar Philippidis <cesar@codesourcery.com>
9524 James Norris <jnorris@codesourcery.com>
9525 Julian Brown <julian@codesourcery.com>
9526 Thomas Schwinge <thomas@codesourcery.com>
9527 Tom de Vries <tom@codesourcery.com>
9528
9529 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Don't force "-O2".
9530 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Update.
9531 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: Likewise.
9532 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: Likewise.
9533 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
9534 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
9535 * testsuite/libgomp.oacc-c++/non-scalar-data.C: New file.
9536 * testsuite/libgomp.oacc-c-c++-common/declare-3.c: Likewise.
9537 * testsuite/libgomp.oacc-c-c++-common/enter-data.c: Likewise.
9538 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c:
9539 Likewise.
9540 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
9541 Likewise.
9542 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
9543 Likewise.
9544 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c:
9545 Likewise.
9546 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c:
9547 Likewise.
9548 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
9549 Likewise.
9550 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-1.c:
9551 Likewise.
9552 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-2.c:
9553 Likewise.
9554 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-3.c:
9555 Likewise.
9556 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-4.c:
9557 Likewise.
9558 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-local-worker-5.c:
9559 Likewise.
9560 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-1.c:
9561 Likewise.
9562 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-2.c:
9563 Likewise.
9564 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-3.c:
9565 Likewise.
9566 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-4.c:
9567 Likewise.
9568 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-5.c:
9569 Likewise.
9570 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-gang-6.c:
9571 Likewise.
9572 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-1.c:
9573 Likewise.
9574 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-vector-2.c:
9575 Likewise.
9576 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-1.c:
9577 Likewise.
9578 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-2.c:
9579 Likewise.
9580 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-3.c:
9581 Likewise.
9582 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-4.c:
9583 Likewise.
9584 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-5.c:
9585 Likewise.
9586 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-6.c:
9587 Likewise.
9588 * testsuite/libgomp.oacc-c-c++-common/kernels-private-vars-loop-worker-7.c:
9589 Likewise.
9590 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction-1.c:
9591 Likewise.
9592 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.c: Likewise.
9593 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-1.h: Likewise.
9594 * testsuite/libgomp.oacc-c-c++-common/parallel-loop-2.h: Likewise.
9595 * testsuite/libgomp.oacc-fortran/cublas-fixed.h: Likewise.
9596 * testsuite/libgomp.oacc-fortran/dummy-array.f90: Likewise.
9597 * testsuite/libgomp.oacc-fortran/host_data-2.f90: Likewise.
9598 * testsuite/libgomp.oacc-fortran/host_data-3.f: Likewise.
9599 * testsuite/libgomp.oacc-fortran/host_data-4.f90: Likewise.
9600 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction-2.f90:
9601 Likewise.
9602 * testsuite/libgomp.oacc-fortran/kernels-acc-loop-reduction.f90:
9603 Likewise.
9604 * testsuite/libgomp.oacc-fortran/kernels-collapse-3.f90: Likewise.
9605 * testsuite/libgomp.oacc-fortran/kernels-collapse-4.f90: Likewise.
9606 * testsuite/libgomp.oacc-fortran/kernels-independent.f90:
9607 Likewise.
9608 * testsuite/libgomp.oacc-fortran/kernels-loop-1.f90: Likewise.
9609 * testsuite/libgomp.oacc-fortran/kernels-map-1.f90: Likewise.
9610 * testsuite/libgomp.oacc-fortran/kernels-parallel-loop-data-enter-exit.f95:
9611 Likewise.
9612 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-1.f90:
9613 Likewise.
9614 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-2.f90:
9615 Likewise.
9616 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-3.f90:
9617 Likewise.
9618 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-gang-6.f90:
9619 Likewise.
9620 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-1.f90:
9621 Likewise.
9622 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-vector-2.f90:
9623 Likewise.
9624 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-1.f90:
9625 Likewise.
9626 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-2.f90:
9627 Likewise.
9628 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-3.f90:
9629 Likewise.
9630 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-4.f90:
9631 Likewise.
9632 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-5.f90:
9633 Likewise.
9634 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-6.f90:
9635 Likewise.
9636 * testsuite/libgomp.oacc-fortran/kernels-private-vars-loop-worker-7.f90:
9637 Likewise.
9638 * testsuite/libgomp.oacc-fortran/kernels-reduction-1.f90:
9639 Likewise.
9640 * testsuite/libgomp.oacc-fortran/lib-12.f90: Likewise.
9641 * testsuite/libgomp.oacc-fortran/lib-13.f90: Likewise.
9642 * testsuite/libgomp.oacc-fortran/lib-14.f90: Likewise.
9643 * testsuite/libgomp.oacc-fortran/lib-15.f90: Likewise.
9644 * testsuite/libgomp.oacc-fortran/parallel-loop-1.f90: Likewise.
9645 * testsuite/libgomp.oacc-fortran/reference-reductions.f90: Likewise.
9646 * testsuite/libgomp.oacc-fortran/vector-routine.f90: Likewise.
9647
829c6349
CLT
96482018-06-20 Chung-Lin Tang <cltang@codesourcery.com>
9649 Thomas Schwinge <thomas@codesourcery.com>
9650 Cesar Philippidis <cesar@codesourcery.com>
9651
9652 * libgomp.h (struct splay_tree_key_s): Add dynamic_refcount member.
9653 (gomp_acc_remove_pointer): Update declaration.
9654 (gomp_acc_declare_allocate): Declare.
9655 (gomp_remove_var): Declare.
9656 * libgomp.map (OACC_2.5): Define.
9657 * oacc-mem.c (acc_map_data): Update refcount.
9658 (acc_unmap_data): Likewise.
9659 (present_create_copy): Likewise.
9660 (acc_create): Add FLAG_PRESENT when calling present_create_copy.
9661 (acc_copyin): Likewise.
9662 (FLAG_FINALIZE): Define.
9663 (delete_copyout): Update dynamic refcounts, add support for FINALIZE.
9664 (acc_delete_finalize): New function.
9665 (acc_delete_finalize_async): New function.
9666 (acc_copyout_finalize): New function.
9667 (acc_copyout_finalize_async): New function.
9668 (gomp_acc_insert_pointer): Update refcounts.
9669 (gomp_acc_remove_pointer): Return if data is not present on the
9670 accelerator.
9671 * oacc-parallel.c (find_pset): Rename to find_pointer.
9672 (find_pointer): Add support for GOMP_MAP_POINTER.
9673 (handle_ftn_pointers): New function.
9674 (GOACC_parallel_keyed): Update refcounts of variables.
9675 (GOACC_enter_exit_data): Add support for finalized data mappings.
9676 Add support for GOMP_MAP_{TO,ALLOC,RELESE,FROM}. Update handling
9677 of fortran arrays.
9678 (GOACC_update): Add support for GOMP_MAP_{ALWAYS_POINTER,TO,FROM}.
9679 (GOACC_declare): Add support for GOMP_MAP_RELEASE, remove support
9680 for GOMP_MAP_FORCE_FROM.
9681 * openacc.f90 (module openacc_internal): Add
9682 acc_copyout_finalize_{32_h,64_h,array_h,_l}, and
9683 acc_delete_finalize_{32_h,64_h,array_h,_l}. Add interfaces for
9684 acc_copyout_finalize and acc_delete_finalize.
9685 (acc_copyout_finalize_32_h): New subroutine.
9686 (acc_copyout_finalize_64_h): New subroutine.
9687 (acc_copyout_finalize_array_h): New subroutine.
9688 (acc_delete_finalize_32_h): New subroutine.
9689 (acc_delete_finalize_64_h): New subroutine.
9690 (acc_delete_finalize_array_h): New subroutine.
9691 * openacc.h (acc_copyout_finalize): Declare.
9692 (acc_copyout_finalize_async): Declare.
9693 (acc_delete_finalize): Declare.
9694 (acc_delete_finalize_async): Declare.
9695 * openacc_lib.h (acc_copyout_finalize): New interface.
9696 (acc_delete_finalize): New interface.
9697 * target.c (gomp_map_vars): Update dynamic_refcount.
9698 (gomp_remove_var): New function.
9699 (gomp_unmap_vars): Use it.
9700 (gomp_unload_image_from_device): Likewise.
9701 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Update test
9702 case to utilize OpenACC 2.5 data clause semantics.
9703 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
9704 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
9705 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
9706 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
9707 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
9708 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
9709 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
9710 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
9711 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
9712 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
9713 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
9714 * testsuite/libgomp.oacc-fortran/data-5.f90: New test.
9715 * testsuite/libgomp.oacc-fortran/data-already-1.f: Update test case to
9716 utilize OpenACC 2.5 data clause semantics.
9717 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
9718 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
9719 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
9720 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
9721 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
9722 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
9723 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
9724 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
9725 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
9726
4358400b
JW
97272018-05-21 Janus Weil <janus@gcc.gnu.org>
9728
9729 PR fortran/85841
9730 PR testsuite/85865
9731 * testsuite/libgomp.fortran/collapse2.f90: Add option "-std=legacy".
9732 * testsuite/libgomp.fortran/omp_atomic2.f90: Ditto.
9733 * testsuite/libgomp.fortran/omp_parse1.f90: Ditto.
9734 * testsuite/libgomp.fortran/omp_parse3.f90: Ditto.
9735 * testsuite/libgomp.fortran/task2.f90: Ditto.
9736 * testsuite/libgomp.fortran/vla1.f90: Ditto.
9737 * testsuite/libgomp.fortran/vla2.f90: Ditto.
9738 * testsuite/libgomp.fortran/vla3.f90: Ditto.
9739 * testsuite/libgomp.fortran/vla4.f90: Ditto.
9740 * testsuite/libgomp.fortran/vla5.f90: Ditto.
9741 * testsuite/libgomp.fortran/vla6.f90: Ditto.
9742 * testsuite/libgomp.fortran/vla8.f90: Ditto.
9743 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Ditto.
9744 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Ditto.
9745
950ad0ba
CP
97462018-05-18 Cesar Philippidis <cesar@codesourcery.com>
9747
9748 PR c++/85782
9749 * testsuite/libgomp.oacc-c-c++-common/pr85782.c: New test.
9750
f5ad16f1
TV
97512018-05-09 Tom de Vries <tom@codesourcery.com>
9752
9753 PR libgomp/82901
9754 * oacc-parallel.c (GOACC_declare): Use GOMP_ASYNC_SYNC as async argument
9755 to GOACC_enter_exit_data.
9756
edbd038a
TV
97572018-05-09 Tom de Vries <tom@codesourcery.com>
9758
9759 PR libgomp/83792
9760 * oacc-int.h (async_valid_stream_id_p, async_valid_p)
9761 (async_synchronous_p): New function.
9762 * oacc-async.c (acc_async_test, acc_wait, acc_wait_all_async): Use
9763 async_valid_p.
9764 * oacc-cuda.c (acc_get_cuda_stream, acc_set_cuda_stream): Use
9765 async_valid_stream_id_p.
9766 * oacc-mem.c (gomp_acc_remove_pointer): Use async_synchronous_p.
9767 * oacc-parallel.c (GOACC_parallel_keyed): Same.
9768
37d6c719
TV
97692018-05-07 Tom de Vries <tom@codesourcery.com>
9770
9771 PR testsuite/85677
9772 * testsuite/lib/libgomp.exp (libgomp_init): Move inclusion of top-level
9773 include directory in ALWAYS_CFLAGS out of $blddir != "" condition.
9774
63f12215
TV
97752018-05-03 Tom de Vries <tom@codesourcery.com>
9776
9777 PR testsuite/85106
9778 * testsuite/lib/libgomp-dg.exp (libgomp-dg-test): Add save-temps to
9779 extra_tool_flags if it contains an -foffload=-fdump-* flag.
9780 * testsuite/lib/libgomp.exp: Include scanoffloadtree.exp.
9781 * testsuite/libgomp.oacc-c/vec.c: Use scan-offload-tree-dump.
9782
ec00d3fa
TV
97832018-05-02 Tom de Vries <tom@codesourcery.com>
9784
9785 PR libgomp/85411
9786 * plugin/plugin-nvptx.c (nvptx_exec): Move parsing of
9787 GOMP_OPENACC_DIM ...
9788 * env.c (parse_gomp_openacc_dim): ... here. New function.
9789 (initialize_env): Call parse_gomp_openacc_dim.
9790 (goacc_default_dims): Define.
9791 * libgomp.h (goacc_default_dims): Declare.
9792 * oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): New function.
9793 * oacc-plugin.h (GOMP_PLUGIN_acc_default_dim): Declare.
9794 * libgomp.map: New version "GOMP_PLUGIN_1.2". Add
9795 GOMP_PLUGIN_acc_default_dim.
9796 * testsuite/libgomp.oacc-c-c++-common/loop-default-runtime.c: New test.
9797 * testsuite/libgomp.oacc-c-c++-common/loop-default.h: New test.
9798
92243e7c
TV
97992018-05-02 Tom de Vries <tom@codesourcery.com>
9800
9801 PR testsuite/83791
9802 * testsuite/libgomp.c++/udr-9.C: Update.
9803 * testsuite/libgomp.c++/atomic-16.C: Remove.
9804 * testsuite/libgomp.c++/cancel-taskgroup-2.C: Remove.
9805 * testsuite/libgomp.c++/loop-13.C: Remove.
9806 * testsuite/libgomp.c++/loop-14.C: Remove.
9807 * testsuite/libgomp.c++/loop-15.C: Remove.
9808 * testsuite/libgomp.c++/monotonic-1.C: Remove.
9809 * testsuite/libgomp.c++/monotonic-2.C: Remove.
9810 * testsuite/libgomp.c++/nonmonotonic-1.C: Remove.
9811 * testsuite/libgomp.c++/nonmonotonic-2.C: Remove.
9812 * testsuite/libgomp.c++/ordered-1.C: Remove.
9813 * testsuite/libgomp.c++/pr45784.C: Remove.
9814 * testsuite/libgomp.c++/pr64824.C: Remove.
9815 * testsuite/libgomp.c++/pr64868.C: Remove.
9816 * testsuite/libgomp.c++/pr66199-1.C: Remove.
9817 * testsuite/libgomp.c++/pr66199-2.C: Remove.
9818 * testsuite/libgomp.c++/pr66199-3.C: Remove.
9819 * testsuite/libgomp.c++/pr66199-4.C: Remove.
9820 * testsuite/libgomp.c++/pr66199-5.C: Remove.
9821 * testsuite/libgomp.c++/pr66199-6.C: Remove.
9822 * testsuite/libgomp.c++/pr66199-7.C: Remove.
9823 * testsuite/libgomp.c++/pr66199-8.C: Remove.
9824 * testsuite/libgomp.c++/pr66199-9.C: Remove.
9825 * testsuite/libgomp.c++/pr69389.C: Remove.
9826 * testsuite/libgomp.c++/simd10.C: Remove.
9827 * testsuite/libgomp.c++/simd11.C: Remove.
9828 * testsuite/libgomp.c++/simd12.C: Remove.
9829 * testsuite/libgomp.c++/simd13.C: Remove.
9830 * testsuite/libgomp.c++/target-1.C: Remove.
9831 * testsuite/libgomp.c++/target-3.C: Remove.
9832 * testsuite/libgomp.c++/target-4.C: Remove.
9833 * testsuite/libgomp.c++/target-5.C: Remove.
9834 * testsuite/libgomp.c++/taskgroup-1.C: Remove.
9835 * testsuite/libgomp.c++/taskloop-1.C: Remove.
9836 * testsuite/libgomp.c++/taskloop-2.C: Remove.
9837 * testsuite/libgomp.c++/taskloop-3.C: Remove.
9838 * testsuite/libgomp.c++/taskloop-4.C: Remove.
9839 * testsuite/libgomp.c++/udr-9.C: Remove.
9840 * testsuite/libgomp.c++/for-10.C: Remove.
9841 * testsuite/libgomp.c++/for-11.C: Remove.
9842 * testsuite/libgomp.c++/for-12.C: Remove.
9843 * testsuite/libgomp.c++/for-13.C: Remove.
9844 * testsuite/libgomp.c++/for-14.C: Remove.
9845 * testsuite/libgomp.c++/for-9.C: Remove.
9846 * testsuite/libgomp.c/atomic-18.c: Move ...
9847 * testsuite/libgomp.c-c++-common/atomic-18.c: ... here.
9848 * testsuite/libgomp.c/cancel-taskgroup-2.c: Move ...
9849 * testsuite/libgomp.c-c++-common/cancel-taskgroup-2.c: here.
9850 * testsuite/libgomp.c/loop-13.c: Move ...
9851 * testsuite/libgomp.c-c++-common/loop-13.c: ... here.
9852 * testsuite/libgomp.c/loop-14.c: Move ...
9853 * testsuite/libgomp.c-c++-common/loop-14.c: ... here.
9854 * testsuite/libgomp.c/loop-15.c: Remove.
9855 * testsuite/libgomp.c-c++-common/loop-15.c: New test.
9856 * testsuite/libgomp.c/monotonic-1.c: Move ...
9857 * testsuite/libgomp.c-c++-common/monotonic-1.c: ... here.
9858 * testsuite/libgomp.c/monotonic-2.c: Move ...
9859 * testsuite/libgomp.c-c++-common/monotonic-2.c: ... here.
9860 * testsuite/libgomp.c/nonmonotonic-1.c: Move ...
9861 * testsuite/libgomp.c-c++-common/nonmonotonic-1.c: ... here.
9862 * testsuite/libgomp.c/nonmonotonic-2.c: Move ...
9863 * testsuite/libgomp.c-c++-common/nonmonotonic-2.c: ... here.
9864 * testsuite/libgomp.c/ordered-4.c: Move ...
9865 * testsuite/libgomp.c-c++-common/ordered-4.c: ... here.
9866 * testsuite/libgomp.c/pr45784.c: Move ...
9867 * testsuite/libgomp.c-c++-common/pr45784.c: ... here.
9868 * testsuite/libgomp.c/pr64824.c: Move ...
9869 * testsuite/libgomp.c-c++-common/pr64824.c: ... here.
9870 * testsuite/libgomp.c/pr64868.c: Move ...
9871 * testsuite/libgomp.c-c++-common/pr64868.c: ... here.
9872 * testsuite/libgomp.c/pr66199-1.c: Move ...
9873 * testsuite/libgomp.c-c++-common/pr66199-1.c: ... here.
9874 * testsuite/libgomp.c/pr66199-2.c: Move ...
9875 * testsuite/libgomp.c-c++-common/pr66199-2.c: ... here.
9876 * testsuite/libgomp.c/pr66199-3.c: Move ...
9877 * testsuite/libgomp.c-c++-common/pr66199-3.c: ... here.
9878 * testsuite/libgomp.c/pr66199-4.c: Move ...
9879 * testsuite/libgomp.c-c++-common/pr66199-4.c: ... here.
9880 * testsuite/libgomp.c/pr66199-5.c: Move ...
9881 * testsuite/libgomp.c-c++-common/pr66199-5.c: ... here.
9882 * testsuite/libgomp.c/pr66199-6.c: Move ...
9883 * testsuite/libgomp.c-c++-common/pr66199-6.c: ... here.
9884 * testsuite/libgomp.c/pr66199-7.c: Move ...
9885 * testsuite/libgomp.c-c++-common/pr66199-7.c: ... here.
9886 * testsuite/libgomp.c/pr66199-8.c: Move ...
9887 * testsuite/libgomp.c-c++-common/pr66199-8.c: ... here.
9888 * testsuite/libgomp.c/pr66199-9.c: Move ...
9889 * testsuite/libgomp.c-c++-common/pr66199-9.c: ... here.
9890 * testsuite/libgomp.c/pr69389.c: Move ...
9891 * testsuite/libgomp.c-c++-common/pr69389.c: ... here.
9892 * testsuite/libgomp.c/simd-14.c: Move ...
9893 * testsuite/libgomp.c-c++-common/simd-14.c: ... here.
9894 * testsuite/libgomp.c/simd-15.c: Move ...
9895 * testsuite/libgomp.c-c++-common/simd-15.c: ... here.
9896 * testsuite/libgomp.c/simd-16.c: Move ...
9897 * testsuite/libgomp.c-c++-common/simd-16.c: ... here.
9898 * testsuite/libgomp.c/simd-17.c: Move ...
9899 * testsuite/libgomp.c-c++-common/simd-17.c: ... here.
9900 * testsuite/libgomp.c/target-1.c: Move ...
9901 * testsuite/libgomp.c-c++-common/target-1.c: ... here.
9902 * testsuite/libgomp.c/target-10.c: Move ...
9903 * testsuite/libgomp.c-c++-common/target-10.c: ... here.
9904 * testsuite/libgomp.c/target-13.c: Move ...
9905 * testsuite/libgomp.c-c++-common/target-13.c: ... here.
9906 * testsuite/libgomp.c/target-2.c: Move ...
9907 * testsuite/libgomp.c-c++-common/target-2.c: ... here.
9908 * testsuite/libgomp.c/taskgroup-1.c: Move ...
9909 * testsuite/libgomp.c-c++-common/taskgroup-1.c: ... here.
9910 * testsuite/libgomp.c/taskloop-1.c: Move ...
9911 * testsuite/libgomp.c-c++-common/taskloop-1.c: ... here.
9912 * testsuite/libgomp.c/taskloop-2.c: Move ...
9913 * testsuite/libgomp.c-c++-common/taskloop-2.c: ... here.
9914 * testsuite/libgomp.c/taskloop-3.c: Move ...
9915 * testsuite/libgomp.c-c++-common/taskloop-3.c: ... here.
9916 * testsuite/libgomp.c/taskloop-4.c: Move ...
9917 * testsuite/libgomp.c-c++-common/taskloop-4.c: ... here.
9918 * testsuite/libgomp.c/udr-1.c: Move ...
9919 * testsuite/libgomp.c-c++-common/udr-1.c: ... here.
9920 * testsuite/libgomp.c/for-1.c: Move ...
9921 * testsuite/libgomp.c-c++-common/for-1.c: ... here.
9922 * testsuite/libgomp.c/for-1.h: Move ...
9923 * testsuite/libgomp.c-c++-common/for-1.h: ... here.
9924 * testsuite/libgomp.c/for-2.c: Move ...
9925 * testsuite/libgomp.c-c++-common/for-2.c: ... here.
9926 * testsuite/libgomp.c/for-2.h: Move ...
9927 * testsuite/libgomp.c-c++-common/for-2.h: ... here.
9928 * testsuite/libgomp.c/for-3.c: Move ...
9929 * testsuite/libgomp.c-c++-common/for-3.c: ... here.
9930 * testsuite/libgomp.c/for-4.c: Move ...
9931 * testsuite/libgomp.c-c++-common/for-4.c: ... here.
9932 * testsuite/libgomp.c/for-5.c: Move ...
9933 * testsuite/libgomp.c-c++-common/for-5.c: ... here.
9934 * testsuite/libgomp.c/for-6.c: Move ...
9935 * testsuite/libgomp.c-c++-common/for-6.c: ... here.
9936
1f62d637
TV
99372018-05-02 Tom de Vries <tom@codesourcery.com>
9938
9939 PR libgomp/82428
9940 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Use
9941 __builtin_goacc_parlevel_{id,size}.
9942 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Same.
9943 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Same.
9944 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Same.
9945 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Same.
9946 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Same.
9947 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Same.
9948 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Same.
9949 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Same.
9950 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Same.
9951 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Same.
9952 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Same.
9953 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Same.
9954 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Same.
9955 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Same.
9956 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Same.
9957 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Same.
9958 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Same.
9959 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Same.
9960 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Same.
9961 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Same.
9962 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Same.
9963 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Same.
9964 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: Same.
9965
9220b511
TV
99662018-05-02 Tom de Vries <tom@codesourcery.com>
9967
9968 PR testsuite/85106
9969 * testsuite/lib/libgomp.exp: Include scanltranstree.exp.
9970
6c3c13c1
TV
99712018-05-02 Tom de Vries <tom@codesourcery.com>
9972
9973 PR testsuite/85106
9974 * testsuite/lib/libgomp.exp: Include scanwpaipa.exp.
9975
8d70b61e
JB
99762018-04-29 Julian Brown <julian@codesourcery.com>
9977 Tom de Vries <tom@codesourcery.com>
9978
9979 PR testsuite/85527
9980 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: Allow
9981 arbitrary order for iterations of atomic subtract check.
9982
4a57a4b6
TV
99832018-04-28 Tom de Vries <tom@codesourcery.com>
9984
9985 PR testsuite/85527
9986 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90 (main): Store
9987 atomic capture results obtained in parallel loop to an array, instead of
9988 to a scalar.
9989
df36a3d3
TV
99902018-04-26 Tom de Vries <tom@codesourcery.com>
9991
9992 PR libgomp/84020
9993 * plugin/cuda/cuda.h (CUjit_option): Add CU_JIT_OPTIMIZATION_LEVEL.
9994 * plugin/plugin-nvptx.c (_GNU_SOURCE): Define.
9995 (process_GOMP_NVPTX_JIT): New function.
9996 (link_ptx): Use process_GOMP_NVPTX_JIT.
9997
d160ae78
RB
99982018-04-26 Richard Biener <rguenther@suse.de>
9999 Tom de Vries <tom@codesourcery.com>
10000
10001 PR lto/85422
10002 * testsuite/libgomp.oacc-c-c++-common/pr85422.c: New test.
10003
ca9dc642
TV
100042018-04-26 Tom de Vries <tom@codesourcery.com>
10005
10006 PR target/85519
10007 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Reduce
10008 recursion depth from 25 to 23.
10009 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Same.
10010
7b47ecf2
L
100112018-04-24 H.J. Lu <hongjiu.lu@intel.com>
10012
10013 * configure: Regenerated.
10014
e91eba31
NS
100152018-04-20 Nathan Sidwell <nathan@codesourcery.com>
10016 Tom de Vries <tom@codesourcery.com>
10017
10018 PR target/85445
10019 * testsuite/libgomp.oacc-c++/ref-1.C: New.
10020
6e0d40b6
TS
100212018-04-19 Thomas Schwinge <thomas@codesourcery.com>
10022
10023 PR libgomp/85463
10024 * testsuite/libgomp.oacc-fortran/error_stop-1.f: New file.
10025 * testsuite/libgomp.oacc-fortran/error_stop-2.f: Likewise.
10026 * testsuite/libgomp.oacc-fortran/error_stop-3.f: Likewise.
10027 * testsuite/libgomp.oacc-fortran/stop-1.f: Likewise.
10028 * testsuite/libgomp.oacc-fortran/stop-2.f: Likewise.
10029 * testsuite/libgomp.oacc-fortran/stop-3.f: Likewise.
10030
10031 PR libfortran/85166
10032 * testsuite/libgomp.oacc-fortran/abort-1.f90: Switch back to "call
10033 abort".
10034 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
10035
a0e1df88
JJ
100362018-04-19 Jakub Jelinek <jakub@redhat.com>
10037
10038 * configure: Regenerated.
10039
001ddaa8
DM
100402018-04-18 David Malcolm <dmalcolm@redhat.com>
10041
10042 PR jit/85384
10043 * configure: Regenerate.
10044
05e0af43
CP
100452018-04-16 Cesar Philippidis <cesar@codesourcery.com>
10046 Tom de Vries <tom@codesourcery.com>
10047
10048 PR middle-end/84955
10049 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
10050 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
10051
bc436e10
TK
100522018-04-12 Thomas Koenig <tkoenig@gcc.gnu.org>
10053
10054 PR fortran/83064
10055 PR testsuite/85346
10056 * testsuite/libgomp.fortran/do_concurrent_5.f90: Move modified
10057 test from gfortran.dg to here.
10058
ffb164c7
JJ
100592018-04-12 Cesar Philippidis <cesar@codesourcery.com>
10060
10061 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: Revert 259346.
10062 * testsuite/libgomp.oacc-fortran/pr84955.f90: Likewise.
10063
100642018-04-12 Cesar Philippidis <cesar@codesourcery.com>
10065
10066 PR middle-end/84955
10067 * testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
10068 * testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
10069
2ba16fd2
TV
100702018-04-05 Tom de Vries <tom@codesourcery.com>
10071
10072 PR target/85204
10073 * testsuite/libgomp.oacc-c-c++-common/broadcast-1.c: New test.
10074
46dbeb40
TV
100752018-03-26 Tom de Vries <tom@codesourcery.com>
10076
10077 PR tree-optimization/85063
10078 * testsuite/libgomp.c/switch-conversion-2.c: New test.
10079 * testsuite/libgomp.c/switch-conversion.c: New test.
10080 * testsuite/libgomp.oacc-c-c++-common/switch-conversion-2.c: New test.
10081 * testsuite/libgomp.oacc-c-c++-common/switch-conversion.c: New test.
10082
bfc24e32
TK
100832018-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
10084
10085 PR fortran/84381
10086 * testsuite/libgomp.fortran/aligned1.f03: Replace non-standard
10087 call abort by STOP n.
10088 * testsuite/libgomp.fortran/alloc-comp-1.f90: Likewise.
10089 * testsuite/libgomp.fortran/alloc-comp-2.f90: Likewise.
10090 * testsuite/libgomp.fortran/alloc-comp-3.f90: Likewise.
10091 * testsuite/libgomp.fortran/allocatable1.f90: Likewise.
10092 * testsuite/libgomp.fortran/allocatable10.f90: Likewise.
10093 * testsuite/libgomp.fortran/allocatable11.f90: Likewise.
10094 * testsuite/libgomp.fortran/allocatable12.f90: Likewise.
10095 * testsuite/libgomp.fortran/allocatable2.f90: Likewise.
10096 * testsuite/libgomp.fortran/allocatable3.f90: Likewise.
10097 * testsuite/libgomp.fortran/allocatable4.f90: Likewise.
10098 * testsuite/libgomp.fortran/allocatable5.f90: Likewise.
10099 * testsuite/libgomp.fortran/allocatable6.f90: Likewise.
10100 * testsuite/libgomp.fortran/allocatable7.f90: Likewise.
10101 * testsuite/libgomp.fortran/allocatable8.f90: Likewise.
10102 * testsuite/libgomp.fortran/allocatable9.f90: Likewise.
10103 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise.
10104 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Likewise.
10105 * testsuite/libgomp.fortran/associate1.f90: Likewise.
10106 * testsuite/libgomp.fortran/associate2.f90: Likewise.
10107 * testsuite/libgomp.fortran/associate3.f90: Likewise.
10108 * testsuite/libgomp.fortran/cancel-do-1.f90: Likewise.
10109 * testsuite/libgomp.fortran/cancel-do-2.f90: Likewise.
10110 * testsuite/libgomp.fortran/cancel-parallel-1.f90: Likewise.
10111 * testsuite/libgomp.fortran/cancel-sections-1.f90: Likewise.
10112 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: Likewise.
10113 * testsuite/libgomp.fortran/character1.f90: Likewise.
10114 * testsuite/libgomp.fortran/character2.f90: Likewise.
10115 * testsuite/libgomp.fortran/collapse1.f90: Likewise.
10116 * testsuite/libgomp.fortran/collapse2.f90: Likewise.
10117 * testsuite/libgomp.fortran/collapse3.f90: Likewise.
10118 * testsuite/libgomp.fortran/collapse4.f90: Likewise.
10119 * testsuite/libgomp.fortran/crayptr1.f90: Likewise.
10120 * testsuite/libgomp.fortran/crayptr2.f90: Likewise.
10121 * testsuite/libgomp.fortran/crayptr3.f90: Likewise.
10122 * testsuite/libgomp.fortran/declare-simd-1.f90: Likewise.
10123 * testsuite/libgomp.fortran/declare-simd-3.f90: Likewise.
10124 * testsuite/libgomp.fortran/declare-target-2.f90: Likewise.
10125 * testsuite/libgomp.fortran/depend-1.f90: Likewise.
10126 * testsuite/libgomp.fortran/depend-2.f90: Likewise.
10127 * testsuite/libgomp.fortran/depend-3.f90: Likewise.
10128 * testsuite/libgomp.fortran/do1.f90: Likewise.
10129 * testsuite/libgomp.fortran/do2.f90: Likewise.
10130 * testsuite/libgomp.fortran/doacross1.f90: Likewise.
10131 * testsuite/libgomp.fortran/doacross2.f90: Likewise.
10132 * testsuite/libgomp.fortran/doacross3.f90: Likewise.
10133 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: Likewise.
10134 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: Likewise.
10135 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: Likewise.
10136 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
10137 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: Likewise.
10138 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: Likewise.
10139 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: Likewise.
10140 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: Likewise.
10141 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: Likewise.
10142 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
10143 * testsuite/libgomp.fortran/examples-4/device-2.f90: Likewise.
10144 * testsuite/libgomp.fortran/examples-4/device-3.f90: Likewise.
10145 * testsuite/libgomp.fortran/examples-4/simd-1.f90: Likewise.
10146 * testsuite/libgomp.fortran/examples-4/simd-2.f90: Likewise.
10147 * testsuite/libgomp.fortran/examples-4/simd-3.f90: Likewise.
10148 * testsuite/libgomp.fortran/examples-4/simd-4.f90: Likewise.
10149 * testsuite/libgomp.fortran/examples-4/simd-5.f90: Likewise.
10150 * testsuite/libgomp.fortran/examples-4/simd-6.f90: Likewise.
10151 * testsuite/libgomp.fortran/examples-4/simd-7.f90: Likewise.
10152 * testsuite/libgomp.fortran/examples-4/simd-8.f90: Likewise.
10153 * testsuite/libgomp.fortran/examples-4/target-1.f90: Likewise.
10154 * testsuite/libgomp.fortran/examples-4/target-2.f90: Likewise.
10155 * testsuite/libgomp.fortran/examples-4/target-3.f90: Likewise.
10156 * testsuite/libgomp.fortran/examples-4/target-4.f90: Likewise.
10157 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
10158 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: Likewise.
10159 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: Likewise.
10160 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: Likewise.
10161 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: Likewise.
10162 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: Likewise.
10163 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
10164 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
10165 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: Likewise.
10166 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: Likewise.
10167 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: Likewise.
10168 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: Likewise.
10169 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: Likewise.
10170 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: Likewise.
10171 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: Likewise.
10172 * testsuite/libgomp.fortran/examples-4/teams-2.f90: Likewise.
10173 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Likewise.
10174 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
10175 * testsuite/libgomp.fortran/examples-4/teams-5.f90: Likewise.
10176 * testsuite/libgomp.fortran/examples-4/teams-6.f90: Likewise.
10177 * testsuite/libgomp.fortran/lastprivate1.f90: Likewise.
10178 * testsuite/libgomp.fortran/lastprivate2.f90: Likewise.
10179 * testsuite/libgomp.fortran/lib1.f90: Likewise.
10180 * testsuite/libgomp.fortran/lib2.f: Likewise.
10181 * testsuite/libgomp.fortran/lib3.f: Likewise.
10182 * testsuite/libgomp.fortran/lib4.f90: Likewise.
10183 * testsuite/libgomp.fortran/lock-1.f90: Likewise.
10184 * testsuite/libgomp.fortran/lock-2.f90: Likewise.
10185 * testsuite/libgomp.fortran/nested1.f90: Likewise.
10186 * testsuite/libgomp.fortran/nestedfn1.f90: Likewise.
10187 * testsuite/libgomp.fortran/nestedfn2.f90: Likewise.
10188 * testsuite/libgomp.fortran/nestedfn3.f90: Likewise.
10189 * testsuite/libgomp.fortran/nestedfn4.f90: Likewise.
10190 * testsuite/libgomp.fortran/nestedfn5.f90: Likewise.
10191 * testsuite/libgomp.fortran/omp_atomic1.f90: Likewise.
10192 * testsuite/libgomp.fortran/omp_atomic2.f90: Likewise.
10193 * testsuite/libgomp.fortran/omp_atomic3.f90: Likewise.
10194 * testsuite/libgomp.fortran/omp_atomic4.f90: Likewise.
10195 * testsuite/libgomp.fortran/omp_atomic5.f90: Likewise.
10196 * testsuite/libgomp.fortran/omp_cond1.f: Likewise.
10197 * testsuite/libgomp.fortran/omp_cond2.f: Likewise.
10198 * testsuite/libgomp.fortran/omp_cond3.F90: Likewise.
10199 * testsuite/libgomp.fortran/omp_cond4.F90: Likewise.
10200 * testsuite/libgomp.fortran/omp_parse1.f90: Likewise.
10201 * testsuite/libgomp.fortran/omp_parse2.f90: Likewise.
10202 * testsuite/libgomp.fortran/omp_parse3.f90: Likewise.
10203 * testsuite/libgomp.fortran/omp_parse4.f90: Likewise.
10204 * testsuite/libgomp.fortran/openmp_version-1.f: Likewise.
10205 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
10206 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: Likewise.
10207 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: Likewise.
10208 * testsuite/libgomp.fortran/pointer1.f90: Likewise.
10209 * testsuite/libgomp.fortran/pointer2.f90: Likewise.
10210 * testsuite/libgomp.fortran/pr25162.f: Likewise.
10211 * testsuite/libgomp.fortran/pr25219.f90: Likewise.
10212 * testsuite/libgomp.fortran/pr27395-1.f90: Likewise.
10213 * testsuite/libgomp.fortran/pr27395-2.f90: Likewise.
10214 * testsuite/libgomp.fortran/pr27416-1.f90: Likewise.
10215 * testsuite/libgomp.fortran/pr27916-1.f90: Likewise.
10216 * testsuite/libgomp.fortran/pr27916-2.f90: Likewise.
10217 * testsuite/libgomp.fortran/pr28390.f: Likewise.
10218 * testsuite/libgomp.fortran/pr29629.f90: Likewise.
10219 * testsuite/libgomp.fortran/pr32550.f90: Likewise.
10220 * testsuite/libgomp.fortran/pr33880.f90: Likewise.
10221 * testsuite/libgomp.fortran/pr34020.f90: Likewise.
10222 * testsuite/libgomp.fortran/pr35130.f90: Likewise.
10223 * testsuite/libgomp.fortran/pr42162.f90: Likewise.
10224 * testsuite/libgomp.fortran/pr46753.f90: Likewise.
10225 * testsuite/libgomp.fortran/pr48894.f90: Likewise.
10226 * testsuite/libgomp.fortran/pr49792-1.f90: Likewise.
10227 * testsuite/libgomp.fortran/pr49792-2.f90: Likewise.
10228 * testsuite/libgomp.fortran/pr63938-1.f90: Likewise.
10229 * testsuite/libgomp.fortran/pr63938-2.f90: Likewise.
10230 * testsuite/libgomp.fortran/pr65597.f90: Likewise.
10231 * testsuite/libgomp.fortran/pr66199-1.f90: Likewise.
10232 * testsuite/libgomp.fortran/pr71014.f90: Likewise.
10233 * testsuite/libgomp.fortran/pr81304.f90: Likewise.
10234 * testsuite/libgomp.fortran/pr81841.f90: Likewise.
10235 * testsuite/libgomp.fortran/pr84418-1.f90: Likewise.
10236 * testsuite/libgomp.fortran/pr84418-2.f90: Likewise.
10237 * testsuite/libgomp.fortran/procptr1.f90: Likewise.
10238 * testsuite/libgomp.fortran/recursion1.f90: Likewise.
10239 * testsuite/libgomp.fortran/reduction1.f90: Likewise.
10240 * testsuite/libgomp.fortran/reduction2.f90: Likewise.
10241 * testsuite/libgomp.fortran/reduction3.f90: Likewise.
10242 * testsuite/libgomp.fortran/reduction4.f90: Likewise.
10243 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
10244 * testsuite/libgomp.fortran/reduction6.f90: Likewise.
10245 * testsuite/libgomp.fortran/reference1.f90: Likewise.
10246 * testsuite/libgomp.fortran/reference2.f90: Likewise.
10247 * testsuite/libgomp.fortran/retval1.f90: Likewise.
10248 * testsuite/libgomp.fortran/retval2.f90: Likewise.
10249 * testsuite/libgomp.fortran/sharing1.f90: Likewise.
10250 * testsuite/libgomp.fortran/sharing2.f90: Likewise.
10251 * testsuite/libgomp.fortran/simd1.f90: Likewise.
10252 * testsuite/libgomp.fortran/simd2.f90: Likewise.
10253 * testsuite/libgomp.fortran/simd3.f90: Likewise.
10254 * testsuite/libgomp.fortran/simd4.f90: Likewise.
10255 * testsuite/libgomp.fortran/simd5.f90: Likewise.
10256 * testsuite/libgomp.fortran/simd6.f90: Likewise.
10257 * testsuite/libgomp.fortran/simd7.f90: Likewise.
10258 * testsuite/libgomp.fortran/stack.f90: Likewise.
10259 * testsuite/libgomp.fortran/strassen.f90: Likewise.
10260 * testsuite/libgomp.fortran/tabs1.f90: Likewise.
10261 * testsuite/libgomp.fortran/tabs2.f: Likewise.
10262 * testsuite/libgomp.fortran/target1.f90: Likewise.
10263 * testsuite/libgomp.fortran/target2.f90: Likewise.
10264 * testsuite/libgomp.fortran/target3.f90: Likewise.
10265 * testsuite/libgomp.fortran/target4.f90: Likewise.
10266 * testsuite/libgomp.fortran/target5.f90: Likewise.
10267 * testsuite/libgomp.fortran/target6.f90: Likewise.
10268 * testsuite/libgomp.fortran/target7.f90: Likewise.
10269 * testsuite/libgomp.fortran/target8.f90: Likewise.
10270 * testsuite/libgomp.fortran/task1.f90: Likewise.
10271 * testsuite/libgomp.fortran/task2.f90: Likewise.
10272 * testsuite/libgomp.fortran/task3.f90: Likewise.
10273 * testsuite/libgomp.fortran/task4.f90: Likewise.
10274 * testsuite/libgomp.fortran/taskgroup1.f90: Likewise.
10275 * testsuite/libgomp.fortran/taskloop1.f90: Likewise.
10276 * testsuite/libgomp.fortran/taskloop2.f90: Likewise.
10277 * testsuite/libgomp.fortran/taskloop3.f90: Likewise.
10278 * testsuite/libgomp.fortran/taskloop4.f90: Likewise.
10279 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
10280 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
10281 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
10282 * testsuite/libgomp.fortran/threadprivate4.f90: Likewise.
10283 * testsuite/libgomp.fortran/udr1.f90: Likewise.
10284 * testsuite/libgomp.fortran/udr10.f90: Likewise.
10285 * testsuite/libgomp.fortran/udr11.f90: Likewise.
10286 * testsuite/libgomp.fortran/udr12.f90: Likewise.
10287 * testsuite/libgomp.fortran/udr13.f90: Likewise.
10288 * testsuite/libgomp.fortran/udr14.f90: Likewise.
10289 * testsuite/libgomp.fortran/udr15.f90: Likewise.
10290 * testsuite/libgomp.fortran/udr2.f90: Likewise.
10291 * testsuite/libgomp.fortran/udr3.f90: Likewise.
10292 * testsuite/libgomp.fortran/udr4.f90: Likewise.
10293 * testsuite/libgomp.fortran/udr5.f90: Likewise.
10294 * testsuite/libgomp.fortran/udr6.f90: Likewise.
10295 * testsuite/libgomp.fortran/udr7.f90: Likewise.
10296 * testsuite/libgomp.fortran/udr8.f90: Likewise.
10297 * testsuite/libgomp.fortran/udr9.f90: Likewise.
10298 * testsuite/libgomp.fortran/vla1.f90: Likewise.
10299 * testsuite/libgomp.fortran/vla2.f90: Likewise.
10300 * testsuite/libgomp.fortran/vla3.f90: Likewise.
10301 * testsuite/libgomp.fortran/vla4.f90: Likewise.
10302 * testsuite/libgomp.fortran/vla5.f90: Likewise.
10303 * testsuite/libgomp.fortran/vla6.f90: Likewise.
10304 * testsuite/libgomp.fortran/vla7.f90: Likewise.
10305 * testsuite/libgomp.fortran/vla8.f90: Likewise.
10306 * testsuite/libgomp.fortran/workshare1.f90: Likewise.
10307 * testsuite/libgomp.fortran/workshare2.f90: Likewise.
10308 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
10309 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
10310 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
10311 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
10312 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
10313 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
10314 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
10315 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
10316 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
10317 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: Likewise.
10318 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
10319 * testsuite/libgomp.oacc-fortran/c2.pl: Likewise.
10320 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
10321 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
10322 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
10323 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
10324 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
10325 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
10326 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
10327 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
10328 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
10329 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90: Likewise.
10330 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: Likewise.
10331 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
10332 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
10333 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
10334 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
10335 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
10336 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
10337 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
10338 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
10339 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
10340 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
10341 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
10342 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
10343 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
10344 * testsuite/libgomp.oacc-fortran/host_data-1.f90: Likewise.
10345 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
10346 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90: Likewise.
10347 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
10348 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Likewise.
10349 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95: Likewise.
10350 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Likewise.
10351 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Likewise.
10352 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
10353 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
10354 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
10355 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
10356 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
10357 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
10358 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Likewise.
10359 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
10360 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
10361 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
10362 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
10363 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
10364 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
10365 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
10366 * testsuite/libgomp.oacc-fortran/nested-function-1.f90: Likewise.
10367 * testsuite/libgomp.oacc-fortran/nested-function-2.f90: Likewise.
10368 * testsuite/libgomp.oacc-fortran/nested-function-3.f90: Likewise.
10369 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
10370 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
10371 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
10372 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: Likewise.
10373 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
10374 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: Likewise.
10375 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
10376 * testsuite/libgomp.oacc-fortran/pr70643.f90: Likewise.
10377 * testsuite/libgomp.oacc-fortran/pr81352.f90: Likewise.
10378 * testsuite/libgomp.oacc-fortran/pr83920.f90: Likewise.
10379 * testsuite/libgomp.oacc-fortran/pr84028.f90: Likewise.
10380 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
10381 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
10382 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
10383 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
10384 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
10385 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
10386 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
10387 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
10388 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Likewise.
10389 * testsuite/libgomp.oacc-fortran/reduction-8.f90: Likewise.
10390 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
10391 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
10392 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
10393 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
10394 * testsuite/libgomp.oacc-fortran/routine-5.f90: Likewise.
10395 * testsuite/libgomp.oacc-fortran/routine-7.f90: Likewise.
10396 * testsuite/libgomp.oacc-fortran/routine-9.f90: Likewise.
10397 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
10398 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
10399 * testsuite/libgomp.oacc-fortran/update-1.f90: Likewise.
10400
79cf14ae
RB
104012018-03-20 Richard Biener <rguenther@suse.de>
10402
10403 * testsuite/libgomp.graphite/force-parallel-4.c: XFAIL one
10404 parallelizable loop.
10405
14e335ed
IT
104062018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
10407
10408 PR target/84148
10409 * configure: Regenerate.
10410
83d9be55
JJ
104112018-02-16 Jakub Jelinek <jakub@redhat.com>
10412
10413 PR fortran/84418
10414 * libgomp.fortran/pr84418-1.f90: New test.
10415 * libgomp.fortran/pr84418-2.f90: New test.
10416
d1fe6124
JJ
104172018-02-14 Jakub Jelinek <jakub@redhat.com>
10418
10419 PR fortran/84313
10420 * testsuite/libgomp.fortran/threadprivate4.f90: Add
10421 -std=f2003 -fall-intrinsics into dg-additional-options.
10422
3d224921
MJ
104232018-02-08 Martin Jambor <mjambor@suse.cz>
10424
10425 * testsuite/libgomp.hsa.c/pr82416.c: Make the function with target
10426 clonable.
10427
c7c30edd
MJ
104282018-02-08 Martin Jambor <mjambor@suse.cz>
10429
10430 * testsuite/libgomp.hsa.c/staticvar.c: New test.
10431
f320fdfd
RO
104322018-02-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
10433
10434 * testsuite/libgomp.oacc-c-c++-common/pr84217.c (abort)
10435 [__cplusplus]: Declare extern "C".
10436
c31bc4ac
TV
104372018-02-07 Tom de Vries <tom@codesourcery.com>
10438
10439 PR libgomp/84217
10440 * testsuite/libgomp.oacc-c-c++-common/pr84217.c: New test.
10441
99ae7ce5
CS
104422018-01-29 Christoph Spiel <cspiel@freenet.de>
10443 Jakub Jelinek <jakub@redhat.com>
10444
10445 PR libgomp/84096
10446 * omp.h.in (omp_init_nest_lock_with_hint): Use omp_nest_lock_t
10447 instead of omp_lock_t.
10448
e77a1236
TV
104492018-01-25 Tom de Vries <tom@codesourcery.com>
10450
10451 PR target/84028
10452 * testsuite/libgomp.oacc-fortran/pr84028.f90: New test.
10453
3dede32b
TV
104542018-01-24 Tom de Vries <tom@codesourcery.com>
10455
10456 PR target/83589
10457 * testsuite/libgomp.oacc-c-c++-common/pr83589.c: New test.
10458
be606483
TV
104592018-01-24 Tom de Vries <tom@codesourcery.com>
10460
10461 PR target/81352
10462 * testsuite/libgomp.oacc-fortran/pr81352.f90: New test.
10463
8c8e9a6b
TV
104642018-01-19 Tom de Vries <tom@codesourcery.com>
10465 Cesar Philippidis <cesar@codesourcery.com>
10466
10467 PR target/83920
10468 * testsuite/libgomp.oacc-c-c++-common/pr83920.c: New test.
10469 * testsuite/libgomp.oacc-fortran/pr83920.f90: New test.
10470
65e6aea3
JJ
104712018-01-03 Jakub Jelinek <jakub@redhat.com>
10472
85ec4feb
JJ
10473 Update copyright years.
10474
65e6aea3
JJ
10475 * libgomp.texi: Bump @copying's copyright year.
10476
60bf575c
TV
104772017-12-30 Tom de Vries <tom@codesourcery.com>
10478
10479 PR libgomp/83046
10480 * testsuite/libgomp.oacc-c-c++-common/pr83046.c: New test.
10481 * testsuite/libgomp.c-c++-common/pr83046.c: New test.
10482
7ec16b79
TV
104832017-12-27 Tom de Vries <tom@codesourcery.com>
10484
10485 PR c++/83046
10486 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c (test_static)
10487 (test_nonstatic): Fix return type to workaround PR83046.
10488
ac550b9a
JJ
104892017-12-05 Jakub Jelinek <jakub@redhat.com>
10490
10491 PR testsuite/83281
10492 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c (main): Use
10493 j suffix instead of i.
10494 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c (main):
10495 Likewise.
10496
ebdc83f0
CP
104972017-12-01 Cesar Philippidis <cesar@codesourcery.com>
10498
10499 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: Add missing
10500 call to acc_wait (1).
10501
3b3e6283
JJ
105022017-11-24 Jakub Jelinek <jakub@redhat.com>
10503
10504 PR fortran/81304
10505 * testsuite/libgomp.fortran/pr81304.f90: New test.
10506
3b575376
JJ
105072017-11-23 Jakub Jelinek <jakub@redhat.com>
10508
10509 PR fortran/81841
10510 * libgomp.fortran/pr81841.f90: New test.
10511
b13547d8
JJ
105122017-11-22 Jakub Jelinek <jakub@redhat.com>
10513
10514 PR libgomp/83106
10515 * target.c (gomp_target_init): Compute lengths just once and
10516 use them in both malloc size and subsequent copying.
10517
efe33ced
IT
105182017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
10519
10520 * configure.ac: Set CET_FLAGS, update XCFLAGS and FCFLAGS.
10521 * acinclude.m4: Add cet.m4.
10522 * configure: Regenerate.
10523 * Makefile.in: Likewise.
10524 * testsuite/Makefile.in: Likewise.
10525
a7cf2612
TV
105262017-11-15 Tom de Vries <tom@codesourcery.com>
10527
10528 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-1.c: New test, copied
10529 from asyncwait-1.f90. Rewrite into C. Rewrite from float to int.
10530 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-2.c: New test, copied
10531 from asyncwait-2.f90. Rewrite into C. Rewrite from float to int.
10532 * testsuite/libgomp.oacc-c-c++-common/f-asyncwait-3.c: New test, copied
10533 from asyncwait-3.f90. Rewrite into C. Rewrite from float to int.
10534
dde76623
TV
105352017-11-14 Tom de Vries <tom@codesourcery.com>
10536
10537 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Allow to run for
10538 non-nvidia devices.
10539
4dbeb716
JJ
105402017-11-07 Jakub Jelinek <jakub@redhat.com>
10541
10542 PR c++/82835
10543 * testsuite/libgomp.c++/pr82835.C: New test.
10544
454f8b2b
ML
105452017-11-06 Martin Liska <mliska@suse.cz>
10546
10547 * testsuite/libgomp.c++/loop-2.C: Return a value
10548 for functions with non-void return type, or change type to void,
10549 or add -Wno-return-type for test.
10550 * testsuite/libgomp.c++/loop-4.C: Likewise.
10551 * testsuite/libgomp.c++/parallel-1.C: Likewise.
10552 * testsuite/libgomp.c++/shared-1.C: Likewise.
10553 * testsuite/libgomp.c++/single-1.C: Likewise.
10554 * testsuite/libgomp.c++/single-2.C: Likewise.
10555
12e9c8ce
TV
105562017-10-31 Tom de Vries <tom@codesourcery.com>
10557
10558 * plugin/plugin-hsa.c (HSA_LOG): Remove semicolon after
10559 "do {} while (false)".
10560 (init_single_kernel, GOMP_OFFLOAD_async_run): Add missing semicolon
10561 after HSA_DEBUG call.
10562
7324369a
JJ
105632017-10-28 Jakub Jelinek <jakub@redhat.com>
10564
10565 * target.c (struct gomp_coalesce_buf): New type.
10566 (MAX_COALESCE_BUF_SIZE, MAX_COALESCE_BUF_GAP): Define.
10567 (gomp_coalesce_buf_add, gomp_to_device_kind_p): New functions.
10568 (gomp_copy_host2dev): Add CBUF argument, if copying into
10569 the cached ranges, memcpy into buffer instead of copying
10570 into device.
10571 (gomp_map_vars_existing, gomp_map_pointer, gomp_map_fields_existing):
10572 Add CBUF argument, pass it through to other calls.
10573 (gomp_map_vars): Aggregate copies from host to device if small enough
10574 and with small enough gaps in between into memcpy into a buffer and
10575 fewer host to device copies from the buffer.
10576 (gomp_update): Adjust gomp_copy_host2dev caller.
10577
933ab0e6
TS
105782017-10-17 Thomas Schwinge <thomas@codesourcery.com>
10579
10580 * testsuite/libgomp.oacc-fortran/declare-1.f90: Restore "dg-do
10581 run" directive.
10582 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
10583 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
10584 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
10585 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
10586
92d5d01a
TV
105872017-10-16 Tom de Vries <tom@codesourcery.com>
10588
10589 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: Don't require
10590 openacc_nvidia_accel_selected.
10591 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Same.
10592 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Same.
10593 * testsuite/libgomp.oacc-fortran/declare-2.f90: Same.
10594 * testsuite/libgomp.oacc-fortran/declare-4.f90: Same
10595 * testsuite/libgomp.oacc-fortran/declare-5.f90: Same.
10596 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Don't require
10597 openacc_nvidia_accel_selected. Skip for shared memory device.
10598 * testsuite/libgomp.oacc-fortran/declare-1.f90: Same.
10599 * testsuite/libgomp.oacc-fortran/declare-3.f90: Same.
10600
191411e4
MJ
106012017-10-09 Martin Jambor <mjambor@suse.cz>
10602
10603 PR hsa/82416
10604 * testsuite/libgomp.hsa.c/pr82416.c: New test.
10605
e923330e
TV
106062017-10-07 Tom de Vries <tom@codesourcery.com>
10607
10608 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90 (firstprivate):
10609 Remove acc_device_nvidia references.
10610 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90 (reduction):
10611 Same.
10612
8fe3ed4c
TV
106132017-10-05 Tom de Vries <tom@codesourcery.com>
10614
10615 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c (main): Remove
10616 vector_length(32) clause from acc parallel directive.
10617 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c (main): Same.
10618
26596ee5
TV
106192017-10-04 Tom de Vries <tom@codesourcery.com>
10620
10621 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c
10622 (main): Reduce sum of arr elements. Assert that hres is exactly
10623 representable in 32-bit floating point.
10624 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c
10625 (main): Reduce sum of arr elements. Assert that hres and hmres are
10626 exactly representable in 32-bit floating point.
10627 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c (gwv_np_4): Same.
10628
5c561fa9
TV
106292017-09-28 Tom de Vries <tom@codesourcery.com>
10630
10631 * testsuite/libgomp.c++/for-12.C: Remove superfluous -fopenmp option
10632 setting.
10633 * testsuite/libgomp.c++/pr69393.C: Same.
10634 * testsuite/libgomp.c++/taskloop-1.C: Same.
10635 * testsuite/libgomp.c++/taskloop-3.C: Same.
10636 * testsuite/libgomp.c++/taskloop-4.C: Same.
10637 * testsuite/libgomp.c/for-4.c: Same.
10638 * testsuite/libgomp.c/pr66199-3.c: Same.
10639 * testsuite/libgomp.c/pr66199-4.c: Same.
10640 * testsuite/libgomp.c/pr66199-6.c: Same.
10641 * testsuite/libgomp.c/taskloop-1.c: Same.
10642 * testsuite/libgomp.c/taskloop-3.c: Same.
10643 * testsuite/libgomp.c/taskloop-4.c: Same.
10644 * testsuite/libgomp.fortran/aligned1.f03: Same.
10645 * testsuite/libgomp.fortran/condinc1.f: Same.
10646 * testsuite/libgomp.fortran/condinc3.f90: Same.
10647 * testsuite/libgomp.fortran/crayptr1.f90: Same.
10648 * testsuite/libgomp.fortran/crayptr2.f90: Same.
10649 * testsuite/libgomp.fortran/crayptr3.f90: Same.
10650 * testsuite/libgomp.fortran/omp_cond1.f: Same.
10651 * testsuite/libgomp.fortran/omp_cond3.F90: Same.
10652 * testsuite/libgomp.fortran/pr66199-1.f90: Same.
10653 * testsuite/libgomp.fortran/pr66199-2.f90: Same.
10654 * testsuite/libgomp.fortran/recursion1.f90: Same.
10655 * testsuite/libgomp.fortran/target2.f90: Same.
10656 * testsuite/libgomp.fortran/target5.f90: Same.
10657 * testsuite/libgomp.fortran/task3.f90: Same.
10658
7d6206fe
TV
106592017-09-28 Tom de Vries <tom@codesourcery.com>
10660
10661 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c (main): Remove
10662 vector_length(32) clause from acc parallel directive.
10663 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c (main): Same.
10664
84c8627c
TV
106652017-09-27 Tom de Vries <tom@codesourcery.com>
10666
10667 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c (main):
10668 Remove acc_device_nvidia references.
10669
ebc6a85e
TV
106702017-09-16 Tom de Vries <tom@codesourcery.com>
10671
10672 PR c/81875
10673 * testsuite/libgomp.c-c++-common/pr81875.c: New test.
10674
82419efb
TV
106752017-09-14 Tom de Vries <tom@codesourcery.com>
10676
10677 * testsuite/libgomp.c++/cancel-taskgroup-1.C: Remove.
10678 * testsuite/libgomp.c/cancel-taskgroup-1.c: Move to ...
10679 * testsuite/libgomp.c-c++-common/cancel-taskgroup-1.c: ... here.
10680 * testsuite/libgomp.c/c.exp: Include test-cases from
10681 libgomp.c-c++-common.
10682 * testsuite/libgomp.c++/c++.exp: Same. Force c++-mode compilation of .c
10683 files.
10684
8b586510
JJ
106852017-09-14 Jakub Jelinek <jakub@redhat.com>
10686
10687 PR c++/81314
10688 * testsuite/libgomp.c++/pr81314.C: New test.
10689
9651fbaf
GP
106902017-09-03 Gerald Pfeifer <gerald@pfeifer.com>
10691
10692 * libgomp.texi (Top): www.openacc.org now uses https.
10693 (Enabling OpenACC): Ditto.
10694 (acc_get_num_devices): Ditto.
10695 (acc_set_device_type): Ditto.
10696 (acc_get_device_type): Ditto.
10697 (acc_set_device_num): Ditto.
10698 (acc_get_device_num): Ditto.
10699 (acc_async_test): Ditto.
10700 (acc_async_test_all): Ditto.
10701 (acc_wait): Ditto.
10702 (acc_wait_all): Ditto.
10703 (acc_wait_all_async): Ditto.
10704 (acc_wait_async): Ditto.
10705 (acc_init): Ditto.
10706 (acc_shutdown): Ditto.
10707 (acc_on_device): Ditto.
10708 (acc_malloc): Ditto.
10709 (acc_free): Ditto.
10710 (acc_copyin): Ditto.
10711 (acc_present_or_copyin): Ditto.
10712 (acc_create): Ditto.
10713 (acc_present_or_create): Ditto.
10714 (acc_copyout): Ditto.
10715 (acc_delete): Ditto.
10716 (acc_update_device): Ditto.
10717 (acc_update_self): Ditto.
10718 (acc_map_data): Ditto.
10719 (acc_unmap_data): Ditto.
10720 (acc_deviceptr): Ditto.
10721 (acc_hostptr): Ditto.
10722 (acc_is_present): Ditto.
10723 (acc_memcpy_to_device): Ditto.
10724 (acc_memcpy_from_device): Ditto.
10725 (acc_get_current_cuda_device): Ditto.
10726 (acc_get_current_cuda_context): Ditto.
10727 (acc_get_cuda_stream): Ditto.
10728 (acc_set_cuda_stream): Ditto.
10729 (ACC_DEVICE_TYPE): Ditto.
10730 (ACC_DEVICE_NUM): Ditto.
10731 (OpenACC Library Interoperability): Ditto.
10732
50aa16c3
JJ
107332017-08-09 Jakub Jelinek <jakub@redhat.com>
10734
10735 PR c/81687
10736 * testsuite/libgomp.c/pr81687-1.c: New test.
10737 * testsuite/libgomp.c/pr81687-2.c: New test.
10738
56b5041c
JJ
107392017-08-07 Jakub Jelinek <jakub@redhat.com>
10740
10741 PR c/69389
10742 * testsuite/libgomp.c/pr69389.c: New test.
10743 * testsuite/libgomp.c++/pr69389.C: New test.
10744
f4c222c0
TV
107452017-08-07 Tom de Vries <tom@codesourcery.com>
10746
10747 PR middle-end/78266
10748 * testsuite/libgomp.oacc-c-c++-common/vprop-2.c: New test.
10749 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove xfail.
10750
a40ff0ae
JJ
107512017-07-27 Jakub Jelinek <jakub@redhat.com>
10752
10753 PR c/45784
10754 * testsuite/libgomp.c/pr45784.c: New test.
10755 * testsuite/libgomp.c++/pr45784.C: New test.
10756
3717fbe3
TV
107572017-07-19 Tom de Vries <tom@codesourcery.com>
10758
10759 * testsuite/libgomp.oacc-c/vec.c: New test.
10760
9607b014
TV
107612017-07-03 Tom de Vries <tom@codesourcery.com>
10762
10763 * plugin/plugin-hsa.c: Fix secure_getenv.h include.
10764
dfb15f6b
TV
107652017-06-27 Tom de Vries <tom@codesourcery.com>
10766
10767 * plugin/plugin-nvptx.c (notify_var): New function.
10768 (nvptx_exec): Use notify_var for GOMP_OPENACC_DIM.
10769
22f1a037
TV
107702017-06-27 Tom de Vries <tom@codesourcery.com>
10771
10772 * env.c (parse_unsigned_long_1): Factor out of ...
10773 (parse_unsigned_long): ... here.
10774 (parse_int_1): Factor out of ...
10775 (parse_int): ... here.
10776 (parse_int_secure): New function.
10777 (initialize_env): Use parse_int_secure for GOMP_DEBUG.
10778 * secure_getenv.h: Factor out of ...
10779 * plugin/plugin-hsa.c: ... here.
10780 * testsuite/libgomp.oacc-c-c++-common/gomp-debug-env.c: New test.
10781
d54d1fc3
JJ
107822017-06-21 Jakub Jelinek <jakub@redhat.com>
10783
10784 PR c++/81130
10785 * testsuite/libgomp.c++/pr81130.C: New test.
10786
4f4b0ab8
RO
107872017-06-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
10788
10789 * testsuite/libgomp.fortran/strassen.f90: Remove dg-skip-if
10790 default args.
10791 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove
10792 dg-xfail-run-if default args.
10793
40ffd95f
BE
107942017-06-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
10795
10796 * testsuite/libgomp.c/pr39591-2.c: Fix test case.
10797 * testsuite/libgomp.c/pr39591-3.c: Likewise.
10798
01275e1e
JJ
107992017-05-30 Jakub Jelinek <jakub@redhat.com>
10800
10801 PR libgomp/80822
10802 * config/linux/affinity.c (gomp_affinity_init_level_1): New function.
10803 (gomp_affinity_init_level): Use it. Always analyze the core and thread
10804 sibling lists, depending on level just pick up what CPUs to put
10805 together into a place vs. whether add multiple ordered places.
10806
78672bd8
TS
108072017-05-24 Thomas Schwinge <thomas@codesourcery.com>
10808
7ce64403
TS
10809 * openacc.h (acc_async_wait, acc_async_wait_all): New prototypes.
10810 * libgomp.map (OACC_2.0.1): Add these.
10811 * oacc-async.c (acc_async_wait, acc_async_wait_all): New aliases
10812 for "acc_wait", and "acc_wait_all", respectively.
10813 * openacc.f90 (acc_async_wait, acc_async_wait_all): New interfaces
10814 for "acc_wait", and "acc_wait_all", respectively.
10815 * openacc_lib.h (acc_async_wait, acc_async_wait_all): Likewise.
10816 * libgomp.texi (acc_wait, acc_wait_all): Update.
10817 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Update.
10818 * testsuite/libgomp.oacc-fortran/par-reduction-2-1.f: New file.
10819 * testsuite/libgomp.oacc-fortran/par-reduction-2-2.f: Likewise.
10820
318686c2
TS
10821 * openacc_lib.h (acc_pcopyin, acc_pcreate): Route to
10822 acc_present_or_copyin and acc_present_or_create procedures,
10823 respectively.
10824 * testsuite/libgomp.oacc-fortran/lib-32-1.f: Exercise these, and
10825 generally different variants of OpenACC Runtime Library functions.
10826 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
10827
a6745534
TS
10828 * testsuite/libgomp.oacc-fortran/lib-32-1.f: New file.
10829 * testsuite/libgomp.oacc-fortran/lib-32-2.f: Likewise.
10830
9b94fbc7
TS
10831 * openacc.h (acc_pcopyin, acc_pcreate): Provide prototypes instead
10832 of preprocessor definitions.
10833 * libgomp.h (strong_alias): Guard by "#ifdef
10834 HAVE_ATTRIBUTE_ALIAS".
10835 * oacc-mem.c: Provide "acc_pcreate" as alias for
10836 "acc_present_or_create", and "acc_pcopyin" as alias for
10837 "acc_present_or_copyin".
10838 * libgomp.map: New version "OACC_2.0.1".
10839 (OACC_2.0.1): Add "acc_pcopyin", and "acc_pcreate".
10840 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Remove, merging
10841 its content into...
10842 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: ... this file.
10843 Extend testing.
10844
78672bd8
TS
10845 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Debugging output
10846 when disabling nvptx offloading.
10847
0c36d0d5
TS
108482017-05-23 Thomas Schwinge <thomas@codesourcery.com>
10849
fd71a9a2
TS
10850 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Update.
10851 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
10852 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Likewise.
10853
0c36d0d5
TS
10854 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Rewrite.
10855 * testsuite/lib/libgomp.exp
10856 (check_effective_target_openacc_nvidia_accel_configured): New
10857 proc.
10858 * testsuite/libgomp.oacc-c++/c++.exp (check_effective_target_c)
10859 (check_effective_target_c++): New procs.
10860 * testsuite/libgomp.oacc-c/c.exp (check_effective_target_c)
10861 (check_effective_target_c++): Likewise.
10862
c24783c4
JJ
108632017-05-22 Jakub Jelinek <jakub@redhat.com>
10864
655e5265
JJ
10865 PR middle-end/80809
10866 * testsuite/libgomp.c/pr80809-2.c: New test.
10867 * testsuite/libgomp.c/pr80809-3.c: New test.
10868
e9e2ef9f
JJ
10869 PR middle-end/80809
10870 * testsuite/libgomp.c/pr80809-1.c: New test.
10871
c24783c4
JJ
10872 PR middle-end/80853
10873 * testsuite/libgomp.c/pr80853.c: New test.
10874
0da2f96a
TS
108752017-05-19 Thomas Schwinge <thomas@codesourcery.com>
10876
7fd549d2
TS
10877 * testsuite/libgomp.oacc-c++/template-reduction.C: Update.
10878 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Update.
10879 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
10880 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
10881 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
10882
0da2f96a
TS
10883 * plugin/plugin-hsa.c (DLSYM_FN, init_hsa_runtime_functions):
10884 Debug output for failure.
10885
62ffe920
RO
108862017-05-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
10887
10888 * testsuite/lib/libgomp.exp: Load scanlang.exp.
10889
f49215b1
JJ
108902017-04-27 Jakub Jelinek <jakub@redhat.com>
10891
10892 PR bootstrap/80531
10893 * configure.tgt (*-*-aix*): Add -frandom-seed=$@ to XCFLAGS to avoid
10894 bootstrap compare failures.
10895
2260d19d
AM
108962017-04-20 Alexander Monakov <amonakov@ispras.ru>
10897
10898 * testsuite/libgomp.c/target-36.c: New testcase.
10899
19929ba9
JJ
109002017-04-13 Jakub Jelinek <jakub@redhat.com>
10901
10902 * plugin/plugin-nvptx.c (cuda_lib_inited): Use signed char type
10903 instead of char.
10904
fbc698e0
JJ
109052017-04-11 Jakub Jelinek <jakub@redhat.com>
10906
10907 PR libgomp/80394
10908 * testsuite/libgomp.c/pr80394.c: New test.
10909
c4060df4
JJ
109102017-04-04 Jakub Jelinek <jakub@redhat.com>
10911
10912 PR libgomp/79876
10913 * config/posix/thread-stacksize.h: New file.
10914 * config/darwin/thread-stacksize.h: New file.
10915 * config/nvptx/thread-stacksize.h: New file.
10916 * env.c: Include thread-stacksize.h.
10917 (initialize_env): Initialize stacksize to GOMP_DEFAULT_STACKSIZE
10918 instead of 0. Call pthread_attr_setstacksize even if
10919 GOMP_DEFAULT_STACKSIZE is non-zero.
10920
e02d868a
JJ
109212017-03-30 Jakub Jelinek <jakub@redhat.com>
10922
10923 * env.c (initialize_env): Initialize stacksize to 0.
10924
7ba8651e
CP
109252017-03-22 Cesar Philippidis <cesar@codesourcery.com>
10926
10927 PR c++/80029
10928 * testsuite/libgomp.oacc-c-c++-common/declare-vla.c: New test.
10929
eebc5e2d
JJ
109302017-03-08 Jakub Jelinek <jakub@redhat.com>
10931
10932 PR c/79940
10933 * testsuite/libgomp.c/pr79940.c: New test.
10934
1eb08f52
RO
109352017-02-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
10936
10937 * testsuite/libgomp.c/pr48591.c: Enable on all __float128
10938 targets.
10939 Add __float128 options.
10940
b0f78ff3
JDA
109412017-02-11 John David Anglin <danglin@gcc.gnu.org>
10942
10943 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Remove
10944 hppa*-*-* dg-skip-if directive.
10945
1bbe0d8f
JJ
109462017-02-09 Jakub Jelinek <jakub@redhat.com>
10947
10948 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Move
10949 dg-skip-if directive into a comment.
10950
02889d23
CLT
109512017-02-09 Nathan Sidwell <nathan@codesourcery.com>
10952 Chung-Lin Tang <cltang@codesourcery.com>
10953
10954 * testsuite/libgomp.oacc-c-c++-common/tile-1.c: New.
10955 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust and
10956 add additional case.
10957 * testsuite/libgomp.oacc-c-c++-common/vprop.c: XFAIL under
10958 "openacc_nvidia_accel_selected".
10959 * libgomp.oacc-fortran/nested-function-1.f90 (test2):
10960 Add num_workers(8) clause.
10961
5896a41d
JDA
109622017-02-08 John David Anglin <danglin@gcc.gnu.org>
10963
10964 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: Skip on
10965 hppa*-*-*.
10966 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Don't
10967 include complex.h on hppa*-*-hpux*.
10968 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
10969
345a8c17
TS
109702017-02-02 Thomas Schwinge <thomas@codesourcery.com>
10971
e70ab10d
TS
10972 * plugin/plugin-nvptx.c (nvptx_exec): Make it static.
10973
345a8c17
TS
10974 * libgomp-plugin.h (GOMP_OFFLOAD_openacc_parallel): Rename to
10975 GOMP_OFFLOAD_openacc_exec. Adjust all users.
10976 (GOMP_OFFLOAD_openacc_get_current_cuda_device): Rename to
10977 GOMP_OFFLOAD_openacc_cuda_get_current_device. Adjust all users.
10978 (GOMP_OFFLOAD_openacc_get_current_cuda_context): Rename to
10979 GOMP_OFFLOAD_openacc_cuda_get_current_context. Adjust all users.
10980 (GOMP_OFFLOAD_openacc_get_cuda_stream): Rename to
10981 GOMP_OFFLOAD_openacc_cuda_get_stream. Adjust all users.
10982 (GOMP_OFFLOAD_openacc_set_cuda_stream): Rename to
10983 GOMP_OFFLOAD_openacc_cuda_set_stream. Adjust all users.
10984
dced339c
TS
109852017-01-31 Thomas Schwinge <thomas@codesourcery.com>
10986
10987 * libgomp-plugin.h: #include <stdbool.h>.
10988 (GOMP_OFFLOAD_get_name, GOMP_OFFLOAD_get_caps)
10989 (GOMP_OFFLOAD_get_type, GOMP_OFFLOAD_get_num_devices)
10990 (GOMP_OFFLOAD_init_device, GOMP_OFFLOAD_fini_device)
10991 (GOMP_OFFLOAD_version, GOMP_OFFLOAD_load_image)
10992 (GOMP_OFFLOAD_unload_image, GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free)
10993 (GOMP_OFFLOAD_dev2host, GOMP_OFFLOAD_host2dev)
10994 (GOMP_OFFLOAD_dev2dev, GOMP_OFFLOAD_can_run, GOMP_OFFLOAD_run)
10995 (GOMP_OFFLOAD_async_run, GOMP_OFFLOAD_openacc_parallel)
10996 (GOMP_OFFLOAD_openacc_register_async_cleanup)
10997 (GOMP_OFFLOAD_openacc_async_test)
10998 (GOMP_OFFLOAD_openacc_async_test_all)
10999 (GOMP_OFFLOAD_openacc_async_wait)
11000 (GOMP_OFFLOAD_openacc_async_wait_async)
11001 (GOMP_OFFLOAD_openacc_async_wait_all)
11002 (GOMP_OFFLOAD_openacc_async_wait_all_async)
11003 (GOMP_OFFLOAD_openacc_async_set_async)
11004 (GOMP_OFFLOAD_openacc_create_thread_data)
11005 (GOMP_OFFLOAD_openacc_destroy_thread_data)
11006 (GOMP_OFFLOAD_openacc_get_current_cuda_device)
11007 (GOMP_OFFLOAD_openacc_get_current_cuda_context)
11008 (GOMP_OFFLOAD_openacc_get_cuda_stream)
11009 (GOMP_OFFLOAD_openacc_set_cuda_stream): New prototypes.
11010 * libgomp.h (struct acc_dispatch_t, struct gomp_device_descr): Use
11011 these.
11012 * plugin/plugin-hsa.c (GOMP_OFFLOAD_load_image)
11013 (GOMP_OFFLOAD_unload_image): Fix argument types.
11014
23749904
JJ
110152017-01-26 Jakub Jelinek <jakub@redhat.com>
11016
c1cadde1
JJ
11017 * testsuite/lib/libgomp.exp
11018 (check_effective_target_hsa_offloading_selected_nocache): Fix up
11019 check_compile invocation. Fix up removal of executable. Drop
11020 bogus "2>&1" argument.
11021
23749904
JJ
11022 * testsuite/libgomp.fortran/declare-simd-4.f90: Add cleanup-modules
11023 directive.
11024
110252017-01-24 Pekka Jääskeläinen <pekka@parmance.com>
5fd1486c
PJ
11026 Martin Jambor <mjambor@suse.cz>
11027
11028 * plugin/hsa.h: Moved to top level include.
11029 * plugin/plugin-hsa.c: Chanfgd include of hsa.h accordingly.
11030
73aa401e
JJ
110312017-01-21 Jakub Jelinek <jakub@redhat.com>
11032
11033 PR other/79046
11034 * testsuite/Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead
11035 of cat to get version from BASE-VER file.
11036 * testsuite/Makefile.in: Regenerated.
11037
b32e85fa
JJ
110382017-01-19 Jakub Jelinek <jakub@redhat.com>
11039
11040 * plugin/cuda/cuda.h (CUdeviceptr): Typedef to unsigned long long even
11041 for _WIN64.
11042
3c36aa6b
JJ
110432017-01-17 Jakub Jelinek <jakub@redhat.com>
11044
d190d5c0
JJ
11045 * plugin/hsa.h: Add GCC runtime library exception.
11046 * plugin/hsa_ext_finalize.h: Likewise.
11047
2393d337
JJ
11048 * plugin/configfrag.ac: For --without-cuda-driver don't initialize
11049 CUDA_DRIVER_INCLUDE nor CUDA_DRIVER_LIB. If both
11050 CUDA_DRIVER_INCLUDE and CUDA_DRIVER_LIB are empty and linking small
11051 cuda program fails, define PLUGIN_NVPTX_DYNAMIC to 1 and use
11052 plugin/include/cuda as include dir and -ldl instead of -lcuda as
11053 library to link ptx plugin against.
11054 * plugin/plugin-nvptx.c: Include dlfcn.h if PLUGIN_NVPTX_DYNAMIC.
11055 (CUDA_CALLS): Define.
11056 (cuda_lib, cuda_lib_inited): New variables.
11057 (init_cuda_lib): New function.
11058 (CUDA_CALL_PREFIX): Define.
11059 (CUDA_CALL_ERET, CUDA_CALL_ASSERT): Use CUDA_CALL_PREFIX.
11060 (CUDA_CALL): Use FN instead of (FN).
11061 (CUDA_CALL_NOCHECK): Define.
11062 (cuda_error, fini_streams_for_device, select_stream_for_async,
11063 nvptx_attach_host_thread_to_device, nvptx_open_device, link_ptx,
11064 event_gc, nvptx_exec, nvptx_async_test, nvptx_async_test_all,
11065 nvptx_wait_all, nvptx_set_clocktick, GOMP_OFFLOAD_unload_image,
11066 nvptx_stacks_alloc, nvptx_stacks_free, GOMP_OFFLOAD_run): Use
11067 CUDA_CALL_NOCHECK.
11068 (nvptx_init): Call init_cuda_lib, if it fails, return false. Use
11069 CUDA_CALL_NOCHECK.
11070 (nvptx_get_num_devices): Call init_cuda_lib, if it fails, return 0.
11071 Use CUDA_CALL_NOCHECK.
11072 * plugin/cuda/cuda.h: New file.
11073 * config.h.in: Regenerated.
11074 * configure: Regenerated.
11075
3c36aa6b
JJ
11076 PR other/79046
11077 * configure.ac: Add GCC_BASE_VER.
11078 * Makefile.am (gcc_version): Use @get_gcc_base_ver@ instead of cat to
11079 get version from BASE-VER file.
11080 * testsuite/Makefile.in: Regenerated.
11081 * configure: Regenerated.
11082 * Makefile.in: Regenerated.
11083
c508bc2d
FXC
110842017-01-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
11085
11086 PR libgomp/60670
11087 * Makefile.am: Make fincludedir multilib-aware.
11088 * Makefile.in: Regenerate.
11089
c1a9c369
JJ
110902017-01-01 Jakub Jelinek <jakub@redhat.com>
11091
cbe34bb5
JJ
11092 Update copyright years.
11093
c1a9c369
JJ
11094 * libgomp.texi: Bump @copying's copyright year.
11095
e7a7f4be
SH
110962016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
11097
11098 * libgomp/config/rtems/pool.h (gomp_thread_pool_reservoir): Use
11099 pthread_spinlock_t instead of gomp_mutex_t lock.
11100 (gomp_get_thread_pool): Likewise.
11101 (gomp_release_thread_pool): Likewise.
11102 * libgomp/config/rtems/proc.c (allocate_thread_pool_reservoir):
11103 Likewise.
11104
d313d52c
SH
111052016-12-02 Sebastian Huber <sebastian.huber@embedded-brains.de>
11106
11107 * config/rtems/pool.h (gomp_get_thread_pool): Return proper
11108 thread pool in case nthreads == 1.
11109
630e3c3a
AM
111102016-11-30 Alexander Monakov <amonakov@ispras.ru>
11111
11112 * config/nvptx/env.c: Delete.
11113 * icv.c: Move definitions of ICV variables back ...
11114 * env.c: ...here. Do not compile environment-related functionality if
11115 LIBGOMP_OFFLOADED_ONLY is set.
11116
9e38af5c
AM
111172016-11-30 Alexander Monakov <amonakov@ispras.ru>
11118
11119 * configure.ac [nvptx*-*-*] (libgomp_offloaded_only): Set and use it...
11120 (LIBGOMP_OFFLOADED_ONLY): ...here; new define.
11121 * configure: Regenerate.
11122 * config.h.in: Likewise.
11123
f96b7f1f
AM
111242016-11-30 Alexander Monakov <amonakov@ispras.ru>
11125
11126 * Makefile.in: Regenerate with automake-1.11.6.
11127 * aclocal.m4: Likewise.
11128 * configure: Likewise.
11129 * testsuite/Makefile.in: Likewise.
11130
6a6951b1
AM
111312016-11-28 Alexander Monakov <amonakov@ispras.ru>
11132
11133 * config/nvptx/critical.c: Delete to use generic implementation.
11134
c7ac071f
JH
111352016-11-28 Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de>
11136
11137 * config/linux/affinity.c [!HAVE_PTHREAD_AFFINITY_NP]: Include
11138 ../../affinity.c as fallback.
11139 * config/nvptx/affinity.c: Delete to use fallback implementation.
11140
6103184e 111412016-11-23 Alexander Monakov <amonakov@ispras.ru>
92a285c1 11142 Jakub Jelinek <jakub@redhat.com>
6103184e
AM
11143 Dmitry Melnik <dm@ispras.ru>
11144
11145 * Makefile.am (libgomp_la_SOURCES): Add atomic.c, icv.c, icv-device.c.
11146 * Makefile.in. Regenerate.
11147 * configure.ac [nvptx*-*-*] (libgomp_use_pthreads): Set and use it...
11148 (LIBGOMP_USE_PTHREADS): ...here; new define.
11149 * configure: Regenerate.
11150 * config.h.in: Likewise.
11151 * config/posix/affinity.c: Move to...
11152 * affinity.c: ...here (new file). Guard use of Pthreads-specific
11153 interface by LIBGOMP_USE_PTHREADS.
11154 * critical.c: Split out GOMP_atomic_{start,end} into...
11155 * atomic.c: ...here (new file).
11156 * env.c: Split out ICV definitions into...
11157 * icv.c: ...here (new file) and...
11158 * icv-device.c: ...here. New file.
11159 * config/linux/lock.c (gomp_init_lock_30): Move to generic lock.c.
11160 (gomp_destroy_lock_30): Ditto.
11161 (gomp_set_lock_30): Ditto.
11162 (gomp_unset_lock_30): Ditto.
11163 (gomp_test_lock_30): Ditto.
11164 (gomp_init_nest_lock_30): Ditto.
11165 (gomp_destroy_nest_lock_30): Ditto.
11166 (gomp_set_nest_lock_30): Ditto.
11167 (gomp_unset_nest_lock_30): Ditto.
11168 (gomp_test_nest_lock_30): Ditto.
11169 * lock.c: New.
11170 * config/nvptx/lock.c: New.
11171 * config/nvptx/bar.c: New.
11172 * config/nvptx/bar.h: New.
11173 * config/nvptx/doacross.h: New.
11174 * config/nvptx/error.c: New.
11175 * config/nvptx/icv-device.c: New.
11176 * config/nvptx/mutex.h: New.
11177 * config/nvptx/pool.h: New.
11178 * config/nvptx/proc.c: New.
11179 * config/nvptx/ptrlock.h: New.
11180 * config/nvptx/sem.h: New.
11181 * config/nvptx/simple-bar.h: New.
11182 * config/nvptx/target.c: New.
11183 * config/nvptx/task.c: New.
11184 * config/nvptx/team.c: New.
11185 * config/nvptx/time.c: New.
11186 * config/posix/simple-bar.h: New.
11187 * libgomp.h: Guard pthread.h inclusion. Include simple-bar.h.
11188 (gomp_num_teams_var): Declare.
11189 (struct gomp_thread_pool): Change threads_dock member to
11190 gomp_simple_barrier_t.
11191 [__nvptx__] (gomp_thread): New implementation.
11192 (gomp_thread_attr): Guard by LIBGOMP_USE_PTHREADS.
11193 (gomp_thread_destructor): Ditto.
11194 (gomp_init_thread_affinity): Ditto.
11195 * team.c: Guard uses of Pthreads-specific interfaces by
11196 LIBGOMP_USE_PTHREADS. Adjust all uses of threads_dock.
11197 (gomp_free_thread) [__nvptx__]: Do not call 'free'.
11198 * config/nvptx/alloc.c: Delete.
11199 * config/nvptx/barrier.c: Ditto.
11200 * config/nvptx/fortran.c: Ditto.
11201 * config/nvptx/iter.c: Ditto.
11202 * config/nvptx/iter_ull.c: Ditto.
11203 * config/nvptx/loop.c: Ditto.
11204 * config/nvptx/loop_ull.c: Ditto.
11205 * config/nvptx/ordered.c: Ditto.
11206 * config/nvptx/parallel.c: Ditto.
11207 * config/nvptx/priority_queue.c: Ditto.
11208 * config/nvptx/sections.c: Ditto.
11209 * config/nvptx/single.c: Ditto.
11210 * config/nvptx/splay-tree.c: Ditto.
11211 * config/nvptx/work.c: Ditto.
11212 * testsuite/libgomp.fortran/fortran.exp (lang_link_flags): Pass
11213 -foffload=-lgfortran in addition to -lgfortran.
11214 * testsuite/libgomp.oacc-fortran/fortran.exp (lang_link_flags): Ditto.
11215 * plugin/plugin-nvptx.c: Include <limits.h>.
11216 (struct targ_fn_descriptor): Add new fields.
11217 (struct ptx_device): Ditto. Set them...
11218 (nvptx_open_device): ...here.
11219 (nvptx_adjust_launch_bounds): New.
11220 (nvptx_host2dev): Allow NULL 'nvthd'.
11221 (nvptx_dev2host): Ditto.
11222 (GOMP_OFFLOAD_get_caps): Add GOMP_OFFLOAD_CAP_OPENMP_400.
11223 (link_ptx): Adjust log sizes.
11224 (nvptx_host2dev): Allow NULL 'nvthd'.
11225 (nvptx_dev2host): Ditto.
11226 (nvptx_set_clocktick): New. Use it...
11227 (GOMP_OFFLOAD_load_image): ...here. Set new targ_fn_descriptor
11228 fields.
11229 (GOMP_OFFLOAD_dev2dev): New.
11230 (nvptx_adjust_launch_bounds): New.
11231 (nvptx_stacks_size): New.
11232 (nvptx_stacks_alloc): New.
11233 (nvptx_stacks_free): New.
11234 (GOMP_OFFLOAD_run): New.
11235 (GOMP_OFFLOAD_async_run): New (stub).
11236
56b1c60e
MJ
112372016-11-23 Martin Jambor <mjambor@suse.cz>
11238
11239 * testsuite/libgomp.hsa.c/bits-insns.c: New test.
11240 * testsuite/libgomp.hsa.c/tiling-1.c: Likewise.
11241 * testsuite/libgomp.hsa.c/tiling-2.c: Likewise.
11242
b8d89b03 112432016-11-23 Martin Liska <mliska@suse.cz>
92a285c1 11244 Martin Jambor <mjambor@suse.cz>
b8d89b03
ML
11245
11246 * plugin/hsa.h: New file.
11247 * plugin/hsa_ext_finalize.h: New file.
11248 * plugin/configfrag.ac: Remove hsa-kmt-lib test. Added checks for
11249 header file unistd.h, and functions secure_getenv, __secure_getenv,
11250 getuid, geteuid, getgid and getegid.
11251 * plugin/Makefrag.am (libgomp_plugin_hsa_la_CPPFLAGS): Added
11252 -D_GNU_SOURCE.
11253 * plugin/plugin-hsa.c: Include config.h, inttypes.h and stdbool.h.
11254 Handle various cases of secure_getenv presence, add an implementation
11255 when we can test effective UID and GID.
11256 (struct hsa_runtime_fn_info): New structure.
11257 (hsa_runtime_fn_info hsa_fns): New variable.
11258 (hsa_runtime_lib): Likewise.
11259 (support_cpu_devices): Likewise.
11260 (init_enviroment_variables): Load newly introduced ENV
11261 variables.
11262 (hsa_warn): Call hsa run-time functions via hsa_fns structure.
11263 (hsa_fatal): Likewise.
11264 (DLSYM_FN): New macro.
11265 (init_hsa_runtime_functions): New function.
11266 (suitable_hsa_agent_p): Call hsa run-time functions via hsa_fns
11267 structure. Depending on environment, also allow CPU devices.
11268 (init_hsa_context): Call hsa run-time functions via hsa_fns structure.
11269 (get_kernarg_memory_region): Likewise.
11270 (GOMP_OFFLOAD_init_device): Likewise.
11271 (destroy_hsa_program): Likewise.
11272 (init_basic_kernel_info): New function.
11273 (GOMP_OFFLOAD_load_image): Use it.
11274 (create_and_finalize_hsa_program): Call hsa run-time functions via
11275 hsa_fns structure.
11276 (create_single_kernel_dispatch): Likewise.
11277 (release_kernel_dispatch): Likewise.
11278 (init_single_kernel): Likewise.
11279 (parse_target_attributes): Allow up multiple HSA grid dimensions.
11280 (get_group_size): New function.
11281 (run_kernel): Likewise.
11282 (GOMP_OFFLOAD_run): Outline most functionality to run_kernel.
11283 (GOMP_OFFLOAD_fini_device): Call hsa run-time functions via hsa_fns
11284 structure.
11285 * testsuite/lib/libgomp.exp: Remove hsa_kmt_lib support.
11286 * testsuite/libgomp-test-support.exp.in: Likewise.
11287 * Makefile.in: Regenerated.
11288 * aclocal.m4: Likewise.
11289 * config.h.in: Likewise.
11290 * configure: Likewise.
11291 * testsuite/Makefile.in: Likewise.
11292
18d2ada8 112932016-11-15 Martin Jambor <mjambor@suse.cz>
92a285c1 11294 Alexander Monakov <amonakov@ispras.ru>
18d2ada8
MJ
11295
11296 * testsuite/libgomp.fortran/examples-4/device-1.f90 (e_57_1): Add
11297 mapping clauses to target constructs.
11298 * testsuite/libgomp.fortran/examples-4/device-3.f90 (e_57_3): Ditto.
11299
84c1b9d3
MK
113002016-11-15 Matthias Klose <doko@ubuntu.com>
11301
11302 * configure: Regenerate.
11303
b4c3a85b
JJ
113042016-11-10 Jakub Jelinek <jakub@redhat.com>
11305
8ebd1b31
JJ
11306 * omp_lib.f90.in (openmp_version): Change to 201511 from 201307.
11307 * omp_lib.h.in (openmp_version): Likewise.
11308 * testsuite/libgomp.fortran/openmp_version-1.f: Expect 201511 instead
11309 of 201307.
11310 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
11311
b4c3a85b
JJ
11312 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90
11313 (fib_wrapper): Add map(from: x) clause.
11314 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90
11315 (e_53_2): Likewise.
11316 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90
11317 (accum): Add map(tmp) clause.
11318 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90
11319 (accum): Add map(tofrom: tmp) clause.
11320 * testsuite/libgomp.fortran/examples-4/target_data-3.f90
11321 (gramSchmidt): Likewise.
11322 * testsuite/libgomp.fortran/examples-4/teams-2.f90 (dotprod): Add
11323 map(tofrom: sum) clause.
11324 * testsuite/libgomp.fortran/nestedfn5.f90 (foo): Add twice
11325 map (alloc: a, l) clause. Add defaultmap(tofrom: scalar) clause.
11326 * testsuite/libgomp.fortran/pr66199-2.f90: Adjust for linear clause
11327 only allowed on the loop iterator.
11328 * testsuite/libgomp.fortran/target4.f90 (foo): Add map(t) clause.
11329 * testsuite/libgomp.fortran/taskloop2.f90: New test.
11330 * testsuite/libgomp.fortran/taskloop4.f90: New test.
11331 * testsuite/libgomp.fortran/doacross1.f90: New test.
11332 * testsuite/libgomp.fortran/doacross3.f90: New test.
11333 * testsuite/libgomp.fortran/taskloop1.f90: New test.
11334 * testsuite/libgomp.fortran/taskloop3.f90: New test.
11335 * testsuite/libgomp.fortran/doacross2.f90: New test.
11336 * testsuite/libgomp.c/doacross-1.c (main): Add missing
11337 #pragma omp atomic read.
11338 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
11339 * testsuite/libgomp.c/doacross-3.c (main): Likewise.
11340
6668eb45
CP
113412016-11-02 Cesar Philippidis <cesar@codesourcery.com>
11342 Nathan Sidwell <nathan@acm.org>
11343
11344 * plugin/plugin-nvptx.c (nvptx_exec): Interrogate board attributes
11345 to determine default geometry.
11346 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Set gang
11347 dimension.
11348
f10e37a1
JJ
113492016-11-01 Jakub Jelinek <jakub@redhat.com>
11350
11351 * hashtab.h: Use standard GPLv3 with runtime exception
11352 boilerplate.
11353
015c7760
AH
113542016-10-27 Aldy Hernandez <aldyh@redhat.com>
11355
11356 * oacc-init.c (goacc_new_thread): Use sizeof of the appropriate
11357 size when allocating new thread.
11358
20a1e5b8
MP
113592016-09-14 Marek Polacek <polacek@redhat.com>
11360
11361 * testsuite/libgomp.c++/atomic-3.C: Use -Wno-deprecated.
11362
1cad9284
JJ
113632016-08-19 Jakub Jelinek <jakub@redhat.com>
11364
11365 PR fortran/71014
11366 * testsuite/libgomp.fortran/pr71014.f90: New test.
11367
2c71d454
CLT
113682016-08-18 Chung-Lin Tang <cltang@codesourcery.com>
11369
11370 PR middle-end/70895
11371 * testsuite/libgomp.oacc-fortran/reduction-7.f90: Add explicit
11372 firstprivate clauses.
11373 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Remove explicit
11374 copy clauses.
11375 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
11376 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Likewise.
11377 * testsuite/libgomp.oacc-c-c++-common/reduction-flt.c: Likewise.
11378 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
11379 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
11380 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
11381 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
11382 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
11383 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
11384 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
11385 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
11386 * testsuite/libgomp.oacc-c-c++-common/reduction-dbl.c: Likewise.
11387
7c713714
CLT
113882016-08-14 Chung-Lin Tang <cltang@codesourcery.com>
11389
11390 PR fortran/70598
11391 * testsuite/libgomp.oacc-fortran/host_data-1.f90: New test.
11392
5c934396
JJ
113932016-08-08 Jakub Jelinek <jakub@redhat.com>
11394
11395 PR c++/58706
11396 * testsuite/libgomp.c++/pr58706.C: New test.
11397
9ef64248
TS
113982016-08-04 Thomas Schwinge <thomas@codesourcery.com>
11399
bbc79c0e
TS
11400 * testsuite/libgomp.oacc-c++/routine-1-auto.C: New file.
11401 * testsuite/libgomp.oacc-c++/routine-1-template-auto.C: Likewise.
11402 * testsuite/libgomp.oacc-c++/routine-1-template-trailing-return-type.C:
11403 Likewise.
11404 * testsuite/libgomp.oacc-c++/routine-1-template.C: Likewise.
11405 * testsuite/libgomp.oacc-c++/routine-1-trailing-return-type.C:
11406 Likewise.
11407 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Adjust.
11408
9ef64248
TS
11409 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: Make it a "link"
11410 test, and don't hardcode -O0.
11411
c1311c86
NS
114122016-08-03 Nathan Sidwell <nathan@codesourcery.com>
11413
11414 * testsuite/libgomp.oacc-c-c++-common/crash-1.c: New.
11415
b1c9c068
CP
114162016-07-15 Cesar Philippidis <cesar@codesourcery.com>
11417
11418 * testsuite/libgomp.oacc-c-c++-common/zero_length_subarrays.c: New
11419 test.
11420
b4410f63
L
114212016-07-03 H.J. Lu <hongjiu.lu@intel.com>
11422
11423 PR middle-end/71734
11424 * testsuite/libgomp.fortran/pr71734-1.f90: New test.
11425 * testsuite/libgomp.fortran/pr71734-2.f90: Likewise.
11426
a8dbab92
JJ
114272016-07-01 Jakub Jelinek <jakub@redhat.com>
11428
11429 PR fortran/71717
11430 * testsuite/libgomp.fortran/associate3.f90: New test.
11431
9b6a8d0f
JJ
114322016-06-17 Jakub Jelinek <jakub@redhat.com>
11433
11434 * testsuite/libgomp.c++/target-21.C: New test.
11435
283635f9
JJ
114362016-06-16 Jakub Jelinek <jakub@redhat.com>
11437
11438 * testsuite/libgomp.c++/target-20.C: New test.
11439
27d6ba88
TS
114402016-06-10 Thomas Schwinge <thomas@codesourcery.com>
11441 Cesar Philippidis <cesar@codesourcery.com>
11442
11443 PR middle-end/71373
11444 * libgomp.oacc-c/nested-function-1.c: New file.
11445 * libgomp.oacc-c/nested-function-2.c: Likewise.
11446 * libgomp.oacc-fortran/nested-function-1.f90: Likewise.
11447 * libgomp.oacc-fortran/nested-function-2.f90: Likewise.
11448 * libgomp.oacc-fortran/nested-function-3.f90: Likewise.
11449
4b1ffdb1
TS
114502016-06-10 Thomas Schwinge <thomas@codesourcery.com>
11451
11452 PR c/71381
11453 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: #include
11454 "../../../gcc/testsuite/c-c++-common/goacc/cache-1.c".
11455 * testsuite/libgomp.oacc-fortran/cache-1.f95: New file.
11456
d821b794
CLT
114572016-06-03 Chung-Lin Tang <cltang@codesourcery.com>
11458
11459 * testsuite/libgomp.oacc-fortran/reduction-8.f90: New testcase.
11460 * testsuite/libgomp.oacc-c-c++-common/reduction-8.c: New testcase.
11461
3616a8c5
CP
114622016-06-01 Cesar Philippidis <cesar@codesourcery.com>
11463
11464 PR c/70688
5eed9a88 11465 * testsuite/libgomp.oacc-c-c++-common/pr70688.c: New file.
3616a8c5 11466
7211a097
JJ
114672016-05-26 Jakub Jelinek <jakub@redhat.com>
11468
11469 * testsuite/libgomp.c/doacross-1.c (main): Use schedule(static)
11470 instead of invalid schedule(static, 0).
11471 * testsuite/libgomp.c/doacross-2.c (main): Likewise.
11472
b4557008
CLT
114732016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
11474
11475 * oacc-plugin.h (GOMP_PLUGIN_async_unmap_vars): Add int parameter.
11476 * oacc-plugin.c (GOMP_PLUGIN_async_unmap_vars): Add 'int async'
11477 parameter, use to set async stream around call to gomp_unmap_vars,
11478 call gomp_unmap_vars() with 'do_copyfrom' set to true.
11479 * plugin/plugin-nvptx.c (struct ptx_event): Add 'int val' field.
11480 (event_gc): Adjust event handling loop, collect PTX_EVT_ASYNC_CLEANUP
11481 events and call GOMP_PLUGIN_async_unmap_vars() for each of them.
11482 (event_add): Add int parameter, initialize 'val' field when
11483 adding new ptx_event struct.
11484 (nvptx_evec): Adjust event_add() call arguments.
11485 (nvptx_host2dev): Likewise.
11486 (nvptx_dev2host): Likewise.
11487 (nvptx_wait_async): Likewise.
11488 (nvptx_wait_all_async): Likewise.
11489 (GOMP_OFFLOAD_openacc_register_async_cleanup): Add async parameter,
11490 pass to event_add() call.
11491 * oacc-host.c (host_openacc_register_async_cleanup): Add 'int async'
11492 parameter.
11493 * oacc-mem.c (gomp_acc_remove_pointer): Adjust async case to
11494 call openacc.register_async_cleanup_func() hook.
11495 * oacc-parallel.c (GOACC_parallel_keyed): Likewise.
11496 * target.c (gomp_copy_from_async): Delete function.
11497 (gomp_map_vars): Remove async_refcount.
11498 (gomp_unmap_vars): Likewise.
11499 (gomp_load_image_to_device): Likewise.
11500 (omp_target_associate_ptr): Likewise.
11501 * libgomp.h (struct splay_tree_key_s): Remove async_refcount.
11502 (acc_dispatch_t.register_async_cleanup_func): Add int parameter.
11503 (gomp_copy_from_async): Remove.
11504
6ce13072
CLT
115052016-05-26 Chung-Lin Tang <cltang@codesourcery.com>
11506
11507 * target.c (gomp_device_copy): New function.
11508 (gomp_copy_host2dev): Likewise.
11509 (gomp_copy_dev2host): Likewise.
11510 (gomp_free_device_memory): Likewise.
11511 (gomp_map_vars_existing): Adjust to call gomp_copy_host2dev.
11512 (gomp_map_pointer): Likewise.
11513 (gomp_map_vars): Adjust to call gomp_copy_host2dev, handle
11514 NULL value from alloc_func plugin hook.
11515 (gomp_unmap_tgt): Adjust to call gomp_free_device_memory.
11516 (gomp_copy_from_async): Adjust to call gomp_copy_dev2host.
11517 (gomp_unmap_vars): Likewise.
11518 (gomp_update): Adjust to call gomp_copy_dev2host and
11519 gomp_copy_host2dev functions.
11520 (gomp_unload_image_from_device): Handle false value from
11521 unload_image_func plugin hook.
11522 (gomp_init_device): Handle false value from init_device_func
11523 plugin hook.
11524 (gomp_exit_data): Adjust to call gomp_copy_dev2host.
11525 (omp_target_free): Adjust to call gomp_free_device_memory.
11526 (omp_target_memcpy): Handle return values from host2dev_func,
11527 dev2host_func, and dev2dev_func plugin hooks.
11528 (omp_target_memcpy_rect_worker): Likewise.
11529 (gomp_target_fini): Handle false value from fini_device_func
11530 plugin hook.
11531 * libgomp.h (struct gomp_device_descr): Adjust return type of
11532 init_device_func, fini_device_func, unload_image_func, free_func,
11533 dev2host_func,host2dev_func, and dev2dev_func plugin hooks to 'bool'.
11534 * oacc-init.c (acc_shutdown_1): Handle false value from
11535 fini_device_func plugin hook.
11536 * oacc-host.c (host_init_device): Change return type to bool.
11537 (host_fini_device): Likewise.
11538 (host_unload_image): Likewise.
11539 (host_free): Likewise.
11540 (host_dev2host): Likewise.
11541 (host_host2dev): Likewise.
11542 * oacc-mem.c (acc_free): Handle plugin hook fatal error case.
11543 (acc_memcpy_to_device): Likewise.
11544 (acc_memcpy_from_device): Likewise.
11545 (delete_copyout): Add libfnname parameter, handle free_func
11546 hook fatal error case.
11547 (acc_delete): Adjust delete_copyout call.
11548 (acc_copyout): Likewise.
11549 (update_dev_host): Move gomp_mutex_unlock to after
11550 host2dev/dev2host hook calls.
11551
11552 * plugin/plugin-hsa.c (hsa_warn): Adjust 'hsa_error' local variable
11553 to 'hsa_error_msg', for clarity.
11554 (hsa_fatal): Likewise.
11555 (hsa_error): New function.
11556 (init_hsa_context): Change return type to bool, adjust to return
11557 false on error.
11558 (GOMP_OFFLOAD_get_num_devices): Adjust to handle init_hsa_context
11559 return value.
11560 (GOMP_OFFLOAD_init_device): Change return type to bool, adjust to
11561 return false on error.
11562 (get_agent_info): Adjust to return NULL on error.
11563 (destroy_hsa_program): Change return type to bool, adjust to
11564 return false on error.
11565 (GOMP_OFFLOAD_load_image): Adjust to return -1 on error.
11566 (destroy_module): Change return type to bool, adjust to
11567 return false on error.
11568 (GOMP_OFFLOAD_unload_image): Likewise.
11569 (GOMP_OFFLOAD_fini_device): Likewise.
11570 (GOMP_OFFLOAD_alloc): Change to return NULL when called.
11571 (GOMP_OFFLOAD_free): Change to return false when called.
11572 (GOMP_OFFLOAD_dev2host): Likewise.
11573 (GOMP_OFFLOAD_host2dev): Likewise.
11574 (GOMP_OFFLOAD_dev2dev): Likewise.
11575
11576 * plugin/plugin-nvptx.c (CUDA_CALL_ERET): New convenience macro.
11577 (CUDA_CALL): Likewise.
11578 (CUDA_CALL_ASSERT): Likewise.
11579 (map_init): Change return type to bool, use CUDA_CALL* macros.
11580 (map_fini): Likewise.
11581 (init_streams_for_device): Change return type to bool, adjust
11582 call to map_init.
11583 (fini_streams_for_device): Change return type to bool, adjust
11584 call to map_fini.
11585 (select_stream_for_async): Release stream_lock before calls to
11586 GOMP_PLUGIN_fatal, adjust call to map_init.
11587 (nvptx_init): Use CUDA_CALL* macros.
11588 (nvptx_attach_host_thread_to_device): Change return type to bool,
11589 use CUDA_CALL* macros.
11590 (nvptx_open_device): Use CUDA_CALL* macros.
11591 (nvptx_close_device): Change return type to bool, use CUDA_CALL*
11592 macros.
11593 (nvptx_get_num_devices): Use CUDA_CALL* macros.
11594 (link_ptx): Change return type to bool, use CUDA_CALL* macros.
11595 (nvptx_exec): Use CUDA_CALL* macros.
11596 (nvptx_alloc): Use CUDA_CALL* macros.
11597 (nvptx_free): Change return type to bool, use CUDA_CALL* macros.
11598 (nvptx_host2dev): Likewise.
11599 (nvptx_dev2host): Likewise.
11600 (nvptx_wait): Use CUDA_CALL* macros.
11601 (nvptx_wait_async): Likewise.
11602 (nvptx_wait_all): Likewise.
11603 (nvptx_wait_all_async): Likewise.
11604 (nvptx_set_cuda_stream): Adjust order of stream_lock acquire,
11605 use CUDA_CALL* macros, adjust call to map_fini.
11606 (GOMP_OFFLOAD_init_device): Change return type to bool,
11607 adjust code accordingly.
11608 (GOMP_OFFLOAD_fini_device): Likewise.
11609 (GOMP_OFFLOAD_load_image): Adjust calls to
11610 nvptx_attach_host_thread_to_device/link_ptx to handle errors,
11611 use CUDA_CALL* macros.
11612 (GOMP_OFFLOAD_unload_image): Change return type to bool, adjust
11613 return code.
11614 (GOMP_OFFLOAD_alloc): Adjust calls to code to handle error return.
11615 (GOMP_OFFLOAD_free): Change return type to bool, adjust calls to
11616 handle error return.
11617 (GOMP_OFFLOAD_dev2host): Likewise.
11618 (GOMP_OFFLOAD_host2dev): Likewise.
11619 (GOMP_OFFLOAD_openacc_register_async_cleanup): Use CUDA_CALL* macros.
11620 (GOMP_OFFLOAD_openacc_create_thread_data): Likewise.
11621
e46c7770
CP
116222016-05-24 Cesar Philippidis <cesar@codesourcery.com>
11623
11624 * oacc-mem.c (acc_malloc): Update handling of shared-memory targets.
11625 (acc_free): Likewise.
11626 (acc_memcpy_to_device): Likewise.
11627 (acc_memcpy_from_device): Likewise.
11628 (acc_deviceptr): Likewise.
11629 (acc_hostptr): Likewise.
11630 (acc_is_present): Likewise.
11631 (acc_map_data): Likewise.
11632 (acc_unmap_data): Likewise.
11633 (present_create_copy): Likewise.
11634 (delete_copyout): Likewise.
11635 (update_dev_host): Likewise.
11636 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Remove xfail.
11637 * testsuite/libgomp.oacc-c-c++-common/data-2-lib.c: New test.
11638 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Adjust test.
11639 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
11640 * testsuite/libgomp.oacc-c-c++-common/enter_exit-lib.c: New test.
11641 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Adjust test so that
11642 it only runs on nvptx targets.
11643 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
11644 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
11645 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
11646 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
11647 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
11648 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
11649 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
11650 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
11651 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
11652 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
11653 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
11654 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
11655 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
11656 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
11657 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
11658 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
11659 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
11660 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
11661 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
11662 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
11663 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
11664 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
11665 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
11666
a5057543
MJ
116672016-05-23 Martin Jambor <mjambor@suse.cz>
11668
11669 * testsuite/libgomp.hsa.c/switch-sbr-2.c: New test.
11670
e37288a6
CLT
116712016-05-17 Chung-Lin Tang <cltang@codesourcery.com>
11672
11673 * oacc-init.c (acc_init): Remove !cached_base_dev condition on call
11674 to gomp_init_targets_once.
11675 (acc_set_device_type): Remove !cached_base_dev condition on call to
11676 gomp_init_targets_once, move call to before acc_device_lock acquire,
11677 to avoid deadlock.
11678 (acc_get_device_num): Remove !cached_base_dev condition on call to
11679 gomp_init_targets_once.
11680 (acc_set_device_num): Likewise.
11681
51d9ed48
MJ
116822016-05-16 Martin Jambor <mjambor@suse.cz>
11683
92a285c1 11684 * testsuite/libgomp.hsa.c/complex-align-2.c: New test.
51d9ed48 11685
5b37e866
NS
116862016-05-02 Nathan Sidwell <nathan@codesourcery.com>
11687
11688 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Adjust
11689 expected partitioning.
11690
e7ff0319
CP
116912016-04-29 Cesar Philippidis <cesar@codesourcery.com>
11692
11693 PR middle-end/70626
11694 * testsuite/libgomp.oacc-c++/template-reduction.C: Adjust test.
11695 * testsuite/libgomp.oacc-c-c++-common/combined-reduction.c: New test.
11696 * testsuite/libgomp.oacc-fortran/combined-reduction.f90: New test.
11697
c2bd3b69
AM
116982016-04-21 Alexander Monakov <amonakov@ispras.ru>
11699
11700 * plugin/plugin-nvptx.c (map_fini): Make cuMemFreeHost error
11701 non-fatal.
11702
84311083
JJ
117032016-04-19 Jakub Jelinek <jakub@redhat.com>
11704
11705 PR middle-end/70680
11706 * testsuite/libgomp.c/pr70680-1.c: New test.
11707 * testsuite/libgomp.c/pr70680-2.c: New test.
11708
aadc043f
CP
117092016-04-14 Cesar Philippidis <cesar@codesourcery.com>
11710
11711 * testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Don't
11712 pass parameter variables to subroutines.
11713
e387fc64
CP
117142016-04-14 Cesar Philippidis <cesar@codesourcery.com>
11715
11716 PR middle-end/70643
11717 * testsuite/libgomp.oacc-fortran/pr70643.f90: New test.
11718
10c3c424
CP
117192016-04-13 Cesar Philippidis <cesar@codesourcery.com>
11720
11721 PR testsuite/68242
11722 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Adjust test.
11723 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
11724
27f9add3
TS
117252016-04-12 Thomas Schwinge <thomas@codesourcery.com>
11726
58d32aeb
TS
11727 * libgomp_g.h: Rename GOACC_parallel_keyd prototype to
11728 GOACC_parallel_keyed, restore GOACC_parallel prototype, new
11729 GOACC_declare prototype.
11730
d97633ef
TS
11731 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c:
11732 Merge this file, and...
11733 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gv-np-1.c:
11734 ... this file, and...
11735 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c:
11736 ... this file, and...
11737 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c:
11738 ... this file, and...
11739 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c:
11740 ... this file, and...
11741 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c:
11742 ... this file, and...
11743 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c:
11744 ... this file, and...
11745 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c:
11746 ... this file, and...
11747 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c:
11748 ... this file, and...
11749 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c:
11750 ... this file, and...
11751 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c:
11752 ... this file, and...
11753 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c:
11754 ... this file, and...
11755 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c:
11756 ... this file into...
11757 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: ... this
11758 file.
11759
27f9add3
TS
11760 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c:
11761 Make failure observable.
11762
21f3a236
JJ
117632016-04-12 Jakub Jelinek <jakub@redhat.com>
11764
11765 * libgomp.h (struct gomp_target_task): Remove firstprivate_copies
11766 field.
11767 * target.c (gomp_target_fallback_firstprivate,
11768 gomp_target_unshare_firstprivate): Removed.
11769 (GOMP_target_ext): Copy firstprivate vars into gomp_allocaed memory
11770 before waiting for dependencies.
11771 (gomp_target_task_fn): Don't copy firstprivate vars here.
11772 * task.c (GOMP_PLUGIN_target_task_completion): Don't free
11773 firstprivate_copies here.
11774 (gomp_create_target_task): Don't initialize firstprivate_copies field.
11775 * testsuite/libgomp.c/target-25.c (main): Use map (to:) instead of
11776 explicit/implicit firstprivate.
11777
c42cfb5c
CP
117782016-04-08 Cesar Philippidis <cesar@codesourcery.com>
11779
11780 PR lto/70289
11781 PR ipa/70348
11782 PR tree-optimization/70373
11783 PR middle-end/70533
11784 PR middle-end/70534
11785 PR middle-end/70535
11786 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gang-np-1.c: New
11787 test.
11788 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gw-np-1.c: New
11789 test.
11790 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-1.c: New
11791 test.
11792 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-2.c: New
11793 test.
11794 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-3.c: New
11795 test.
11796 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-gwv-np-4.c: New
11797 test.
11798 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-1.c: New
11799 test.
11800 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-vector-p-2.c: New
11801 test.
11802 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-worker-p-1.c: New
11803 test.
11804 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-1.c: New test.
11805 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-2.c: New test.
11806 * testsuite/libgomp.oacc-c-c++-common/loop-reduction-wv-p-3.c: New test.
11807 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-1.c: New
11808 test.
11809 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-2.c: New
11810 test.
11811 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-3.c: New
11812 test.
11813 * testsuite/libgomp.oacc-c-c++-common/par-loop-comb-reduction-4.c: New
11814 test.
11815 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Add test
11816 coverage.
11817 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
11818 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: Likewise.
11819 * testsuite/libgomp.oacc-c-c++-common/parallel-reduction.c: New test.
11820 * testsuite/libgomp.oacc-c-c++-common/pr70289.c: New test.
11821 * testsuite/libgomp.oacc-c-c++-common/pr70373.c: New test.
11822 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Add test
11823 coverage.
11824 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
11825 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
11826 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
11827 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
11828 * testsuite/libgomp.oacc-c-c++-common/reduction-6.c: New test.
11829 * testsuite/libgomp.oacc-c-c++-common/reduction.h: New test.
11830 * testsuite/libgomp.oacc-fortran/parallel-reduction.f90: New test.
11831 * testsuite/libgomp.oacc-fortran/pr70289.f90: New test.
11832 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Add test coverage.
11833 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
11834 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
11835 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
11836 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
11837 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
11838 * testsuite/libgomp.oacc-fortran/reduction-7.f90: New test.
11839
2620c80d
TS
118402016-03-30 Thomas Schwinge <thomas@codesourcery.com>
11841 James Norris <jnorris@codesourcery.com>
11842 Nathan Sidwell <nathan@codesourcery.com>
11843 Julian Brown <julian@codesourcery.com>
11844 Cesar Philippidis <cesar@codesourcery.com>
11845 Chung-Lin Tang <cltang@codesourcery.com>
11846 Tom de Vries <tom@codesourcery.com>
11847
11848 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Update.
11849 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
11850 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
11851 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Likewise.
11852 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
11853 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
11854 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
11855 * testsuite/libgomp.oacc-fortran/declare-1.f90: Likewise.
11856 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
11857 XFAIL.
11858 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Update.
11859 Incorporate...
11860 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: ... this
11861 file.
11862 * testsuite/libgomp.oacc-c++/template-reduction.C: New file.
11863 * testsuite/libgomp.oacc-c-c++-common/gang-static-1.c: Likewise.
11864 * testsuite/libgomp.oacc-c-c++-common/gang-static-2.c: Likewise.
11865 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-clauses.c:
11866 Likewise.
11867 * testsuite/libgomp.oacc-c-c++-common/private-variables.c:
11868 Likewise.
11869 * testsuite/libgomp.oacc-c-c++-common/reduction-7.c: Likewise.
11870 * testsuite/libgomp.oacc-c-c++-common/routine-1.c: Likewise.
11871 * testsuite/libgomp.oacc-c-c++-common/routine-4.c: Likewise.
11872 * testsuite/libgomp.oacc-c-c++-common/routine-wv-2.c: Likewise.
11873 * testsuite/libgomp.oacc-fortran/clauses-1.f90: Likewise.
11874 * testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
11875 * testsuite/libgomp.oacc-fortran/firstprivate-1.f90: Likewise.
11876 * testsuite/libgomp.oacc-fortran/gang-static-1.f90: Likewise.
11877 * testsuite/libgomp.oacc-fortran/if-1.f90: Likewise.
11878 * testsuite/libgomp.oacc-fortran/implicit-firstprivate-ref.f90:
11879 Likewise.
11880 * testsuite/libgomp.oacc-fortran/pr68813.f90: Likewise.
11881 * testsuite/libgomp.oacc-fortran/private-variables.f90: Likewise.
11882 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Merge this
11883 file...
11884 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: ..., and this
11885 file into...
11886 * testsuite/libgomp.oacc-c-c++-common/data-clauses.h: ... this new
11887 file. Update.
11888 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels.c: New
11889 file.
11890 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel.c:
11891 Likewise.
11892 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: Rename to...
11893 * testsuite/libgomp.oacc-c-c++-common/data-clauses-kernels-ipa-pta.c:
11894 ... this new file. Update.
11895 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: Rename to...
11896 * testsuite/libgomp.oacc-c-c++-common/data-clauses-parallel-ipa-pta.c:
11897 ... this new file. Update.
11898 * testsuite/libgomp.oacc-c-c++-common/mode-transitions.c: New
11899 file. Incorporate...
11900 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c: ... this
11901 file, and...
11902 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: ... this
11903 file, and...
11904 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: ... this
11905 file.
11906 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Remove file.
11907
ce83104b
TS
119082016-03-29 Thomas Schwinge <thomas@codesourcery.com>
11909
11910 * testsuite/libgomp.oacc-c++/c++.exp [!lang_test_file_found]: Call
11911 set-torture-options.
11912
6e0df3b7
TS
119132016-03-24 Thomas Schwinge <thomas@codesourcery.com>
11914
11915 * testsuite/libgomp.oacc-c++/c++.exp: Set up torture testing, use
11916 gcc-dg-runtest.
11917 * testsuite/libgomp.oacc-c/c.exp: Likewise.
11918 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: Specify
11919 -fno-builtin-acc_on_device instead of -O0.
11920 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: Skip for
11921 -O0.
11922 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
11923 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c:
11924 Likewise.
11925 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
11926 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
11927 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
11928 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
11929 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
11930 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
11931 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
11932 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
11933 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
11934 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
11935 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
11936 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
11937 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
11938 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
11939 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
11940 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
11941 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
11942 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-2.c:
11943 Don't specify -O2.
11944 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta-3.c:
11945 Likewise.
11946 * testsuite/libgomp.oacc-c-c++-common/kernels-alias-ipa-pta.c:
11947 Likewise.
11948
f9c8babb
ML
119492016-03-24 Martin Liska <mliska@suse.cz>
11950
11951 * plugin/plugin-hsa.c (packet_store_release): New function
11952 that is taken from the HSA runtime manual.
11953 (GOMP_OFFLOAD_run): Use the function.
11954
04833609
JJ
119552016-03-23 Jakub Jelinek <jakub@redhat.com>
11956
11957 PR c++/70376
11958 * testsuite/libgomp.c++/pr70376.C: New test.
11959
d79ee524
TV
119602016-03-23 Tom de Vries <tom@codesourcery.com>
11961
11962 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Add missing
11963 initialization of lresult and lvresult.
11964 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Same.
11965
b6d1f2b5
JN
119662016-03-23 James Norris <jnorris@codesourcery.com>
11967 Daichi Fukuoka <dc-fukuoka@sgi.com>
11968
11969 PR libgomp/69414
11970 * oacc-mem.c (delete_copyout, update_dev_host): Fix device address.
11971 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Additional tests.
11972 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
11973 * testsuite/libgomp.oacc-fortran/update-1.f90: New file.
11974
7397fce2
ML
119752016-03-23 Martin Liska <mliska@suse.cz>
11976
11977 PR hsa/70337
11978 * plugin/plugin-hsa.c (GOMP_OFFLOAD_run): Copy shadow
11979 argument just in case a dispatched kernel uses that argument.
11980
ee2e7d51
TS
119812016-03-16 Thomas Schwinge <thomas@codesourcery.com>
11982
11983 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: Adjust to
11984 -ftree-parallelize-loops/-fopenacc changes.
11985 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95:
11986 Likewise.
11987 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
11988 Likewise.
11989 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95:
11990 Likewise.
11991 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95:
11992 Likewise.
11993 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Likewise.
11994 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Likewise.
11995
be9f7143
TS
119962016-03-13 Thomas Schwinge <thomas@codesourcery.com>
11997
11998 * testsuite/lib/libgomp.exp (libgomp_init): Potentially append to
11999 always_ld_library_path the path to libgcc_s.
12000
f6c1032d
CP
120012016-03-10 Cesar Philippidis <cesar@codesourcery.com>
12002
12003 PR testsuite/70009
12004 * testsuite/libgomp.oacc-c-c++-common/vprop.c: Make test data signed.
12005
5a6452e6
TV
120062016-03-09 Tom de Vries <tom@codesourcery.com>
12007
12008 * testsuite/libgomp.oacc-fortran/kernels-loop-2.f95: New test.
12009 * testsuite/libgomp.oacc-fortran/kernels-loop-data-2.f95: Same.
12010 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit-2.f95:
12011 Same.
12012 * testsuite/libgomp.oacc-fortran/kernels-loop-data-enter-exit.f95: Same.
12013 * testsuite/libgomp.oacc-fortran/kernels-loop-data-update.f95: Same.
12014 * testsuite/libgomp.oacc-fortran/kernels-loop-data.f95: Same.
12015 * testsuite/libgomp.oacc-fortran/kernels-loop.f95: Same.
12016
96a71bd5
MJ
120172016-03-07 Martin Jambor <mjambor@suse.cz>
12018
12019 * testsuite/lib/libgomp.exp
12020 (check_effective_target_hsa_offloading_selected_nocache): New.
12021 (check_effective_target_hsa_offloading_selected): Likewise.
12022 * testsuite/libgomp.hsa.c/c.exp: Likewise.
12023 * testsuite/libgomp.hsa.c/alloca-1.c: Likewise.
12024 * testsuite/libgomp.hsa.c/bitfield-1.c: Likewise.
12025 * testsuite/libgomp.hsa.c/builtins-1.c: Likewise.
12026 * testsuite/libgomp.hsa.c/complex-1.c: Likewise.
12027 * testsuite/libgomp.hsa.c/formal-actual-args-1.c: Likewise.
12028 * testsuite/libgomp.hsa.c/function-call-1.c: Likewise.
12029 * testsuite/libgomp.hsa.c/get-level-1.c: Likewise.
12030 * testsuite/libgomp.hsa.c/gridify-1.c: Likewise.
12031 * testsuite/libgomp.hsa.c/gridify-2.c: Likewise.
12032 * testsuite/libgomp.hsa.c/gridify-3.c: Likewise.
12033 * testsuite/libgomp.hsa.c/gridify-4.c: Likewise.
12034 * testsuite/libgomp.hsa.c/memory-operations-1.c: Likewise.
12035 * testsuite/libgomp.hsa.c/pr69568.c: Likewise.
12036 * testsuite/libgomp.hsa.c/rotate-1.c: Likewise.
12037 * testsuite/libgomp.hsa.c/switch-1.c: Likewise.
12038 * testsuite/libgomp.hsa.c/switch-branch-1.c: Likewise.
12039
02e0b5b2
MJ
120402016-03-07 Martin Jambor <mjambor@suse.cz>
12041
12042 * testsuite/libgomp.c/examples-4/async_target-2.c: Only run on
12043 non-shared memory accelerators.
12044 * testsuite/libgomp.c/examples-4/device-1.c: Likewise.
12045 * testsuite/libgomp.c/examples-4/target-5.c: Likewise.
12046 * testsuite/libgomp.c/examples-4/target_data-6.c: Likewise.
12047 * testsuite/libgomp.c/examples-4/target_data-7.c: Likewise.
12048 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: Likewise.
12049 * testsuite/libgomp.fortran/examples-4/device-1.f90: Likewise.
12050 * testsuite/libgomp.fortran/examples-4/target-5.f90: Likewise.
12051 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: Likewise.
12052 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: Likewise.
12053
45548f30
MJ
120542016-03-07 Martin Jambor <mjambor@suse.cz>
12055
12056 * testsuite/lib/libgomp.exp (libgomp_init): Append -Wno-hsa to
12057 ALWAYS_CFLAGS.
12058
da3d46cb
JJ
120592016-03-02 Jakub Jelinek <jakub@redhat.com>
12060
12061 PR libgomp/69555
12062 * testsuite/libgomp.c++/pr69555-1.C: New test.
12063 * testsuite/libgomp.c++/pr69555-2.C: New test.
12064
622174b2
KM
120652016-02-26 Keith McDaniel <k.allen.mcdaniel@gmail.com>
12066 Martin Jambor <mjambor@suse.cz>
12067
12068 * testsuite/lib/libgomp.exp
12069 (check_effective_target_offload_device_shared_as): New proc.
12070 * testsuite/libgomp.c++/declare_target-1.C: New test.
12071
e6861a99
IV
120722016-02-25 Ilya Verbin <ilya.verbin@intel.com>
12073
12074 PR driver/68463
12075 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: Remove.
12076
f99c3557
TS
120772016-02-23 Thomas Schwinge <thomas@codesourcery.com>
12078
12079 * oacc-parallel.c (GOACC_parallel_keyed): Initialize dims.
12080 * plugin/plugin-nvptx.c (nvptx_exec): Provide default values for
12081 dims.
12082 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: Adjust to
12083 -ftree-parallelize-loops/-fopenacc changes.
12084 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Likewise.
12085 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c:
12086 Likewise.
12087 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c:
12088 Likewise.
12089 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c:
12090 Likewise.
12091 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c:
12092 Likewise.
12093 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c:
12094 Likewise.
12095 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c:
12096 Likewise.
12097 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c:
12098 Likewise.
12099 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Likewise.
12100 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c:
12101 Likewise.
12102 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Likewise.
12103 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c:
12104 Likewise.
12105 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Likewise.
12106 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c:
12107 Likewise.
12108
d5ace3b5
CP
121092016-02-22 Cesar Philippidis <cesar@codesourcery.com>
12110
12111 * testsuite/libgomp.oacc-c-c++-common/vprop.c: New test.
12112
f3609a89
JJ
121132016-02-19 Jakub Jelinek <jakub@redhat.com>
12114
12115 PR driver/69805
12116 * testsuite/libgomp.c/pr69805.c: New test.
12117
2175df99
TV
121182016-02-16 Tom de Vries <tom@codesourcery.com>
12119
12120 PR lto/67709
12121 * testsuite/libgomp.fortran/declare-simd-4.f90: New test.
12122
17b6426c
TV
121232016-02-09 Tom de Vries <tom@codesourcery.com>
12124
12125 PR tree-optimization/69599
12126 * testsuite/libgomp.c/omp-nested-3.c: New test.
12127 * testsuite/libgomp.c/pr46032-2.c: New test.
12128 * testsuite/libgomp.oacc-c-c++-common/kernels-2.c: New test.
12129 * testsuite/libgomp.oacc-c-c++-common/parallel-2.c: New test.
12130
34df756c
TV
121312016-02-09 Tom de Vries <tom@codesourcery.com>
12132
12133 PR lto/69707
12134 * testsuite/libgomp.oacc-c-c++-common/parallel-dims-2.c: New test.
12135
5854ee30
AM
121362016-02-02 Alexander Monakov <amonakov@ispras.ru>
12137
12138 * testsuite/libgomp.c/target-31.c: Fix testcase.
12139
e70b6ad7
AM
121402016-02-02 Alexander Monakov <amonakov@ispras.ru>
12141
12142 * testsuite/libgomp.c/examples-4/teams-3.c: Add missing reduction
12143 clause.
12144 * testsuite/libgomp.c/examples-4/teams-4.c: Likewise.
12145 * testsuite/libgomp.fortran/examples-4/teams-3.f90: Add missing
12146 reduction and map clauses.
12147 * testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.
12148
bd78a45f
JN
121492016-02-02 James Norris <jnorris@codesourcery.com>
12150
12151 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Fix clause.
12152
41d809d3
TS
121532016-02-02 Thomas Schwinge <thomas@codesourcery.com>
12154
18f60146
TS
12155 * libgomp.map (GOACC_2.0): Remove GOACC_host_data.
12156 * oacc-parallel.c (GOACC_host_data): Remove function definition.
12157
1a06f5e6
TS
12158 * testsuite/lib/libgomp.exp: Skip hsa offloading for OpenACC test
12159 cases.
12160
033ff3d1
TS
12161 * plugin/configfrag.ac (HSA_KMT_LIB, HSA_KMT_LDFLAGS): New
12162 variables.
12163 * testsuite/libgomp-test-support.exp.in (hsa_runtime_lib)
12164 (hsa_kmt_lib): Set variables.
12165 * testsuite/lib/libgomp.exp (libgomp_init): Use them to amend
12166 always_ld_library_path.
12167 * Makefile.in: Regenerate.
12168 * configure: Likewise.
12169 * testsuite/Makefile.in: Likewise.
12170
4a88d9b7
TS
12171 * plugin/configfrag.ac (offload_additional_options)
12172 (offload_additional_lib_paths): Don't amend for hsa offloading.
12173 * configure: Regenerate.
12174
41d809d3
TS
12175 * plugin/configfrag.ac: Don't configure for offloading target if
12176 we don't build the corresponding plugin.
12177 * configure: Regenerate.
12178
b6adbb9f
NS
121792016-02-01 Nathan Sidwell <nathan@codesourcery.com>
12180
12181 * testsuite/libgomp.oacc-c-c++-common/loop-dim-default.c: New.
12182 * testsuite/libgomp.oacc-fortran/routine-7.f90: Serialize loop.
12183
8dfdb419
TV
121842016-01-26 Tom de Vries <tom@codesourcery.com>
12185
12186 PR tree-optimization/69110
12187 * testsuite/libgomp.c/pr69110.c: New test.
12188
02ef53f2
RB
121892016-01-25 Richard Biener <rguenther@suse.de>
12190
12191 PR lto/69393
12192 * testsuite/libgomp.c++/pr69393.C: New testcase.
12193
eb4048f2
IV
121942016-01-22 Ilya Verbin <ilya.verbin@intel.com>
12195
12196 * target.c (gomp_get_target_fn_addr): Allow host fallback if target
12197 function wasn't mapped to the device with non-shared memory.
12198
b235cdd5
IV
121992016-01-20 Ilya Verbin <ilya.verbin@intel.com>
12200
12201 * task.c (gomp_create_target_task): Set firstprivate_copies to NULL.
12202
b2b40051
MJ
122032016-01-19 Martin Jambor <mjambor@suse.cz>
12204 Martin Liska <mliska@suse.cz>
12205
12206 * plugin/Makefrag.am: Add HSA plugin requirements.
12207 * plugin/configfrag.ac (HSA_RUNTIME_INCLUDE): New variable.
12208 (HSA_RUNTIME_LIB): Likewise.
12209 (HSA_RUNTIME_CPPFLAGS): Likewise.
12210 (HSA_RUNTIME_INCLUDE): New substitution.
12211 (HSA_RUNTIME_LIB): Likewise.
12212 (HSA_RUNTIME_LDFLAGS): Likewise.
12213 (hsa-runtime): New configure option.
12214 (hsa-runtime-include): Likewise.
12215 (hsa-runtime-lib): Likewise.
12216 (PLUGIN_HSA): New substitution variable.
12217 Fill HSA_RUNTIME_INCLUDE and HSA_RUNTIME_LIB according to the new
12218 configure options.
12219 (PLUGIN_HSA_CPPFLAGS): Likewise.
12220 (PLUGIN_HSA_LDFLAGS): Likewise.
12221 (PLUGIN_HSA_LIBS): Likewise.
12222 Check that we have access to HSA run-time.
12223 * libgomp-plugin.h (offload_target_type): New element
12224 OFFLOAD_TARGET_TYPE_HSA.
12225 * libgomp.h (gomp_target_task): New fields firstprivate_copies and
12226 args.
12227 (bool gomp_create_target_task): Updated.
12228 (gomp_device_descr): Extra parameter of run_func and async_run_func,
12229 new field can_run_func.
12230 * libgomp_g.h (GOMP_target_ext): Update prototype.
12231 * oacc-host.c (host_run): Added a new parameter args.
12232 * target.c (calculate_firstprivate_requirements): New function.
12233 (copy_firstprivate_data): Likewise.
12234 (gomp_target_fallback_firstprivate): Use them.
12235 (gomp_target_unshare_firstprivate): New function.
12236 (gomp_get_target_fn_addr): Allow returning NULL for shared memory
12237 devices.
12238 (GOMP_target): Do host fallback for all shared memory devices. Do not
12239 pass any args to plugins.
12240 (GOMP_target_ext): Introduce device-specific argument parameter args.
12241 Allow host fallback if device shares memory. Do not remap data if
12242 device has shared memory.
12243 (gomp_target_task_fn): Likewise. Also treat shared memory devices
12244 like host fallback for mappings.
12245 (GOMP_target_data): Treat shared memory devices like host fallback.
12246 (GOMP_target_data_ext): Likewise.
12247 (GOMP_target_update): Likewise.
12248 (GOMP_target_update_ext): Likewise. Also pass NULL as args to
12249 gomp_create_target_task.
12250 (GOMP_target_enter_exit_data): Likewise.
12251 (omp_target_alloc): Treat shared memory devices like host fallback.
12252 (omp_target_free): Likewise.
12253 (omp_target_is_present): Likewise.
12254 (omp_target_memcpy): Likewise.
12255 (omp_target_memcpy_rect): Likewise.
12256 (omp_target_associate_ptr): Likewise.
12257 (gomp_load_plugin_for_device): Also load can_run.
12258 * task.c (GOMP_PLUGIN_target_task_completion): Free
12259 firstprivate_copies.
12260 (gomp_create_target_task): Accept new argument args and store it to
12261 ttask.
12262 * plugin/plugin-hsa.c: New file.
12263
5d7804a9
TV
122642016-01-18 Tom de Vries <tom@codesourcery.com>
12265
12266 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-2.c: New test.
12267 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-3.c: Same.
12268 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-2.c: Same.
12269 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-3.c: Same.
12270 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-4.c: Same.
12271 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-5.c: Same.
12272 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq-6.c: Same.
12273 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-and-seq.c: Same.
12274 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-collapse.c: Same.
12275 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-2.c: Same.
12276 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit-2.c:
12277 Same.
12278 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-enter-exit.c:
12279 Same.
12280 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data-update.c: Same.
12281 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-data.c: Same.
12282 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-g.c: Same.
12283 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-mod-not-zero.c: Same.
12284 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-n.c: Same.
12285 * testsuite/libgomp.oacc-c-c++-common/kernels-loop-nest.c: Same.
12286 * testsuite/libgomp.oacc-c-c++-common/kernels-loop.c: Same.
12287 * testsuite/libgomp.oacc-c-c++-common/kernels-parallel-loop-data-enter-exit.c:
12288 Same.
12289 * testsuite/libgomp.oacc-c-c++-common/kernels-reduction.c: Same.
12290
cb11f3cf
JJ
122912016-01-15 Jakub Jelinek <jakub@redhat.com>
12292
12293 * task.c (GOMP_PLUGIN_target_task_completion): Add missing return.
12294
33a126a6
CP
122952016-01-15 Cesar Philippidis <cesar@codesourcery.com>
12296
12297 * testsuite/libgomp.oacc-fortran/kernels-data.f90: New test.
12298
cdf6119d
JN
122992016-01-12 James Norris <jnorris@codesourcery.com>
12300
12301 * libgomp.texi: Updates for OpenACC.
12302
0d58938e
AM
123032016-01-11 Alexander Monakov <amonakov@ispras.ru>
12304
12305 * plugin/plugin-nvptx.c (link_ptx): Do not set CU_JIT_TARGET.
12306
95918b49
L
123072016-01-07 H.J. Lu <hongjiu.lu@intel.com>
12308
12309 PR fortran/66680
12310 * testsuite/libgomp.fortran/pr66680.f90: New test.
12311
8fc708b7
JJ
123122016-01-07 Jakub Jelinek <jakub@redhat.com>
12313
12314 PR middle-end/68960
12315 * testsuite/libgomp.c/pr68960.c: New test.
12316
e9b596c1
NS
123172016-01-06 Nathan Sidwell <nathan@acm.org>
12318
1a14faf2 12319 * openacc.h (acc_on_device): Add routine pragma for C++ wrapper.
e9b596c1
NS
12320 * testsuite/libgomp.oacc-c-c++-common/acc-on-device-2.c: New.
12321
21fa2a29
JJ
123222016-01-04 Jakub Jelinek <jakub@redhat.com>
12323
818ab71a
JJ
12324 Update copyright years.
12325
21fa2a29
JJ
12326 * libgomp.texi: Bump @copying's copyright year.
12327
9310efbc
NS
123282015-12-31 Nathan Sidwell <nathan@acm.org>
12329
12330 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Correct
12331 dg-additional-options syntax.
12332 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: Likewise.
12333 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: Likewise.
12334 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: Likewise.
12335 * testsuite/libgomp.oacc-c-c++-common/loop-red-gwv-1.c: Likewise.
12336 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: Likewise.
12337 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: Likewise.
12338 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: Likewise.
12339 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: Likewise.
12340 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: Likewise.
12341 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: Likewise.
12342 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-1.c: Likewise.
12343 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: Likewise.
12344 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: Likewise.
12345 * testsuite/libgomp.oacc-c-c++-common/loop-red-wv-1.c: Likewise.
12346 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: Likewise.
12347 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: Likewise.
12348 * testsuite/libgomp.oacc-c-c++-common/loop-red-g-1.c: Likewise.
12349 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-1.c: Likewise.
12350
4a38b02b
IV
123512015-12-15 Ilya Verbin <ilya.verbin@intel.com>
12352
12353 * libgomp.h (REFCOUNT_LINK): Define.
12354 (struct splay_tree_key_s): Add link_key.
12355 * target.c (gomp_map_vars): Treat REFCOUNT_LINK objects as not mapped.
12356 Replace target address of the pointer with target address of newly
12357 mapped object in the splay tree. Set link pointer on target to the
12358 device address of the mapped object.
12359 (gomp_unmap_vars): Restore target address of the pointer in the splay
12360 tree for REFCOUNT_LINK objects after unmapping.
12361 (gomp_load_image_to_device): Set refcount to REFCOUNT_LINK for "omp
12362 declare target link" objects.
12363 (gomp_unload_image_from_device): Replace j with i. Force unmap of all
12364 "omp declare target link" objects, which were mapped for the image.
12365 (gomp_exit_data): Restore target address of the pointer in the splay
12366 tree for REFCOUNT_LINK objects after unmapping.
12367 * testsuite/libgomp.c/target-link-1.c: New file.
12368
d84ffc0a
IV
123692015-12-14 Ilya Verbin <ilya.verbin@intel.com>
12370
12371 * libgomp.h (gomp_device_state): New enum.
12372 (struct gomp_device_descr): Replace is_initialized with state.
12373 (gomp_fini_device): Remove declaration.
12374 * oacc-host.c (host_dispatch): Use state instead of is_initialized.
12375 * oacc-init.c (acc_init_1): Use state instead of is_initialized.
12376 (acc_shutdown_1): Likewise. Inline gomp_fini_device.
12377 (acc_set_device_type): Use state instead of is_initialized.
12378 (acc_set_device_num): Likewise.
12379 * target.c (resolve_device): Use state instead of is_initialized.
12380 Do not initialize finalized device.
12381 (gomp_map_vars): Do nothing if device is finalized.
12382 (gomp_unmap_vars): Likewise.
12383 (gomp_update): Likewise.
12384 (GOMP_offload_register_ver): Use state instead of is_initialized.
12385 (GOMP_offload_unregister_ver): Likewise.
12386 (gomp_init_device): Likewise.
12387 (gomp_unload_device): Likewise.
12388 (gomp_fini_device): Remove.
12389 (gomp_get_target_fn_addr): Do nothing if device is finalized.
12390 (GOMP_target): Go to host fallback if device is finalized.
12391 (GOMP_target_ext): Likewise.
12392 (gomp_exit_data): Do nothing if device is finalized.
12393 (gomp_target_task_fn): Go to host fallback if device is finalized.
12394 (gomp_target_fini): New static function.
12395 (gomp_target_init): Use state instead of is_initialized.
12396 Call gomp_target_fini at exit.
12397
76680678
TV
123982015-12-09 Tom de Vries <tom@codesourcery.com>
12399
12400 PR tree-optimization/68716
12401 * testsuite/libgomp.c/omp-nested-2.c: New test.
12402
ff7a55bf
TS
124032015-12-02 Thomas Schwinge <thomas@codesourcery.com>
12404
12405 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: Restrict to
12406 target openacc_nvidia_accel_selected.
12407 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: Likewise.
12408 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: Likewise.
12409 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: Remove file.
12410 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: Remove file.
12411
37d5ad46
JB
124122015-12-01 Julian Brown <julian@codesourcery.com>
12413 James Norris <James_Norris@mentor.com>
12414
12415 * oacc-parallel.c (GOACC_host_data): New function.
12416 * libgomp.map (GOACC_host_data): Add to GOACC_2.0.1.
12417 * testsuite/libgomp.oacc-c-c++-common/host_data-1.c: New test.
12418 * testsuite/libgomp.oacc-c-c++-common/host_data-2.c: New test.
12419 * testsuite/libgomp.oacc-c-c++-common/host_data-3.c: New test.
12420 * testsuite/libgomp.oacc-c-c++-common/host_data-4.c: New test.
12421 * testsuite/libgomp.oacc-c-c++-common/host_data-5.c: New test.
12422 * testsuite/libgomp.oacc-c-c++-common/host_data-6.c: New test.
12423
db941d7e
CP
124242015-11-30 James Norris <jnorris@codesourcery.com>
12425 Cesar Philippidis <cesar@codesourcery.com>
12426
12427 libgomp/
12428 * libgomp.oacc-fortran/routine-5.f90: New test.
12429 * libgomp.oacc-fortran/routine-7.f90: New test.
12430 * libgomp.oacc-fortran/routine-9.f90: New test.
12431
e0ca27c5
TV
124322015-11-30 Tom de Vries <tom@codesourcery.com>
12433
12434 PR tree-optimization/46032
12435 * testsuite/libgomp.c/pr46032.c: New test.
12436
aec17bfe
JJ
124372015-11-27 Jakub Jelinek <jakub@redhat.com>
12438
8e4e4719
JJ
12439 PR libgomp/68579
12440 * task.c (gomp_task_run_post_handle_depend_hash): New forward decl.
12441 (gomp_create_target_task): Call it before freeing
12442 GOMP_TARGET_TASK_DATA tasks.
12443
aec17bfe
JJ
12444 PR c/63326
12445 * testsuite/libgomp.c/cancel-parallel-2.c (foo): Add semicolon
12446 in between case label and OpenMP standalone directives.
12447 * testsuite/libgomp.c++/cancel-parallel-2.C (foo): Likewise.
12448
6cfe90e6
DE
124492015-11-26 David Edelsohn <dje.gcc@gmail.com>
12450
12451 * configure: Regenerate.
12452
0e65fd7d
JJ
124532015-11-26 Jakub Jelinek <jakub@redhat.com>
12454
12455 * testsuite/libgomp.c/target-35.c: New test.
12456
dc7a8b4b
JN
124572015-11-22 James Norris <jnorris@codesourcery.com>
12458 Cesar Philippidis <cesar@codesourcery.com>
12459
12460 * testsuite/libgomp.oacc-fortran/declare-1.f90: New test.
12461 * testsuite/libgomp.oacc-fortran/declare-2.f90: Likewise.
12462 * testsuite/libgomp.oacc-fortran/declare-3.f90: Likewise.
12463 * testsuite/libgomp.oacc-fortran/declare-4.f90: Likewise.
12464 * testsuite/libgomp.oacc-fortran/declare-5.f90: Likewise.
12465
48a78aee
JJ
124662015-11-20 Jakub Jelinek <jakub@redhat.com>
12467
12468 PR middle-end/68221
12469 * testsuite/libgomp.c/reduction-11.c: Remove xfail.
12470 * testsuite/libgomp.c/reduction-12.c: Likewise.
12471 * testsuite/libgomp.c++/reduction-11.C: Likewise.
12472 * testsuite/libgomp.c++/reduction-12.C: Likewise.
12473
2d256816
NS
124742015-11-19 Nathan Sidwell <nathan@codesourcery.com>
12475
12476 * libgomp.oacc-c-c++-common/reduction-dbl.c: New.
12477 * libgomp.oacc-c-c++-common/reduction-flt.c: New.
12478 * libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Use typedef.
12479 * libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Use typedef.
12480 * libgomp.oacc-c-c++-common/reduction-2.c: Uncomment broken tests
12481 and fix.
12482 * libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
12483 * libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
12484
33f47f42
NS
124852015-11-18 Nathan Sidwell <nathan@codesourcery.com>
12486
12487 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: Add
12488 worker & gang cases.
12489 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: Likewise.
12490
3d7bfee0
CP
124912015-11-17 Cesar Philippidis <cesar@codesourcery.com>
12492
12493 * config/nvptx/priority_queue.c: New file.
12494
00b9bd52
JJ
124952015-11-14 Jakub Jelinek <jakub@redhat.com>
12496
12497 * libgomp.texi: Update references from OpenMP 4.0 to OpenMP 4.5
12498 sections.
12499
e4606348
JJ
125002015-11-14 Jakub Jelinek <jakub@redhat.com>
12501 Aldy Hernandez <aldyh@redhat.com>
12502 Ilya Verbin <ilya.verbin@intel.com>
12503
12504 * ordered.c (gomp_doacross_init, GOMP_doacross_post,
12505 GOMP_doacross_wait, gomp_doacross_ull_init, GOMP_doacross_ull_post,
12506 GOMP_doacross_ull_wait): For GFS_GUIDED don't divide number of
12507 iterators or IV by chunk size.
12508 * parallel.c (gomp_resolve_num_threads): Don't assume that
12509 if thr->ts.team is non-NULL, then pool must be non-NULL.
12510 * libgomp-plugin.h (GOMP_PLUGIN_target_task_completion): Declare.
12511 * libgomp.map (GOMP_PLUGIN_1.1): New symbol version, export
12512 GOMP_PLUGIN_target_task_completion.
12513 * Makefile.am (libgomp_la_SOURCES): Add priority_queue.c.
12514 * Makefile.in: Regenerate.
12515 * libgomp.h: Shuffle prototypes and forward definitions around so
12516 priority queues can be defined.
12517 (enum gomp_task_kind): Add GOMP_TASK_ASYNC_RUNNING.
12518 (enum gomp_target_task_state): New enum.
12519 (struct gomp_target_task): Add state, tgt, task and team fields.
12520 (gomp_create_target_task): Change return type to bool, add
12521 state argument.
12522 (gomp_target_task_fn): Change return type to bool.
12523 (struct gomp_device_descr): Add async_run_func.
12524 (struct gomp_task): Remove children, next_child, prev_child,
12525 next_queue, prev_queue, next_taskgroup, prev_taskgroup.
12526 Add pnode field.
12527 (struct gomp_taskgroup): Remove children.
12528 Add taskgroup_queue.
12529 (struct gomp_team): Change task_queue type to a priority queue.
12530 (splay_compare): Define inline.
12531 (priority_queue_offset): New.
12532 (priority_node_to_task): New.
12533 (task_to_priority_node): New.
12534 * oacc-mem.c: Do not include splay-tree.h.
12535 * priority_queue.c: New file.
12536 * priority_queue.h: New file.
12537 * splay-tree.c: Do not include splay-tree.h.
12538 (splay_tree_foreach_internal): New.
12539 (splay_tree_foreach): New.
12540 * splay-tree.h: Become re-entrant if splay_tree_prefix is defined.
12541 (splay_tree_callback): Define typedef.
12542 * target.c (splay_compare): Move to libgomp.h.
12543 (GOMP_target): Don't adjust *thr in any way around running offloaded
12544 task.
12545 (GOMP_target_ext): Likewise. Handle target nowait.
12546 (GOMP_target_update_ext, GOMP_target_enter_exit_data): Check
12547 return value from gomp_create_target_task, if false, fallthrough
12548 as if no dependencies exist.
12549 (gomp_target_task_fn): Change return type to bool, return true
12550 if the task should have another part scheduled later. Handle
12551 target nowait.
12552 (gomp_load_plugin_for_device): Initialize async_run.
12553 * task.c (gomp_init_task): Initialize children_queue.
12554 (gomp_clear_parent_in_list): New.
12555 (gomp_clear_parent_in_tree): New.
12556 (gomp_clear_parent): Handle priorities.
12557 (GOMP_task): Likewise.
12558 (priority_queue_move_task_first,
12559 gomp_target_task_completion, GOMP_PLUGIN_target_task_completion):
12560 New functions.
12561 (gomp_create_target_task): Use priority queues. Change return type
12562 to bool, add state argument, return false if for async
12563 {{enter,exit} data,update} constructs no dependencies need to be
12564 waited for, handle target nowait. Set task->fn to NULL instead of
12565 gomp_target_task_fn.
12566 (verify_children_queue): Remove.
12567 (priority_list_upgrade_task): New.
12568 (priority_queue_upgrade_task): New.
12569 (verify_task_queue): Remove.
12570 (priority_list_downgrade_task): New.
12571 (priority_queue_downgrade_task): New.
12572 (gomp_task_run_pre): Use priority queues.
12573 Abstract code out to priority_queue_downgrade_task.
12574 (gomp_task_run_post_handle_dependers): Use priority queues.
12575 (gomp_task_run_post_remove_parent): Likewise.
12576 (gomp_task_run_post_remove_taskgroup): Likewise.
12577 (gomp_barrier_handle_tasks): Likewise. Handle target nowait target
12578 tasks specially.
12579 (GOMP_taskwait): Likewise.
12580 (gomp_task_maybe_wait_for_dependencies): Likewise. Abstract code to
12581 priority-queue_upgrade_task.
12582 (GOMP_taskgroup_start): Use priority queues.
12583 (GOMP_taskgroup_end): Likewise. Handle target nowait target tasks
12584 specially. If taskgroup is NULL, and thr->ts.level is 0, act as a
12585 barrier.
12586 * taskloop.c (GOMP_taskloop): Handle priorities.
12587 * team.c (gomp_new_team): Call priority_queue_init.
12588 (free_team): Call priority_queue_free.
12589 (gomp_free_thread): Call gomp_team_end if thr->ts.team is artificial
12590 team created for target nowait in implicit parallel region.
12591 (gomp_team_start): For nested check, test thr->ts.level instead of
12592 thr->ts.team != NULL.
12593 * testsuite/libgomp.c/doacross-3.c: New test.
12594 * testsuite/libgomp.c/ordered-5.c: New test.
12595 * testsuite/libgomp.c/priority.c: New test.
12596 * testsuite/libgomp.c/target-31.c: New test.
12597 * testsuite/libgomp.c/target-32.c: New test.
12598 * testsuite/libgomp.c/target-33.c: New test.
12599 * testsuite/libgomp.c/target-34.c: New test.
12600
1d1ab74f
NS
126012015-11-13 Nathan Sidwell <nathan@codesourcery.com>
12602
c5a64cfe
NS
12603 * testsuite/libgomp.oacc-c-c++-common/loop-auto-1.c: New.
12604
1d1ab74f
NS
12605 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Sequential
12606 loop is sequential.
12607
dd3c1b14
NS
126082015-11-13 Nathan Sidwell <nathan@codesourcery.com>
12609
12610 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-dbl.c: New.
12611 * testsuite/libgomp.oacc-c-c++-common/reduction-cplx-flt.c: New.
12612
6e232ba4
JN
126132015-11-12 James Norris <jnorris@codesourcery.com>
12614 Joseph Myers <joseph@codesourcery.com>
12615
12616 * libgomp.map (GOACC_2.0.1): Export GOACC_declare.
12617 * oacc-parallel.c (GOACC_declare): New function.
12618 * testsuite/libgomp.oacc-c-c++-common/declare-1.c: New test.
12619 * testsuite/libgomp.oacc-c-c++-common/declare-2.c: Likewise.
12620 * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Likewise.
12621 * testsuite/libgomp.oacc-c-c++-common/declare-5.c: Likewise.
12622 * testsuite/libgomp.oacc-c++/declare-1.C: Likewise.
12623
fffeedeb
NS
126242015-11-12 Nathan Sidwell <nathan@codesourcery.com>
12625
12626 * testsuite/libgomp.oacc-c-c++-common/default-1.c: New.
12627
182190f2
NS
126282015-11-1 Nathan Sidwell <nathan@codesourcery.com>
12629
12630 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: New.
12631 * testsuite/libgomp.oacc-c-c++-common/firstprivate-2.c: New.
12632
36fa0f5f
NS
126332015-11-09 Nathan Sidwell <nathan@codesourcery.com>
12634
d350c40c
NS
12635 * testsuite/libgomp.oacc-c-c++-common/firstprivate-1.c: Remove
12636 inadvertent commit.
12637
126382015-11-09 Nathan Sidwell <nathan@codesourcery.com>
12639
36fa0f5f
NS
12640 * testsuite/libgomp.oacc-c-c++-common/routine-g-1.c: New.
12641 * testsuite/libgomp.oacc-c-c++-common/routine-gwv-1.c: New.
12642 * testsuite/libgomp.oacc-c-c++-common/routine-v-1.c: New.
12643 * testsuite/libgomp.oacc-c-c++-common/routine-w-1.c: New.
12644 * testsuite/libgomp.oacc-c-c++-common/routine-wv-1.c: New.
12645
66a5f0b4
TS
126462015-11-06 Thomas Schwinge <thomas@codesourcery.com>
12647
12648 * testsuite/libgomp.oacc-c-c++-common/loop-red-v-2.c: XFAIL.
12649 * testsuite/libgomp.oacc-c-c++-common/loop-red-w-2.c: Likewise.
12650
e01d41e5
JJ
126512015-11-05 Jakub Jelinek <jakub@redhat.com>
12652 Ilya Verbin <ilya.verbin@intel.com>
12653
12654 * libgomp_g.h (GOMP_loop_nonmonotonic_dynamic_next,
12655 GOMP_loop_nonmonotonic_dynamic_start,
12656 GOMP_loop_nonmonotonic_guided_next,
12657 GOMP_loop_nonmonotonic_guided_start,
12658 GOMP_loop_ull_nonmonotonic_dynamic_next,
12659 GOMP_loop_ull_nonmonotonic_dynamic_start,
12660 GOMP_loop_ull_nonmonotonic_guided_next,
12661 GOMP_loop_ull_nonmonotonic_guided_start,
12662 GOMP_parallel_loop_nonmonotonic_dynamic,
12663 GOMP_parallel_loop_nonmonotonic_guided): New prototypes.
12664 (GOMP_target_41): Renamed to ...
12665 (GOMP_target_ext): ... this. Add num_teams and thread_limit
12666 arguments.
12667 (GOMP_target_data_41): Renamed to ...
12668 (GOMP_target_data_ext): ... this.
12669 (GOMP_target_update_41): Renamed to ...
12670 (GOMP_target_update_ext): ... this.
12671 * libgomp.map (GOMP_4.5): Export GOMP_target_ext,
12672 GOMP_target_data_ext and GOMP_target_update_ext instead of
12673 GOMP_target_41, GOMP_target_data_41 and GOMP_target_update_41.
12674 Export GOMP_loop_nonmonotonic_dynamic_next,
12675 GOMP_loop_nonmonotonic_dynamic_start,
12676 GOMP_loop_nonmonotonic_guided_next,
12677 GOMP_loop_nonmonotonic_guided_start,
12678 GOMP_loop_ull_nonmonotonic_dynamic_next,
12679 GOMP_loop_ull_nonmonotonic_dynamic_start,
12680 GOMP_loop_ull_nonmonotonic_guided_next,
12681 GOMP_loop_ull_nonmonotonic_guided_start,
12682 GOMP_parallel_loop_nonmonotonic_dynamic and
12683 GOMP_parallel_loop_nonmonotonic_guided.
12684 * loop.c (GOMP_parallel_loop_nonmonotonic_dynamic,
12685 GOMP_parallel_loop_nonmonotonic_guided,
12686 GOMP_loop_nonmonotonic_dynamic_start,
12687 GOMP_loop_nonmonotonic_guided_start,
12688 GOMP_loop_nonmonotonic_dynamic_next,
12689 GOMP_loop_nonmonotonic_guided_next): New aliases or functions.
12690 * loop_ull.c (GOMP_loop_ull_nonmonotonic_dynamic_start,
12691 GOMP_loop_ull_nonmonotonic_guided_start,
12692 GOMP_loop_ull_nonmonotonic_dynamic_next,
12693 GOMP_loop_ull_nonmonotonic_guided_next): Likewise.
12694 * target.c (gomp_map_0len_lookup, gomp_map_val): New inline
12695 functions.
12696 (gomp_map_vars): Handle GOMP_MAP_ALWAYS_POINTER. For
12697 GOMP_MAP_ZERO_LEN_ARRAY_SECTION use gomp_map_0len_lookup.
12698 Use gomp_map_val function.
12699 (gomp_target_fallback_firstprivate): New static function.
12700 (GOMP_target_41): Renamed to ...
12701 (GOMP_target_ext): ... this. Add num_teams and thread_limit
12702 arguments. Move firstprivate fallback handling into a new
12703 function.
12704 (GOMP_target_data_41): Renamed to ...
12705 (GOMP_target_data_ext): ... this.
12706 (GOMP_target_update_41): Renamed to ...
12707 (GOMP_target_update_ext): ... this.
12708 (gomp_exit_data): For GOMP_MAP_*ZERO_LEN* use
12709 gomp_map_0len_lookup instead of gomp_map_lookup.
12710 (omp_target_is_present): Use gomp_map_0len_lookup instead of
12711 gomp_map_lookup.
12712 * testsuite/libgomp.c/target-28.c: Likewise.
12713 * testsuite/libgomp.c/monotonic-1.c: New test.
12714 * testsuite/libgomp.c/monotonic-2.c: New test.
12715 * testsuite/libgomp.c/nonmonotonic-1.c: New test.
12716 * testsuite/libgomp.c/nonmonotonic-2.c: New test.
12717 * testsuite/libgomp.c/pr66199-5.c: New test.
12718 * testsuite/libgomp.c/pr66199-6.c: New test.
12719 * testsuite/libgomp.c/pr66199-7.c: New test.
12720 * testsuite/libgomp.c/pr66199-8.c: New test.
12721 * testsuite/libgomp.c/pr66199-9.c: New test.
12722 * testsuite/libgomp.c/reduction-11.c: New test.
12723 * testsuite/libgomp.c/reduction-12.c: New test.
12724 * testsuite/libgomp.c/reduction-13.c: New test.
12725 * testsuite/libgomp.c/reduction-14.c: New test.
12726 * testsuite/libgomp.c/reduction-15.c: New test.
12727 * testsuite/libgomp.c/target-12.c (main): Adjust for
12728 omp_target_is_present change for one-past-last element.
12729 * testsuite/libgomp.c/target-17.c (foo): Drop tests where
12730 the same var is both mapped and privatized.
12731 * testsuite/libgomp.c/target-19.c (foo): Adjust for different
12732 handling of zero-length array sections.
12733 * testsuite/libgomp.c/target-28.c: New test.
12734 * testsuite/libgomp.c/target-29.c: New test.
12735 * testsuite/libgomp.c/target-30.c: New test.
12736 * testsuite/libgomp.c/target-teams-1.c: New test.
12737 * testsuite/libgomp.c++/member-6.C: New test.
12738 * testsuite/libgomp.c++/member-7.C: New test.
12739 * testsuite/libgomp.c++/monotonic-1.C: New test.
12740 * testsuite/libgomp.c++/monotonic-2.C: New test.
12741 * testsuite/libgomp.c++/nonmonotonic-1.C: New test.
12742 * testsuite/libgomp.c++/nonmonotonic-2.C: New test.
12743 * testsuite/libgomp.c++/pr66199-3.C: New test.
12744 * testsuite/libgomp.c++/pr66199-4.C: New test.
12745 * testsuite/libgomp.c++/pr66199-5.C: New test.
12746 * testsuite/libgomp.c++/pr66199-6.C: New test.
12747 * testsuite/libgomp.c++/pr66199-7.C: New test.
12748 * testsuite/libgomp.c++/pr66199-8.C: New test.
12749 * testsuite/libgomp.c++/pr66199-9.C: New test.
12750 * testsuite/libgomp.c++/reduction-11.C: New test.
12751 * testsuite/libgomp.c++/reduction-12.C: New test.
12752 * testsuite/libgomp.c++/target-13.C: New test.
12753 * testsuite/libgomp.c++/target-14.C: New test.
12754 * testsuite/libgomp.c++/target-15.C: New test.
12755 * testsuite/libgomp.c++/target-16.C: New test.
12756 * testsuite/libgomp.c++/target-17.C: New test.
12757 * testsuite/libgomp.c++/target-18.C: New test.
12758 * testsuite/libgomp.c++/target-19.C: New test.
12759
ccc8282b
NS
127602015-11-04 Nathan Sidwell <nathan@codesourcery.com>
12761
12762 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Fix dimensions
12763 and reduction copy.
12764 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
12765 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
12766 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
12767 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
12768 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: Likewise.
12769 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
12770 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
12771 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
12772 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
12773 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c: Likewise.
12774 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
12775 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
12776 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
12777 * testsuite/libgomp.oacc-c-c++-common/parallel-dims.c: New.
12778
5d6823a2
NS
127792015-11-04 Nathan Sidwell <nathan@codesourcery.com>
12780
12781 * libgomp.oacc-c-c++-common/loop-red-g-1.c: New.
12782 * libgomp.oacc-c-c++-common/loop-red-gwv-1.c: New.
12783 * libgomp.oacc-c-c++-common/loop-red-v-1.c: New.
12784 * libgomp.oacc-c-c++-common/loop-red-v-2.c: New.
12785 * libgomp.oacc-c-c++-common/loop-red-w-1.c: New.
12786 * libgomp.oacc-c-c++-common/loop-red-w-2.c: New.
12787 * libgomp.oacc-c-c++-common/loop-red-wv-1.c: New.
12788 * libgomp.oacc-fortran/reduction-5.f90: Avoid reference var.
12789
5c06742f
NS
127902015-11-03 Nathan Sidwell <nathan@codesourcery.com>
12791
12792 * libgomp.h (struct acc_dispatch_t): Remove args from exec_func.
12793 * plugin/plugin-nvptx.c (nvptx_exec): Remove sizes & kinds arg.
12794 (GOMP_OFFLOAD_openacc_parallel): Likewise.
12795 * oacc-host.c (host_openacc_exec): Likewise.
12796 * oacc-parallel.c (GOACC_parallel_keyed): Adjust exec_func call.
12797
4bf9e5a8
TS
127982015-11-03 Julian Brown <julian@codesourcery.com>
12799 Thomas Schwinge <thomas@codesourcery.com>
12800
12801 * testsuite/libgomp.oacc-c-c++-common/par-reduction-1.c: New file.
12802 * testsuite/libgomp.oacc-c-c++-common/par-reduction-2.c: Likewise.
12803 * testsuite/libgomp.oacc-c-c++-common/worker-single-1a.c:
12804 Likewise.
12805 * testsuite/libgomp.oacc-c-c++-common/worker-single-4.c: Likewise.
12806 * testsuite/libgomp.oacc-c-c++-common/worker-single-6.c: Likewise.
12807
128082015-11-03 James Norris <jnorris@codesourcery.com>
12809
12810 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-1.c: New
12811 file.
12812 * testsuite/libgomp.oacc-c-c++-common/atomic_capture-2.c:
12813 Likewise.
12814 * testsuite/libgomp.oacc-c-c++-common/atomic_rw-1.c: Likewise.
12815 * testsuite/libgomp.oacc-c-c++-common/atomic_update-1.c: Likewise.
12816 * testsuite/libgomp.oacc-fortran/atomic_capture-1.f90: Likewise.
12817 * testsuite/libgomp.oacc-fortran/atomic_rw-1.f90: New file.
12818 * testsuite/libgomp.oacc-fortran/atomic_update-1.f90: Likewise.
12819
a0e701d8
NS
128202015-10-29 Nathan Sidwell <nathan@codesourcery.com>
12821
12822 * openacc.h (enum acc_device_t): Reformat. Ensure layout
12823 compatibility.
12824 (enum acc_async_t): Reformat.
12825 (acc_on_device): Declare compatible with builtin and provide C++
12826 wrapper.
12827 * testsuite/libgomp.oacc-c-c++-common/acc-on-device.c: New.
12828
41e977ac
TS
128292015-10-29 Thomas Schwinge <thomas@codesourcery.com>
12830 Cesar Philippidis <cesar@codesourcery.com>
12831
12832 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: Rename to...
12833 * testsuite/libgomp.oacc-c-c++-common/combined-directives-1.c:
12834 ... this. Add a description of the test at the top of the file.
12835 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Rename file to...
12836 * testsuite/libgomp.oacc-fortran/combined-directives-1.f90:
12837 ... this. Add a description of the test at the top of the file.
12838
e3091406
NS
128392015-10-28 Nathan Sidwell <nathan@codesourcery.com>
12840
12841 * testsuite/libgomp.oacc-c-c++-common/loop-g-1.c: New.
12842 * testsuite/libgomp.oacc-c-c++-common/loop-g-2.c: New.
12843 * testsuite/libgomp.oacc-c-c++-common/loop-gwv-1.c: New.
12844 * testsuite/libgomp.oacc-c-c++-common/loop-v-1.c: New.
12845 * testsuite/libgomp.oacc-c-c++-common/loop-w-1.c: New.
12846 * testsuite/libgomp.oacc-c-c++-common/loop-wv-1.c: New.
12847
a1c1908b
NS
128482015-10-27 Nathan Sidwell <nathan@codesourcery.com>
12849
12850 * plugin/plugin-nvptx.c (nvptx_exec): Remove check on compute
12851 dimensions.
12852
b3962a4a
TS
128532015-10-27 Thomas Schwinge <thomas@codesourcery.com>
12854
12855 PR testsuite/68063
12856 * testsuite/libgomp.c++/member-1.C (A::m1): Add missing private clause.
12857
88bae6f4
TS
128582015-10-27 James Norris <jnorris@codesourcery.com>
12859
12860 * testsuite/libgomp.oacc-c-c++-common/combdir-1.c: New file.
12861 * testsuite/libgomp.oacc-fortran/combdir-1.f90: Likewise.
12862
8baa7864
TS
128632015-10-26 Thomas Schwinge <thomas@codesourcery.com>
12864
bdeb752c
TS
12865 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Print to stderr.
12866 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
12867
ecd4fd43
TS
12868 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Remove explicit
12869 acc_device_nvidia usage.
12870 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
12871 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
12872 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
12873
aa8b7d30
TS
12874 * oacc-init.c (acc_shutdown): Call gomp_init_targets_once.
12875 * testsuite/libgomp.oacc-c-c++-common/lib-8.c: New file.
12876
7c8f138d
TS
12877 PR libgomp/66518
12878 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Resolve XFAIL.
12879
8baa7864
TS
12880 PR libgomp/65437
12881 PR libgomp/66518
12882 * oacc-mem.c (update_dev_host): Call goacc_lazy_initialize.
12883 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Remove XFAIL.
12884
88ebcde5
TV
128852015-10-23 Tom de Vries <tom@codesourcery.com>
12886
12887 PR testsuite/68063
12888 * testsuite/libgomp.c++/member-2.C (A::m1): Add missing private clause.
12889
9ef83c04
NS
128902015-10-20 Nathan Sidwell <nathan@codesourcery.com>
12891
12892 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Set sane
12893 vector_length.
12894 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
12895
3837c6d6
IV
128962015-10-14 Ilya Verbin <ilya.verbin@intel.com>
12897 Aleksander Ivanushenko <aleksander.ivanushenko@intel.com>
12898
12899 * target.c (gomp_map_vars): Initialize tgt->tgt_start and tgt->tgt_end
12900 to 0 when mapnum is 0.
12901
ac8a1965
SH
129022015-10-14 Sebastian Huber <sebastian.huber@embedded-brains.de>
12903
12904 * fortran.c (omp_get_place_proc_ids_, omp_get_partition_place_nums_):
12905 Cast to int from int32_t.
12906
d9a6bd32
JJ
129072015-10-13 Jakub Jelinek <jakub@redhat.com>
12908 Aldy Hernandez <aldyh@redhat.com>
12909 Ilya Verbin <ilya.verbin@intel.com>
12910
12911 * config/linux/affinity.c (omp_get_place_num_procs,
12912 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
12913 * config/linux/doacross.h: New file.
12914 * config/posix/affinity.c (omp_get_place_num_procs,
12915 omp_get_place_proc_ids, gomp_get_place_proc_ids_8): New functions.
12916 * config/posix/doacross.h: New file.
12917 * env.c: Include gomp-constants.h.
12918 (struct gomp_task_icv): Rename run_sched_modifier to
12919 run_sched_chunk_size.
12920 (gomp_max_task_priority_var): New variable.
12921 (parse_schedule): Rename run_sched_modifier to run_sched_chunk_size.
12922 (handle_omp_display_env): Change _OPENMP value from 201307 to
12923 201511. Print OMP_MAX_TASK_PRIORITY.
12924 (initialize_env): Parse OMP_MAX_TASK_PRIORITY.
12925 (omp_set_schedule, omp_get_schedule): Rename modifier argument to
12926 chunk_size and run_sched_modifier to run_sched_chunk_size.
12927 (omp_get_max_task_priority, omp_get_initial_device,
12928 omp_get_num_places, omp_get_place_num, omp_get_partition_num_places,
12929 omp_get_partition_place_nums): New functions.
12930 * fortran.c (omp_set_schedule_, omp_set_schedule_8_,
12931 omp_get_schedule_, omp_get_schedule_8_): Rename modifier argument
12932 to chunk_size.
12933 (omp_get_num_places_, omp_get_place_num_procs_,
12934 omp_get_place_num_procs_8_, omp_get_place_proc_ids_,
12935 omp_get_place_proc_ids_8_, omp_get_place_num_,
12936 omp_get_partition_num_places_, omp_get_partition_place_nums_,
12937 omp_get_partition_place_nums_8_, omp_get_initial_device_,
12938 omp_get_max_task_priority_): New functions.
12939 * libgomp_g.h (GOMP_loop_doacross_static_start,
12940 GOMP_loop_doacross_dynamic_start, GOMP_loop_doacross_guided_start,
12941 GOMP_loop_doacross_runtime_start, GOMP_loop_ull_doacross_static_start,
12942 GOMP_loop_ull_doacross_dynamic_start,
12943 GOMP_loop_ull_doacross_guided_start,
12944 GOMP_loop_ull_doacross_runtime_start, GOMP_doacross_post,
12945 GOMP_doacross_wait, GOMP_doacross_ull_post, GOMP_doacross_wait,
12946 GOMP_taskloop, GOMP_taskloop_ull, GOMP_target_41,
12947 GOMP_target_data_41, GOMP_target_update_41,
12948 GOMP_target_enter_exit_data): New prototypes.
12949 (GOMP_task): Add prototype argument.
12950 * libgomp.h (_LIBGOMP_CHECKING_): Define to 0 if not yet defined.
12951 (struct gomp_doacross_work_share): New type.
12952 (struct gomp_work_share): Add doacross field.
12953 (struct gomp_task_icv): Rename run_sched_modifier to
12954 run_sched_chunk_size.
12955 (enum gomp_task_kind): Rename GOMP_TASK_IFFALSE to
12956 GOMP_TASK_UNDEFERRED. Add comments.
12957 (struct gomp_task_depend_entry): Add comments.
12958 (struct gomp_task): Likewise.
12959 (struct gomp_taskgroup): Likewise.
12960 (struct gomp_target_task): New type.
12961 (struct gomp_team): Add comment.
12962 (gomp_get_place_proc_ids_8, gomp_doacross_init,
12963 gomp_doacross_ull_init, gomp_task_maybe_wait_for_dependencies,
12964 gomp_create_target_task, gomp_target_task_fn): New prototypes.
12965 (struct target_var_desc): New type.
12966 (struct target_mem_desc): Adjust comment. Use struct
12967 target_var_desc instead of splay_tree_key for list.
12968 (REFCOUNT_INFINITY): Define.
12969 (struct splay_tree_key_s): Remove copy_from field.
12970 (struct gomp_device_descr): Add dev2dev_func field.
12971 (enum gomp_map_vars_kind): New enum.
12972 (gomp_map_vars): Add one argument.
12973 * libgomp.map (OMP_4.5): Export omp_get_max_task_priority,
12974 omp_get_max_task_priority_, omp_get_num_places, omp_get_num_places_,
12975 omp_get_place_num_procs, omp_get_place_num_procs_,
12976 omp_get_place_num_procs_8_, omp_get_place_proc_ids,
12977 omp_get_place_proc_ids_, omp_get_place_proc_ids_8_, omp_get_place_num,
12978 omp_get_place_num_, omp_get_partition_num_places,
12979 omp_get_partition_num_places_, omp_get_partition_place_nums,
12980 omp_get_partition_place_nums_, omp_get_partition_place_nums_8_,
12981 omp_get_initial_device, omp_get_initial_device_, omp_target_alloc,
12982 omp_target_free, omp_target_is_present, omp_target_memcpy,
12983 omp_target_memcpy_rect, omp_target_associate_ptr and
12984 omp_target_disassociate_ptr.
12985 (GOMP_4.0.2): Renamed to ...
12986 (GOMP_4.5): ... this. Export GOMP_target_41, GOMP_target_data_41,
12987 GOMP_target_update_41, GOMP_target_enter_exit_data, GOMP_taskloop,
12988 GOMP_taskloop_ull, GOMP_loop_doacross_dynamic_start,
12989 GOMP_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
12990 GOMP_loop_doacross_static_start, GOMP_doacross_post,
12991 GOMP_doacross_wait, GOMP_loop_ull_doacross_dynamic_start,
12992 GOMP_loop_ull_doacross_guided_start,
12993 GOMP_loop_ull_doacross_runtime_start,
12994 GOMP_loop_ull_doacross_static_start, GOMP_doacross_ull_post and
12995 GOMP_doacross_ull_wait.
12996 * libgomp.texi: Document omp_get_max_task_priority.
12997 Rename modifier argument to chunk_size for omp_set_schedule and
12998 omp_get_schedule. Document OMP_MAX_TASK_PRIORITY env var.
12999 * loop.c (GOMP_loop_runtime_start): Adjust for run_sched_modifier
13000 to run_sched_chunk_size renaming.
13001 (GOMP_loop_ordered_runtime_start): Likewise.
13002 (gomp_loop_doacross_static_start, gomp_loop_doacross_dynamic_start,
13003 gomp_loop_doacross_guided_start, GOMP_loop_doacross_runtime_start,
13004 GOMP_parallel_loop_runtime_start): New functions.
13005 (GOMP_parallel_loop_runtime): Adjust for run_sched_modifier
13006 to run_sched_chunk_size renaming.
13007 (GOMP_loop_doacross_static_start, GOMP_loop_doacross_dynamic_start,
13008 GOMP_loop_doacross_guided_start): New functions or aliases.
13009 * loop_ull.c (GOMP_loop_ull_runtime_start): Adjust for
13010 run_sched_modifier to run_sched_chunk_size renaming.
13011 (GOMP_loop_ull_ordered_runtime_start): Likewise.
13012 (gomp_loop_ull_doacross_static_start,
13013 gomp_loop_ull_doacross_dynamic_start,
13014 gomp_loop_ull_doacross_guided_start,
13015 GOMP_loop_ull_doacross_runtime_start): New functions.
13016 (GOMP_loop_ull_doacross_static_start,
13017 GOMP_loop_ull_doacross_dynamic_start,
13018 GOMP_loop_ull_doacross_guided_start): New functions or aliases.
13019 * oacc-mem.c (acc_map_data, present_create_copy,
13020 gomp_acc_insert_pointer): Pass GOMP_MAP_VARS_OPENACC instead of false
13021 to gomp_map_vars.
13022 (gomp_acc_remove_pointer): Use copy_from from target_var_desc.
13023 * oacc-parallel.c (GOACC_data_start): Pass GOMP_MAP_VARS_OPENACC
13024 instead of false to gomp_map_vars.
13025 (GOACC_parallel_keyed): Likewise. Use copy_from from target_var_desc.
13026 * omp.h.in (omp_lock_hint_t): New type.
13027 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
13028 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
13029 omp_get_place_num, omp_get_partition_num_places,
13030 omp_get_partition_place_nums, omp_get_initial_device,
13031 omp_get_max_task_priority, omp_target_alloc, omp_target_free,
13032 omp_target_is_present, omp_target_memcpy, omp_target_memcpy_rect,
13033 omp_target_associate_ptr, omp_target_disassociate_ptr): New
13034 prototypes.
13035 * omp_lib.f90.in (omp_lock_hint_kind): New parameter.
13036 (omp_lock_hint_none, omp_lock_hint_uncontended,
13037 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
13038 omp_lock_hint_speculative): New parameters.
13039 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
13040 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
13041 omp_get_place_num, omp_get_partition_num_places,
13042 omp_get_partition_place_nums, omp_get_initial_device,
13043 omp_get_max_task_priority): New interfaces.
13044 (omp_set_schedule, omp_get_schedule): Rename modifier argument
13045 to chunk_size.
13046 * omp_lib.h.in (omp_lock_hint_kind): New parameter.
13047 (omp_lock_hint_none, omp_lock_hint_uncontended,
13048 omp_lock_hint_contended, omp_lock_hint_nonspeculative,
13049 omp_lock_hint_speculative): New parameters.
13050 (omp_init_lock_with_hint, omp_init_nest_lock_with_hint,
13051 omp_get_num_places, omp_get_place_num_procs, omp_get_place_proc_ids,
13052 omp_get_place_num, omp_get_partition_num_places,
13053 omp_get_partition_place_nums, omp_get_initial_device,
13054 omp_get_max_task_priority): New functions and subroutines.
13055 * ordered.c: Include stdarg.h and string.h.
13056 (MAX_COLLAPSED_BITS): Define.
13057 (gomp_doacross_init, GOMP_doacross_post, GOMP_doacross_wait,
13058 gomp_doacross_ull_init, GOMP_doacross_ull_post,
13059 GOMP_doacross_ull_wait): New functions.
13060 * target.c: Include errno.h.
13061 (resolve_device): If device is not initialized, call
13062 gomp_init_device on it.
13063 (gomp_map_lookup): New function.
13064 (gomp_map_vars_existing): Add tgt_var argument, fill it in.
13065 Don't bump refcount if REFCOUNT_INFINITY. Handle
13066 GOMP_MAP_ALWAYS_TO_P.
13067 (get_kind): Rename is_openacc argument to short_mapkind.
13068 (gomp_map_pointer): Use gomp_map_lookup.
13069 (gomp_map_fields_existing): New function.
13070 (gomp_map_vars): Rename is_openacc argument to short_mapkind
13071 and is_target to pragma_kind. Handle GOMP_MAP_VARS_ENTER_DATA,
13072 handle GOMP_MAP_FIRSTPRIVATE_INT, GOMP_MAP_STRUCT,
13073 GOMP_MAP_USE_DEVICE_PTR, GOMP_MAP_ZERO_LEN_ARRAY_SECTION.
13074 Adjust for tgt->list changed type and copy_from living in there.
13075 (gomp_copy_from_async): Adjust for tgt->list changed type and
13076 copy_from living in there.
13077 (gomp_unmap_vars): Likewise.
13078 (gomp_update): Likewise. Rename is_openacc argument to
13079 short_mapkind. Don't fail if object is not mapped.
13080 (gomp_load_image_to_device): Initialize refcount to
13081 REFCOUNT_INFINITY.
13082 (gomp_target_fallback): New function.
13083 (gomp_get_target_fn_addr): Likewise.
13084 (GOMP_target): Adjust gomp_map_vars caller, use
13085 gomp_get_target_fn_addr and gomp_target_fallback.
13086 (GOMP_target_41): New function.
13087 (gomp_target_data_fallback): New function.
13088 (GOMP_target_data): Use it, adjust gomp_map_vars caller.
13089 (GOMP_target_data_41): New function.
13090 (GOMP_target_update): Adjust gomp_update caller.
13091 (GOMP_target_update_41): New function.
13092 (gomp_exit_data, GOMP_target_enter_exit_data,
13093 gomp_target_task_fn, omp_target_alloc, omp_target_free,
13094 omp_target_is_present, omp_target_memcpy,
13095 omp_target_memcpy_rect_worker, omp_target_memcpy_rect,
13096 omp_target_associate_ptr, omp_target_disassociate_ptr,
13097 gomp_load_plugin_for_device): New functions.
13098 * task.c: Include gomp-constants.h. Include taskloop.c
13099 twice to get GOMP_taskloop and GOMP_taskloop_ull definitions.
13100 (gomp_task_handle_depend): New function.
13101 (GOMP_task): Use it. Add priority argument. Use
13102 gomp-constant.h constants instead of hardcoded numbers.
13103 Rename GOMP_TASK_IFFALSE to GOMP_TASK_UNDEFERRED.
13104 (gomp_create_target_task): New function.
13105 (verify_children_queue, verify_taskgroup_queue,
13106 verify_task_queue): New functions.
13107 (gomp_task_run_pre): Call verify_*_queue functions.
13108 If an upcoming tied task is about to leave the sibling or
13109 taskgroup queues in an invalid state, adjust appropriately.
13110 Remove taskgroup argument. Add comments.
13111 (gomp_task_run_post_handle_dependers): Add comments.
13112 (gomp_task_run_post_remove_parent): Likewise.
13113 (gomp_barrier_handle_tasks): Adjust gomp_task_run_pre caller.
13114 (GOMP_taskwait): Likewise. Add comments.
13115 (gomp_task_maybe_wait_for_dependencies): Fix scheduling
13116 problem such that the first non parent_depends_on task does not
13117 end up at the end of the children queue.
13118 (GOMP_taskgroup_start): Rename GOMP_TASK_IFFALSE to
13119 GOMP_TASK_UNDEFERRED.
13120 (GOMP_taskgroup_end): Adjust gomp_task_run_pre caller.
13121 * taskloop.c: New file.
13122 * testsuite/lib/libgomp.exp
13123 (check_effective_target_offload_device_nonshared_as): New proc.
13124 * testsuite/libgomp.c/affinity-2.c: New test.
13125 * testsuite/libgomp.c/doacross-1.c: New test.
13126 * testsuite/libgomp.c/doacross-2.c: New test.
13127 * testsuite/libgomp.c/examples-4/declare_target-1.c (fib_wrapper):
13128 Add map clause to target.
13129 * testsuite/libgomp.c/examples-4/declare_target-4.c (accum): Likewise.
13130 * testsuite/libgomp.c/examples-4/declare_target-5.c (accum): Likewise.
13131 * testsuite/libgomp.c/examples-4/device-1.c (main): Likewise.
13132 * testsuite/libgomp.c/examples-4/device-3.c (main): Likewise.
13133 * testsuite/libgomp.c/examples-4/target_data-3.c (gramSchmidt):
13134 Likewise.
13135 * testsuite/libgomp.c/examples-4/teams-2.c (dotprod): Likewise.
13136 * testsuite/libgomp.c/examples-4/teams-3.c (dotprod): Likewise.
13137 * testsuite/libgomp.c/examples-4/teams-4.c (dotprod): Likewise.
13138 * testsuite/libgomp.c/for-2.h (OMPTGT, OMPTO, OMPFROM): Define if
13139 not defined. Use those where needed.
13140 * testsuite/libgomp.c/for-4.c: New test.
13141 * testsuite/libgomp.c/for-5.c: New test.
13142 * testsuite/libgomp.c/for-6.c: New test.
13143 * testsuite/libgomp.c/linear-1.c: New test.
13144 * testsuite/libgomp.c/ordered-4.c: New test.
13145 * testsuite/libgomp.c/pr66199-2.c (f2): Adjust for linear clause
13146 only allowed on the loop iterator.
13147 * testsuite/libgomp.c/pr66199-3.c: New test.
13148 * testsuite/libgomp.c/pr66199-4.c: New test.
13149 * testsuite/libgomp.c/reduction-7.c: New test.
13150 * testsuite/libgomp.c/reduction-8.c: New test.
13151 * testsuite/libgomp.c/reduction-9.c: New test.
13152 * testsuite/libgomp.c/reduction-10.c: New test.
13153 * testsuite/libgomp.c/target-1.c (fn2, fn3, fn4): Add
13154 map(tofrom:s).
13155 * testsuite/libgomp.c/target-2.c (fn2, fn3, fn4): Likewise.
13156 * testsuite/libgomp.c/target-7.c (foo): Add map(h) where needed.
13157 * testsuite/libgomp.c/target-11.c: New test.
13158 * testsuite/libgomp.c/target-12.c: New test.
13159 * testsuite/libgomp.c/target-13.c: New test.
13160 * testsuite/libgomp.c/target-14.c: New test.
13161 * testsuite/libgomp.c/target-15.c: New test.
13162 * testsuite/libgomp.c/target-16.c: New test.
13163 * testsuite/libgomp.c/target-17.c: New test.
13164 * testsuite/libgomp.c/target-18.c: New test.
13165 * testsuite/libgomp.c/target-19.c: New test.
13166 * testsuite/libgomp.c/target-20.c: New test.
13167 * testsuite/libgomp.c/target-21.c: New test.
13168 * testsuite/libgomp.c/target-22.c: New test.
13169 * testsuite/libgomp.c/target-23.c: New test.
13170 * testsuite/libgomp.c/target-24.c: New test.
13171 * testsuite/libgomp.c/target-25.c: New test.
13172 * testsuite/libgomp.c/target-26.c: New test.
13173 * testsuite/libgomp.c/target-27.c: New test.
13174 * testsuite/libgomp.c/taskloop-1.c: New test.
13175 * testsuite/libgomp.c/taskloop-2.c: New test.
13176 * testsuite/libgomp.c/taskloop-3.c: New test.
13177 * testsuite/libgomp.c/taskloop-4.c: New test.
13178 * testsuite/libgomp.c++/ctor-13.C: New test.
13179 * testsuite/libgomp.c++/doacross-1.C: New test.
13180 * testsuite/libgomp.c++/examples-4/declare_target-2.C:
13181 Replace offload_device with offload_device_nonshared_as.
13182 * testsuite/libgomp.c++/for-12.C: New test.
13183 * testsuite/libgomp.c++/for-13.C: New test.
13184 * testsuite/libgomp.c++/for-14.C: New test.
13185 * testsuite/libgomp.c++/linear-1.C: New test.
13186 * testsuite/libgomp.c++/member-1.C: New test.
13187 * testsuite/libgomp.c++/member-2.C: New test.
13188 * testsuite/libgomp.c++/member-3.C: New test.
13189 * testsuite/libgomp.c++/member-4.C: New test.
13190 * testsuite/libgomp.c++/member-5.C: New test.
13191 * testsuite/libgomp.c++/ordered-1.C: New test.
13192 * testsuite/libgomp.c++/reduction-5.C: New test.
13193 * testsuite/libgomp.c++/reduction-6.C: New test.
13194 * testsuite/libgomp.c++/reduction-7.C: New test.
13195 * testsuite/libgomp.c++/reduction-8.C: New test.
13196 * testsuite/libgomp.c++/reduction-9.C: New test.
13197 * testsuite/libgomp.c++/reduction-10.C: New test.
13198 * testsuite/libgomp.c++/reference-1.C: New test.
13199 * testsuite/libgomp.c++/simd14.C: New test.
13200 * testsuite/libgomp.c++/target-2.C (fn2): Add map(tofrom: s) clause.
13201 * testsuite/libgomp.c++/target-5.C: New test.
13202 * testsuite/libgomp.c++/target-6.C: New test.
13203 * testsuite/libgomp.c++/target-7.C: New test.
13204 * testsuite/libgomp.c++/target-8.C: New test.
13205 * testsuite/libgomp.c++/target-9.C: New test.
13206 * testsuite/libgomp.c++/target-10.C: New test.
13207 * testsuite/libgomp.c++/target-11.C: New test.
13208 * testsuite/libgomp.c++/target-12.C: New test.
13209 * testsuite/libgomp.c++/taskloop-1.C: New test.
13210 * testsuite/libgomp.c++/taskloop-2.C: New test.
13211 * testsuite/libgomp.c++/taskloop-3.C: New test.
13212 * testsuite/libgomp.c++/taskloop-4.C: New test.
13213 * testsuite/libgomp.c++/taskloop-5.C: New test.
13214 * testsuite/libgomp.c++/taskloop-6.C: New test.
13215 * testsuite/libgomp.c++/taskloop-7.C: New test.
13216 * testsuite/libgomp.c++/taskloop-8.C: New test.
13217 * testsuite/libgomp.c++/taskloop-9.C: New test.
13218 * testsuite/libgomp.fortran/affinity1.f90: New test.
13219 * testsuite/libgomp.fortran/affinity2.f90: New test.
13220
1f600fea
TV
132212015-10-13 Tom de Vries <tom@codesourcery.com>
13222
13223 PR tree-optimization/67476
13224 * testsuite/libgomp.c/autopar-3.c: New test.
13225 * testsuite/libgomp.c/autopar-4.c: New test.
13226 * testsuite/libgomp.c/autopar-5.c: New test.
13227 * testsuite/libgomp.c/autopar-6.c: New test.
13228 * testsuite/libgomp.c/autopar-7.c: New test.
13229 * testsuite/libgomp.c/autopar-8.c: New test.
13230
058a654b
JN
132312015-10-12 James Norris <jnorris@codesourcery.com>
13232
13233 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: Fix loop
13234 initializer.
13235
9e531d37
DM
132362015-10-09 David Malcolm <dmalcolm@redhat.com>
13237
13238 * testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp,
13239 using load_gcc_lib.
13240
113020dc
TS
132412015-10-02 Thomas Schwinge <thomas@codesourcery.com>
13242
13243 * oacc-ptx.h: Remove file, moving its content into...
13244 * config/nvptx/fortran.c: ... here...
13245 * config/nvptx/oacc-init.c: ..., here...
13246 * config/nvptx/oacc-parallel.c: ..., and here.
13247 * config/nvptx/openacc.f90: New file.
13248 * plugin/plugin-nvptx.c: Don't include "oacc-ptx.h".
13249 (link_ptx): Don't link in predefined bits of PTX code.
13250
cc3cd79b
NS
132512015-09-30 Nathan Sidwell <nathan@codesourcery.com>
13252 Bernd Schmidt <bernds@codesourcery.com>
13253
13254 * plugin/plugin-nvptx.c (targ_fn_launch): Use GOMP_DIM_MAX.
13255 (struct targ_ptx_obj): New.
13256 (nvptx_tdata): Move earlier, change data format.
13257 (link_ptx): Take targ_ptx_obj ptr and count. Allow multiple
13258 objects.
13259 (GOMP_OFFLOAD_load_image): Adjust.
13260
4e2a5450
TS
132612015-09-30 Thomas Schwinge <thomas@codesourcery.com>
13262
13263 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Add checkpoint.
13264 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
13265 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
13266 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
13267 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
13268 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
13269 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
13270 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
13271 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
13272 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
13273 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
13274 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
13275 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
13276 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
13277 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
13278 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
13279 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
13280 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
13281 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
13282 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
13283 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
13284 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
13285 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
13286 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
13287 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
13288 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
13289 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
13290 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
13291 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
13292 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
13293 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
13294 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
13295 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
13296 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
13297 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
13298 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
13299 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
13300 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
13301 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
13302 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
13303 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
13304 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
13305 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
13306 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
13307 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
13308 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
13309 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
13310 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
13311 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
13312 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
13313 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
13314 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
13315 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
13316 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
13317 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
13318 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
13319 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
13320 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
13321 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
13322 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
13323 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
13324 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
13325 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
13326
164453bb
NS
133272015-09-29 Nathan Sidwell <nathan@codesourcery.com>
13328
13329 * oacc-init.c (acc_on_device): Force optimization level.
13330
a12a0437
NS
133312015-09-29 Nathan Sidwell <nathan@codesourcery.com>
13332
13333 * plugin/plugin-nvptx.c (ARRAYSIZE): Delete.
13334 (cuda_errlist): Delete.
13335 (cuda_error): Reimplement.
13336
3e32ee19
NS
133372015-09-28 Nathan Sidwell <nathan@codesourcery.com>
13338
13339 * libgomp.h (acc_dispatch_t): Replace separate geometry args with
13340 array.
13341 * libgomp.map (GOACC_parallel_keyed): New.
13342 * oacc-parallel.c (goacc_wait): Take pointer to va_list. Adjust
13343 all callers.
13344 (GOACC_parallel_keyed): New interface. Lose geometry arguments
13345 and take keyed varargs list. Adjust call to exec_func.
13346 (GOACC_parallel): Force host fallback.
13347 * libgomp_g.h (GOACC_parallel): Remove.
13348 (GOACC_parallel_keyed): Declare.
13349 * plugin/plugin-nvptx.c (struct targ_fn_launch): New struct.
93d90219 13350 (struct targ_gn_descriptor): Replace name field with launch field.
3e32ee19
NS
13351 (nvptx_exec): Lose separate geometry args, take array. Process
13352 dynamic dimensions and adjust.
13353 (struct nvptx_tdata): Replace fn_names field with fn_descs.
13354 (GOMP_OFFLOAD_load_image): Adjust for change in function table
13355 data.
13356 (GOMP_OFFLOAD_openacc_parallel): Adjust for change in dimension
13357 passing.
13358 * oacc-host.c (host_openacc_exec): Adjust for change in dimension
13359 passing.
13360
6bb4c3e2
CLT
133612015-09-22 Chung-Lin Tang <cltang@codesourcery.com>
13362
13363 PR libgomp/67141
13364 * oacc-int.h (goacc_host_init): Add declaration.
13365 * oacc-host.c (goacc_host_init): Remove static and constructor attribute.
13366 * oacc-init.c (goacc_runtime_initialize): Call goacc_host_init() at end.
13367
74032f47 133682015-09-08 Aditya Kumar <hiraditya@msn.com>
34b18169 13369 Sebastian Pop <s.pop@samsung.com>
74032f47 13370
93d90219 13371 * testsuite/libgomp.graphite/bounds.c (int foo): Modified test case to
74032f47
AK
13372 match o/p.
13373 * testsuite/libgomp.graphite/force-parallel-1.c (void parloop): Same.
13374 * testsuite/libgomp.graphite/force-parallel-4.c: Same.
13375 * testsuite/libgomp.graphite/force-parallel-5.c: Same.
13376 * testsuite/libgomp.graphite/force-parallel-7.c: Same.
13377 * testsuite/libgomp.graphite/force-parallel-8.c: Same.
13378
97875f4a
JJ
133792015-09-03 Jakub Jelinek <jakub@redhat.com>
13380
13381 * configure.tgt: Add missing ;; in between nvptx and rtems
13382 snippets.
13383
06441dd5
SH
133842015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
13385
13386 * config/posix/pool.h (gomp_adjust_thread_attr): New.
13387 * config/rtems/pool.h (gomp_adjust_thread_attr): Likewise.
13388 (gomp_thread_pool_reservoir): Add priority member.
13389 * confi/rtems/proc.c (allocate_thread_pool_reservoir): Add
13390 priority.
13391 (parse_thread_pools): Likewise.
13392 * team.c (gomp_team_start): Call configuration provided
13393 gomp_adjust_thread_attr(). Destroy thread attributes if
13394 necessary.
13395 * libgomp.texi: Document GOMP_RTEMS_THREAD_POOLS.
13396
66c59f92
SH
133972015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
13398
13399 * config/posix/pool.h: New.
13400 * config/rtems/pool.h: Likewise.
13401 * config/rtems/proc.c: Likewise.
13402 * libgomp.h (gomp_thread_destructor): Declare.
13403 * team.c: Include configuration provided "pool.h".
13404 (gomp_get_thread_pool): Define in configuration.
13405 (gomp_team_end): Call configuration defined
13406 gomp_release_thread_pool().
13407
13c41b2e
SH
134082015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
13409
13410 * config/rtems/bar.c: New.
13411 * config/rtems/bar.h: Likewise.
13412 * config/rtems/mutex.c: Likewise.
13413 * config/rtems/mutex.h: Likewise.
13414 * config/rtems/sem.c: Likewise.
13415 * config/rtems/sem.h: Likewise.
13416 * configure.ac (*-*-rtems*): Check that Newlib provides a proper
13417 <sys/lock.h> header file.
13418 * configure.tgt (*-*-rtems*): Enable RTEMS configuration if
13419 supported by Newlib.
13420 * configure: Regenerate.
13421
7892ec67
SH
134222015-09-03 Sebastian Huber <sebastian.huber@embedded-brains.de>
13423
13424 * team.c (gomp_new_thread_pool): Delete and move content to ...
13425 (gomp_get_thread_pool): ... new function. Allocate and
13426 initialize thread pool on demand.
13427 (get_last_team): Use gomp_get_thread_pool().
13428 (gomp_team_start): Delete thread pool initialization.
13429
1b96e9a4
TV
134302015-09-03 Tom de Vries <tom@codesourcery.com>
13431
13432 PR tree-optimization/65637
13433 * testsuite/libgomp.c/autopar-2.c: New test.
13434
3ff2d74e
TV
134352015-08-29 Tom de Vries <tom@codesourcery.com>
13436
13437 PR tree-optimization/46193
13438 * testsuite/libgomp.c/pr46193.c: New test.
13439
2a21ff19
NS
134402015-08-24 Nathan Sidwell <nathan@codesourcery.com>
13441
13442 libgomp/
13443 * libgomp.map: Add 4.0.2 version.
13444 * target.c (offload_image_descr): Add version field.
13445 (gomp_load_image_to_device): Add version argument. Adjust plugin
13446 call. Improve load mismatch diagnostic.
13447 (gomp_unload_image_from_device): Add version argument. Adjust plugin
13448 call.
13449 (GOMP_offload_regster): Make stub function, move bulk to ...
13450 (GOMP_offload_register_ver): ... here. Process version argument.
13451 (GOMP_offload_unregister): Make stub function, move bulk to ...
13452 (GOMP_offload_unregister_ver): ... here. Process version argument.
13453 (gomp_init_device): Process version field.
13454 (gomp_unload_device): Process version field.
13455 (gomp_load_plugin_for_device): Reimplement DLSYM & DLSYM_OPT
13456 macros. Check plugin version.
13457 * libgomp.h (gomp_device_descr): Add version function field. Adjust
13458 loader and unloader types.
13459 * oacc-host.c: Include gomp-constants.h.
13460 (host_version): New.
13461 (host_load_image, host_unload_image): Adjust.
13462 (host_dispatch): Add host_version.
13463 * plugin/plugin-nvptx.c: Include gomp-constants.h.
13464 (GOMP_OFFLOAD_version): New.
13465 (GOMP_OFFLOAD_load_image): Add version arg and check it.
13466 (GOMP_OFFLOAD_unload_image): Likewise.
13467 * plugin/plugin-host.c: Include gomp-constants.h.
13468 (GOMP_OFFLOAD_version): New.
13469 (GOMP_OFFLOAD_load_image): Add version arg.
13470 (GOMP_OFFLOAD_unload_image): Likewise.
13471
1358a747
TV
134722015-08-24 Tom de Vries <tom@codesourcery.com>
13473
13474 PR tree-optimization/65468
13475 * testsuite/libgomp.oacc-c-c++-common/vector-loop.c: New test.
13476
6be5c241
TV
134772015-08-24 Tom de Vries <tom@codesourcery.com>
13478
13479 PR tree-optimization/65468
13480 * testsuite/libgomp.c/static-chunk-size-one.c: New test.
13481
bfe7ac89
JV
134822015-08-24 Joost VandeVondele <vondele@gnu.gcc.org>
13483
13484 PR libgomp/66761
13485 PR libgomp/67303
13486 * iter.c (gomp_iter_dynamic_next): Employ an atomic load.
13487 (gomp_iter_guided_next): Idem.
13488 * iter_ull.c (gomp_iter_ull_dynamic_next): Idem.
13489 (gomp_iter_ull_guided_next): Idem.
13490 * config/linux/wait.h (do_spin): Idem.
13491
b97e78b7
TS
134922015-08-10 Thomas Schwinge <thomas@codesourcery.com>
13493
13494 * libgomp-plugin.h (enum offload_target_type): Remove
13495 OFFLOAD_TARGET_TYPE_HOST_NONSHM.
13496 * openacc.f90 (openacc_kinds): Remove acc_device_host_nonshm.
13497 * openacc.h (enum acc_device_t): Likewise.
13498 * openacc_lib.h: Likewise.
13499 * oacc-init.c (name_of_acc_device_t): Don't handle it.
13500 (acc_on_device): Just use __builtin_acc_on_device.
13501 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Don't forbid usage
13502 of acc_on_device builtin.
13503 * plugin/plugin-host.h: Remove file.
13504 * plugin/plugin-host.c: Likewise, but salvage some content into...
13505 * oacc-host.c: ... this file.
13506 * plugin/Makefrag.am: Don't build libgomp-plugin-host_nonshm.la.
13507 * plugin/configfrag.ac (offload_targets): Don't add host_nonshm.
13508 * Makefile.in: Regenerate.
13509 * configure: Likewise.
13510 * testsuite/lib/libgomp.exp
13511 (check_effective_target_openacc_host_nonshm_selected): Remove.
13512 * testsuite/libgomp.oacc-c++/c++.exp: Don't handle
13513 ACC_DEVICE_TYPE=host_nonshm.
13514 * testsuite/libgomp.oacc-c/c.exp: Likewise.
13515 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
13516 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
13517 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
13518 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
13519 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
13520
44a7d18d
TS
135212015-08-10 Thomas Schwinge <thomas@codesourcery.com>
13522 Jakub Jelinek <jakub@redhat.com>
13523
13524 * config/nvptx/affinity.c: New file.
13525 * config/nvptx/alloc.c: Likewise.
13526 * config/nvptx/bar.c: Likewise.
13527 * config/nvptx/barrier.c: Likewise.
13528 * config/nvptx/critical.c: Likewise.
13529 * config/nvptx/env.c: Likewise.
13530 * config/nvptx/error.c: Likewise.
13531 * config/nvptx/fortran.c: Likewise.
13532 * config/nvptx/iter.c: Likewise.
13533 * config/nvptx/iter_ull.c: Likewise.
13534 * config/nvptx/libgomp-plugin.c: Likewise.
13535 * config/nvptx/lock.c: Likewise.
13536 * config/nvptx/loop.c: Likewise.
13537 * config/nvptx/loop_ull.c: Likewise.
13538 * config/nvptx/mutex.c: Likewise.
13539 * config/nvptx/oacc-async.c: Likewise.
13540 * config/nvptx/oacc-cuda.c: Likewise.
13541 * config/nvptx/oacc-host.c: Likewise.
13542 * config/nvptx/oacc-init.c: Likewise.
13543 * config/nvptx/oacc-mem.c: Likewise.
13544 * config/nvptx/oacc-parallel.c: Likewise.
13545 * config/nvptx/oacc-plugin.c: Likewise.
13546 * config/nvptx/omp-lock.h: Likewise.
13547 * config/nvptx/ordered.c: Likewise.
13548 * config/nvptx/parallel.c: Likewise.
13549 * config/nvptx/proc.c: Likewise.
13550 * config/nvptx/ptrlock.c: Likewise.
13551 * config/nvptx/sections.c: Likewise.
13552 * config/nvptx/sem.c: Likewise.
13553 * config/nvptx/single.c: Likewise.
13554 * config/nvptx/splay-tree.c: Likewise.
13555 * config/nvptx/target.c: Likewise.
13556 * config/nvptx/task.c: Likewise.
13557 * config/nvptx/team.c: Likewise.
13558 * config/nvptx/time.c: Likewise.
13559 * config/nvptx/work.c: Likewise.
13560 * configure.ac: Don't probe pthreads support for host nvptx*-*-*.
13561 * configure: Regenerate.
13562 * configure.tgt (config_path): Set to "nvptx" for target
13563 nvptx*-*-*.
13564
96a2d174
TS
135652015-08-10 Thomas Schwinge <thomas@codesourcery.com>
13566
13567 * testsuite/libgomp.oacc-c-c++-common/vector-type-1.c: New file.
13568
9ebddeb0
NS
135692015-08-03 Nathan Sidwell <nathan@codesourcery.com>
13570
13571 * plugin/plugin-nvptx.c: Don't include dlfcn.h.
13572 (cuda_errlist): Constify.
13573 (errmsg): Move into ...
13574 (cuda_error): ... here. Make smaller.
13575 (_XSTR, _STR): Delete.
13576 (cuda_synames): Delete.
13577 (verify_device_library): Delete.
13578 (nvptx_init): Don't call it.
13579
12efb1d7
TV
135802015-07-28 Tom de Vries <tom@codesourcery.com>
13581
13582 * testsuite/libgomp.c/uns-outer-4.c: New test.
13583
710ee218
CP
135842015-07-24 Cesar Philippidis <cesar@codesourcery.com>
13585
13586 * testsuite/libgomp.c/pr66714.c: New test.
13587
27c4ac7d
MB
135882015-07-22 Maxim Blumenthal <maxim.blumenthal@intel.com>
13589
13590 PR libgomp/66950
13591 * testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45.
13592 (fib_ref): New function.
13593 (fib): Correct corner cases in the recursion.
13594 (main): Replace the non-simd loop with fib_ref call.
13595 * testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New
13596 subroutine.
13597 (fibonacci): Lower the parameter N to 30. Correct accordingly check
13598 for the last array element value. Replace the non-simd loop with
13599 fib_ref call. Remove redundant b_ref array. Remove the comparison
13600 of the last array element with according Fibonacci sequence element.
13601 (fib): Correct corner cases in the recursion.
13602
22be2349
NS
136032015-07-21 Nathan Sidwell <nathan@codesourcery.com>
13604
13605 * target.c (gomp_offload_image_to_device): Rename to ...
13606 (gomp_load_image_to_device): ... here.
13607 (GOMP_offload_register): Adjust call.
13608 (gomp_init_device): Likewise.
13609 (gomp_unload_image_from_device): New. Broken out of ...
13610 (GOMP_offload_unregister): ... here. Call it.
13611 (gomp_unload_device): New.
13612 * libgomp.h (gomp_unload_device): Declare.
13613 * oacc-init.c (acc_shutdown_1): Unload from device before deleting
13614 mem maps.
13615
f3e9a059
NS
136162015-07-20 Nathan Sidwell <nathan@codesourcery.com>
13617
a091118d
NS
13618 * oacc-parallel.c (GOACC_parallel): Move variadic handling into
13619 wait=-specific if.
13620 (GOACC_enter_exit_data, GOACC_update): Use consistent num_waits
13621 !=0 condition.
13622 (goacc_waits): Move !num_waits handling to ...
13623 (GOACC_wait): ... here, the only caller that might have zero waits.
13624
f3e9a059
NS
13625 * plugin/plugin-nvptx.c (struct targ_fn_descriptor): Move later.
13626 (struct ptx_image_data): Move earlier, add fns field.
13627 (struct ptx_device): Add images and image_lock fields.
13628 (ptx_images, ptx_image_lock): Delete.
13629 (nvptx_open_device): Initialize images and image_lock fields.
13630 (nvptx_close_device): Destroy image_lock.
13631 (GOMP_OFFLOAD_load_image): Register image to device-specific fields.
13632 (GOMP_OFFLOAD_unload_image): Unregister image from device-specific
13633 fields.
13634
afb2d80b
NS
136352015-07-17 Nathan Sidwell <nathan@codesourcery.com>
13636
896c28a7
NS
13637 * target.c (GOMP_offload_register): Use int for device type arg.
13638 (GOMP_offload_unregister): Likewise.
13639
ebe4a560
NS
13640 * target.c (struct_offload_image_descr): Constify host_table.
13641 (gomp_offload_image_to_device): Likewise.
13642 (GOMP_offload_register, GOMP_offload_unregister): Likewise.
13643
afb2d80b
NS
13644 * libgomp.h (gomp_device_descr): Constify target data arguments.
13645 * target.c (struct offload_image_descr): Constify target_data.
13646 (gomp_offload_image_to_device): Likewise.
13647 (GOMP_offload_register): Likewise.
93d90219 13648 (GOMP_offload_unregister): Likewise.
afb2d80b
NS
13649 * plugin/plugin-host.c (GOMP_OFFLOAD_load_image,
13650 GOMP_OFFLOAD_unload_image): Constify target data.
13651 * plugin/plugin-nvptx.c (struct ptx_image_data): Constify target data.
13652 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): Likewise.
13653
a4cb876d
NS
136542015-07-16 Nathan Sidwell <nathan@codesourcery.com>
13655
13656 * plugin/plugin-nvptx.c (link_ptx): Constify string argument.
13657 Workaround driver library const error.
13658 (struct nvptx_tdata, nvptx_tdata_t): New.
13659 (GOMP_OFFLOAD_load_image): Use struct for target_data's real
13660 type.
13661
28ef6a27
MB
136622015-07-15 Maxim Blumenthal <maxim.blumenthal@intel.com>
13663
13664 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Change type
13665 of EPS parameter from integer to real.
13666 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: (check): Change
13667 type of EPS parameter from integer to real.
13668
6dba0113
SH
136692015-07-15 Sebastian Huber <sebastian.huber@embedded-brains.de>
13670
13671 * team.c (get_last_team): New.
13672 (gomp_new_team): Recycle last non-nested team if possible.
13673 (gomp_team_end): Move team work share list free lock destruction
13674 to ...
13675 (free_team): ... here.
13676
4c1cb4da
MB
136772015-07-14 Maxim Blumenthal <maxim.blumenthal@intel.com>
13678
13679 * testsuite/libgomp.c/examples-4/simd-3.c: (main): Change type of res
13680 and ref from int to double. Replaced their comparison with
13681 an inequality of their difference and EPS.
13682 * testsuite/libgomp.c/examples-4/simd-8.c: (main): Replace the
13683 comparison of pri and a reference number with an inequality of their
13684 difference and EPS.
13685 * testsuite/libgomp.fortran/examples-4/simd-3.f90: (main): Replaced
13686 the comparison of sum and sum_ref with an inequality of their
13687 difference and EPS.
13688 * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Replace
13689 the comparison of pri and a reference number with an inequality of
13690 their difference and EPS.
13691
343587dc
MB
136922015-07-13 Maxim Blumenthal <maxim.blumenthal@intel.com>
13693
13694 * testsuite/libgomp.c++/examples-4/e.53.2.C: Renamed to...
13695 * testsuite/libgomp.c++/examples-4/declare_target-2.C: ...this.
13696 * testsuite/libgomp.c++/examples-4/e.51.5.C: Renamed to...
13697 * testsuite/libgomp.c++/examples-4/target_data-5.C: ...this.
13698 * testsuite/libgomp.c/examples-4/e.56.3.c: Renamed to...
13699 * testsuite/libgomp.c/examples-4/array_sections-3.c: ...this.
13700 * testsuite/libgomp.c/examples-4/e.56.4.c: Renamed to...
13701 * testsuite/libgomp.c/examples-4/array_sections-4.c: ...this.
13702 * testsuite/libgomp.c/examples-4/e.55.1.c: Renamed to...
13703 * testsuite/libgomp.c/examples-4/async_target-1.c: ...this.
13704 * testsuite/libgomp.c/examples-4/e.55.2.c: Renamed to...
13705 * testsuite/libgomp.c/examples-4/async_target-2.c: ...this.
13706 (vec_mult_ref): Remove v1 and v2 arguments, turn them into local
13707 variables.
13708 (vec_mult): Likewise. Add #pragma omp taskwait.
13709 (main): Adjust caller.
13710 * testsuite/libgomp.c/examples-4/e.53.1.c: Renamed to...
13711 * testsuite/libgomp.c/examples-4/declare_target-1.c: ...this.
13712 * testsuite/libgomp.c/examples-4/e.53.3.c: Renamed to...
13713 * testsuite/libgomp.c/examples-4/declare_target-3.c: ...this.
13714 * testsuite/libgomp.c/examples-4/e.53.4.c: Renamed to...
13715 * testsuite/libgomp.c/examples-4/declare_target-4.c: ...this.
13716 * testsuite/libgomp.c/examples-4/e.53.5.c: Renamed to...
13717 * testsuite/libgomp.c/examples-4/declare_target-5.c: ...this.
13718 * testsuite/libgomp.c/examples-4/e.57.1.c: Renamed to...
13719 * testsuite/libgomp.c/examples-4/device-1.c: ...this.
13720 * testsuite/libgomp.c/examples-4/e.57.2.c: Renamed to...
13721 * testsuite/libgomp.c/examples-4/device-2.c: ...this.
13722 * testsuite/libgomp.c/examples-4/e.57.3.c: Renamed to...
13723 * testsuite/libgomp.c/examples-4/device-3.c: ...this.
13724 * testsuite/libgomp.c/examples-4/simd-1.c: New file.
13725 * testsuite/libgomp.c/examples-4/simd-2.c: New file.
13726 * testsuite/libgomp.c/examples-4/simd-3.c: New file.
13727 * testsuite/libgomp.c/examples-4/simd-4.c: New file.
13728 * testsuite/libgomp.c/examples-4/simd-5.c: New file.
13729 * testsuite/libgomp.c/examples-4/simd-6.c: New file.
13730 * testsuite/libgomp.c/examples-4/simd-7.c: New file.
13731 * testsuite/libgomp.c/examples-4/simd-8.c: New file.
13732 * testsuite/libgomp.c/examples-4/e.50.1.c: Renamed to...
13733 * testsuite/libgomp.c/examples-4/target-1.c: ...this.
13734 * testsuite/libgomp.c/examples-4/e.50.2.c: Renamed to...
13735 * testsuite/libgomp.c/examples-4/target-2.c: ...this.
13736 * testsuite/libgomp.c/examples-4/e.50.3.c: Renamed to...
13737 * testsuite/libgomp.c/examples-4/target-3.c: ...this.
13738 * testsuite/libgomp.c/examples-4/e.50.4.c: Renamed to...
13739 * testsuite/libgomp.c/examples-4/target-4.c: ...this.
13740 * testsuite/libgomp.c/examples-4/e.50.5.c: Renamed to...
13741 * testsuite/libgomp.c/examples-4/target-5.c: ...this.
13742 * testsuite/libgomp.c/examples-4/e.51.1.c: Renamed to...
13743 * testsuite/libgomp.c/examples-4/target_data-1.c: ...this.
13744 * testsuite/libgomp.c/examples-4/e.51.2.c: Renamed to...
13745 * testsuite/libgomp.c/examples-4/target_data-2.c: ...this.
13746 * testsuite/libgomp.c/examples-4/e.51.3.c: Renamed to...
13747 * testsuite/libgomp.c/examples-4/target_data-3.c: ...this.
13748 * testsuite/libgomp.c/examples-4/e.51.4.c: Renamed to...
13749 * testsuite/libgomp.c/examples-4/target_data-4.c: ...this.
13750 * testsuite/libgomp.c/examples-4/e.51.6.c: Renamed to...
13751 * testsuite/libgomp.c/examples-4/target_data-6.c: ...this.
13752 * testsuite/libgomp.c/examples-4/e.51.7.c: Renamed to...
13753 * testsuite/libgomp.c/examples-4/target_data-7.c: ...this.
13754 * testsuite/libgomp.c/examples-4/e.52.1.c: Renamed to...
13755 * testsuite/libgomp.c/examples-4/target_update-1.c: ...this.
13756 * testsuite/libgomp.c/examples-4/e.52.2.c: Renamed to...
13757 * testsuite/libgomp.c/examples-4/target_update-2.c: ...this.
13758 * testsuite/libgomp.c/examples-4/task_dep-1.c: New file.
13759 * testsuite/libgomp.c/examples-4/task_dep-2.c: New file.
13760 * testsuite/libgomp.c/examples-4/task_dep-3.c: New file.
13761 * testsuite/libgomp.c/examples-4/task_dep-4.c: New file.
13762 * testsuite/libgomp.c/examples-4/task_dep-5.c: New file.
13763 * testsuite/libgomp.c/examples-4/e.54.2.c: Renamed to...
13764 * testsuite/libgomp.c/examples-4/teams-2.c: ...this.
13765 * testsuite/libgomp.c/examples-4/e.54.3.c: Renamed to...
13766 * testsuite/libgomp.c/examples-4/teams-3.c: ...this.
13767 * testsuite/libgomp.c/examples-4/e.54.4.c: Renamed to...
13768 * testsuite/libgomp.c/examples-4/teams-4.c: ...this.
13769 * testsuite/libgomp.c/examples-4/e.54.5.c: Renamed to...
13770 * testsuite/libgomp.c/examples-4/teams-5.c: ...this.
13771 * testsuite/libgomp.c/examples-4/e.54.6.c: Renamed to...
13772 * testsuite/libgomp.c/examples-4/teams-6.c: ...this.
13773 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Renamed to...
13774 * testsuite/libgomp.fortran/examples-4/array_sections-3.f90: ...this.
13775 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Renamed to...
13776 * testsuite/libgomp.fortran/examples-4/array_sections-4.f90: ...this.
13777 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Renamed to...
13778 * testsuite/libgomp.fortran/examples-4/async_target-1.f90: ...this.
13779 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Renamed to...
13780 * testsuite/libgomp.fortran/examples-4/async_target-2.f90: ...this.
13781 (vec_mult): Add !$omp taskwait.
13782 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Renamed to...
13783 * testsuite/libgomp.fortran/examples-4/declare_target-1.f90: ...this.
13784 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Renamed to...
13785 * testsuite/libgomp.fortran/examples-4/declare_target-2.f90: ...this.
13786 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Renamed to...
13787 * testsuite/libgomp.fortran/examples-4/declare_target-3.f90: ...this.
13788 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Renamed to...
13789 * testsuite/libgomp.fortran/examples-4/declare_target-4.f90: ...this.
13790 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Renamed to...
13791 * testsuite/libgomp.fortran/examples-4/declare_target-5.f90: ...this.
13792 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Renamed to...
13793 * testsuite/libgomp.fortran/examples-4/device-1.f90: ...this.
13794 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Renamed to...
13795 * testsuite/libgomp.fortran/examples-4/device-2.f90: ...this.
13796 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Renamed to...
13797 * testsuite/libgomp.fortran/examples-4/device-3.f90: ...this.
13798 * testsuite/libgomp.fortran/examples-4/simd-1.f90: New file.
13799 * testsuite/libgomp.fortran/examples-4/simd-2.f90: New file.
13800 * testsuite/libgomp.fortran/examples-4/simd-3.f90: New file.
13801 * testsuite/libgomp.fortran/examples-4/simd-4.f90: New file.
13802 * testsuite/libgomp.fortran/examples-4/simd-5.f90: New file.
13803 * testsuite/libgomp.fortran/examples-4/simd-6.f90: New file.
13804 * testsuite/libgomp.fortran/examples-4/simd-7.f90: New file.
13805 * testsuite/libgomp.fortran/examples-4/simd-8.f90: New file.
13806 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: Renamed to...
13807 * testsuite/libgomp.fortran/examples-4/target-1.f90: ...this.
13808 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Renamed to...
13809 * testsuite/libgomp.fortran/examples-4/target-2.f90: ...this.
13810 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Renamed to...
13811 * testsuite/libgomp.fortran/examples-4/target-3.f90: ...this.
13812 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Renamed to...
13813 * testsuite/libgomp.fortran/examples-4/target-4.f90: ...this.
13814 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Renamed to...
13815 * testsuite/libgomp.fortran/examples-4/target-5.f90: ...this.
13816 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Renamed to...
13817 * testsuite/libgomp.fortran/examples-4/target_data-1.f90: ...this.
13818 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Renamed to...
13819 * testsuite/libgomp.fortran/examples-4/target_data-2.f90: ...this.
13820 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Renamed to...
13821 * testsuite/libgomp.fortran/examples-4/target_data-3.f90: ...this.
13822 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Renamed to...
13823 * testsuite/libgomp.fortran/examples-4/target_data-4.f90: ...this.
13824 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Renamed to...
13825 * testsuite/libgomp.fortran/examples-4/target_data-5.f90: ...this.
13826 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Renamed to...
13827 * testsuite/libgomp.fortran/examples-4/target_data-6.f90: ...this.
13828 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Renamed to...
13829 * testsuite/libgomp.fortran/examples-4/target_data-7.f90: ...this.
13830 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Renamed to...
13831 * testsuite/libgomp.fortran/examples-4/target_update-1.f90: ...this.
13832 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Renamed to...
13833 * testsuite/libgomp.fortran/examples-4/target_update-2.f90: ...this.
13834 * testsuite/libgomp.fortran/examples-4/task_dep-1.f90: New file.
13835 * testsuite/libgomp.fortran/examples-4/task_dep-2.f90: New file.
13836 * testsuite/libgomp.fortran/examples-4/task_dep-3.f90: New file.
13837 * testsuite/libgomp.fortran/examples-4/task_dep-4.f90: New file.
13838 * testsuite/libgomp.fortran/examples-4/task_dep-5.f90: New file.
13839 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Renamed to...
13840 * testsuite/libgomp.fortran/examples-4/teams-2.f90: ...this.
13841 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Renamed to...
13842 * testsuite/libgomp.fortran/examples-4/teams-3.f90: ...this.
13843 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Renamed to...
13844 * testsuite/libgomp.fortran/examples-4/teams-4.f90: ...this.
13845 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Renamed to...
13846 * testsuite/libgomp.fortran/examples-4/teams-5.f90: ...this.
13847 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Renamed to...
13848 * testsuite/libgomp.fortran/examples-4/teams-6.f90: ...this.
13849
9f620bf1
TV
138502015-07-10 Tom de Vries <tom@codesourcery.com>
13851
13852 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: New test.
13853 * testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: New test.
13854
a92defda
TS
138552015-07-08 Thomas Schwinge <thomas@codesourcery.com>
13856
13857 PR libgomp/65099
13858 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return 0 if not
13859 in a 64-bit configuration.
13860 * testsuite/libgomp.oacc-c++/c++.exp: Don't attempt nvidia
13861 offloading testing if no such device is available.
13862 * testsuite/libgomp.oacc-c/c.exp: Likewise.
13863 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
13864
cadb53a5
TV
138652015-07-08 Tom de Vries <tom@codesourcery.com>
13866
13867 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Fix
13868 second call to f.
13869 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
13870
712cb0bb
TV
138712015-07-07 Tom de Vries <tom@codesourcery.com>
13872
13873 PR tree-optimization/66642
13874 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Test low
13875 iteration count case.
13876 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c (init): New
13877 function, factor out of ...
13878 (main): ... here. Test low iteration count case.
13879
e5210c77
SH
138802015-07-06 Sebastian Huber <sebastian.huber@embedded-brains.de>
13881
13882 * libgomp.h (gomp_thread_pool): Comment last_team field.
13883
f70360e7
UB
138842015-07-02 Uros Bizjak <ubizjak@gmail.com>
13885
13886 * testsuite/libgomp.c++/pr66702-1.C: Require
13887 vect_simd_clones effective target.
13888 * testsuite/libgomp.c++/pr66702-2.C: Ditto.
13889
b451c271
TV
138902015-06-30 Tom de Vries <tom@codesourcery.com>
13891
13892 * testsuite/libgomp.oacc-c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
13893 already set. Use DEFAULT_CFLAGS in dg-runtest.
13894 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Remove dg-options
13895 "-O2".
13896
f8e89d9f
TV
138972015-06-30 Tom de Vries <tom@codesourcery.com>
13898
13899 * testsuite/libgomp.c++/c++.exp: Set DEFAULT_CFLAGS to -O2 if not
13900 already set. Use DEFAULT_CFLAGS in dg-runtest.
13901 * testsuite/libgomp.c++/atomic-16.C: Remove dg-options "-O2 -fopenmp".
13902 * testsuite/libgomp.c++/pr64824.C: Same.
13903 * testsuite/libgomp.c++/pr64868.C: Same.
13904 * testsuite/libgomp.c++/pr66199-1.C: Same.
13905 * testsuite/libgomp.c++/pr66199-2.C: Same.
13906 * testsuite/libgomp.c++/target-2.C: Same.
13907 * testsuite/libgomp.c++/for-7.C: Use dg-additional-options for
13908 -std=<standard> option.
13909 * testsuite/libgomp.c++/udr-11.C: Same.
13910 * testsuite/libgomp.c++/udr-12.C: Same.
13911 * testsuite/libgomp.c++/udr-13.C: Same.
13912 * testsuite/libgomp.c++/udr-14.C: Same.
13913 * testsuite/libgomp.c++/udr-15.C: Same.
13914 * testsuite/libgomp.c++/udr-16.C: Same.
13915 * testsuite/libgomp.c++/udr-17.C: Same.
13916 * testsuite/libgomp.c++/udr-18.C: Same.
13917 * testsuite/libgomp.c++/udr-19.C: Same.
13918 * testsuite/libgomp.c++/atomic-1.C: Remove dg-options "-O2".
13919 * testsuite/libgomp.c++/simd-1.C: Same.
13920 * testsuite/libgomp.c++/simd-2.C: Same.
13921 * testsuite/libgomp.c++/simd-3.C: Same.
13922 * testsuite/libgomp.c++/simd-4.C: Same.
13923 * testsuite/libgomp.c++/simd-5.C: Same.
13924 * testsuite/libgomp.c++/simd-6.C: Same.
13925 * testsuite/libgomp.c++/simd-7.C: Same.
13926 * testsuite/libgomp.c++/simd-8.C: Same.
13927 * testsuite/libgomp.c++/simd-9.C: Same.
13928 * testsuite/libgomp.c++/simd10.C: Same.
13929 * testsuite/libgomp.c++/simd11.C: Same.
13930 * testsuite/libgomp.c++/simd12.C: Same.
13931 * testsuite/libgomp.c++/simd13.C: Same.
13932
3446fe48
JJ
139332015-06-30 Jakub Jelinek <jakub@redhat.com>
13934
13935 PR middle-end/66702
13936 * testsuite/libgomp.c++/pr66702-1.C: New test.
13937 * testsuite/libgomp.c++/pr66702-2.C: New test.
13938
8a36714a
TV
139392015-06-30 Tom de Vries <tom@codesourcery.com>
13940
13941 * testsuite/libgomp.c/parloops-exit-first-loop-alt-5.c: New test.
13942 * testsuite/libgomp.c/parloops-exit-first-loop-alt-6.c: New test.
13943 * testsuite/libgomp.c/parloops-exit-first-loop-alt-7.c: New test.
13944 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Update comment.
13945
4f75d608
TV
139462015-06-30 Tom de Vries <tom@codesourcery.com>
13947
13948 PR tree-optimization/66652
13949 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (f): Rewrite
13950 using restrict pointers.
13951 (main): Add arguments to calls to f.
13952 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
13953
6d9d1eeb
AT
139542015-06-23 Andreas Tobler <andreast@gcc.gnu.org>
13955
13956 * configure.ac: Fix check for header <sys/sysctl.h>.
13957 * configure: Regenerate.
13958 * config.h.in: Likewise.
13959
1222f22b
TV
139602015-06-23 Tom de Vries <tom@codesourcery.com>
13961
13962 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Use
13963 abort.
13964 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c (main): Same.
13965
d7efbbf6
TS
139662015-06-19 Thomas Schwinge <thomas@codesourcery.com>
13967
bfcd036f
TS
13968 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Only consider for
13969 acc_device_nvidia.
13970
d7efbbf6
TS
13971 PR libgomp/66518
13972 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: XFAIL.
13973 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
13974
d7bfc710
TV
139752015-06-15 Tom de Vries <tom@codesourcery.com>
13976
13977 * testsuite/libgomp.c/atomic-1.c: Remove dg-options "-O2". Use
13978 dg-additional-options for any remaining options.
13979 * testsuite/libgomp.c/atomic-2.c: Same.
13980 * testsuite/libgomp.c/atomic-4.c: Same.
13981 * testsuite/libgomp.c/atomic-5.c: Same.
13982 * testsuite/libgomp.c/atomic-6.c: Same.
13983 * testsuite/libgomp.c/autopar-1.c: Same.
13984 * testsuite/libgomp.c/copyin-1.c: Same.
13985 * testsuite/libgomp.c/copyin-2.c: Same.
13986 * testsuite/libgomp.c/copyin-3.c: Same.
13987 * testsuite/libgomp.c/examples-4/e.53.5.c: Same.
13988 * testsuite/libgomp.c/nestedfn-5.c: Same.
13989 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Same.
13990 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Same.
13991 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: Same.
13992 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
13993 * testsuite/libgomp.c/pr32362-1.c: Same.
13994 * testsuite/libgomp.c/pr32362-2.c: Same.
13995 * testsuite/libgomp.c/pr32362-3.c: Same.
13996 * testsuite/libgomp.c/pr39591-1.c: Same.
13997 * testsuite/libgomp.c/pr39591-2.c: Same.
13998 * testsuite/libgomp.c/pr39591-3.c: Same.
13999 * testsuite/libgomp.c/pr58392.c: Same.
14000 * testsuite/libgomp.c/pr58756.c: Same.
14001 * testsuite/libgomp.c/simd-1.c: Same.
14002 * testsuite/libgomp.c/simd-10.c: Same.
14003 * testsuite/libgomp.c/simd-11.c: Same.
14004 * testsuite/libgomp.c/simd-12.c: Same.
14005 * testsuite/libgomp.c/simd-13.c: Same.
14006 * testsuite/libgomp.c/simd-14.c: Same.
14007 * testsuite/libgomp.c/simd-15.c: Same.
14008 * testsuite/libgomp.c/simd-2.c: Same.
14009 * testsuite/libgomp.c/simd-3.c: Same.
14010 * testsuite/libgomp.c/simd-4.c: Same.
14011 * testsuite/libgomp.c/simd-5.c: Same.
14012 * testsuite/libgomp.c/simd-6.c: Same.
14013 * testsuite/libgomp.c/simd-7.c: Same.
14014 * testsuite/libgomp.c/simd-8.c: Same.
14015 * testsuite/libgomp.c/simd-9.c: Same.
14016
fb5b5352
TV
140172015-06-15 Tom de Vries <tom@codesourcery.com>
14018
14019 * testsuite/libgomp.c/pr35625.c: Fix typo.
14020
ca431bef
TV
140212015-06-15 Tom de Vries <tom@codesourcery.com>
14022
14023 * testsuite/libgomp.c/atomic-18.c: Remove superfluous -fopenmp setting
14024 in dg-options.
14025 * testsuite/libgomp.c/atomic-3.c: Same.
14026 * testsuite/libgomp.c/debug-1.c: Same.
14027 * testsuite/libgomp.c/nqueens-1.c: Same.
14028 * testsuite/libgomp.c/pr26171.c: Same.
14029 * testsuite/libgomp.c/pr48591.c: Same.
14030 * testsuite/libgomp.c/pr64824.c: Same.
14031 * testsuite/libgomp.c/pr64868.c: Same.
14032 * testsuite/libgomp.c/pr66133.c: Same.
14033 * testsuite/libgomp.c/pr66199-1.c: Same.
14034 * testsuite/libgomp.c/pr66199-2.c: Same.
14035 * testsuite/libgomp.c/target-8.c: Same.
14036
0d8a9e20
TV
140372015-06-15 Tom de Vries <tom@codesourcery.com>
14038
14039 * testsuite/libgomp.c/collapse-3.c: Use dg-additional-options for
14040 -std={gnu99,c99}.
14041 * testsuite/libgomp.c/for-1.c: Same.
14042 * testsuite/libgomp.c/for-2.c: Same.
14043 * testsuite/libgomp.c/for-3.c: Same.
14044 * testsuite/libgomp.c/pr35625.c: Same.
14045 * testsuite/libgomp.c/pr39154.c: Same.
14046 * testsuite/libgomp.c/simd-16.c: Same.
14047 * testsuite/libgomp.c/simd-17.c: Same.
14048
a6860be9
TV
140492015-06-13 Tom de Vries <tom@codesourcery.com>
14050
14051 * testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c: New test.
14052
ab3306d2
TV
140532015-06-13 Tom de Vries <tom@codesourcery.com>
14054
14055 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: Add comment.
14056 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: Same.
14057 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: Add comment.
14058 (N): Define.
14059 (main): Use N instead of hardcoded constants.
14060
7c82d827
TV
140612015-06-05 Tom de Vries <tom@codesourcery.com>
14062
14063 merge from gomp4 branch:
14064 2015-05-28 Tom de Vries <tom@codesourcery.com>
14065
14066 PR tree-optimization/65443
14067 * testsuite/libgomp.c/parloops-exit-first-loop-alt-2.c: New test.
14068 * testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c: New test.
14069 * testsuite/libgomp.c/parloops-exit-first-loop-alt.c: New test.
14070
c469078d
BRF
140712015-05-29 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
14072
14073 * testsuite/libgomp.graphite/bounds.c: Adjust for
14074 cleanup-tree-dump removal.
14075 * testsuite/libgomp.graphite/force-parallel-1.c: Likewise.
14076 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
14077 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
14078 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
14079 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
14080 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
14081 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
14082 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
14083 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
14084 * testsuite/libgomp.graphite/pr41118.c: Likewise.
14085
bb3caa35
UB
140862015-05-28 Uros Bizjak <ubizjak@gmail.com>
14087
14088 * config/linux/x86/futex.h (sys_futex0) [!__x86_64__]: Remove function.
14089 (futex_wait) [!__x86_64__]: Use __asm operand instead of sys_futex0.
14090 (futex_wake) [!__x86_64__]: Ditto.
14091
9fb5fd44
JB
140922015-05-28 Julian Brown <julian@codesourcery.com>
14093
14094 * oacc-init.c (resolve_device): Add FAIL_IS_ERROR argument. Update
14095 function comment. Only call gomp_fatal if new argument is true.
14096 (acc_dev_num_out_of_range): New function.
14097 (acc_init_1, acc_shutdown_1): Update call to resolve_device. Call
14098 acc_dev_num_out_of_range as appropriate.
14099 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
bb3caa35
UB
14100 (acc_get_device_num, acc_set_device_num): Update calls to
14101 resolve_device.
9fb5fd44
JB
14102 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Update expected test
14103 output.
14104
32eaed93
JB
141052015-05-28 Julian Brown <julian@codesourcery.com>
14106
14107 PR libgomp/65742
32eaed93
JB
14108 * oacc-init.c (plugin/plugin-host.h): Include.
14109 (acc_on_device): Check whether we're in an offloaded region for
14110 host_nonshm
14111 plugin. Don't use __builtin_acc_on_device.
14112 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_parallel): Set
14113 nonshm_exec flag in thread-local data.
14114 (GOMP_OFFLOAD_openacc_create_thread_data): Allocate thread-local
14115 data for host_nonshm plugin.
14116 (GOMP_OFFLOAD_openacc_destroy_thread_data): Free thread-local data
14117 for host_nonshm plugin.
14118 * plugin/plugin-host.h: New.
14119
ea023bcf
UB
141202015-05-27 Uros Bizjak <ubizjak@gmail.com>
14121
8ed501f1
UB
14122 * config/linux/ia64/futex.h (sys_futex0) Change operand "op" to int.
14123
141242015-05-27 Uros Bizjak <ubizjak@gmail.com>
14125
14126 * config/linux/wait.h (gomp_futex_wait, gomp_futex_wake):
14127 Declare as int.
14128 (FUTEX_PRIVATE_FLAG): Remove L suffix.
14129 * config/linux/mutex.c (gomp_futex_wait, gomp_futex_wake):
14130 Declare as int.
14131
141322015-05-27 Uros Bizjak <ubizjak@gmail.com>
14133
bb3caa35 14134 * config/linux/x86/futex.h (sys_futex0) [__PIC__]: Remove function.
ea023bcf 14135
1716efeb
CLT
141362015-05-27 Chung-Lin Tang <cltang@codesourcery.com>
14137
14138 * target.c (gomp_map_pointer): New function abstracting out
14139 GOMP_MAP_POINTER handling.
14140 (gomp_map_vars): Remove GOMP_MAP_POINTER handling code and use
14141 gomp_map_pointer().
14142
41b37d5e
JJ
141432015-05-19 Jakub Jelinek <jakub@redhat.com>
14144
14145 PR middle-end/66199
14146 * testsuite/libgomp.c/pr66199-1.c: New test.
14147 * testsuite/libgomp.c/pr66199-2.c: New test.
14148 * testsuite/libgomp.c++/pr66199-1.C: New test.
14149 * testsuite/libgomp.c++/pr66199-2.C: New test.
14150 * testsuite/libgomp.fortran/pr66199-1.f90: New test.
14151 * testsuite/libgomp.fortran/pr66199-2.f90: New test.
14152
c8319826
JB
141532015-05-19 Julian Brown <julian@codesourcery.com>
14154
14155 * plugin/plugin-nvptx.c (nvptx_get_num_devices): Return zero
14156 on cuInit failure.
14157
b37dddbc
JJ
141582015-05-13 Jakub Jelinek <jakub@redhat.com>
14159
14160 PR middle-end/66133
14161 * testsuite/libgomp.c/pr66133.c: New test.
14162
55fba601
MH
141632015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
14164
14165 * Makefile.in: Regenerated with automake-1.11.6.
14166 * aclocal.m4: Likewise.
14167 * config.h.in: Likewise.
14168 * configure: Likewise.
14169 * testsuite/Makefile.in: Likewise.
14170
1be0899d
JM
141712015-05-08 Jason Merrill <jason@redhat.com>
14172
14173 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c (main): Use
14174 _Complex.
14175
14176 * openacc.h (__GOACC_NOTHROW): Fix noexcept syntax.
14177
d2463960
JB
141782015-05-06 Julian Brown <julian@codesourcery.com>
14179
14180 * oacc-init.c (acc_device_lock): Add explanatory comment.
14181 (resolve_device): Add comment about locking requirement.
14182 (acc_init_1, acc_shutdown_1): Likewise. Add locking around
14183 gomp_init_device and gomp_fini_device calls.
14184 (acc_get_num_devices, acc_set_device_type, acc_get_device_type)
14185 (acc_get_device_num, acc_set_device_num): Add locking around
14186 resolve_device and gomp_init_device calls.
14187
e38fdba4
JB
141882015-05-06 Julian Brown <julian@codesourcery.com>
14189
14190 * oacc-init.c (acc_shutdown_1): Call gomp_mutex_unlock for
14191 goacc_thread_lock on error paths.
14192 * oacc-mem.c (lookup_host): Remove locking from function. Note
14193 locking requirement for caller in function comment.
14194 (lookup_dev): Likewise.
14195 (acc_free, acc_deviceptr, acc_hostptr, acc_is_present)
14196 (acc_map_data, acc_unmap_data, present_create_copy, delete_copyout)
14197 (update_dev_host, gomp_acc_insert_pointer, gomp_acc_remove_pointer):
14198 Add locking.
14199
ae8ffbbb
TS
142002015-05-05 Thomas Schwinge <thomas@codesourcery.com>
14201
14202 PR testsuite/65205
14203 PR libgomp/65993
14204 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: In dg-output,
14205 don't expect "0x" prefix for "%p" format specifier, don't expect
14206 "(nil)" for NULL pointer.
14207 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
14208 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
14209 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
14210 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
14211 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
14212 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
14213 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
14214 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
14215 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
14216 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
14217 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
14218 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
14219 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
14220 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
14221 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
14222 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
14223 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
14224 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
14225 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
14226 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
14227 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
14228 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
14229 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
14230 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
14231 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
14232 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
14233 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
14234 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
14235 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: More
14236 accurately specify what we're looking for.
14237 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
14238 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
14239 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
14240 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
14241 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
14242
1309f1d2
JN
142432015-04-30 James Norris <jnorris@codesourcery.com>
14244
14245 PR testsuite/65205
14246 * testsuite/lib/libgomp.exp
14247 (check_effective_target_openacc_host_selected)
14248 (check_effective_target_openacc_host_nonshm_selected): New
14249 procedures.
14250 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Fix misuse of
14251 dg-shouldfail.
14252 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
14253 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
14254 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
14255 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
14256 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
14257 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
14258 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
14259 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
14260 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
14261 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
14262 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
14263 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
14264 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
14265 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
14266 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
14267 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
14268 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
14269 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
14270 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
14271 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
14272 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
14273 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
14274 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
14275 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
14276 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
14277 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
14278 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
14279 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
14280 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
14281 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
14282 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
14283 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
14284 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
14285 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
14286 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
14287 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
14288 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
14289 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
14290 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
14291 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
14292 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
14293 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
14294 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
14295
d93bdab5
JB
142962015-04-08 Julian Brown <julian@codesourcery.com>
14297
14298 * libgomp.h (target_mem_desc: Remove mem_map field.
14299 (acc_dispatch_t): Remove open_device_func, close_device_func,
14300 get_device_num_func, set_device_num_func, target_data members.
14301 Change create_thread_data_func argument to device number instead of
14302 generic pointer.
14303 * oacc-async.c (assert.h): Include.
14304 (acc_async_test, acc_async_test_all, acc_wait, acc_wait_async)
14305 (acc_wait_all, acc_wait_all_async): Use current host thread's
14306 active device, not base_dev.
14307 * oacc-cuda.c (acc_get_current_cuda_device)
14308 (acc_get_current_cuda_context, acc_get_cuda_stream)
14309 (acc_set_cuda_stream): Likewise.
14310 * oacc-host.c (host_dispatch): Don't set open_device_func,
14311 close_device_func, get_device_num_func or set_device_num_func.
14312 * oacc-init.c (base_dev, init_key): Remove.
14313 (cached_base_dev): New.
14314 (name_of_acc_device_t): New.
14315 (acc_init_1): Initialise default-numbered device, not zeroth.
14316 (acc_shutdown_1): Close all devices of a given type.
14317 (goacc_destroy_thread): Don't use base_dev.
14318 (lazy_open, lazy_init, lazy_init_and_open): Remove.
14319 (goacc_attach_host_thread_to_device): New.
14320 (acc_init): Reimplement with goacc_attach_host_thread_to_device.
14321 (acc_get_num_devices): Don't use base_dev.
14322 (acc_set_device_type): Reimplement.
14323 (acc_get_device_type): Don't use base_dev.
14324 (acc_get_device_num): Tweak logic.
14325 (acc_set_device_num): Likewise.
14326 (acc_on_device): Use acc_get_device_type.
14327 (goacc_runtime_initialize): Initialize cached_base_dev not base_dev.
14328 (goacc_lazy_initialize): Reimplement with acc_init and
14329 goacc_attach_host_thread_to_device.
14330 * oacc-int.h (goacc_thread): Add base_dev field.
14331 (base_dev): Remove extern declaration.
14332 (goacc_attach_host_thread_to_device): Add prototype.
14333 * oacc-mem.c (acc_malloc): Use current thread's device instead of
14334 base_dev.
14335 (acc_free): Likewise.
14336 (acc_memcpy_to_device): Likewise.
14337 (acc_memcpy_from_device): Likewise.
14338 * oacc-parallel.c (select_acc_device): Remove. Replace calls with
14339 goacc_lazy_initialize (throughout).
14340 (GOACC_parallel): Use tgt_offset to locate target functions.
14341 * target.c (gomp_map_vars): Don't set tgt->mem_map.
14342 (gomp_unmap_vars): Use devicep->mem_map pointer not tgt->mem_map.
14343 (gomp_load_plugin_for_device): Remove open_device, close_device,
14344 get_device_num, set_device_num openacc hook initialisation. Don't set
14345 openacc.target_data.
14346 * plugin/plugin-host.c (GOMP_OFFLOAD_openacc_open_device)
14347 (GOMP_OFFLOAD_openacc_close_device)
14348 (GOMP_OFFLOAD_openacc_get_device_num)
14349 (GOMP_OFFLOAD_openacc_set_device_num): Remove.
14350 (GOMP_OFFLOAD_openacc_create_thread_data): Change (unused) argument
14351 to int.
14352 * plugin/plugin-nvptx.c (ptx_inited): Remove.
14353 (instantiated_devices, ptx_dev_lock): New.
14354 (struct ptx_image_data): New.
14355 (ptx_devices, ptx_images, ptx_image_lock): New.
14356 (fini_streams_for_device): Reorder cuStreamDestroy call.
14357 (nvptx_get_num_devices): Remove forward declaration.
14358 (nvptx_init): Change return type to bool.
14359 (nvptx_fini): Remove.
14360 (nvptx_attach_host_thread_to_device): New.
14361 (nvptx_open_device): Return struct ptx_device* instead of void*.
14362 (nvptx_close_device): Change argument type to struct ptx_device*,
14363 return type to void.
14364 (nvptx_get_num_devices): Use instantiated_devices not ptx_inited.
14365 (kernel_target_data, kernel_host_table): Remove static globals.
14366 (GOMP_OFFLOAD_register_image, GOMP_OFFLOAD_get_table): Remove.
14367 (GOMP_OFFLOAD_init_device): Reimplement.
14368 (GOMP_OFFLOAD_fini_device): Likewise.
14369 (GOMP_OFFLOAD_load_image, GOMP_OFFLOAD_unload_image): New.
14370 (GOMP_OFFLOAD_alloc, GOMP_OFFLOAD_free, GOMP_OFFLOAD_dev2host)
14371 (GOMP_OFFLOAD_host2dev): Use ORD argument.
14372 (GOMP_OFFLOAD_openacc_open_device)
14373 (GOMP_OFFLOAD_openacc_close_device)
14374 (GOMP_OFFLOAD_openacc_set_device_num)
14375 (GOMP_OFFLOAD_openacc_get_device_num): Remove.
14376 (GOMP_OFFLOAD_openacc_create_thread_data): Change argument to int
14377 (device number).
14378
14379 testsuite/
14380 * libgomp.oacc-c-c++-common/lib-9.c: Fix devnum check in test.
14381
a51df54e
IV
143822015-04-06 Ilya Verbin <ilya.verbin@intel.com>
14383
14384 * libgomp-plugin.h (struct mapping_table): Replace with addr_pair.
14385 * libgomp.h (struct gomp_memory_mapping): Remove.
14386 (struct target_mem_desc): Change type of mem_map from
14387 gomp_memory_mapping * to splay_tree_s *.
14388 (struct gomp_device_descr): Remove register_image_func, get_table_func.
14389 Add load_image_func, unload_image_func.
14390 Change type of mem_map from gomp_memory_mapping to splay_tree_s.
14391 Remove offload_regions_registered.
14392 (gomp_init_tables): Remove.
14393 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
14394 to splay_tree_s *.
14395 * libgomp.map (GOMP_4.0.1): Add GOMP_offload_unregister.
14396 * oacc-host.c (host_dispatch): Do not initialize register_image_func,
14397 get_table_func, mem_map.is_initialized, mem_map.splay_tree.root,
14398 offload_regions_registered.
14399 Initialize load_image_func, unload_image_func, mem_map.root.
14400 (goacc_host_init): Do not initialize host_dispatch.mem_map.lock.
14401 * oacc-init.c (lazy_open): Don't call gomp_init_tables.
14402 (acc_shutdown_1): Use dev's lock and splay_tree instead of mem_map's.
14403 * oacc-mem.c (lookup_host): Get gomp_device_descr *dev instead of
14404 gomp_memory_mapping *. Use dev's lock and splay_tree.
14405 (lookup_dev): Use dev's lock.
14406 (acc_deviceptr): Pass dev to lookup_host instead of mem_map.
14407 (acc_is_present): Likewise.
14408 (acc_map_data): Likewise.
14409 (acc_unmap_data): Likewise. Use dev's lock.
14410 (present_create_copy): Likewise.
14411 (delete_copyout): Pass dev to lookup_host instead of mem_map.
14412 (update_dev_host): Likewise.
14413 (gomp_acc_remove_pointer): Likewise. Use dev's lock.
14414 * oacc-parallel.c (GOACC_parallel): Use dev's lock and splay_tree.
14415 * plugin/plugin-host.c (GOMP_OFFLOAD_register_image): Remove.
14416 (GOMP_OFFLOAD_get_table): Remove
14417 (GOMP_OFFLOAD_load_image): New function.
14418 (GOMP_OFFLOAD_unload_image): New function.
14419 * target.c (register_lock): New mutex for offload image registration.
14420 (num_devices): Do not guard with PLUGIN_SUPPORT.
14421 (gomp_realloc_unlock): New static function.
14422 (gomp_map_vars_existing): Add device descriptor argument. Unlock mutex
14423 before gomp_fatal.
14424 (gomp_map_vars): Use dev's lock and splay_tree instead of mem_map's.
14425 Pass devicep to gomp_map_vars_existing. Unlock mutex before gomp_fatal.
14426 (gomp_copy_from_async): Use dev's lock and splay_tree instead of
14427 mem_map's.
14428 (gomp_unmap_vars): Likewise.
14429 (gomp_update): Remove gomp_memory_mapping argument. Use dev's lock and
14430 splay_tree instead of mm's. Unlock mutex before gomp_fatal.
14431 (gomp_offload_image_to_device): New static function.
14432 (GOMP_offload_register): Add mutex lock.
14433 Call gomp_offload_image_to_device for all initialized devices.
14434 Replace gomp_realloc with gomp_realloc_unlock.
14435 (GOMP_offload_unregister): New function.
14436 (gomp_init_tables): Replace with gomp_init_device. Replace a call to
14437 get_table_func from the plugin with calls to init_device_func and
14438 gomp_offload_image_to_device.
14439 (gomp_free_memmap): Change type of argument from gomp_memory_mapping *
14440 to splay_tree_s *.
14441 (GOMP_target): Do not call gomp_init_tables. Use dev's lock and
14442 splay_tree instead of mem_map's. Unlock mutex before gomp_fatal.
14443 (GOMP_target_data): Do not call gomp_init_tables.
14444 (GOMP_target_update): Likewise. Remove argument from gomp_update.
14445 (gomp_load_plugin_for_device): Replace register_image and get_table
14446 with load_image and unload_image in DLSYM ().
14447 (gomp_register_images_for_device): Remove function.
14448 (gomp_target_init): Do not initialize current_device.mem_map.*,
14449 current_device.offload_regions_registered.
14450 Remove call to gomp_register_images_for_device.
14451 Do not free offload_images and num_offload_images.
14452
6c384511
JJ
144532015-03-30 Jakub Jelinek <jakub@redhat.com>
14454
14455 PR fortran/65597
14456 * testsuite/libgomp.fortran/pr65597.f90: New test.
14457
3e8165a5
TV
144582015-03-27 Tom de Vries <tom@codesourcery.com>
14459
14460 PR testsuite/65594
14461 * testsuite/libgomp.graphite/force-parallel-6.c (abort): Declare.
14462 (init, check): New function.
14463 (foo): Change return type to void.
14464 (main): Call init and check.
14465
4d688c9a
TV
144662015-03-27 Tom de Vries <tom@codesourcery.com>
14467
14468 PR testsuite/65594
14469 * testsuite/libgomp.graphite/force-parallel-6.c (M): Define.
14470 (foo): Use M for non-inner loops to scale down test-case.
14471
01c0b3b0
KT
144722015-03-25 Kai Tietz <ktietz@redhat.com>
14473
14474 PR libgomp/64972
14475 * oacc-parallel.c (GOACC_parallel): Use PRIu64 if available.
14476 (GOACC_data_start): Likewise.
14477 * target.c (gomp_map_vars): Likewise.
14478
844d9a76
JDA
144792015-03-21 John David Anglin <danglin@gcc.gnu.org>
14480
14481 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Don't run on
14482 hppa*-*-hpux*.
14483
9b65e171
JJ
144842015-03-19 Jakub Jelinek <jakub@redhat.com>
14485
14486 * testsuite/libgomp.c/target-10.c: New test.
14487 * testsuite/libgomp.c++/target-4.C: New test.
14488
db397e2e
IV
144892015-03-13 Ilya Verbin <ilya.verbin@intel.com>
14490
14491 * testsuite/libgomp.fortran/declare-target-1.f90: New test.
14492 * testsuite/libgomp.fortran/declare-target-2.f90: New file.
14493
cd93945d
SH
144942015-03-13 Sebastian Huber <sebastian.huber@embedded-brains.de>
14495
14496 * configure.tgt (*-*-rtems*): Use local-exec TLS model.
14497 * configure.ac (*-*-rtems*): Assume Pthread is supported.
14498 (pthread.h): Check for this header file.
14499 * configure: Regenerate.
14500
05deba9f
TV
145012015-02-25 Tom de Vries <tom@codesourcery.com>
14502
14503 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c (DO_PRAGMA)
14504 (check_reduction_op, check_reduction_macro, max, min):
14505 Declare.
14506 (test_reductions_int, test_reductions_minmax, test_reductions_bool): New
14507 function.
14508 (main): Use new functions.
14509
196904d8
IT
145102015-02-18 Ilya Tocar <ilya.tocar@intel.com>
14511
14512 * target.c (gomp_load_plugin_for_device): Use const char * instead of
14513 char * for variables holding dlerror return values.
14514 (DLSYM_OPT): Ditto.
14515
a2818955
TS
145162015-02-17 Thomas Schwinge <thomas@codesourcery.com>
14517
14518 * libgomp-plugin.c (GOMP_PLUGIN_debug): Fix typo.
14519
26f93312
TS
145202015-02-17 Thomas Schwinge <thomas@codesourcery.com>
14521 Cesar Philippidis <cesar@codesourcery.com>
14522
14523 * oacc-ptx.h (GOACC_INTERNAL_PTX): Add GOACC_tid, GOACC_ntid,
14524 GOACC_ctaid, and GOACC_nctaid routines.
14525
fa01ffcc
JJ
145262015-02-11 Jakub Jelinek <jakub@redhat.com>
14527
14528 PR c/64824
14529 * testsuite/libgomp.c/atomic-18.c: New test.
14530 * testsuite/libgomp.c++/atomic-16.C: New test.
14531
4886ec8e
JJ
145322015-02-04 Jakub Jelinek <jakub@redhat.com>
14533
14534 PR c/64824
14535 PR c/64868
14536 * testsuite/libgomp.c/pr64824.c: New test.
14537 * testsuite/libgomp.c/pr64868.c: New test.
14538 * testsuite/libgomp.c++/pr64824.C: New test.
14539 * testsuite/libgomp.c++/pr64868.C: New test.
14540
02d3e45e
DE
145412015-02-01 David Edelsohn <dje.gcc@gmail.com>
14542
14543 PR libgomp/64635
14544 * configure.tgt (*-*-aix*): Use standard posix plugin-suffix.h.
14545 Link with -lpthread.
14546 * config/aix/plugin-suffix.h: Delete.
14547
b5f7a6ca
JH
145482015-01-28 Jack Howarth <howarth.at.gcc@gmail.com>
14549
14550 PR libgomp/64635
14551 * configure.tgt (*-*-aix*): Use config_path "aix posix".
14552 (*-*-darwin*): Use config_path "bsd darwin posix".
14553 (*-*-hpux*): Use config_path "hpux posix".
14554 * target.c: Add include of plugin-suffix.h and use
14555 SONAME_SUFFIX macro.
14556 * config/aix/plugin-suffix.h: New file.
14557 * config/darwin/plugin-suffix.h: New file.
14558 * config/hpux/plugin-suffix.h: New file.
14559 * config/posix/plugin-suffix.h: New file.
14560
b8910447
JJ
145612015-01-23 Jakub Jelinek <jakub@redhat.com>
14562
14563 PR middle-end/64734
14564 * libgomp.c/pr64734.c: New test.
14565
a0c88d06
TV
145662015-01-23 Tom de Vries <tom@codesourcery.com>
14567
14568 PR libgomp/64672
14569 * testsuite/libgomp.oacc-c-c++-common/abort-5.c: New test.
14570
1506ae0e
TV
145712015-01-23 Tom de Vries <tom@codesourcery.com>
14572
14573 PR libgomp/64707
14574 * testsuite/libgomp.c/target-9.c: Add -ftree-parallelize-loops=0 to
14575 dg-options.
14576
128b26dc
TS
145772015-01-19 Thomas Schwinge <thomas@codesourcery.com>
14578
bed62c21 14579 PR libgomp/64625
128b26dc
TS
14580 * libgomp_g.h (GOACC_data_start, GOACC_enter_exit_data)
14581 (GOACC_parallel, GOACC_update): Remove const_void *offload_table
14582 formal parameter. Update all users.
14583 * target.c (GOMP_target, GOMP_target_data, GOMP_target_update):
14584 Document unused formal parameter.
14585
6e36114c
TS
145862015-01-16 Thomas Schwinge <thomas@codesourcery.com>
14587
14588 * oacc-parallel.c: Don't include <alloca.h>.
14589 (GOACC_parallel): Use gomp_alloca instead of alloca.
14590
973e9808
GP
145912015-01-16 Gerald Pfeifer <gerald@pfeifer.com>
14592
14593 * target.c (num_devices): Guard with PLUGIN_SUPPORT.
14594
41dbbb37
TS
145952015-01-15 Thomas Schwinge <thomas@codesourcery.com>
14596 James Norris <jnorris@codesourcery.com>
14597 Tom de Vries <tom@codesourcery.com>
14598 Julian Brown <julian@codesourcery.com>
14599 Cesar Philippidis <cesar@codesourcery.com>
14600 Nathan Sidwell <nathan@codesourcery.com>
14601 Tobias Burnus <burnus@net-b.de>
14602
14603 * Makefile.am (search_path): Add $(top_srcdir)/../include.
14604 (libgomp_la_SOURCES): Add splay-tree.c, libgomp-plugin.c,
14605 oacc-parallel.c, oacc-host.c, oacc-init.c, oacc-mem.c,
14606 oacc-async.c, oacc-plugin.c, oacc-cuda.c.
14607 [USE_FORTRAN] (libgomp_la_SOURCES): Add openacc.f90.
14608 Include $(top_srcdir)/plugin/Makefrag.am.
14609 (nodist_libsubinclude_HEADERS): Add openacc.h.
14610 [USE_FORTRAN] (nodist_finclude_HEADERS): Add openacc_lib.h,
14611 openacc.f90, openacc.mod, openacc_kinds.mod.
14612 (omp_lib.mod): Generalize into...
14613 (%.mod): ... this new rule.
14614 (openacc_kinds.mod, openacc.mod): New rules.
14615 * plugin/configfrag.ac: New file.
14616 * configure.ac: Move plugin/offloading support into it. Include
14617 it. Instantiate testsuite/libgomp-test-support.pt.exp.
14618 * plugin/Makefrag.am: New file.
14619 * testsuite/Makefile.am (OFFLOAD_TARGETS)
14620 (OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS): Don't
14621 export.
14622 (libgomp-test-support.exp): New rule.
14623 (all-local): Depend on it.
14624 * Makefile.in: Regenerate.
14625 * testsuite/Makefile.in: Regenerate.
14626 * config.h.in: Likewise.
14627 * configure: Likewise.
14628 * configure.tgt: Harden shell syntax.
14629 * env.c: Include "oacc-int.h".
14630 (parse_acc_device_type): New function.
14631 (gomp_debug_var, goacc_device_type, goacc_device_num): New
14632 variables.
14633 (initialize_env): Initialize those. Call
14634 goacc_runtime_initialize.
14635 * error.c (gomp_vdebug, gomp_debug, gomp_vfatal): New functions.
14636 (gomp_fatal): Call gomp_vfatal.
14637 * libgomp.h: Include "libgomp-plugin.h" and <stdarg.h>.
14638 (gomp_debug_var, goacc_device_type, goacc_device_num, gomp_vdebug)
14639 (gomp_debug, gomp_verror, gomp_vfatal, gomp_init_targets_once)
14640 (splay_tree_node, splay_tree, splay_tree_key)
14641 (struct target_mem_desc, struct splay_tree_key_s)
14642 (struct gomp_memory_mapping, struct acc_dispatch_t)
14643 (struct gomp_device_descr, gomp_acc_insert_pointer)
14644 (gomp_acc_remove_pointer, target_mem_desc, gomp_copy_from_async)
14645 (gomp_unmap_vars, gomp_init_device, gomp_init_tables)
14646 (gomp_free_memmap, gomp_fini_device): New declarations.
14647 (gomp_vdebug, gomp_debug): New macros.
14648 Include "splay-tree.h".
14649 * libgomp.map (OACC_2.0): New symbol version. Use for
14650 acc_get_num_devices, acc_get_num_devices_h_, acc_set_device_type,
14651 acc_set_device_type_h_, acc_get_device_type,
14652 acc_get_device_type_h_, acc_set_device_num, acc_set_device_num_h_,
14653 acc_get_device_num, acc_get_device_num_h_, acc_async_test,
14654 acc_async_test_h_, acc_async_test_all, acc_async_test_all_h_,
14655 acc_wait, acc_wait_h_, acc_wait_async, acc_wait_async_h_,
14656 acc_wait_all, acc_wait_all_h_, acc_wait_all_async,
14657 acc_wait_all_async_h_, acc_init, acc_init_h_, acc_shutdown,
14658 acc_shutdown_h_, acc_on_device, acc_on_device_h_, acc_malloc,
14659 acc_free, acc_copyin, acc_copyin_32_h_, acc_copyin_64_h_,
14660 acc_copyin_array_h_, acc_present_or_copyin,
14661 acc_present_or_copyin_32_h_, acc_present_or_copyin_64_h_,
14662 acc_present_or_copyin_array_h_, acc_create, acc_create_32_h_,
14663 acc_create_64_h_, acc_create_array_h_, acc_present_or_create,
14664 acc_present_or_create_32_h_, acc_present_or_create_64_h_,
14665 acc_present_or_create_array_h_, acc_copyout, acc_copyout_32_h_,
14666 acc_copyout_64_h_, acc_copyout_array_h_, acc_delete,
14667 acc_delete_32_h_, acc_delete_64_h_, acc_delete_array_h_,
14668 acc_update_device, acc_update_device_32_h_,
14669 acc_update_device_64_h_, acc_update_device_array_h_,
14670 acc_update_self, acc_update_self_32_h_, acc_update_self_64_h_,
14671 acc_update_self_array_h_, acc_map_data, acc_unmap_data,
14672 acc_deviceptr, acc_hostptr, acc_is_present, acc_is_present_32_h_,
14673 acc_is_present_64_h_, acc_is_present_array_h_,
14674 acc_memcpy_to_device, acc_memcpy_from_device,
14675 acc_get_current_cuda_device, acc_get_current_cuda_context,
14676 acc_get_cuda_stream, acc_set_cuda_stream.
14677 (GOACC_2.0): New symbol version. Use for GOACC_data_end,
14678 GOACC_data_start, GOACC_enter_exit_data, GOACC_parallel,
14679 GOACC_update, GOACC_wait, GOACC_get_thread_num,
14680 GOACC_get_num_threads.
14681 (GOMP_PLUGIN_1.0): New symbol version. Use for
14682 GOMP_PLUGIN_malloc, GOMP_PLUGIN_malloc_cleared,
14683 GOMP_PLUGIN_realloc, GOMP_PLUGIN_debug, GOMP_PLUGIN_error,
14684 GOMP_PLUGIN_fatal, GOMP_PLUGIN_async_unmap_vars,
14685 GOMP_PLUGIN_acc_thread.
14686 * libgomp.texi: Update for OpenACC changes, and GOMP_DEBUG
14687 environment variable.
14688 * libgomp_g.h (GOACC_data_start, GOACC_data_end)
14689 (GOACC_enter_exit_data, GOACC_parallel, GOACC_update, GOACC_wait)
14690 (GOACC_get_num_threads, GOACC_get_thread_num): New declarations.
14691 * splay-tree.h (splay_tree_lookup, splay_tree_insert)
14692 (splay_tree_remove): New declarations.
14693 (rotate_left, rotate_right, splay_tree_splay, splay_tree_insert)
14694 (splay_tree_remove, splay_tree_lookup): Move into...
14695 * splay-tree.c: ... this new file.
14696 * target.c: Include "oacc-plugin.h", "oacc-int.h", <assert.h>.
14697 (splay_tree_node, splay_tree, splay_tree_key)
14698 (struct target_mem_desc, struct splay_tree_key_s)
14699 (struct gomp_device_descr): Don't declare.
14700 (num_devices_openmp): New variable.
14701 (gomp_get_num_devices ): Use it.
14702 (gomp_init_targets_once): New function.
14703 (gomp_get_num_devices ): Use it.
14704 (get_kind, gomp_copy_from_async, gomp_free_memmap)
14705 (gomp_fini_device, gomp_register_image_for_device): New functions.
14706 (gomp_map_vars): Add devaddrs parameter.
14707 (gomp_update): Add mm parameter.
14708 (gomp_init_device): Move most of it into...
14709 (gomp_init_tables): ... this new function.
14710 (gomp_register_images_for_device): Remove function.
14711 (splay_compare, gomp_map_vars, gomp_unmap_vars, gomp_init_device):
14712 Make them hidden instead of static.
14713 (gomp_map_vars_existing, gomp_map_vars, gomp_unmap_vars)
14714 (gomp_update, gomp_init_device, GOMP_target, GOMP_target_data)
14715 (GOMP_target_end_data, GOMP_target_update)
14716 (gomp_load_plugin_for_device, gomp_target_init): Update for
14717 OpenACC changes.
14718 * oacc-async.c: New file.
14719 * oacc-cuda.c: Likewise.
14720 * oacc-host.c: Likewise.
14721 * oacc-init.c: Likewise.
14722 * oacc-int.h: Likewise.
14723 * oacc-mem.c: Likewise.
14724 * oacc-parallel.c: Likewise.
14725 * oacc-plugin.c: Likewise.
14726 * oacc-plugin.h: Likewise.
14727 * oacc-ptx.h: Likewise.
14728 * openacc.f90: Likewise.
14729 * openacc.h: Likewise.
14730 * openacc_lib.h: Likewise.
14731 * plugin/plugin-host.c: Likewise.
14732 * plugin/plugin-nvptx.c: Likewise.
14733 * libgomp-plugin.c: Likewise.
14734 * libgomp-plugin.h: Likewise.
14735 * libgomp_target.h: Remove file after merging content into the
14736 former file. Update all users.
14737 * testsuite/lib/libgomp.exp: Load libgomp-test-support.exp.
14738 (offload_targets_s, offload_targets_s_openacc): New variables.
14739 (check_effective_target_openacc_nvidia_accel_present)
14740 (check_effective_target_openacc_nvidia_accel_selected): New
14741 procedures.
14742 (libgomp_init): Update for OpenACC changes.
14743 * testsuite/libgomp-test-support.exp.in: New file.
14744 * testsuite/libgomp.oacc-c++/c++.exp: Likewise.
14745 * testsuite/libgomp.oacc-c/c.exp: Likewise.
14746 * testsuite/libgomp.oacc-fortran/fortran.exp: Likewise.
14747 * testsuite/libgomp.oacc-c-c++-common/abort-1.c: Likewise.
14748 * testsuite/libgomp.oacc-c-c++-common/abort-2.c: Likewise.
14749 * testsuite/libgomp.oacc-c-c++-common/abort-3.c: Likewise.
14750 * testsuite/libgomp.oacc-c-c++-common/abort-4.c: Likewise.
14751 * testsuite/libgomp.oacc-c-c++-common/acc_on_device-1.c: Likewise.
14752 * testsuite/libgomp.oacc-c-c++-common/asyncwait-1.c: Likewise.
14753 * testsuite/libgomp.oacc-c-c++-common/cache-1.c: Likewise.
14754 * testsuite/libgomp.oacc-c-c++-common/clauses-1.c: Likewise.
14755 * testsuite/libgomp.oacc-c-c++-common/clauses-2.c: Likewise.
14756 * testsuite/libgomp.oacc-c-c++-common/collapse-1.c: Likewise.
14757 * testsuite/libgomp.oacc-c-c++-common/collapse-2.c: Likewise.
14758 * testsuite/libgomp.oacc-c-c++-common/collapse-3.c: Likewise.
14759 * testsuite/libgomp.oacc-c-c++-common/collapse-4.c: Likewise.
14760 * testsuite/libgomp.oacc-c-c++-common/context-1.c: Likewise.
14761 * testsuite/libgomp.oacc-c-c++-common/context-2.c: Likewise.
14762 * testsuite/libgomp.oacc-c-c++-common/context-3.c: Likewise.
14763 * testsuite/libgomp.oacc-c-c++-common/context-4.c: Likewise.
14764 * testsuite/libgomp.oacc-c-c++-common/data-1.c: Likewise.
14765 * testsuite/libgomp.oacc-c-c++-common/data-2.c: Likewise.
14766 * testsuite/libgomp.oacc-c-c++-common/data-3.c: Likewise.
14767 * testsuite/libgomp.oacc-c-c++-common/data-already-1.c: Likewise.
14768 * testsuite/libgomp.oacc-c-c++-common/data-already-2.c: Likewise.
14769 * testsuite/libgomp.oacc-c-c++-common/data-already-3.c: Likewise.
14770 * testsuite/libgomp.oacc-c-c++-common/data-already-4.c: Likewise.
14771 * testsuite/libgomp.oacc-c-c++-common/data-already-5.c: Likewise.
14772 * testsuite/libgomp.oacc-c-c++-common/data-already-6.c: Likewise.
14773 * testsuite/libgomp.oacc-c-c++-common/data-already-7.c: Likewise.
14774 * testsuite/libgomp.oacc-c-c++-common/data-already-8.c: Likewise.
14775 * testsuite/libgomp.oacc-c-c++-common/deviceptr-1.c: Likewise.
14776 * testsuite/libgomp.oacc-c-c++-common/if-1.c: Likewise.
14777 * testsuite/libgomp.oacc-c-c++-common/kernels-1.c: Likewise.
14778 * testsuite/libgomp.oacc-c-c++-common/kernels-empty.c: Likewise.
14779 * testsuite/libgomp.oacc-c-c++-common/lib-1.c: Likewise.
14780 * testsuite/libgomp.oacc-c-c++-common/lib-10.c: Likewise.
14781 * testsuite/libgomp.oacc-c-c++-common/lib-11.c: Likewise.
14782 * testsuite/libgomp.oacc-c-c++-common/lib-12.c: Likewise.
14783 * testsuite/libgomp.oacc-c-c++-common/lib-13.c: Likewise.
14784 * testsuite/libgomp.oacc-c-c++-common/lib-14.c: Likewise.
14785 * testsuite/libgomp.oacc-c-c++-common/lib-15.c: Likewise.
14786 * testsuite/libgomp.oacc-c-c++-common/lib-16.c: Likewise.
14787 * testsuite/libgomp.oacc-c-c++-common/lib-17.c: Likewise.
14788 * testsuite/libgomp.oacc-c-c++-common/lib-18.c: Likewise.
14789 * testsuite/libgomp.oacc-c-c++-common/lib-19.c: Likewise.
14790 * testsuite/libgomp.oacc-c-c++-common/lib-2.c: Likewise.
14791 * testsuite/libgomp.oacc-c-c++-common/lib-20.c: Likewise.
14792 * testsuite/libgomp.oacc-c-c++-common/lib-21.c: Likewise.
14793 * testsuite/libgomp.oacc-c-c++-common/lib-22.c: Likewise.
14794 * testsuite/libgomp.oacc-c-c++-common/lib-23.c: Likewise.
14795 * testsuite/libgomp.oacc-c-c++-common/lib-24.c: Likewise.
14796 * testsuite/libgomp.oacc-c-c++-common/lib-25.c: Likewise.
14797 * testsuite/libgomp.oacc-c-c++-common/lib-26.c: Likewise.
14798 * testsuite/libgomp.oacc-c-c++-common/lib-27.c: Likewise.
14799 * testsuite/libgomp.oacc-c-c++-common/lib-28.c: Likewise.
14800 * testsuite/libgomp.oacc-c-c++-common/lib-29.c: Likewise.
14801 * testsuite/libgomp.oacc-c-c++-common/lib-3.c: Likewise.
14802 * testsuite/libgomp.oacc-c-c++-common/lib-30.c: Likewise.
14803 * testsuite/libgomp.oacc-c-c++-common/lib-31.c: Likewise.
14804 * testsuite/libgomp.oacc-c-c++-common/lib-32.c: Likewise.
14805 * testsuite/libgomp.oacc-c-c++-common/lib-33.c: Likewise.
14806 * testsuite/libgomp.oacc-c-c++-common/lib-34.c: Likewise.
14807 * testsuite/libgomp.oacc-c-c++-common/lib-35.c: Likewise.
14808 * testsuite/libgomp.oacc-c-c++-common/lib-36.c: Likewise.
14809 * testsuite/libgomp.oacc-c-c++-common/lib-37.c: Likewise.
14810 * testsuite/libgomp.oacc-c-c++-common/lib-38.c: Likewise.
14811 * testsuite/libgomp.oacc-c-c++-common/lib-39.c: Likewise.
14812 * testsuite/libgomp.oacc-c-c++-common/lib-4.c: Likewise.
14813 * testsuite/libgomp.oacc-c-c++-common/lib-40.c: Likewise.
14814 * testsuite/libgomp.oacc-c-c++-common/lib-41.c: Likewise.
14815 * testsuite/libgomp.oacc-c-c++-common/lib-42.c: Likewise.
14816 * testsuite/libgomp.oacc-c-c++-common/lib-43.c: Likewise.
14817 * testsuite/libgomp.oacc-c-c++-common/lib-44.c: Likewise.
14818 * testsuite/libgomp.oacc-c-c++-common/lib-45.c: Likewise.
14819 * testsuite/libgomp.oacc-c-c++-common/lib-46.c: Likewise.
14820 * testsuite/libgomp.oacc-c-c++-common/lib-47.c: Likewise.
14821 * testsuite/libgomp.oacc-c-c++-common/lib-48.c: Likewise.
14822 * testsuite/libgomp.oacc-c-c++-common/lib-49.c: Likewise.
14823 * testsuite/libgomp.oacc-c-c++-common/lib-5.c: Likewise.
14824 * testsuite/libgomp.oacc-c-c++-common/lib-50.c: Likewise.
14825 * testsuite/libgomp.oacc-c-c++-common/lib-51.c: Likewise.
14826 * testsuite/libgomp.oacc-c-c++-common/lib-52.c: Likewise.
14827 * testsuite/libgomp.oacc-c-c++-common/lib-53.c: Likewise.
14828 * testsuite/libgomp.oacc-c-c++-common/lib-54.c: Likewise.
14829 * testsuite/libgomp.oacc-c-c++-common/lib-55.c: Likewise.
14830 * testsuite/libgomp.oacc-c-c++-common/lib-56.c: Likewise.
14831 * testsuite/libgomp.oacc-c-c++-common/lib-57.c: Likewise.
14832 * testsuite/libgomp.oacc-c-c++-common/lib-58.c: Likewise.
14833 * testsuite/libgomp.oacc-c-c++-common/lib-59.c: Likewise.
14834 * testsuite/libgomp.oacc-c-c++-common/lib-6.c: Likewise.
14835 * testsuite/libgomp.oacc-c-c++-common/lib-60.c: Likewise.
14836 * testsuite/libgomp.oacc-c-c++-common/lib-61.c: Likewise.
14837 * testsuite/libgomp.oacc-c-c++-common/lib-62.c: Likewise.
14838 * testsuite/libgomp.oacc-c-c++-common/lib-63.c: Likewise.
14839 * testsuite/libgomp.oacc-c-c++-common/lib-64.c: Likewise.
14840 * testsuite/libgomp.oacc-c-c++-common/lib-65.c: Likewise.
14841 * testsuite/libgomp.oacc-c-c++-common/lib-66.c: Likewise.
14842 * testsuite/libgomp.oacc-c-c++-common/lib-67.c: Likewise.
14843 * testsuite/libgomp.oacc-c-c++-common/lib-68.c: Likewise.
14844 * testsuite/libgomp.oacc-c-c++-common/lib-69.c: Likewise.
14845 * testsuite/libgomp.oacc-c-c++-common/lib-7.c: Likewise.
14846 * testsuite/libgomp.oacc-c-c++-common/lib-70.c: Likewise.
14847 * testsuite/libgomp.oacc-c-c++-common/lib-71.c: Likewise.
14848 * testsuite/libgomp.oacc-c-c++-common/lib-72.c: Likewise.
14849 * testsuite/libgomp.oacc-c-c++-common/lib-73.c: Likewise.
14850 * testsuite/libgomp.oacc-c-c++-common/lib-74.c: Likewise.
14851 * testsuite/libgomp.oacc-c-c++-common/lib-75.c: Likewise.
14852 * testsuite/libgomp.oacc-c-c++-common/lib-76.c: Likewise.
14853 * testsuite/libgomp.oacc-c-c++-common/lib-77.c: Likewise.
14854 * testsuite/libgomp.oacc-c-c++-common/lib-78.c: Likewise.
14855 * testsuite/libgomp.oacc-c-c++-common/lib-79.c: Likewise.
14856 * testsuite/libgomp.oacc-c-c++-common/lib-80.c: Likewise.
14857 * testsuite/libgomp.oacc-c-c++-common/lib-81.c: Likewise.
14858 * testsuite/libgomp.oacc-c-c++-common/lib-82.c: Likewise.
14859 * testsuite/libgomp.oacc-c-c++-common/lib-83.c: Likewise.
14860 * testsuite/libgomp.oacc-c-c++-common/lib-84.c: Likewise.
14861 * testsuite/libgomp.oacc-c-c++-common/lib-85.c: Likewise.
14862 * testsuite/libgomp.oacc-c-c++-common/lib-86.c: Likewise.
14863 * testsuite/libgomp.oacc-c-c++-common/lib-87.c: Likewise.
14864 * testsuite/libgomp.oacc-c-c++-common/lib-88.c: Likewise.
14865 * testsuite/libgomp.oacc-c-c++-common/lib-89.c: Likewise.
14866 * testsuite/libgomp.oacc-c-c++-common/lib-9.c: Likewise.
14867 * testsuite/libgomp.oacc-c-c++-common/lib-90.c: Likewise.
14868 * testsuite/libgomp.oacc-c-c++-common/lib-91.c: Likewise.
14869 * testsuite/libgomp.oacc-c-c++-common/lib-92.c: Likewise.
14870 * testsuite/libgomp.oacc-c-c++-common/nested-1.c: Likewise.
14871 * testsuite/libgomp.oacc-c-c++-common/nested-2.c: Likewise.
14872 * testsuite/libgomp.oacc-c-c++-common/offset-1.c: Likewise.
14873 * testsuite/libgomp.oacc-c-c++-common/parallel-1.c: Likewise.
14874 * testsuite/libgomp.oacc-c-c++-common/parallel-empty.c: Likewise.
14875 * testsuite/libgomp.oacc-c-c++-common/pointer-align-1.c: Likewise.
14876 * testsuite/libgomp.oacc-c-c++-common/present-1.c: Likewise.
14877 * testsuite/libgomp.oacc-c-c++-common/present-2.c: Likewise.
14878 * testsuite/libgomp.oacc-c-c++-common/reduction-1.c: Likewise.
14879 * testsuite/libgomp.oacc-c-c++-common/reduction-2.c: Likewise.
14880 * testsuite/libgomp.oacc-c-c++-common/reduction-3.c: Likewise.
14881 * testsuite/libgomp.oacc-c-c++-common/reduction-4.c: Likewise.
14882 * testsuite/libgomp.oacc-c-c++-common/reduction-5.c: Likewise.
14883 * testsuite/libgomp.oacc-c-c++-common/reduction-initial-1.c:
14884 Likewise.
14885 * testsuite/libgomp.oacc-c-c++-common/subr.h: Likewise.
14886 * testsuite/libgomp.oacc-c-c++-common/subr.ptx: Likewise.
14887 * testsuite/libgomp.oacc-c-c++-common/timer.h: Likewise.
14888 * testsuite/libgomp.oacc-c-c++-common/update-1-2.c: Likewise.
14889 * testsuite/libgomp.oacc-c-c++-common/update-1.c: Likewise.
14890 * testsuite/libgomp.oacc-fortran/abort-1.f90: Likewise.
14891 * testsuite/libgomp.oacc-fortran/abort-2.f90: Likewise.
14892 * testsuite/libgomp.oacc-fortran/acc_on_device-1-1.f90: Likewise.
14893 * testsuite/libgomp.oacc-fortran/acc_on_device-1-2.f: Likewise.
14894 * testsuite/libgomp.oacc-fortran/acc_on_device-1-3.f: Likewise.
14895 * testsuite/libgomp.oacc-fortran/asyncwait-1.f90: Likewise.
14896 * testsuite/libgomp.oacc-fortran/asyncwait-2.f90: Likewise.
14897 * testsuite/libgomp.oacc-fortran/asyncwait-3.f90: Likewise.
14898 * testsuite/libgomp.oacc-fortran/collapse-1.f90: Likewise.
14899 * testsuite/libgomp.oacc-fortran/collapse-2.f90: Likewise.
14900 * testsuite/libgomp.oacc-fortran/collapse-3.f90: Likewise.
14901 * testsuite/libgomp.oacc-fortran/collapse-4.f90: Likewise.
14902 * testsuite/libgomp.oacc-fortran/collapse-5.f90: Likewise.
14903 * testsuite/libgomp.oacc-fortran/collapse-6.f90: Likewise.
14904 * testsuite/libgomp.oacc-fortran/collapse-7.f90: Likewise.
14905 * testsuite/libgomp.oacc-fortran/collapse-8.f90: Likewise.
14906 * testsuite/libgomp.oacc-fortran/data-1.f90: Likewise.
14907 * testsuite/libgomp.oacc-fortran/data-2.f90: Likewise.
14908 * testsuite/libgomp.oacc-fortran/data-3.f90: Likewise.
14909 * testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
14910 * testsuite/libgomp.oacc-fortran/data-4.f90: Likewise.
14911 * testsuite/libgomp.oacc-fortran/data-already-1.f: Likewise.
14912 * testsuite/libgomp.oacc-fortran/data-already-2.f: Likewise.
14913 * testsuite/libgomp.oacc-fortran/data-already-3.f: Likewise.
14914 * testsuite/libgomp.oacc-fortran/data-already-4.f: Likewise.
14915 * testsuite/libgomp.oacc-fortran/data-already-5.f: Likewise.
14916 * testsuite/libgomp.oacc-fortran/data-already-6.f: Likewise.
14917 * testsuite/libgomp.oacc-fortran/data-already-7.f: Likewise.
14918 * testsuite/libgomp.oacc-fortran/data-already-8.f: Likewise.
14919 * testsuite/libgomp.oacc-fortran/lib-1.f90: Likewise.
14920 * testsuite/libgomp.oacc-fortran/lib-10.f90: Likewise.
14921 * testsuite/libgomp.oacc-fortran/lib-2.f: Likewise.
14922 * testsuite/libgomp.oacc-fortran/lib-3.f: Likewise.
14923 * testsuite/libgomp.oacc-fortran/lib-4.f90: Likewise.
14924 * testsuite/libgomp.oacc-fortran/lib-5.f90: Likewise.
14925 * testsuite/libgomp.oacc-fortran/lib-6.f90: Likewise.
14926 * testsuite/libgomp.oacc-fortran/lib-7.f90: Likewise.
14927 * testsuite/libgomp.oacc-fortran/lib-8.f90: Likewise.
14928 * testsuite/libgomp.oacc-fortran/map-1.f90: Likewise.
14929 * testsuite/libgomp.oacc-fortran/openacc_version-1.f: Likewise.
14930 * testsuite/libgomp.oacc-fortran/openacc_version-2.f90: Likewise.
14931 * testsuite/libgomp.oacc-fortran/pointer-align-1.f90: Likewise.
14932 * testsuite/libgomp.oacc-fortran/pset-1.f90: Likewise.
14933 * testsuite/libgomp.oacc-fortran/reduction-1.f90: Likewise.
14934 * testsuite/libgomp.oacc-fortran/reduction-2.f90: Likewise.
14935 * testsuite/libgomp.oacc-fortran/reduction-3.f90: Likewise.
14936 * testsuite/libgomp.oacc-fortran/reduction-4.f90: Likewise.
14937 * testsuite/libgomp.oacc-fortran/reduction-5.f90: Likewise.
14938 * testsuite/libgomp.oacc-fortran/reduction-6.f90: Likewise.
14939 * testsuite/libgomp.oacc-fortran/routine-1.f90: Likewise.
14940 * testsuite/libgomp.oacc-fortran/routine-2.f90: Likewise.
14941 * testsuite/libgomp.oacc-fortran/routine-3.f90: Likewise.
14942 * testsuite/libgomp.oacc-fortran/routine-4.f90: Likewise.
14943 * testsuite/libgomp.oacc-fortran/subarrays-1.f90: Likewise.
14944 * testsuite/libgomp.oacc-fortran/subarrays-2.f90: Likewise.
14945
f1f3453e
TS
149462015-01-10 Thomas Schwinge <thomas@codesourcery.com>
14947 Julian Brown <julian@codesourcery.com>
14948 David Malcolm <dmalcolm@redhat.com>
14949
14950 * configure.ac: Rename libgomp from "GNU OpenMP Runtime Library"
14951 to "GNU Offloading and Multi Processing Runtime Library". Change
14952 all users.
14953 * configure: Regenerate.
14954 * libgomp.texi: Update.
14955
f9a0eca4
TS
149562015-01-08 Thomas Schwinge <thomas@codesourcery.com>
14957
b335ef4e
TS
14958 * configure.ac [tgt_dir] (offload_additional_lib_paths): Also add
14959 "$tgt_dir/lib32".
14960 * configure: Regenerate.
14961
f9a0eca4
TS
14962 * testsuite/lib/libgomp.exp (libgomp_init): Correctly match
14963 "intelmic" in $offload_targets.
14964
b67cd4e3
JJ
149652015-01-05 Jakub Jelinek <jakub@redhat.com>
14966
5624e564
JJ
14967 Update copyright years.
14968
b67cd4e3
JJ
14969 * libgomp.texi: Bump @copying's copyright year.
14970
3b41b583
KT
149712014-12-12 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
14972
14973 * testsuite/lib/libgomp.exp: Load target-utils.exp.
93d90219 14974 Move load of target-supports.exp earlier.
3b41b583 14975
2354caec
IV
149762014-12-10 Ilya Verbin <ilya.verbin@intel.com>
14977
14978 * testsuite/libgomp.c/target-9.c: New test.
14979
f50eecba
VR
149802014-12-09 Varvara Rainchik <varvara.rainchik@intel.com>
14981
14982 * config.h.in: Regenerate.
14983 * configure: Regenerate.
14984 * configure.ac: Add GCC_CHECK_EMUTLS.
14985 * libgomp.h: Add check for USE_EMUTLS: this case
14986 is equal to HAVE_TLS.
14987 * team.c: Likewise.
14988
68bc9270
UB
149892014-12-03 Uros Bizjak <ubizjak@gmail.com>
14990
14991 * configure.tgt (x86_64-*-linux*): Tune -m32 multilib to generic.
14992
476ff787
AT
149932014-11-28 Andrey Turetskiy <andrey.turetskiy@intel.com>
14994 Ilya Verbin <ilya.verbin@intel.com>
14995
14996 * testsuite/libgomp.c/target-critical-1.c: New test.
14997
31a30e62
JJ
149982014-11-26 Jakub Jelinek <jakub@redhat.com>
14999
15000 * testsuite/libgomp.c/examples-4/e.53.4.c: Add -DITESTITERS=20
68bc9270 15001 to dg-options unless expensive testing is on.
31a30e62
JJ
15002 (TESTITERS): Define to N if not defined.
15003 (main): Use TESTITERS instead of N.
15004 * testsuite/libgomp.c/examples-4/e.55.1.c: Define CHUNKSZ from
15005 dg-additional-options depending on whether expensive testing is on.
15006 * testsuite/libgomp.fortran/examples-4/e.55.1.f90 (e_55_1_mod):
15007 Decrease N to 100000 and CHUNKSZ to 10000.
15008
3f9e8f13
JJ
150092014-11-24 Jakub Jelinek <jakub@redhat.com>
15010
15011 PR fortran/63938
31a30e62
JJ
15012 * testsuite/libgomp.fortran/pr63938-1.f90: New test.
15013 * testsuite/libgomp.fortran/pr63938-2.f90: New test.
3f9e8f13 15014
c8451a46
SE
150152014-11-21 Steve Ellcey <sellcey@imgtec.com>
15016
15017 * config/linux/mips/futex.h (SYS_futex): Define if not already done.
15018
a699d672
L
150192014-11-21 H.J. Lu <hongjiu.lu@intel.com>
15020
15021 PR bootstrap/63784
15022 * configure: Regenerated.
15023
4a19f719
UB
150242014-11-19 Uros Bizjak <ubizjak@gmail.com>
15025
15026 * testsuite/libgomp.c/examples-4/e.53.5.c: Require
15027 vect_simd_clones effective target.
15028 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
15029
b1bf6c52
JJ
150302014-11-14 Jakub Jelinek <jakub@redhat.com>
15031
15032 * libgomp.c/examples-4/e.54.2.c (main): Use N / 8 instead
15033 of 32 as block_size.
15034 * libgomp.fortran/examples-4/e.54.2.f90 (e_54_1): Use n / 8
15035 instead of 32 as block_size.
15036
d64ae614
AT
150372014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
15038 Ilya Verbin <ilya.verbin@intel.com>
15039
15040 * Makefile.in: Regenerate.
15041 * configure: Regenerate.
15042 * configure.ac: Set up offload_additional_options,
15043 offload_additional_lib_paths and offload_targets.
15044 * testsuite/Makefile.am: Export environment variables: OFFLOAD_TARGETS,
15045 OFFLOAD_ADDITIONAL_OPTIONS, OFFLOAD_ADDITIONAL_LIB_PATHS.
15046 * testsuite/Makefile.in: Regenerate.
15047 * testsuite/lib/libgomp.exp (libgomp_init): Append
15048 offload_additional_lib_paths to LD_LIBRARY_PATH. Append
15049 offload_additional_options to ALWAYS_CFLAGS. Append liboffloadmic
15050 build directory to LD_LIBRARY_PATH for intelmic offload targets.
15051
122d7303
AT
150522014-11-13 Andrey Turetskiy <andrey.turetskiy@intel.com>
15053 Ilya Verbin <ilya.verbin@intel.com>
15054 Kirill Yukhin <kirill.yukhin@intel.com>
15055 Ilya Tocar <ilya.tocar@intel.com>
15056
15057 * testsuite/lib/libgomp.exp
15058 (check_effective_target_offload_device): New.
15059 * testsuite/libgomp.c++/c++.exp: Include tests from subdirectories.
15060 * testsuite/libgomp.c++/examples-4/e.51.5.C: New test.
15061 * testsuite/libgomp.c++/examples-4/e.53.2.C: Ditto.
15062 * testsuite/libgomp.c/examples-4/e.50.1.c: Ditto.
15063 * testsuite/libgomp.c/examples-4/e.50.2.c: Ditto.
15064 * testsuite/libgomp.c/examples-4/e.50.3.c: Ditto.
15065 * testsuite/libgomp.c/examples-4/e.50.4.c: Ditto.
15066 * testsuite/libgomp.c/examples-4/e.50.5.c: Ditto.
15067 * testsuite/libgomp.c/examples-4/e.51.1.c: Ditto.
15068 * testsuite/libgomp.c/examples-4/e.51.2.c: Ditto.
15069 * testsuite/libgomp.c/examples-4/e.51.3.c: Ditto.
15070 * testsuite/libgomp.c/examples-4/e.51.4.c: Ditto.
15071 * testsuite/libgomp.c/examples-4/e.51.6.c: Ditto.
15072 * testsuite/libgomp.c/examples-4/e.51.7.c: Ditto.
15073 * testsuite/libgomp.c/examples-4/e.52.1.c: Ditto.
15074 * testsuite/libgomp.c/examples-4/e.52.2.c: Ditto.
15075 * testsuite/libgomp.c/examples-4/e.53.1.c: Ditto.
15076 * testsuite/libgomp.c/examples-4/e.53.3.c: Ditto.
15077 * testsuite/libgomp.c/examples-4/e.53.4.c: Ditto.
15078 * testsuite/libgomp.c/examples-4/e.53.5.c: Ditto.
15079 * testsuite/libgomp.c/examples-4/e.54.2.c: Ditto.
15080 * testsuite/libgomp.c/examples-4/e.54.3.c: Ditto.
15081 * testsuite/libgomp.c/examples-4/e.54.4.c: Ditto.
15082 * testsuite/libgomp.c/examples-4/e.54.5.c: Ditto.
15083 * testsuite/libgomp.c/examples-4/e.54.6.c: Ditto.
15084 * testsuite/libgomp.c/examples-4/e.55.1.c: Ditto.
15085 * testsuite/libgomp.c/examples-4/e.55.2.c: Ditto.
15086 * testsuite/libgomp.c/examples-4/e.56.3.c: Ditto.
15087 * testsuite/libgomp.c/examples-4/e.56.4.c: Ditto.
15088 * testsuite/libgomp.c/examples-4/e.57.1.c: Ditto.
15089 * testsuite/libgomp.c/examples-4/e.57.2.c: Ditto.
15090 * testsuite/libgomp.c/examples-4/e.57.3.c: Ditto.
15091 * testsuite/libgomp.c/target-7.c: Fix test.
15092 * testsuite/libgomp.fortran/examples-4/e.50.1.f90: New test.
15093 * testsuite/libgomp.fortran/examples-4/e.50.2.f90: Ditto.
15094 * testsuite/libgomp.fortran/examples-4/e.50.3.f90: Ditto.
15095 * testsuite/libgomp.fortran/examples-4/e.50.4.f90: Ditto.
15096 * testsuite/libgomp.fortran/examples-4/e.50.5.f90: Ditto.
15097 * testsuite/libgomp.fortran/examples-4/e.51.1.f90: Ditto.
15098 * testsuite/libgomp.fortran/examples-4/e.51.2.f90: Ditto.
15099 * testsuite/libgomp.fortran/examples-4/e.51.3.f90: Ditto.
15100 * testsuite/libgomp.fortran/examples-4/e.51.4.f90: Ditto.
15101 * testsuite/libgomp.fortran/examples-4/e.51.5.f90: Ditto.
15102 * testsuite/libgomp.fortran/examples-4/e.51.6.f90: Ditto.
15103 * testsuite/libgomp.fortran/examples-4/e.51.7.f90: Ditto.
15104 * testsuite/libgomp.fortran/examples-4/e.52.1.f90: Ditto.
15105 * testsuite/libgomp.fortran/examples-4/e.52.2.f90: Ditto.
15106 * testsuite/libgomp.fortran/examples-4/e.53.1.f90: Ditto.
15107 * testsuite/libgomp.fortran/examples-4/e.53.2.f90: Ditto.
15108 * testsuite/libgomp.fortran/examples-4/e.53.3.f90: Ditto.
15109 * testsuite/libgomp.fortran/examples-4/e.53.4.f90: Ditto.
15110 * testsuite/libgomp.fortran/examples-4/e.53.5.f90: Ditto.
15111 * testsuite/libgomp.fortran/examples-4/e.54.2.f90: Ditto.
15112 * testsuite/libgomp.fortran/examples-4/e.54.3.f90: Ditto.
15113 * testsuite/libgomp.fortran/examples-4/e.54.4.f90: Ditto.
15114 * testsuite/libgomp.fortran/examples-4/e.54.5.f90: Ditto.
15115 * testsuite/libgomp.fortran/examples-4/e.54.6.f90: Ditto.
15116 * testsuite/libgomp.fortran/examples-4/e.55.1.f90: Ditto.
15117 * testsuite/libgomp.fortran/examples-4/e.55.2.f90: Ditto.
15118 * testsuite/libgomp.fortran/examples-4/e.56.3.f90: Ditto.
15119 * testsuite/libgomp.fortran/examples-4/e.56.4.f90: Ditto.
15120 * testsuite/libgomp.fortran/examples-4/e.57.1.f90: Ditto.
15121 * testsuite/libgomp.fortran/examples-4/e.57.2.f90: Ditto.
15122 * testsuite/libgomp.fortran/examples-4/e.57.3.f90: Ditto.
15123
1df3f842
JJ
151242014-11-13 Jakub Jelinek <jakub@redhat.com>
15125 Ilya Verbin <ilya.verbin@intel.com>
15126 Thomas Schwinge <thomas@codesourcery.com>
15127 Andrey Turetskiy <andrey.turetskiy@intel.com>
15128
15129 * libgomp.map (GOMP_4.0.1): New symbol version.
15130 Add GOMP_offload_register.
15131 * libgomp_target.h: New file.
15132 * splay-tree.h: New file.
15133 * target.c: Include config.h, libgomp_target.h, dlfcn.h, splay-tree.h.
15134 (gomp_target_init): New forward declaration.
15135 (gomp_is_initialized): New static variable.
15136 (splay_tree_node, splay_tree, splay_tree_key): New typedefs.
15137 (struct target_mem_desc, struct splay_tree_key_s, offload_image_descr):
15138 New structures.
15139 (offload_images, num_offload_images, devices, num_devices): New static
15140 variables.
15141 (splay_compare): New static function.
15142 (struct gomp_device_descr): New structure.
15143 (gomp_get_num_devices): Call gomp_target_init.
15144 (resolve_device, gomp_map_vars_existing, gomp_map_vars, gomp_unmap_tgt)
15145 (gomp_unmap_vars, gomp_update, gomp_init_device): New static functions.
15146 (GOMP_offload_register): New function.
15147 (GOMP_target): Arrange for host callback to be performed in a separate
15148 initial thread and contention group, inheriting ICVs from
15149 gomp_global_icv etc. Call gomp_map_vars and gomp_unmap_vars.
15150 Add device initialization and lookup for target function in splay tree.
15151 (GOMP_target_data): Add device initialization and call gomp_map_vars.
15152 (GOMP_target_end_data): Call gomp_unmap_vars.
15153 (GOMP_target_update): Add device initialization and call gomp_update.
15154 (gomp_load_plugin_for_device, gomp_register_images_for_device)
15155 (gomp_target_init): New static functions.
15156
85c64bbe
BS
151572014-11-13 Bernd Schmidt <bernds@codesourcery.com>
15158 Thomas Schwinge <thomas@codesourcery.com>
15159 Ilya Verbin <ilya.verbin@intel.com>
15160 Andrey Turetskiy <andrey.turetskiy@intel.com>
15161
15162 * config.h.in: Regenerate.
15163 * configure: Regenerate.
15164 * configure.ac: Check for libdl, required for plugin support.
15165 (PLUGIN_SUPPORT): Define if plugins are supported.
15166 (enable_offload_targets): Support Intel MIC targets.
15167 (OFFLOAD_TARGETS): List of target names suitable for offloading.
15168
ebf6d33b
FXC
151692014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
15170
15171 PR target/63610
15172 * configure: Regenerate.
15173
8c768629
RO
151742014-11-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
15175
15176 * config/posix/lock.c (_XOPEN_SOURCE) Define as 600.
15177
c1d62412
MP
151782014-10-06 Marek Polacek <polacek@redhat.com>
15179
15180 * testsuite/libgomp.c/affinity-1.c: Include <sys/wait.h>.
15181 * testsuite/libgomp.c/nqueens-1.c: Include <stdlib.h>.
15182 * testsuite/libgomp.c/thread-limit-1.c: Include <omp.h>
15183 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
15184
44a0c6cb
MP
151852014-10-06 Marek Polacek <polacek@redhat.com>
15186
15187 * testsuite/libgomp.c/affinity-1.c: Fix implicit declarations.
15188 * testsuite/libgomp.c/nqueens-1.c: Likewise.
15189 * testsuite/libgomp.c/pr26943-3.c: Likewise.
15190 * testsuite/libgomp.c/pr26943-4.c: Likewise.
15191 * testsuite/libgomp.c/pr36802-2.c: Likewise.
15192 * testsuite/libgomp.c/pr36802-3.c: Likewise.
15193 * testsuite/libgomp.c/thread-limit-1.c: Likewise.
15194 * testsuite/libgomp.c/thread-limit-2.c: Likewise.
15195 * testsuite/libgomp.c/appendix-a/a.15.1.c: Include <omp.h>.
15196 * testsuite/libgomp.c/omp-loop02.c: Fix defaulting to int.
15197 * testsuite/libgomp.c/omp-parallel-for.c: Likewise.
15198 * testsuite/libgomp.c/omp-parallel-if.c: Likewise.
15199 * testsuite/libgomp.c/omp-single-1.c: Likewise.
15200 * testsuite/libgomp.c/omp-single-2.c: Likewise.
15201 * testsuite/libgomp.c/omp_matvec.c: Likewise.
15202 * testsuite/libgomp.c/omp_workshare3.c: Likewise.
15203 * testsuite/libgomp.c/omp_workshare4.c: Likewise.
15204 * testsuite/libgomp.c/shared-1.c: Fix defaulting to int. Fix implicit
15205 declarations.
15206
5771c391
JJ
152072014-10-03 Jakub Jelinek <jakub@redhat.com>
15208
15209 PR libgomp/61200
15210 * testsuite/libgomp.c/pr61200.c: New test.
15211
bce16b88
JJ
152122014-09-18 Jakub Jelinek <jakub@redhat.com>
15213
15214 PR c++/63248
15215 * testsuite/libgomp.c++/pr63248.C: New test.
15216
3696163c
JJ
152172014-08-04 Jakub Jelinek <jakub@redhat.com>
15218
15219 * task.c (GOMP_taskgroup_end): If taskgroup->num_children
15220 is not zero, but taskgroup->children is NULL and there are
15221 any task->children, schedule those instead of waiting.
15222 * testsuite/libgomp.c/depend-6.c: New test.
15223 * testsuite/libgomp.c/depend-7.c: New test.
15224 * testsuite/libgomp.c/depend-8.c: New test.
15225 * testsuite/libgomp.c/depend-9.c: New test.
15226 * testsuite/libgomp.c/depend-10.c: New test.
15227
0494285a
JJ
152282014-08-01 Jakub Jelinek <jakub@redhat.com>
15229
15230 * libgomp.h (struct gomp_task_depend_entry): Add redundant_out field.
15231 (struct gomp_taskwait): New type.
15232 (struct gomp_task): Add taskwait and parent_depends_on, remove
15233 in_taskwait and taskwait_sem fields.
15234 (gomp_finish_task): Don't destroy taskwait_sem.
15235 * task.c (gomp_init_task): Don't init in_taskwait, instead init
15236 taskwait and parent_depends_on.
15237 (GOMP_task): For if (0) tasks with depend clause that depend on
15238 earlier tasks don't defer them, instead call
15239 gomp_task_maybe_wait_for_dependencies to wait for the dependencies.
15240 Initialize redundant_out field, for redundant out entries just
15241 move them at the end of linked list instead of removing them
15242 completely, and set redundant_out flag instead of redundant.
15243 (gomp_task_run_pre): Update last_parent_depends_on if scheduling
15244 that task.
15245 (gomp_task_run_post_handle_dependers): If parent is in
15246 gomp_task_maybe_wait_for_dependencies and newly runnable task
15247 is not parent_depends_on, queue it in parent->children linked
15248 list after all runnable tasks with parent_depends_on set.
15249 Adjust for addition of taskwait indirection.
15250 (gomp_task_run_post_remove_parent): If parent is in
15251 gomp_task_maybe_wait_for_dependencies and task to be removed
15252 is parent_depends_on, decrement n_depend and if needed awake
15253 parent. Adjust for addition of taskwait indirection.
15254 (GOMP_taskwait): Adjust for addition of taskwait indirection.
15255 (gomp_task_maybe_wait_for_dependencies): New function.
15256 * testsuite/libgomp.c/depend-5.c: New test.
15257
60ab4b44
TB
152582014-07-13 Tobias Burnus <burnus@net-b.de>
15259
15260 * testsuite/libgomp.fortran/pr34020.f90: Make compile
0494285a 15261 with TS 18508/Fortran 2015.
60ab4b44 15262
773ec47f
MP
152632014-07-06 Marek Polacek <polacek@redhat.com>
15264
15265 PR c/6940
15266 * testsuite/libgomp.c/appendix-a/a.29.1.c (f): Add dg-warnings.
15267
f707da16
JJ
152682014-07-03 Jakub Jelinek <jakub@redhat.com>
15269
15270 * testsuite/lib/libgomp.exp (libgomp_target_compile): If $source
15271 matches regex $lang_source_re, add $lang_include_flags to options.
15272 * testsuite/libgomp.c/c.exp: Unset lang_include_flags.
15273 * testsuite/libgomp.c++/c++.exp: Likewise.
15274 * testsuite/libgomp.fortran/fortran.exp: Likewise. Set lang_source_re
15275 and lang_include_flags instead of adding -fintrinsic-modules-path= to
15276 ALWAYS_CFLAGS.
15277 * testsuite/libgomp.graphite/graphite.exp: Unset lang_include_flags.
15278
07b6c044
TS
152792014-07-03 Thomas Schwinge <thomas@codesourcery.com>
15280
15281 * testsuite/libgomp.fortran/fortran.exp: Explain
15282 gfortran-dg-runtest usage.
15283
da6f124d
JJ
152842014-06-25 Jakub Jelinek <jakub@redhat.com>
15285
15286 * testsuite/libgomp.fortran/simd5.f90: New test.
15287 * testsuite/libgomp.fortran/simd6.f90: New test.
15288 * testsuite/libgomp.fortran/simd7.f90: New test.
15289
b46ebd6c
JJ
152902014-06-24 Jakub Jelinek <jakub@redhat.com>
15291
56ad0e38
JJ
15292 * testsuite/libgomp.c/for-2.c: Define SC to static for
15293 #pragma omp for simd testing.
15294 * testsuite/libgomp.c/for-2.h (SC): Define if not defined.
15295 (N(f5), N(f6), N(f7), N(f8), N(f10), N(f12), N(f14)): Use
15296 SC macro.
15297 * testsuite/libgomp.c/simd-14.c: New test.
15298 * testsuite/libgomp.c/simd-15.c: New test.
15299 * testsuite/libgomp.c/simd-16.c: New test.
15300 * testsuite/libgomp.c/simd-17.c: New test.
15301 * testsuite/libgomp.c++/for-10.C: Define SC to static for
15302 #pragma omp for simd testing.
15303 * testsuite/libgomp.c++/simd10.C: New test.
15304 * testsuite/libgomp.c++/simd11.C: New test.
15305 * testsuite/libgomp.c++/simd12.C: New test.
15306 * testsuite/libgomp.c++/simd13.C: New test.
15307
b46ebd6c
JJ
15308 * testsuite/libgomp.fortran/aligned1.f03: New test.
15309 * testsuite/libgomp.fortran/nestedfn5.f90: New test.
15310 * testsuite/libgomp.fortran/target7.f90: Surround loop spawning
15311 tasks with !$omp parallel !$omp single.
15312 * testsuite/libgomp.fortran/target8.f90: New test.
15313 * testsuite/libgomp.fortran/udr4.f90 (foo UDR, bar UDR): Adjust
15314 not to use trim in the combiner, instead call elemental function.
15315 (fn): New elemental function.
15316 * testsuite/libgomp.fortran/udr6.f90 (do_add, dp_add, dp_init):
15317 Make elemental.
15318 * testsuite/libgomp.fortran/udr7.f90 (omp_priv, omp_orig, omp_out,
15319 omp_in): Likewise.
15320 * testsuite/libgomp.fortran/udr12.f90: New test.
15321 * testsuite/libgomp.fortran/udr13.f90: New test.
15322 * testsuite/libgomp.fortran/udr14.f90: New test.
15323 * testsuite/libgomp.fortran/udr15.f90: New test.
15324
f014c653
JJ
153252014-06-18 Jakub Jelinek <jakub@redhat.com>
15326
15327 * omp_lib.f90.in (openmp_version): Set to 201307.
15328 * omp_lib.h.in (openmp_version): Likewise.
15329 * testsuite/libgomp.c/target-8.c: New test.
15330 * testsuite/libgomp.fortran/declare-simd-1.f90: Add notinbranch
15331 and inbranch clauses.
15332 * testsuite/libgomp.fortran/depend-3.f90: New test.
15333 * testsuite/libgomp.fortran/openmp_version-1.f: Adjust for new
15334 openmp_version.
15335 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
15336 * testsuite/libgomp.fortran/target1.f90: New test.
15337 * testsuite/libgomp.fortran/target2.f90: New test.
15338 * testsuite/libgomp.fortran/target3.f90: New test.
15339 * testsuite/libgomp.fortran/target4.f90: New test.
15340 * testsuite/libgomp.fortran/target5.f90: New test.
15341 * testsuite/libgomp.fortran/target6.f90: New test.
15342 * testsuite/libgomp.fortran/target7.f90: New test.
15343
92d28cbb
JJ
153442014-06-10 Jakub Jelinek <jakub@redhat.com>
15345
15346 PR fortran/60928
15347 * testsuite/libgomp.fortran/allocatable9.f90: New test.
15348 * testsuite/libgomp.fortran/allocatable10.f90: New test.
15349 * testsuite/libgomp.fortran/allocatable11.f90: New test.
15350 * testsuite/libgomp.fortran/allocatable12.f90: New test.
15351 * testsuite/libgomp.fortran/alloc-comp-1.f90: New test.
15352 * testsuite/libgomp.fortran/alloc-comp-2.f90: New test.
15353 * testsuite/libgomp.fortran/alloc-comp-3.f90: New test.
15354 * testsuite/libgomp.fortran/associate1.f90: New test.
15355 * testsuite/libgomp.fortran/associate2.f90: New test.
15356 * testsuite/libgomp.fortran/procptr1.f90: New test.
15357
5f23671d
JJ
153582014-06-06 Jakub Jelinek <jakub@redhat.com>
15359
15360 * testsuite/libgomp.fortran/simd1.f90: New test.
15361 * testsuite/libgomp.fortran/udr1.f90: New test.
15362 * testsuite/libgomp.fortran/udr2.f90: New test.
15363 * testsuite/libgomp.fortran/udr3.f90: New test.
15364 * testsuite/libgomp.fortran/udr4.f90: New test.
15365 * testsuite/libgomp.fortran/udr5.f90: New test.
15366 * testsuite/libgomp.fortran/udr6.f90: New test.
15367 * testsuite/libgomp.fortran/udr7.f90: New test.
15368 * testsuite/libgomp.fortran/udr8.f90: New test.
15369 * testsuite/libgomp.fortran/udr9.f90: New test.
15370 * testsuite/libgomp.fortran/udr10.f90: New test.
15371 * testsuite/libgomp.fortran/udr11.f90: New test.
15372
0389fbb5
UB
153732014-05-27 Uros Bizjak <ubizjak@gmail.com>
15374
15375 * testsuite/libgomp.fortran/declare-simd-1.f90: Require
15376 vect_simd_clones effective target.
15377 * testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.
15378
decaaec8
JJ
153792014-05-21 Jakub Jelinek <jakub@redhat.com>
15380
15381 PR middle-end/61252
15382 * testsuite/libgomp.c++/simd-9.C: New test.
15383
72832460
UB
153842014-05-18 Uros Bizjak <ubizjak@gmail.com>
15385
15386 * libgomp.texi (Runitme Library Routines): Remove multiple @menu.
15387 (Environment Variables) Move OMP_PROC_BIND and OMP_STACKSIZE node
15388 texts according to their @menu entry positions.
15389
dd2fc525
JJ
153902014-05-11 Jakub Jelinek <jakub@redhat.com>
15391
15392 * testsuite/libgomp.fortran/cancel-do-1.f90: New test.
15393 * testsuite/libgomp.fortran/cancel-do-2.f90: New test.
15394 * testsuite/libgomp.fortran/cancel-parallel-1.f90: New test.
15395 * testsuite/libgomp.fortran/cancel-parallel-3.f90: New test.
15396 * testsuite/libgomp.fortran/cancel-sections-1.f90: New test.
15397 * testsuite/libgomp.fortran/cancel-taskgroup-2.f90: New test.
15398 * testsuite/libgomp.fortran/declare-simd-1.f90: New test.
15399 * testsuite/libgomp.fortran/declare-simd-2.f90: New test.
15400 * testsuite/libgomp.fortran/declare-simd-3.f90: New test.
15401 * testsuite/libgomp.fortran/depend-1.f90: New test.
15402 * testsuite/libgomp.fortran/depend-2.f90: New test.
15403 * testsuite/libgomp.fortran/omp_atomic5.f90: New test.
15404 * testsuite/libgomp.fortran/simd1.f90: New test.
15405 * testsuite/libgomp.fortran/simd2.f90: New test.
15406 * testsuite/libgomp.fortran/simd3.f90: New test.
15407 * testsuite/libgomp.fortran/simd4.f90: New test.
15408 * testsuite/libgomp.fortran/taskgroup1.f90: New test.
15409
95782571
JJ
154102014-05-02 Jakub Jelinek <jakub@redhat.com>
15411
15412 * testsuite/libgomp.c/simd-10.c: New test.
15413 * testsuite/libgomp.c/simd-11.c: New test.
15414 * testsuite/libgomp.c/simd-12.c: New test.
15415 * testsuite/libgomp.c/simd-13.c: New test.
15416
f7468577
JJ
154172014-04-24 Jakub Jelinek <jakub@redhat.com>
15418
42056eac
JJ
15419 * testsuite/libgomp.c++/atomic-14.C: Allow seq_cst and
15420 atomic type clauses in any order and optional comma in between.
15421 * testsuite/libgomp.c++/atomic-15.C: Likewise.
15422 * testsuite/libgomp.c/atomic-17.c: Likewise.
15423
f7468577
JJ
15424 * testsuite/libgomp.c/simd-7.c: New test.
15425 * testsuite/libgomp.c/simd-8.c: New test.
15426 * testsuite/libgomp.c/simd-9.c: New test.
15427 * testsuite/libgomp.c/loop-16.c: New test.
15428
ab18f2f5
RH
154292014-04-02 Richard Henderson <rth@redhat.com>
15430
15431 * config/linux/futex.h (futex_wait): Get error value from errno.
15432 (futex_wake): Likewise.
15433
8bcc90b0
JJ
154342014-03-25 Jakub Jelinek <jakub@redhat.com>
15435
15436 PR c++/60331
15437 * testsuite/libgomp.c++/udr-11.C: New test.
15438 * testsuite/libgomp.c++/udr-12.C: New test.
15439 * testsuite/libgomp.c++/udr-13.C: New test.
15440 * testsuite/libgomp.c++/udr-14.C: New test.
15441 * testsuite/libgomp.c++/udr-15.C: New test.
15442 * testsuite/libgomp.c++/udr-16.C: New test.
15443 * testsuite/libgomp.c++/udr-17.C: New test.
15444 * testsuite/libgomp.c++/udr-18.C: New test.
15445 * testsuite/libgomp.c++/udr-19.C: New test.
15446
18d73c7f
RS
154472014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
15448
15449 Update copyright years
15450
f9030485
RS
154512014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
15452
15453 * hashtab.h: Use the standard form for the copyright notice.
15454
98db73df
TB
154552014-01-02 Tobias Burnus <burnus@net-b.de>
15456
15457 * libgomp.texi: Bump @copying's copyright year.
15458
ae246f7f
AT
154592013-12-17 Andreas Tobler <andreast@gcc.gnu.org>
15460
93d90219 15461 * testsuite/libgomp.c/affinity-1.c: Remove alloca.h include. Replace
ae246f7f
AT
15462 alloca () with __builtin_alloca ().
15463 * testsuite/libgomp.c/icv-2.c: Add FreeBSD coverage.
15464 * testsuite/libgomp.c/lock-3.c: Likewise.
15465 * testsuite/libgomp.c/pr48591.c: Likewise.
15466
fa00a5fe
JJ
154672013-12-17 Jakub Jelinek <jakub@redhat.com>
15468
15469 PR testsuite/59534
15470 * testsuite/libgomp.fortran/retval1.f90 (e5): Avoid non-shortcircuited
15471 comparisons.
15472
e9792e1d
JJ
154732013-12-16 Jakub Jelinek <jakub@redhat.com>
15474
15475 PR libgomp/58756
15476 * testsuite/libgomp.c/pr58756.c: New test.
15477
cab37c89
JJ
154782013-12-12 Jakub Jelinek <jakub@redhat.com>
15479
15480 PR libgomp/59467
15481 * testsuite/libgomp.fortran/crayptr2.f90: Add private (d) clause to
15482 !$omp parallel.
15483
de14871c
TS
154842013-11-07 Thomas Schwinge <thomas@codesourcery.com>
15485
1707a5de
TS
15486 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -fopenmp to
15487 ALWAYS_CFLAGS.
15488 * testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Add -fopenmp.
15489 * testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
15490 * testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
15491 * testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
15492 Likewise.
15493
70f05c43
TS
15494 * libgomp_g.h: Include <stddef.h> for size_t.
15495
de14871c
TS
15496 * libgomp.spec.in: Update comment about libgomp's dependencies.
15497 * configure.ac: Likewise.
15498 * configure: Regenerate.
15499
83fd6c5b
TB
155002013-10-16 Tobias Burnus <burnus@net-b.de>
15501
15502 * libgomp.texi: (Runtime Library Routines): Update references for
15503 OpenMP 4.0. Add omp_get_cancellation, omp_get_default_device,
15504 omp_get_num_devices, omp_get_num_teams, omp_get_proc_bind,
15505 omp_get_team_num, omp_is_initial_device, omp_set_default_device.
15506 (Environment Variables): Update references for OpenMP 4.0. Add
15507 OMP_CANCELLATION, OMP_DEFAULT_DEVICE, OMP_PLACES.
15508 Move OMP_DISPLAY_ENV and OMP_PROC_BIND up to be in alphabetical
15509 order.
15510
c8673881
JJ
155112013-10-14 Jakub Jelinek <jakub@redhat.com>
15512
15513 * env.c (parse_bind_var): Initialize value to avoid
15514 (false positive) warning.
15515
f89163fd
JJ
155162013-10-12 Jakub Jelinek <jakub@redhat.com>
15517
15518 PR libgomp/58691
15519 * config/linux/proc.c (gomp_cpuset_popcount): Add unused attribute
15520 to check variable.
15521 (gomp_init_num_threads): Move i variable declaration into
15522 #ifdef CPU_ALLOC_SIZE block.
15523 * config/linux/affinity.c (gomp_affinity_init_level): Test
15524 gomp_places_list_len == 0 rather than gomp_places_list == 0
15525 when checking for topology reading error.
15526 * team.c (gomp_team_start): Don't handle bind == omp_proc_bind_false.
15527 * env.c (parse_affinity): Add ignore argument, if true, don't populate
15528 gomp_places_list, only parse env var and always return false.
15529 (parse_places_var): Likewise. Don't check gomp_global_icv.bind_var.
15530 (initialize_env): Always parse OMP_PLACES and GOMP_CPU_AFFINITY env
15531 vars, default to OMP_PROC_BIND=true if OMP_PROC_BIND wasn't specified
15532 and either of these variables were parsed correctly into a places
15533 list.
15534
1d340638
TS
155352013-10-11 Thomas Schwinge <thomas@codesourcery.com>
15536 Jakub Jelinek <jakub@redhat.com>
15537
15538 * testsuite/libgomp.graphite/force-parallel-1.c: Expect 4 instead
15539 of 5 loopfn matches.
15540 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
15541 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
15542 * testsuite/libgomp.graphite/force-parallel-4.c: Likewise.
15543 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
15544 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
15545 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
15546 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
15547 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
15548
71a81c21
TS
155492013-10-11 Thomas Schwinge <thomas@codesourcery.com>
15550
bd87f731
TS
15551 * Makefile.am (omp_lib.mod): Streamline rule.
15552 * Makefile.in: Regenerate.
15553
f5745bed
TS
15554 * libgomp.texi (Runtime Library Routines): C linkage, don't throw
15555 exceptions.
15556
b5512c66
TS
15557 * testsuite/libgomp.c/lib-1.c (main): Add missing error check.
15558 * testsuite/libgomp.fortran/lib1.f90: Likewise.
15559 * testsuite/libgomp.fortran/lib2.f: Likewise.
15560 * testsuite/libgomp.fortran/lib3.f: Likewise.
15561
451c19c4
TS
15562 * configure.ac: Typo fix.
15563 * configure: Regenerate.
15564
86a6016d
TS
15565 * testsuite/libgomp.fortran/openmp_version-1.f: New file.
15566 * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.
15567
71a81c21
TS
15568 * omp.h.in: Don't touch the user's namespace.
15569
acf0174b
JJ
155702013-10-11 Jakub Jelinek <jakub@redhat.com>
15571 Tobias Burnus <burnus@net-b.de>
15572 Richard Henderson <rth@redhat.com>
15573
15574 * target.c: New file.
15575 * Makefile.am (libgomp_la_SOURCES): Add target.c.
15576 * Makefile.in: Regenerated.
15577 * libgomp_g.h (GOMP_task): Add depend argument.
15578 (GOMP_barrier_cancel, GOMP_loop_end_cancel,
15579 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
15580 GOMP_target_end_data, GOMP_target_update, GOMP_teams,
15581 GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
15582 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
15583 GOMP_parallel, GOMP_cancel, GOMP_cancellation_point,
15584 GOMP_taskgroup_start, GOMP_taskgroup_end,
15585 GOMP_parallel_sections): New prototypes.
15586 * fortran.c (omp_is_initial_device): Add ialias_redirect.
15587 (omp_is_initial_device_): New function.
15588 (ULP, STR1, STR2, ialias_redirect): Removed.
15589 (omp_get_cancellation_, omp_get_proc_bind_, omp_set_default_device_,
15590 omp_set_default_device_8_, omp_get_default_device_,
15591 omp_get_num_devices_, omp_get_num_teams_, omp_get_team_num_): New
15592 functions.
15593 * libgomp.map (GOMP_barrier_cancel, GOMP_loop_end_cancel,
15594 GOMP_sections_end_cancel, GOMP_target, GOMP_target_data,
15595 GOMP_target_end_data, GOMP_target_update, GOMP_teams): Export
15596 @@GOMP_4.0.
15597 (omp_is_initial_device, omp_is_initial_device_, omp_get_cancellation,
15598 omp_get_cancellation_, omp_get_proc_bind, omp_get_proc_bind_,
15599 omp_set_default_device, omp_set_default_device_,
15600 omp_set_default_device_8_, omp_get_default_device,
15601 omp_get_default_device_, omp_get_num_devices, omp_get_num_devices_,
15602 omp_get_num_teams, omp_get_num_teams_, omp_get_team_num,
15603 omp_get_team_num_): Export @@OMP_4.0.
15604 * team.c (struct gomp_thread_start_data): Add place field.
15605 (gomp_thread_start): Clear thr->thread_pool and
15606 thr->task before returning. Use gomp_team_barrier_wait_final
15607 instead of gomp_team_barrier_wait. Initialize thr->place.
15608 (gomp_new_team): Initialize work_shares_to_free, work_share_cancelled,
15609 team_cancelled and task_queued_count fields.
15610 (gomp_free_pool_helper): Clear thr->thread_pool and thr->task
15611 before calling pthread_exit.
15612 (gomp_free_thread): No longer static. Use
15613 gomp_managed_threads_lock instead of gomp_remaining_threads_lock.
15614 (gomp_team_start): Add flags argument. Set
15615 thr->thread_pool->threads_busy to nthreads immediately after creating
15616 new pool. Use gomp_managed_threads_lock instead of
15617 gomp_remaining_threads_lock. Handle OpenMP 4.0 affinity.
15618 (gomp_team_end): Use gomp_managed_threads_lock instead of
15619 gomp_remaining_threads_lock. Use gomp_team_barrier_wait_final instead
15620 of gomp_team_barrier_wait. If team->team_cancelled, call
93d90219 15621 gomp_fini_workshare on ws chain starting at team->work_shares_to_free
acf0174b
JJ
15622 rather than thr->ts.work_share.
15623 (initialize_team): Don't call gomp_sem_init here.
15624 * sections.c (GOMP_parallel_sections_start): Adjust gomp_team_start
15625 caller.
15626 (GOMP_parallel_sections, GOMP_sections_end_cancel): New functions.
15627 * env.c (gomp_global_icv): Add default_device_var, target_data and
15628 bind_var initializers.
15629 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
15630 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
15631 gomp_places_list_len): New variables.
15632 (parse_bind_var, parse_one_place, parse_places_var): New functions.
15633 (parse_affinity): Rewritten to construct OMP_PLACES list with unit
15634 sized places.
15635 (gomp_cancel_var): New global variable.
15636 (parse_int): New function.
15637 (handle_omp_display_env): New function.
15638 (initialize_env): Use it. Initialize default_device_var.
15639 Parse OMP_CANCELLATION env var. Use parse_bind_var to parse
15640 OMP_PROC_BIND instead of parse_boolean. Use parse_places_var for
15641 OMP_PLACES parsing. Don't call parse_affinity if OMP_PLACES has
15642 been successfully parsed (and call gomp_init_affinity in that case).
15643 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
15644 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
15645 omp_get_team_num, omp_is_initial_device): New functions.
15646 * libgomp.h: Include stdlib.h.
15647 (ialias_ulp, ialias_str1, ialias_str2, ialias_redirect, ialias_call):
15648 Define.
15649 (struct target_mem_desc): Forward declare.
15650 (struct gomp_task_icv): Add default_device_var, target_data, bind_var
15651 and thread_limit_var fields.
15652 (gomp_get_num_devices): New prototype.
15653 (gomp_cancel_var): New extern decl.
15654 (struct gomp_team): Add work_shares_to_free, work_share_cancelled,
15655 team_cancelled and task_queued_count fields. Add comments about
15656 task_{,queued_,running_}count.
15657 (gomp_cancel_kind): New enum.
15658 (gomp_work_share_end_cancel): New prototype.
15659 (struct gomp_task): Add next_taskgroup, prev_taskgroup, taskgroup,
15660 copy_ctors_done, dependers, depend_hash, depend_count, num_dependees
15661 and depend fields.
15662 (struct gomp_taskgroup): New type.
15663 (struct gomp_task_depend_entry,
15664 struct gomp_dependers_vec): New types.
15665 (gomp_finish_task): Free depend_hash if non-NULL.
15666 (struct gomp_team_state): Add place_partition_off
15667 and place_partition_len fields.
15668 (gomp_bind_var_list, gomp_bind_var_list_len, gomp_places_list,
15669 gomp_places_list_len): New extern decls.
15670 (struct gomp_thread): Add place field.
15671 (gomp_cpu_affinity, gomp_cpu_affinity_len): Remove.
15672 (gomp_init_thread_affinity): Add place argument.
15673 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
15674 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
15675 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
15676 gomp_affinity_init_level, gomp_affinity_print_place): New
15677 prototypes.
15678 (gomp_team_start): Add flags argument.
15679 (gomp_thread_limit_var, gomp_remaining_threads_count,
15680 gomp_remaining_threads_lock): Remove.
15681 (gomp_managed_threads_lock): New variable.
15682 (struct gomp_thread_pool): Add threads_busy field.
15683 (gomp_free_thread): New prototype.
15684 * task.c: Include hashtab.h.
15685 (hash_entry_type): New typedef.
15686 (htab_alloc, htab_free, htab_hash, htab_eq): New inlines.
15687 (gomp_init_task): Clear dependers, depend_hash, depend_count,
15688 copy_ctors_done and taskgroup fields.
15689 (GOMP_task): Add depend argument, handle depend clauses. If
15690 gomp_team_barrier_cancelled or if it's taskgroup has been
15691 cancelled, don't queue or start new tasks. Set copy_ctors_done
15692 field if needed. Initialize taskgroup field. If copy_ctors_done
15693 and already cancelled, don't discard the task. If taskgroup is
15694 non-NULL, enqueue the task into taskgroup queue. Increment
15695 num_children field in taskgroup. Increment task_queued_count.
15696 (gomp_task_run_pre, gomp_task_run_post_remove_parent,
15697 gomp_task_run_post_remove_taskgroup): New inline functions.
15698 (gomp_task_run_post_handle_depend_hash,
15699 gomp_task_run_post_handle_dependers,
15700 gomp_task_run_post_handle_depend): New functions.
15701 (GOMP_taskwait): Use them. If more than one new tasks
15702 have been queued, wake other threads if needed.
15703 (gomp_barrier_handle_tasks): Likewise. If
15704 gomp_team_barrier_cancelled, don't start any new tasks, just free
15705 all tasks.
15706 (GOMP_taskgroup_start, GOMP_taskgroup_end): New functions.
15707 * omp_lib.f90.in
15708 (omp_proc_bind_kind, omp_proc_bind_false,
15709 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
15710 omp_proc_bind_spread): New params.
15711 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
15712 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
15713 omp_get_team_num, omp_is_initial_device): New interfaces.
15714 (omp_get_dynamic, omp_get_nested, omp_in_parallel,
15715 omp_get_max_threads, omp_get_num_procs, omp_get_num_threads,
15716 omp_get_thread_num, omp_get_thread_limit, omp_set_max_active_levels,
15717 omp_get_max_active_levels, omp_get_level, omp_get_ancestor_thread_num,
15718 omp_get_team_size, omp_get_active_level, omp_in_final): Remove
15719 useless use omp_lib_kinds.
15720 * omp.h.in (omp_proc_bind_t): New typedef.
15721 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
15722 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
15723 omp_get_team_num, omp_is_initial_device): New prototypes.
15724 * loop.c (gomp_parallel_loop_start): Add flags argument, pass it
15725 through to gomp_team_start.
15726 (GOMP_parallel_loop_static_start, GOMP_parallel_loop_dynamic_start,
15727 GOMP_parallel_loop_guided_start, GOMP_parallel_loop_runtime_start):
15728 Adjust gomp_parallel_loop_start callers.
15729 (GOMP_parallel_loop_static, GOMP_parallel_loop_dynamic,
15730 GOMP_parallel_loop_guided, GOMP_parallel_loop_runtime,
15731 GOMP_loop_end_cancel): New functions.
15732 (GOMP_parallel_end): Add ialias_redirect.
15733 * hashtab.h: New file.
15734 * libgomp.texi (Environment Variables): Minor cleanup,
15735 update section refs to OpenMP 4.0rc2.
15736 (OMP_DISPLAY_ENV, GOMP_SPINCOUNT): Document these
15737 environment variables.
15738 * work.c (gomp_work_share_end, gomp_work_share_end_nowait): Set
15739 team->work_shares_to_free to thr->ts.work_share before calling
15740 free_work_share.
15741 (gomp_work_share_end_cancel): New function.
15742 * config/linux/proc.c: Include errno.h.
15743 (gomp_get_cpuset_size, gomp_cpuset_size, gomp_cpusetp): New variables.
15744 (gomp_cpuset_popcount): Add cpusetsize argument, use it instead of
15745 sizeof (cpu_set_t) to determine number of iterations. Fix up check
15746 extern decl. Use CPU_COUNT_S if available, or CPU_COUNT if
15747 gomp_cpuset_size is sizeof (cpu_set_t).
15748 (gomp_init_num_threads): Initialize gomp_cpuset_size,
15749 gomp_get_cpuset_size and gomp_cpusetp here, use gomp_cpusetp instead
15750 of &cpuset and pass gomp_cpuset_size instead of sizeof (cpu_set_t)
15751 to pthread_getaffinity_np. Free and clear gomp_cpusetp if it didn't
15752 contain any logical CPUs.
15753 (get_num_procs): Don't call pthread_getaffinity_np if gomp_cpusetp
15754 is NULL. Use gomp_cpusetp instead of &cpuset and pass
15755 gomp_get_cpuset_size instead of sizeof (cpu_set_t) to
15756 pthread_getaffinity_np. Check gomp_places_list instead of
15757 gomp_cpu_affinity. Adjust gomp_cpuset_popcount caller.
15758 * config/linux/bar.c (gomp_barrier_wait_end,
15759 gomp_barrier_wait_last): Use BAR_* defines.
15760 (gomp_team_barrier_wait_end): Likewise. Clear BAR_CANCELLED
15761 from state where needed. Set work_share_cancelled to 0 on last
15762 thread.
15763 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel_end,
15764 gomp_team_barrier_wait_cancel, gomp_team_barrier_cancel): New
15765 functions.
15766 * config/linux/proc.h (gomp_cpuset_popcount): Add attribute_hidden.
15767 Add cpusetsize argument.
15768 (gomp_cpuset_size, gomp_cpusetp): Declare.
15769 * config/linux/affinity.c: Include errno.h, stdio.h and string.h.
15770 (affinity_counter): Remove.
15771 (CPU_ISSET_S, CPU_ZERO_S, CPU_SET_S, CPU_CLR_S): Define
15772 if CPU_ALLOC_SIZE isn't defined.
15773 (gomp_init_affinity): Rewritten, if gomp_places_list is NULL, try
15774 silently create OMP_PLACES=threads, if it is non-NULL afterwards,
15775 bind current thread to the first place.
15776 (gomp_init_thread_affinity): Rewritten. Add place argument, just
15777 pthread_setaffinity_np to gomp_places_list[place].
15778 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
15779 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
15780 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
15781 gomp_affinity_init_level, gomp_affinity_print_place): New functions.
15782 * config/linux/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
15783 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
15784 (gomp_barrier_t): Add awaited_final field.
15785 (gomp_barrier_init): Initialize awaited_final field.
15786 (gomp_team_barrier_wait_final, gomp_team_barrier_wait_cancel,
15787 gomp_team_barrier_wait_cancel_end, gomp_team_barrier_cancel): New
15788 prototypes.
15789 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit. Use BAR_*
15790 defines.
15791 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final_start,
15792 gomp_team_barrier_cancelled): New inline functions.
15793 (gomp_barrier_last_thread,
15794 gomp_team_barrier_set_task_pending,
15795 gomp_team_barrier_clear_task_pending,
15796 gomp_team_barrier_set_waiting_for_tasks,
15797 gomp_team_barrier_waiting_for_tasks,
15798 gomp_team_barrier_done): Use BAR_* defines.
15799 * config/posix/bar.c (gomp_barrier_init): Clear cancellable field.
15800 (gomp_barrier_wait_end): Use BAR_* defines.
15801 (gomp_team_barrier_wait_end): Clear BAR_CANCELLED from state.
15802 Set work_share_cancelled to 0 on last thread, use __atomic_load_n.
15803 Use BAR_* defines.
15804 (gomp_team_barrier_wait_cancel_end, gomp_team_barrier_wait_cancel,
15805 gomp_team_barrier_cancel): New functions.
15806 * config/posix/affinity.c (gomp_init_thread_affinity): Add place
15807 argument.
15808 (gomp_affinity_alloc, gomp_affinity_init_place, gomp_affinity_add_cpus,
15809 gomp_affinity_remove_cpu, gomp_affinity_copy_place,
15810 gomp_affinity_same_place, gomp_affinity_finalize_place_list,
15811 gomp_affinity_init_level, gomp_affinity_print_place): New stubs.
15812 * config/posix/bar.h (BAR_TASK_PENDING, BAR_WAS_LAST,
15813 BAR_WAITING_FOR_TASK, BAR_INCR, BAR_CANCELLED): Define.
15814 (gomp_barrier_t): Add cancellable field.
15815 (gomp_team_barrier_wait_cancel, gomp_team_barrier_wait_cancel_end,
15816 gomp_team_barrier_cancel): New prototypes.
15817 (gomp_barrier_wait_start): Preserve BAR_CANCELLED bit.
15818 (gomp_barrier_wait_cancel_start, gomp_team_barrier_wait_final,
15819 gomp_team_barrier_cancelled): New inline functions.
15820 (gomp_barrier_wait_start, gomp_barrier_last_thread,
15821 gomp_team_barrier_set_task_pending,
15822 gomp_team_barrier_clear_task_pending,
15823 gomp_team_barrier_set_waiting_for_tasks,
15824 gomp_team_barrier_waiting_for_tasks,
15825 gomp_team_barrier_done): Use BAR_* defines.
15826 * barrier.c (GOMP_barrier_cancel): New function.
15827 * omp_lib.h.in (omp_proc_bind_kind, omp_proc_bind_false,
15828 omp_proc_bind_true, omp_proc_bind_master, omp_proc_bind_close,
15829 omp_proc_bind_spread): New params.
15830 (omp_get_cancellation, omp_get_proc_bind, omp_set_default_device,
15831 omp_get_default_device, omp_get_num_devices, omp_get_num_teams,
15832 omp_get_team_num, omp_is_initial_device): New externals.
15833 * parallel.c (GOMP_parallel, GOMP_cancel, GOMP_cancellation_point):
15834 New functions.
15835 (gomp_resolve_num_threads): Adjust for thread_limit now being in
15836 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
15837 infinity. If not nested, just return minimum of max_num_threads
15838 and icv->thread_limit_var and if thr->thread_pool, set threads_busy
15839 to the returned value. Otherwise, don't update atomically
15840 gomp_remaining_threads_count, but instead thr->thread_pool->threads_busy.
15841 (GOMP_parallel_end): Adjust for thread_limit now being in
15842 icv->thread_limit_var. Use UINT_MAX instead of ULONG_MAX as
15843 infinity. Adjust threads_busy in the pool rather than
15844 gomp_remaining_threads_count. Remember team->nthreads and call
15845 gomp_team_end before adjusting threads_busy, if not nested
15846 afterwards, just set it to 1 non-atomically. Add ialias.
15847 (GOMP_parallel_start): Adjust gomp_team_start caller.
15848 * testsuite/libgomp.c/atomic-14.c: Add parens to make it valid.
15849 * testsuite/libgomp.c/affinity-1.c: New test.
15850 * testsuite/libgomp.c/atomic-15.c: New test.
15851 * testsuite/libgomp.c/atomic-16.c: New test.
15852 * testsuite/libgomp.c/atomic-17.c: New test.
15853 * testsuite/libgomp.c/cancel-for-1.c: New test.
15854 * testsuite/libgomp.c/cancel-for-2.c: New test.
15855 * testsuite/libgomp.c/cancel-parallel-1.c: New test.
15856 * testsuite/libgomp.c/cancel-parallel-2.c: New test.
15857 * testsuite/libgomp.c/cancel-parallel-3.c: New test.
15858 * testsuite/libgomp.c/cancel-sections-1.c: New test.
15859 * testsuite/libgomp.c/cancel-taskgroup-1.c: New test.
15860 * testsuite/libgomp.c/cancel-taskgroup-2.c: New test.
15861 * testsuite/libgomp.c/depend-1.c: New test.
15862 * testsuite/libgomp.c/depend-2.c: New test.
15863 * testsuite/libgomp.c/depend-3.c: New test.
15864 * testsuite/libgomp.c/depend-4.c: New test.
15865 * testsuite/libgomp.c/for-1.c: New test.
15866 * testsuite/libgomp.c/for-1.h: New file.
15867 * testsuite/libgomp.c/for-2.c: New test.
15868 * testsuite/libgomp.c/for-2.h: New file.
15869 * testsuite/libgomp.c/for-3.c: New test.
15870 * testsuite/libgomp.c/pr58392.c: New test.
15871 * testsuite/libgomp.c/simd-1.c: New test.
15872 * testsuite/libgomp.c/simd-2.c: New test.
15873 * testsuite/libgomp.c/simd-3.c: New test.
15874 * testsuite/libgomp.c/simd-4.c: New test.
15875 * testsuite/libgomp.c/simd-5.c: New test.
15876 * testsuite/libgomp.c/simd-6.c: New test.
15877 * testsuite/libgomp.c/target-1.c: New test.
15878 * testsuite/libgomp.c/target-2.c: New test.
15879 * testsuite/libgomp.c/target-3.c: New test.
15880 * testsuite/libgomp.c/target-4.c: New test.
15881 * testsuite/libgomp.c/target-5.c: New test.
15882 * testsuite/libgomp.c/target-6.c: New test.
15883 * testsuite/libgomp.c/target-7.c: New test.
15884 * testsuite/libgomp.c/taskgroup-1.c: New test.
15885 * testsuite/libgomp.c/thread-limit-1.c: New test.
15886 * testsuite/libgomp.c/thread-limit-2.c: New test.
15887 * testsuite/libgomp.c/thread-limit-3.c: New test.
15888 * testsuite/libgomp.c/udr-1.c: New test.
15889 * testsuite/libgomp.c/udr-2.c: New test.
15890 * testsuite/libgomp.c/udr-3.c: New test.
15891 * testsuite/libgomp.c++/affinity-1.C: New test.
15892 * testsuite/libgomp.c++/atomic-10.C: New test.
15893 * testsuite/libgomp.c++/atomic-11.C: New test.
15894 * testsuite/libgomp.c++/atomic-12.C: New test.
15895 * testsuite/libgomp.c++/atomic-13.C: New test.
15896 * testsuite/libgomp.c++/atomic-14.C: New test.
15897 * testsuite/libgomp.c++/atomic-15.C: New test.
15898 * testsuite/libgomp.c++/cancel-for-1.C: New test.
15899 * testsuite/libgomp.c++/cancel-for-2.C: New test.
15900 * testsuite/libgomp.c++/cancel-parallel-1.C: New test.
15901 * testsuite/libgomp.c++/cancel-parallel-2.C: New test.
15902 * testsuite/libgomp.c++/cancel-parallel-3.C: New test.
15903 * testsuite/libgomp.c++/cancel-sections-1.C: New test.
15904 * testsuite/libgomp.c++/cancel-taskgroup-1.C: New test.
15905 * testsuite/libgomp.c++/cancel-taskgroup-2.C: New test.
15906 * testsuite/libgomp.c++/cancel-taskgroup-3.C: New test.
15907 * testsuite/libgomp.c++/cancel-test.h: New file.
15908 * testsuite/libgomp.c++/for-9.C: New test.
15909 * testsuite/libgomp.c++/for-10.C: New test.
15910 * testsuite/libgomp.c++/for-11.C: New test.
15911 * testsuite/libgomp.c++/simd-1.C: New test.
15912 * testsuite/libgomp.c++/simd-2.C: New test.
15913 * testsuite/libgomp.c++/simd-3.C: New test.
15914 * testsuite/libgomp.c++/simd-4.C: New test.
15915 * testsuite/libgomp.c++/simd-5.C: New test.
15916 * testsuite/libgomp.c++/simd-6.C: New test.
15917 * testsuite/libgomp.c++/simd-7.C: New test.
15918 * testsuite/libgomp.c++/simd-8.C: New test.
15919 * testsuite/libgomp.c++/target-1.C: New test.
15920 * testsuite/libgomp.c++/target-2.C: New test.
15921 * testsuite/libgomp.c++/target-2-aux.cc: New file.
15922 * testsuite/libgomp.c++/target-3.C: New test.
15923 * testsuite/libgomp.c++/taskgroup-1.C: New test.
15924 * testsuite/libgomp.c++/udr-1.C: New test.
15925 * testsuite/libgomp.c++/udr-2.C: New test.
15926 * testsuite/libgomp.c++/udr-3.C: New test.
15927 * testsuite/libgomp.c++/udr-4.C: New test.
15928 * testsuite/libgomp.c++/udr-5.C: New test.
15929 * testsuite/libgomp.c++/udr-6.C: New test.
15930 * testsuite/libgomp.c++/udr-7.C: New test.
15931 * testsuite/libgomp.c++/udr-8.C: New test.
15932 * testsuite/libgomp.c++/udr-9.C: New test.
15933
bd599dea
JJ
159342013-09-20 Jakub Jelinek <jakub@redhat.com>
15935
15936 PR testsuite/57605
15937 * testsuite/lib/libgomp.exp: Add -fdiagnostics-color=never to
15938 ALWAYS_CFLAGS.
15939
3cbe17f7
AM
159402013-09-20 Alan Modra <amodra@gmail.com>
15941
15942 * configure: Regenerate.
15943
4befd127
JJ
159442013-09-19 Jakub Jelinek <jakub@redhat.com>
15945
15946 * testsuite/libgomp.c/sections-2.c: New test.
15947
946c8f7b
MS
159482013-06-28 Marcus Shawcroft <marcus.shawcroft@arm.com>
15949
15950 * testsuite/libgomp.fortran/strassen.f90:
15951 Add dg-skip-if aarch64_tiny.
15952
1ef3b58e
IS
159532013-06-20 Iain Sandoe <iain@codesourcery.com>
15954 Cesar Philippidis <cesar@codesourcery.com>
15955
15956 * testsuite/lib/libgomp.exp: Reorder lib loads into dependency order.
15957 Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
15958 * testsuite/libgomp.c/c.exp: load_gcc_lib gcc-dg.exp.
15959 * testsuite/libgomp.fortran/fortran.exp: Likewise.
15960 * testsuite/libgomp.graphite/graphite.exp: Likewise.
15961 * testsuite/libgomp.c++/c++.exp: load_gcc_lib gcc-dg.exp.
15962 Use dg-runtest rather than gfortran-dg-runtest.
15963
9275f73a
TS
159642013-06-10 Thomas Schwinge <thomas@codesourcery.com>
15965
15966 * testsuite/libgomp.c/icv-2.c: Extend current handling of
15967 Linux-based x86 systems to cover all GNU systems.
15968 * testsuite/libgomp.c/lock-3.c: Likewise.
15969 * testsuite/libgomp.c/pr48591.c: Likewise.
15970
492992e2
TS
159712013-06-06 Thomas Schwinge <thomas@codesourcery.com>
15972
48df3acb
TS
15973 * configure.tgt (XCFLAGS): Add -ftls-model=initial-exec for
15974 GNU/Hurd, as done for Linux-based systems.
15975
492992e2
TS
15976 * config/posix/ptrlock.h: Fix comment.
15977
4fed6b25
TB
159782013-05-27 Tobias Burnus <burnus@net-b.de>
15979
15980 PR fortran/57423
15981 * libgomp.texi (omp_set_dynamic, omp_set_nested, omp_set_nested,
15982 omp_set_num_threads, omp_init_lock, omp_set_lock, omp_test_lock,
15983 omp_unset_lock, omp_destroy_lock, omp_init_nest_lock,
15984 omp_set_nest_lock, omp_test_nest_lock, omp_unset_nest_lock,
15985 omp_destroy_nest_lock): Correct arguments to match the one in
15986 the OpenMP spec.
15987 * omp_lib.f90.in (omp_init_lock, omp_init_nest_lock, omp_destroy_lock
15988 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock, omp_unset_lock,
15989 omp_unset_nest_lock, omp_set_dynamic, omp_set_nested,
15990 omp_set_num_threads, omp_test_lock, omp_test_nest_lock): Ditto.
15991
5a0f4dd3
JJ
159922013-05-16 Jakub Jelinek <jakub@redhat.com>
15993
15994 * testsuite/libgomp.c/loop-13.c: New test.
15995 * testsuite/libgomp.c/loop-14.c: New test.
15996 * testsuite/libgomp.c/loop-15.c: New test.
15997 * testsuite/libgomp.c++/loop-13.C: New test.
15998 * testsuite/libgomp.c++/loop-14.C: New test.
15999 * testsuite/libgomp.c++/loop-15.C: New test.
16000
6d840d99
JJ
160012013-02-06 Jakub Jelinek <jakub@redhat.com>
16002
16003 PR middle-end/56217
16004 * testsuite/libgomp.c++/pr56217.C: New test.
16005
bed8d8a6
AM
160062013-02-01 Alan Modra <amodra@gmail.com>
16007
16008 * task.c (GOMP_task, GOMP_taskwait): Comment.
16009
3b35cd04
DV
160102013-01-31 Dmitry Vyukov <dvyukov@gcc.gnu.org>
16011 Joost VandeVondele <Joost.VandeVondele@mat.ethz.ch>
16012
16013 PR libgomp/55561
16014 * config/linux/wait.h (do_spin): Use atomic load for addr.
16015 * config/linux/ptrlock.c (gomp_ptrlock_get_slow): Use atomic
16016 for intptr and ptrlock.
16017 * config/linux/ptrlock.h (gomp_ptrlock_get): Use atomic load
16018 for ptrlock.
16019
9a647288
AM
160202013-01-22 Alan Modra <amodra@gmail.com>
16021
16022 PR libgomp/51376
16023 PR libgomp/56073
16024 * task.c (GOMP_task): Revert 2011-12-09 change.
16025 (GOMP_taskwait): Likewise. Instead use atomic load with acquire
16026 barrier to read task->children..
16027 (gomp_barrier_handle_tasks): ..and matching atomic store with
16028 release barrier here when setting parent->children to NULL.
16029
f34dea03
JJ
160302013-01-16 Jakub Jelinek <jakub@redhat.com>
16031 Tobias Burnus <burnus@net-b.de>
16032
16033 PR driver/55884
16034 * testsuite/libgomp.fortran/fortran.exp: Use
16035 -fintrinsic-modules-path= instead of
16036 -fintrinsic-modules-path.
16037
8129609c
RS
160382013-01-14 Richard Sandiford <rdsandiford@googlemail.com>
16039
16040 Update copyright years.
16041
aa86bf1e
TB
160422012-12-19 Tobias Burnus <burnus@net-b.de>
16043
16044 * testsuite/libgomp.fortran/fortran.exp: Set
16045 -fintrinsic-modules-path.
16046
2865ea66
TB
160472012-12-19 Tobias Burnus <burnus@net-b.de>
16048
16049 * testsuite/libgomp.fortran/use_intrinsic_1.f90: New; moved
16050 from gcc/testsuite/gfortran.dg/gomp/use_intrinsic_1.f90.
16051
4c5ba8d0
JJ
160522012-11-21 Jakub Jelinek <jakub@redhat.com>
16053
16054 PR libgomp/55411
16055 * team.c (gomp_free_thread): Decrease gomp_managed_threads
16056 if pool had any threads_used.
16057
e9f958c2
JH
160582012-11-07 Jack Howarth <howarth@bromo.med.uc.edu>
16059
16060 * testsuite/libgomp.c++/pr24455.C: Use
16061 -Wl,-undefined,dynamic_lookup on darwin.
16062
a57d75dc
DE
160632012-11-07 David Edelsohn <dje.gcc@gmail.com>
16064
16065 * testsuite/libgomp.c++/pr24455.C: Use -Wl,-G on AIX.
16066
c6c08485
DH
160672012-10-24 Dominique d'Humieres <dominiq@lps.ens.fr>
16068
16069 * testsuite/libgomp.graphite/force-parallel-6.c: Adjust the loops.
16070
c1f37c00
IB
160712012-10-23 Ian Bolton <ian.bolton@arm.com>
16072 Jim MacArthur <jim.macarthur@arm.com>
16073 Marcus Shawcroft <marcus.shawcroft@arm.com>
16074 Nigel Stephens <nigel.stephens@arm.com>
16075 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
16076 Richard Earnshaw <rearnsha@arm.com>
16077 Sofiane Naci <sofiane.naci@arm.com>
16078 Stephen Thomas <stephen.thomas@arm.com>
16079 Tejas Belagod <tejas.belagod@arm.com>
16080 Yufeng Zhang <yufeng.zhang@arm.com>
16081
16082 * configure.tgt: Add AArch64.
16083
7c424acd
JM
160842012-10-04 Jason Merrill <jason@redhat.com>
16085
16086 * testsuite/libgomp.c++/tls-init1.C: New.
16087
6608378b
DE
160882012-09-14 David Edelsohn <dje.gcc@gmail.com>
16089
16090 * configure: Regenerated.
16091
c24dbebb
CLT
160922012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
16093
16094 * config/linux/mips/futex.h (sys_futex0): Change to static
16095 function with noinline, nomips16 attributes under MIPS16. Adjust
16096 asm statement to place 'li v0,SYS_futex' immediately before
16097 syscall insn.
16098
3d3949df
SL
160992012-07-04 Sandra Loosemore <sandra@codesourcery.com>
16100
16101 * libgomp.texi (Library Index): Renamed from "Index" to prevent
16102 conflict with index.html on case-insensitive file systems.
16103
68a12ef3
UB
161042012-07-03 Uros Bizjak <ubizjak@gmail.com>
16105
16106 * config/linux/x86/futex.h (cpu_relax): Use __builtin_ia32_pause.
16107 * testsuite/libgomp.c/sort-1.c (busy_wait): Ditto.
16108
33ad93b9 161092012-07-02 Richard Guenther <rguenther@suse.de>
68a12ef3
UB
16110 Michael Matz <matz@suse.de>
16111 Tobias Grosser <tobias@grosser.es>
16112 Sebastian Pop <sebpop@gmail.com>
33ad93b9
RG
16113
16114 * testsuite/libgomp.graphite/force-parallel-4.c: Adjust.
16115 * testsuite/libgomp.graphite/force-parallel-5.c: Likewise.
16116 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
16117 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
16118
e6fdc918
AS
161192012-06-28 Andreas Schwab <schwab@linux-m68k.org>
16120
16121 * libgomp.texi: Include gpl_v3.texi instead of gpl.texi.
16122
62e0a1ed
RG
161232012-06-22 Richard Guenther <rguenther@suse.de>
16124
16125 Merge from graphite branch
16126 2012-01-13 Tobias Grosser <tobias@grosser.es>
16127
16128 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
16129 * testsuite/libgomp.graphite/force-parallel-2.c: Likewise.
16130
26127932
JJ
161312012-06-07 Jakub Jelinek <jakub@redhat.com>
16132
16133 PR middle-end/53580
16134 * testsuite/libgomp.c/pr26943-2.c: Remove #pragma omp barrier,
16135 use GOMP_barrier () call instead.
16136 * testsuite/libgomp.c/pr26943-3.c: Likewise.
16137 * testsuite/libgomp.c/pr26943-4.c: Likewise.
16138 * testsuite/libgomp.fortran/vla4.f90: Remove !$omp barrier,
16139 call GOMP_barrier instead.
16140 * testsuite/libgomp.fortran/vla5.f90: Likewise.
16141
43fa5db5
JJ
161422012-06-06 Jakub Jelinek <jakub@redhat.com>
16143
16144 PR libgomp/52993
16145 * config/linux/lock.c (gomp_init_nest_lock_25): Fix up last
16146 argument to memset call.
16147
e6d5f8c9
L
161482012-05-16 H.J. Lu <hongjiu.lu@intel.com>
16149
16150 * configure: Regenerated.
16151
559d990c
MLI
161522012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
16153
16154 * testsuite/lib/libgomp.exp: Add -fno-diagnostics-show-caret.
16155
b9c23a61
L
161562012-03-31 H.J. Lu <hongjiu.lu@intel.com>
16157
16158 PR bootstrap/52812
16159 * configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.
16160
c140ddf3
JJ
161612012-03-22 Jakub Jelinek <jakub@redhat.com>
16162
16163 PR middle-end/52547
16164 * testsuite/libgomp.c/pr52547.c: New test.
16165
6a26a74d
BRF
161662012-03-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
16167
16168 * testsuite/lib/libgomp.exp: load fortran-modules.exp
16169
b24513a1
RO
161702012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16171
16172 * configure.tgt (mips-sgi-irix6*): Remove.
16173
5c30094f
RO
161742012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16175
16176 * configure.tgt (alpha*-dec-osf*): Remove.
16177
16178 * config/osf/sem.h: Remove.
16179 * config/posix/lock.c (_XOPEN_SOURCE): Define unconditionally.
16180
a339c9d6
EB
161812012-02-29 Eric Botcazou <ebotcazou@adacore.com>
16182
16183 * config/linux/sparc/futex.h (cpu_relax): Read from CC register.
16184
cc2de92d
RO
161852012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16186
16187 PR libstdc++/52188
16188 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Remove symvers_renaming.
16189 Remove ENABLE_SYMVERS_SOL2.
16190 * configure: Regenerate.
16191 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB] (comma): New variable.
16192 (PREPROCESS): New variable.
16193 (libgomp.ver): New target.
16194 [LIBGOMP_BUILD_VERSIONED_SHLIB &&
16195 LIBGOMP_BUILD_VERSIONED_SHLIB_GNU]: Remove
16196 LIBGOMP_BUILD_VERSIONED_SHLIB_SOL2 handling.
16197 Use libgomp.ver.
16198 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Use libgomp.ver, libgomp.ver-sun.
16199 * Makefile.in: Regenerate.
16200
dd552284
WL
162012012-02-14 Walter Lee <walt@tilera.com>
16202
16203 * configure.tgt: Handle tilegx and tilepro.
16204 * config/linux/tile/futex.h: New file.
16205
31432e21
RG
162062012-02-08 Richard Guenther <rguenther@suse.de>
16207
16208 PR tree-optimization/46886
16209 * testsuite/libgomp.c/pr46886.c: New testcase.
16210
b9264b5f
MK
162112012-01-25 Matthias Klose <doko@ubuntu.com>
16212
16213 * config/linux/arm: Remove empty directory.
16214 * configure.tgt (config_path): Remove linux-arm for arm*-*-linux*.
16215
fbf7be80
AM
162162011-12-09 Alan Modra <amodra@gmail.com>
16217
16218 PR libgomp/51376
16219 * task.c (GOMP_taskwait): Don't access task->children outside of
16220 task_lock mutex region.
16221 (GOMP_task): Likewise.
16222
5de62d00
JJ
162232011-12-06 Jakub Jelinek <jakub@redhat.com>
16224
16225 PR libgomp/51132
16226 * testsuite/libgomp.graphite/force-parallel-1.c: Move large arrays
16227 to file scope.
16228 * testsuite/libgomp.graphite/force-parallel-3.c: Likewise.
16229 * testsuite/libgomp.graphite/force-parallel-6.c: Likewise.
16230 * testsuite/libgomp.graphite/force-parallel-7.c: Likewise.
16231 * testsuite/libgomp.graphite/force-parallel-8.c: Likewise.
16232 * testsuite/libgomp.graphite/force-parallel-9.c: Likewise.
16233
45608a43
AM
162342011-12-02 Alan Modra <amodra@gmail.com>
16235
16236 * config/linux/affinity.c: Use atomic rather than sync builtin.
16237 * config/linux/lock.c: Likewise.
16238 * config/linux/ptrlock.h: Likewise.
16239 * config/linux/ptrlock.c: Likewise.
16240 * config/linux/ptrlock.h (gomp_ptrlock_set): Always write here..
16241 * config/linux/ptrlock.c (gomp_ptrlock_set_slow): ..not here.
16242 * config/linux/futex.h (atomic_write_barrier): Delete unused function.
16243 * config/linux/alpha/futex.h (atomic_write_barrier): Likewise.
16244 * config/linux/ia64/futex.h (atomic_write_barrier): Likewise.
16245 * config/linux/mips/futex.h (atomic_write_barrier): Likewise.
16246 * config/linux/powerpc/futex.h (atomic_write_barrier): Likewise.
16247 * config/linux/s390/futex.h (atomic_write_barrier): Likewise.
16248 * config/linux/sparc/futex.h (atomic_write_barrier): Likewise.
16249 * config/linux/x86/futex.h (atomic_write_barrier): Likewise.
16250
ab6dd406
AM
162512011-11-30 Alan Modra <amodra@gmail.com>
16252
16253 PR libgomp/51298
16254 * config/linux/bar.h: Use atomic rather than sync builtins.
16255 * config/linux/bar.c: Likewise. Add missing acquire
16256 synchronisation on generation field.
16257 * task.c (gomp_barrier_handle_tasks): Regain lock so as to not
16258 double unlock.
16259
b40c885f
AM
162602011-11-30 Alan Modra <amodra@gmail.com>
16261
16262 * ordered.c (gomp_ordered_sync): Add MEMMODEL_ACQ_REL fence.
16263 * critical.c (GOMP_critical_start): Add MEMMODEL_RELEASE fence.
16264 * config/linux/mutex.h: Use atomic rather than sync builtins.
16265 * config/linux/mutex.c: Likewise. Comment. Use -1 for waiting state.
16266 * config/linux/omp-lock.h: Comment fix.
16267 * config/linux/arm/mutex.h: Delete.
16268 * config/linux/powerpc/mutex.h: Delete.
16269 * config/linux/ia64/mutex.h: Delete.
16270 * config/linux/mips/mutex.h: Delete.
16271
3e348fcc
AM
162722011-11-30 Alan Modra <amodra@gmail.com>
16273
16274 PR libgomp/51249
16275 * config/linux/sem.h: Rewrite.
16276 * config/linux/sem.c: Rewrite.
16277
cef86eb2
RH
162782011-11-28 Richard Henderson <rth@redhat.com>
16279
16280 * libgomp.h (enum memmodel): New.
16281
c6084f68
AT
162822011-11-21 Andreas Tobler <andreast@fgznet.ch>
16283
16284 * configure: Regenerate.
16285
06fe026c
MK
162862011-10-10 Matthias Klose <doko@ubuntu.com>
16287
16288 * config/posix95: Remove empty directory.
16289
a6c975bd
JJ
162902011-08-26 Jakub Jelinek <jakub@redhat.com>
16291
16292 * testsuite/libgomp.fortran/threadprivate4.f90: New test.
16293
c26dffff
JJ
162942011-08-19 Jakub Jelinek <jakub@redhat.com>
16295
16296 PR fortran/49792
16297 * testsuite/libgomp.fortran/pr49792-1.f90: New test.
16298 * testsuite/libgomp.fortran/pr49792-2.f90: New test.
16299
ddaad3c8
RO
163002011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16301
16302 * config/posix95/lock.c, posix95/omp-lock.h: Remove.
16303
98d03683
RO
163042011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16305
16306 PR libgomp/49965
16307 * testsuite/libgomp.c++/task-8.C: Replaced err by errval.
16308
e0b23d9f
UB
163092011-08-03 Uros Bizjak <ubizjak@gmail.com>
16310
16311 * config/linux/proc.h: New.
16312 * config/linux/proc.c: Include "proc.h". Do not include <sched.h>.
16313 (gomp_cpuset_popcount): Rename from cpuset_popcount. No more static.
16314 (gomp_init_num_threads): Update call to cpuset_popcount.
16315 (get_num_procs): Ditto.
16316 * config/linux/affinity.c (gomp_init_affinity): Call
16317 gomp_cpuset_popcount.
16318
20906c66
JJ
163192011-08-02 Jakub Jelinek <jakub@redhat.com>
16320
16321 PR fortran/42041
16322 PR fortran/46752
16323 * omp.h.in (omp_in_final): New prototype.
16324 * omp_lib.f90.in (omp_in_final): New interface.
16325 (omp_integer_kind, omp_logical_kind): Remove
16326 and replace all its uses in the module with 4.
16327 (openmp_version): Change to 201107.
16328 * omp_lib.h.in (omp_sched_static, omp_sched_dynamic,
16329 omp_sched_guided, omp_sched_auto): Use omp_sched_kind
16330 kind for the parameters.
16331 (omp_in_final): New external.
16332 (openmp_version): Change to 201107.
16333 * task.c (omp_in_final): New function.
16334 (gomp_init_task): Initialize final_task.
16335 (GOMP_task): Remove unused attribute from flags. Handle final
16336 tasks.
16337 (GOMP_taskyield): New function.
16338 (omp_in_final): Return true if if (false) or final (true) task
16339 or descendant of final (true).
16340 * fortran.c (omp_in_final_): New function.
16341 * libgomp.map (OMP_3.1): Export omp_in_final and omp_in_final_.
16342 (GOMP_3.0): Export GOMP_taskyield.
16343 * env.c (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New
16344 variables.
16345 (parse_unsigned_long_list): New function.
16346 (initialize_env): Use it for OMP_NUM_THREADS. Call parse_boolean
16347 with "OMP_PROC_BIND". If OMP_PROC_BIND=true, call gomp_init_affinity
16348 even if parse_affinity returned false.
16349 * config/linux/affinity.c (gomp_init_affinity): Handle
16350 gomp_cpu_affinity_len == 0.
16351 * libgomp_g.h (GOMP_taskyield): New prototype.
16352 * libgomp.h (struct gomp_task): Add final_task field.
16353 (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New externs.
16354 * team.c (gomp_team_start): Override new task's nthreads_var icv
16355 if list form OMP_NUM_THREADS has been used and it has value for
16356 the new nesting level.
16357
16358 * testsuite/libgomp.c/atomic-11.c: New test.
16359 * testsuite/libgomp.c/atomic-12.c: New test.
16360 * testsuite/libgomp.c/atomic-13.c: New test.
16361 * testsuite/libgomp.c/atomic-14.c: New test.
16362 * testsuite/libgomp.c/reduction-6.c: New test.
16363 * testsuite/libgomp.c/task-5.c: New test.
16364 * testsuite/libgomp.c++/atomic-2.C: New test.
16365 * testsuite/libgomp.c++/atomic-3.C: New test.
16366 * testsuite/libgomp.c++/atomic-4.C: New test.
16367 * testsuite/libgomp.c++/atomic-5.C: New test.
16368 * testsuite/libgomp.c++/atomic-6.C: New test.
16369 * testsuite/libgomp.c++/atomic-7.C: New test.
16370 * testsuite/libgomp.c++/atomic-8.C: New test.
16371 * testsuite/libgomp.c++/atomic-9.C: New test.
16372 * testsuite/libgomp.c++/task-8.C: New test.
16373 * testsuite/libgomp.c++/reduction-4.C: New test.
16374 * testsuite/libgomp.fortran/allocatable7.f90: New test.
16375 * testsuite/libgomp.fortran/allocatable8.f90: New test.
16376 * testsuite/libgomp.fortran/crayptr3.f90: New test.
16377 * testsuite/libgomp.fortran/omp_atomic3.f90: New test.
16378 * testsuite/libgomp.fortran/omp_atomic4.f90: New test.
16379 * testsuite/libgomp.fortran/pointer1.f90: New test.
16380 * testsuite/libgomp.fortran/pointer2.f90: New test.
16381 * testsuite/libgomp.fortran/task4.f90: New test.
16382
163832011-08-02 Tobias Burnus <burnus@net-b.de>
16384
16385 * libgomp.texi: Update OpenMP spec references to 3.1.
16386 (omp_in_final,OMP_PROC_BIND): New sections.
16387 (OMP_NUM_THREADS): Document that the value can be now a list.
16388 (GOMP_STACKSIZE,GOMP_CPU_AFFINITY): Update @ref.
16389
c01ecafc
L
163902011-08-02 H.J. Lu <hongjiu.lu@intel.com>
16391
16392 * config/linux/x86/futex.h: Check __x86_64__ instead of
16393 __LP64__.
16394
25142650
JJ
163952011-07-29 Jakub Jelinek <jakub@redhat.com>
16396
16397 PR middle-end/49897
16398 PR middle-end/49898
16399 * testsuite/libgomp.c/pr49897-1.c: New test.
16400 * testsuite/libgomp.c/pr49897-2.c: New test.
16401 * testsuite/libgomp.c/pr49898-1.c: New test.
16402 * testsuite/libgomp.c/pr49898-2.c: New test.
16403
f53d712f
L
164042011-07-28 H.J. Lu <hongjiu.lu@intel.com>
16405
16406 * testsuite/lib/libgomp.exp (libgomp_init): Add -march=i486
16407 for ia32 instead of ilp32.
16408
16409 * testsuite/libgomp.c/atomic-1.c: Require ia32 instead of ilp32.
16410 * testsuite/libgomp.c/atomic-6.c: Likewise.
16411
3689198d
SP
164122011-07-23 Sebastian Pop <sebastian.pop@amd.com>
16413
16414 * testsuite/libgomp.graphite/force-parallel-1.c: Un-xfail.
16415 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust pattern.
16416
1a79cb73
RO
164172011-07-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16418
16419 PR libgomp/45351
16420 * config/osf/sem.h: New file.
16421 * configure.tgt (alpha*-dec-osf*): Prepend osf to config_path.
16422
c1f51484
RO
164232011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16424
16425 PR target/49541
16426 * testsuite/lib/libgomp.exp (libgomp_init): Don't add -lgomp to
16427 ldflags.
16428
bfee0724
JJ
164292011-07-15 Jakub Jelinek <jakub@redhat.com>
16430
16431 * config/linux/wait.h (do_spin): New inline, largely copied
16432 from do_wait, just don't do futex_wait here, instead return true if
16433 it should be done.
16434 (do_wait): Implement using do_spin.
16435 * config/linux/mutex.h (gomp_mutex_lock_slow): Add an int argument
16436 to prototype.
16437 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
16438 __sync_bool_compare_and_swap, pass the oldval to
16439 gomp_mutex_lock_slow.
16440 * config/linux/mutex.c (gomp_mutex_lock_slow): Add oldval argument.
16441 If all mutex contenders are just spinning and not sleeping, don't
16442 change state to 2 unnecessarily. Optimize the loop when state has
16443 already become 2 to use just one atomic operation per loop instead
16444 of two.
16445 * config/linux/ia64/mutex.h (gomp_mutex_lock_slow): Add an int argument
16446 to prototype.
16447 (gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
16448 __sync_bool_compare_and_swap, pass the oldval to
16449 gomp_mutex_lock_slow.
16450
fb79f500
JJ
164512011-06-22 Jakub Jelinek <jakub@redhat.com>
16452
16453 PR libgomp/49490
16454 * iter.c (gomp_iter_static_next): For chunk size 0
16455 only use n ceil/ nthreads size for the first
16456 n % nthreads threads in the team instead of
16457 all threads except for the last few ones which
16458 get less work or none at all.
16459 * iter_ull.c (gomp_iter_ull_static_next): Likewise.
16460 * env.c (parse_schedule): If OMP_SCHEDULE doesn't have
16461 chunk argument, set run_sched_modifier to 0 for static
16462 resp. 1 for other kinds. If chunk argument is 0
16463 and not static, set value to 1.
16464
4577f730
JJ
164652011-05-19 Jakub Jelinek <jakub@redhat.com>
16466
ea93a47b
JJ
16467 PR c++/49043
16468 * testsuite/libgomp.c++/pr49043.C: New test.
16469
4577f730
JJ
16470 PR c++/48869
16471 * testsuite/libgomp.c++/pr48869.C: New test.
16472
e7385332
JJ
164732011-05-06 Jakub Jelinek <jakub@redhat.com>
16474
16475 PR fortran/48894
16476 * fortran.c: Include limits.h.
16477 (TO_INT): Define.
16478 (omp_set_dynamic_8_, omp_set_num_threads_8_): Use !!*set instead of
16479 *set.
16480 (omp_set_num_threads_8_, omp_set_schedule_8_,
16481 omp_set_max_active_levels_8_, omp_get_ancestor_thread_num_8_,
16482 omp_get_team_size_8_): Use TO_INT macro.
16483 * testsuite/libgomp.fortran/pr48894.f90: New test.
16484
20790697
JJ
164852011-04-13 Jakub Jelinek <jakub@redhat.com>
16486
16487 PR middle-end/48591
16488 * testsuite/libgomp.c/pr48591.c: New test.
16489
bf382f5f
RO
164902011-03-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16491
16492 PR bootstrap/48135
16493 * acinclude.m4 (enable_symvers): Handle --disable-symvers.
16494 * configure: Regenerate.
16495
113a53c1
JJ
164962011-02-27 Jakub Jelinek <jakub@redhat.com>
16497
16498 PR fortran/47886
16499 * testsuite/libgomp.fortran/task3.f90: New test.
16500
0024f1af
TB
165012011-02-24 Tobias Burnus <burnus@net-b.de>
16502
16503 * libgomp.texi (GOMP_STACKSIZE): Fix @ref to OMP_STACKSIZE.
16504
21e1e594
JJ
165052011-02-23 Jakub Jelinek <jakub@redhat.com>
16506
16507 PR libgomp/47854
16508 * libgomp.texi (omp_get_wtime): Don't say time in the past
16509 must be Unix Epoch.
16510
67962076
JJ
165112011-02-18 Jakub Jelinek <jakub@redhat.com>
16512
16513 PR libgomp/47804
16514 * testsuite/libgomp.fortran/fortran.exp: Check for both
16515 libquadmath.a and libquadmath.${shlib_ext}. If neither exists,
16516 but $blddir != "", still append ${blddir}/${lang_library_path}
16517 to ld_library_path.
16518
3808007c
TB
165192011-02-16 Tobias Burnus <burnus@net-b.de>
16520
16521 PR libgomp/47758
16522 * testsuite/libgomp.fortran/fortran.exp: Check for the existence
16523 of libquadmath.a before adding its libpath to ldflags.
16524
53b4d41d
JJ
165252011-02-14 Jakub Jelinek <jakub@redhat.com>
16526
16527 PR libgomp/47731
16528 * config/linux/futex.h (futex_wait): Pass NULL as timeout argument
16529 to FUTEX_WAIT futex syscall.
16530 * config/linux/wait.h: Include <futex.h> instead of "futex.h".
16531
029c8f3e
RW
165322011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16533
16534 * configure: Regenerate.
16535
bddd6626
BK
165362011-01-20 Benjamin Kosnik <bkoz@redhat.com>
16537
16538 PR libstdc++/36104
16539 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.
16540
f1d4ab26
GP
165412011-01-16 Gerald Pfeifer
16542
16543 * configure.tgt (*-*-freebsd*): Add -lpthread to XLDFLAGS.
16544
2b503136
JJ
165452010-12-14 Jakub Jelinek <jakub@redhat.com>
16546
16547 PR fortran/46874
16548 * libgomp.fortran/allocatable6.f90: New test.
16549
c0f9d583
RO
165502010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16551
16552 * acinclude.m4 (symvers_renaming): Also set if enable_symvers = no.
16553 * configure: Regenerate.
16554
7de6ba7a
DK
165552010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
16556
16557 PR target/40125
16558 PR lto/46695
16559 * configure.ac: Invoke ACX_LT_HOST_FLAGS.
16560 * Makefile.am (libgomp_la_LDFLAGS): Use lt_host_flags.
16561 * aclocal.m4: Regenerate.
16562 * configure: Regenerate.
16563 * Makefile.in: Regenerate.
16564 * testsuite/Makefile.in: Regenerate.
16565
b7516041
JJ
165662010-12-02 Jakub Jelinek <jakub@redhat.com>
16567
edaadf74
JJ
16568 PR fortran/46753
16569 * libgomp.fortran/pr46753.f90: New test.
16570
4c698cf8
JJ
16571 PR libgomp/43706
16572 * env.c (initialize_env): Default to spin count 300000
16573 instead of 20000000 if neither OMP_WAIT_POLICY nor GOMP_SPINCOUNT
16574 is specified.
16575
b7516041
JJ
16576 PR libgomp/45240
16577 * parallel.c (GOMP_parallel_end): Unlock gomp_remaining_threads_lock
16578 at the end if sync builtins aren't supported.
16579
6b43a34c
RO
165802010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16581
16582 * configure.tgt (mips-sgi-irix6*): Add -lpthread to XLDFLAGS.
16583
950691fa
RO
165842010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16585
16586 * testsuite/libgomp.fortran/vla8.f90: Use dg-timeout-factor 2.0.
16587
fb9041ea
IS
165882010-11-24 Iain Sandoe <iains@gcc.gnu.org>
16589
16590 * testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath.
16591
1ec601bf
FXC
165922010-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
16593 Tobias Burnus <burnus@net-b.de>
16594
16595 PR fortran/32049
3e348fcc 16596 * configure.ac:
1ec601bf
FXC
16597 * configure: Regenerate.
16598
d213e92e
MS
165992010-10-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
16600
16601 * config/linux/futex.h: New.
16602 * config/linux/arm/mutex.h: New.
16603 * configure.tgt (arm*-*-linux*): Add config path.
16604
89d5c66f
SP
166052010-09-30 Sebastian Pop <sebastian.pop@amd.com>
16606
16607 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
16608
87350d4a
TB
166092010-09-23 Tobias Burnus <burnus@net-b.de>
16610
16611 * libgomp.texi (omp_get_nested, omp_set_nested, omp_set_dynamic):
16612 Change Fortran datatype to LOGICAL.
16613 (omp_set_lock, omp_test_lock, omp_unset_lock, omp_set_nested_lock,
16614 omp_unset_nested_lock): Use intent(inout) instead of intent(out).
16615
75bc9e5e
RW
166162010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16617
16618 * configure: Regenerate.
16619
acb5c916
JJ
166202010-07-26 Jakub Jelinek <jakub@redhat.com>
16621
16622 * libgomp.texi: Add function keyword to a couple of Fortran
16623 interfaces, use integer instead of int for Fortran.
16624
6a2ba183
AH
166252010-07-26 Aldy Hernandez <aldyh@redhat.com>
16626
16627 * libgomp.texi: Fix spelling and pasto problems throughout.
16628 Adjust prototypes to match code.
16629
df161b69
TB
166302010-07-24 Tobias Burnus <burnus@net-b.de>
16631
16632 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: Add -w to
16633 silence -fwhole-file warning.
16634
16c9d3b1
RO
166352010-07-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16636
16637 * configure.tgt (*-*-solaris2.[56]*): Removed.
16638
6d28b933
RO
166392010-07-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16640
16641 * acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Handle sun style.
16642 Define LIBGOMP_BUILD_VERSIONED_SHLIB_GNU,
16643 LIBGOMP_BUILD_VERSIONED_SHLIB_SUN automake conditionals.
16644 (HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless
16645 targetting solaris2*.
16646 * configure: Regenerate.
16647 * config.h.in: Regenerate.
16648
16649 * Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB]: Protect
16650 libgomp_version_script with LIBGOMP_BUILD_VERSIONED_SHLIB_GNU.
16651 Add libgomp_version_dep.
16652 [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Handle Sun symbol
16653 versioning.
16654 [!LIBGOMP_BUILD_VERSIONED_SHLIB]: Add libgomp_version_dep.
16655 (libgomp_la_DEPENDENCIES): Set to $(libgomp_version_dep).
16656 * Makefile.in: Regenerate.
16657
16658 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef unless
16659 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
16660 * libgomp.map (OMP_1.0): Move symbols both in OMP_1.0 and OMP_3.0
16661 to common block, protected by
16662 HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT.
16663
07a67d6a
GP
166642010-06-10 Gerald Pfeifer <gerald@pfeifer.com>
16665
16666 * libgomp.texi: Move to GFDL version 1.3. Update copyright years.
16667
dbd34b89
IS
166682010-06-09 Iain Sandoe <iains@gcc.gnu.org>
16669
16670 PR bootstrap/43170
16671 * configure: Regenerate.
16672
13917ae3
RW
166732010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16674
16675 PR other/43620
16676 * configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
16677 * configure: Regenerate.
16678 * Makefile.in: Regenerate.
16679 * testsuite/Makefile.in: Regenerate.
16680
b83a701b
JJ
166812010-04-26 Jakub Jelinek <jakub@redhat.com>
16682
16683 PR c/43893
16684 * testsuite/libgomp.c/pr43893.c: New test.
16685 * testsuite/libgomp.c++/pr43893.C: New test.
16686
78db7d92
JJ
166872010-04-21 Jakub Jelinek <jakub@redhat.com>
16688
16689 PR middle-end/43570
16690 * testsuite/libgomp.fortran/vla8.f90: New test.
16691
5221d7a9
JJ
166922010-04-20 Jakub Jelinek <jakub@redhat.com>
16693
e4ba7a60
JJ
16694 PR libgomp/43706
16695 * config/linux/affinity.c (gomp_init_affinity): Decrease
16696 gomp_available_cpus if affinity mask confines the process to fewer
16697 CPUs.
16698 * config/linux/proc.c (get_num_procs): If gomp_cpu_affinity is
16699 non-NULL, just return gomp_available_cpus.
16700
5221d7a9
JJ
16701 PR libgomp/43569
16702 * sections.c (gomp_sections_init): Initialize ws->mode.
16703
289a9f86
UB
167042010-04-14 Uros Bizjak <ubizjak@gmail.com>
16705
16706 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
16707 not unused bar variable.
16708 * configure: Regenerate.
16709
4d9e8446
RW
167102010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16711
16712 * Makefile.in: Regenerate.
16713 * aclocal.m4: Regenerate.
16714 * testsuite/Makefile.in: Regenerate.
16715
80f046cc
JJ
167162010-03-22 Jakub Jelinek <jakub@redhat.com>
16717
16718 PR libgomp/42942
16719 * env.c (parse_unsigned_long): Add ALLOW_ZERO argument.
16720 (initialize_env): Adjust callers.
16721 (omp_set_max_active_levels): Set gomp_max_active_levels_var even
16722 when the argument is 0.
16723
16724 * testsuite/libgomp.c/pr42942.c: New test.
16725
b58543c3
SP
167262010-03-08 Tobias Grosser <grosser@fim.uni-passau.de>
16727
16728 PR middle-end/42644
16729 PR middle-end/42130
16730 * testsuite/libgomp.graphite/force-parallel-1.c: Adjust.
16731 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust.
16732
41d1138f
RO
167332010-01-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16734
16735 * testsuite/libgomp.c++/task-1.C: Renamed err to e.
16736 * testsuite/libgomp.c++/task-6.C: Likewise.
16737
6684eb28
SE
167382010-01-28 Steve Ellcey <sje@cup.hp.com>
16739
16740 * configure.tgt (*-*-hpux*): Add -frandom-seed flag.
16741
2122aa97
PB
167422010-01-26 Paolo Bonzini <bonzini@gnu.org>
16743
16744 * configure.ac: Test for executability of _the first word_ of GFORTRAN.
16745 * configure: Regenerate.
16746
057dd91d
JJ
167472010-01-26 Jakub Jelinek <jakub@redhat.com>
16748
16749 PR fortran/42866
16750 * testsuite/libgomp.fortran/allocatable5.f90: New test.
16751
d0709b6a
PB
167522010-01-20 Paolo Bonzini <bonzini@gnu.org>
16753
16754 * configure.ac: Test for executability of GFORTRAN.
16755 * configure: Regenerate.
16756
b9497ab5
RO
167572010-01-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
16758
16759 * configure: Regenerate.
16760
45de5648
L
167612010-01-04 H.J. Lu <hongjiu.lu@intel.com>
16762
16763 PR libgomp/42602
16764 * libgomp.fortran/recursion1.f90 (sub): Make 's' atomic.
16765
e74003a1
RG
167662010-01-03 Richard Guenther <rguenther@suse.de>
16767
16768 * testsuite/libgomp.fortran/recursion1.f90: New testcase.
16769
1b3abda8
SP
167702009-12-23 Sebastian Pop <sebpop@gmail.com>
16771
16772 * testsuite/libgomp.graphite/pr4118.c: New.
16773
e19977d3
IS
167742009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
16775
16776 * testsuite/libgomp.fortran/crayptr2.f90: Remove forced static linkage
16777 for darwin, protect the test with require-effective-target tls_runtime.
16778 * testsuite/libgomp.fortran/pr32550.f90: Ditto.
16779
1d32a772
IS
167802009-12-22 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
16781
16782 PR target/41605
16783 * testsuite/lib/libgomp.exp: Provide -B options to allow for
16784 link spec %s substitutions for static libraries.
16785
deb109b2
JH
167862009-12-18 Jack Howarth <howarth@bromo.med.uc.edu>
16787
16788 PR testsuite/42135
16789 * libgomp.graphite/force-parallel-2.c: Reduce array size.
16790
43e02a8a
RW
167912009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16792
16793 * Makefile.in: Regenerate.
16794 * configure: Regenerate.
16795 * testsuite/Makefile.in: Regenerate.
16796
17f35e23
DK
167972009-11-30 Dave Korn <dave.korn.cygwin@gmail.com>
16798
16799 * testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
16800 settings for LC_ALL and LANG.
16801
281e33e1
JJ
168022009-11-25 Jakub Jelinek <jakub@redhat.com>
16803
16804 PR fortran/42162
16805 * testsuite/libgomp.fortran/pr42162.f90: New test.
16806
2b32c27d
JJ
168072009-11-13 Jakub Jelinek <jakub@redhat.com>
16808
16809 PR middle-end/42029
281e33e1 16810 * testsuite/libgomp.c/pr42029.c: New test.
2b32c27d 16811
89c74f4a
JJ
168122009-10-26 Jakub Jelinek <jakub@redhat.com>
16813
16814 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid using too many
16815 *s. Accept ld version without text in ()s.
16816 * configure: Regenerated.
16817
7e06c3d6
EB
168182009-10-22 Razya Ladelsky <razya@il.ibm.com>
16819
16820 * testsuite/libgomp.graphite/force-parallel-2.c: Adjust scan.
16821
0046b1a7
RW
168222009-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16823
16824 PR libgomp/41418
16825 * configure.ac: Set FC to "no" if $GFORTRAN starts with "no"
16826 or a hyphen (happens with fortran language disabled).
16827 * configure: Regenerate.
16828
c82852f7
RW
168292009-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16830
16831 * acinclude.m4 (LIBGOMP_CHECK_LINKER_FEATURES): Avoid 'head',
16832 use sed script portable to Solaris /bin/sed for extracting ld
16833 version.
16834 * configure: Regenerate.
16835
98f3eb1f
AM
168362009-09-17 Alexander Monakov <amonakov@ispras.ru>
16837
16838 * testsuite/libgomp.graphite/bounds.c: New test.
16839
878f62e5
RW
168402009-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16841
16842 * Makefile.am (libgomp_la_LINK): New.
16843 * Makefile.in: Regenerate.
16844
df58e648
RW
168452009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16846
16847 * configure.ac (AC_PREREQ): Bump to 2.64.
16848
5213506e
RW
168492009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16850
70fa0efa
RW
16851 * Makefile.am (install-html, install-pdf): Remove.
16852 * Makefile.in: Regenerate.
16853
5213506e
RW
16854 * Makefile.in: Regenerate.
16855 * aclocal.m4: Regenerate.
16856 * config.h.in: Regenerate.
16857 * configure: Regenerate.
16858 * testsuite/Makefile.in: Regenerate.
16859
84fec8a5
RW
168602009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16861
16862 * Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
16863 * Makefile.in: Regenerate.
16864
197c68cc
DK
168652009-08-20 Dave Korn <dave.korn.cygwin@gmail.com>
16866
16867 * Makefile.am (libgomp_la_LDFLAGS): Add -bindir flag.
16868 * Makefile.in: Regenerate.
16869
693d54f2
TB
168702009-08-19 Tobias Burnus <burnus@net-b.de>
16871
16872 PR fortran/41102
16873 omp_lib.h.in: Fix -std=f95 errors.
16874
8cac884c
DE
168752009-08-14 David Edelsohn <edelsohn@gnu.org>
16876
16877 * testsuite/libgomp.graphite: Move from gcc.dg/graphite.
16878 * testsuite/libgomp.graphite/graphite_autopar.exp: Delete.
16879 * testsuite/libgomp.graphite/graphite.exp: New.
16880
78729ee2
AT
168812009-08-05 Andreas Tobler <a.tobler@schweiz.org>
16882
16883 * testsuite/libgomp.fortran/fortran.exp: Add flags in case of shared
16884 only build.
16885
b13b7f39
DD
168862009-08-04 David Daney <ddaney@caviumnetworks.com>
16887
16888 * config/linux/mutex.h (gomp_mutex_unlock): Add comment about
16889 needed memory barrier semantics.
16890 * config/linux/mips/mutex.h: New file.
16891
1b3b24c2
RW
168922009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
16893
16894 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
16895
396b7fa4
JM
168962009-07-16 Joseph Myers <joseph@codesourcery.com>
16897
16898 * configure: Regenerate.
16899
33cde516
RS
169002009-07-11 Richard Sandiford <rdsandiford@googlemail.com>
16901
16902 PR testsuite/40699
16903 PR testsuite/40707
16904 PR testsuite/40709
16905 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
16906 * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
16907 testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.
16908
bc21bfa5
RS
169092009-07-02 Richard Sandiford <r.sandiford@uk.ibm.com>
16910
16911 * testsuite/lib/libgomp.exp (libgomp_init): Use the ALWAYS_CFLAGS
16912 options when choosing a multilib.
16913
b30bfd40
RS
169142009-06-30 Richard Sandiford <r.sandiford@uk.ibm.com>
16915
16916 * testsuite/lib/libgomp.exp (libgomp_init): Don't add "." to
16917 ld_library_path. Use add_path. Add just find_libgcc_s to
16918 ld_library_path, not every libgcc multilib directory.
16919 * testsuite/libgomp.c/c.exp (ld_library_path): Don't call
16920 gcc-set-multilib-library-path; rely on $always_ld_library_path instead.
16921 * testsuite/libgomp.c++/c++.exp (ld_library_path): Likewise.
16922 Use add_path.
16923 * testsuite/libgomp.fortran/fortran.exp (ld_library_path): Likewise.
16924
479c15c2
NF
169252009-06-09 Nathan Froyd <froydnj@codesourcery.com>
16926
16927 * Makefile.am (LTLDFLAGS): Define.
16928 (LINK): Define.
16929 * Makefile.in: Regenerate.
16930
667e6f89
JB
169312009-05-27 Janne Blomqvist <jb@gcc.gnu.org>
16932
16933 PR fortran/39718
16934 * testsuite/libgomp.fortran/fortran.exp: Don't link with
16935 libgfortranbegin, check existence of libgfortran.a instead of
16936 libgfortranbegin.a.
16937
6dea8e99
JJ
169382009-05-20 Jakub Jelinek <jakub@redhat.com>
16939
16940 PR libgomp/40174
16941 * team.c (gomp_thread_start): Destroy thr->release semaphore.
16942 (gomp_free_pool_helper): Likewise.
16943
34d01e1d
VL
169442009-04-20 Vasilis Liaskovitis <vliaskov@gmail.com>
16945 Jakub Jelinek <jakub@redhat.com>
16946
16947 PR fortran/35423
16948 * testsuite/libgomp.fortran/workshare2.f90: New test.
16949
748086b7
JJ
169502009-04-09 Nick Clifton <nickc@redhat.com>
16951
16952 * iter.c: Change copyright header to refer to version 3 of the
16953 GNU General Public License with version 3.1 of the GCC Runtime
16954 Library Exception and to point readers at the COPYING3 and
16955 COPYING3.RUNTIME files and the FSF's license web page.
16956 * alloc.c: Likewise.
16957 * barrier.c: Likewise.
16958 * config/bsd/proc.c: Likewise.
16959 * config/linux/affinity.c: Likewise.
16960 * config/linux/alpha/futex.h: Likewise.
16961 * config/linux/bar.c: Likewise.
16962 * config/linux/bar.h: Likewise.
16963 * config/linux/ia64/futex.h: Likewise.
16964 * config/linux/ia64/mutex.h: Likewise.
16965 * config/linux/lock.c: Likewise.
16966 * config/linux/mips/futex.h: Likewise.
16967 * config/linux/mutex.c: Likewise.
16968 * config/linux/mutex.h: Likewise.
16969 * config/linux/powerpc/futex.h: Likewise.
16970 * config/linux/proc.c: Likewise.
16971 * config/linux/ptrlock.c: Likewise.
16972 * config/linux/ptrlock.h: Likewise.
16973 * config/linux/s390/futex.h: Likewise.
16974 * config/linux/sem.c: Likewise.
16975 * config/linux/sem.h: Likewise.
16976 * config/linux/sparc/futex.h: Likewise.
16977 * config/linux/wait.h: Likewise.
16978 * config/linux/x86/futex.h: Likewise.
16979 * config/mingw32/proc.c: Likewise.
16980 * config/mingw32/time.c: Likewise.
16981 * config/posix/affinity.c: Likewise.
16982 * config/posix/bar.c: Likewise.
16983 * config/posix/bar.h: Likewise.
16984 * config/posix/lock.c: Likewise.
16985 * config/posix/mutex.h: Likewise.
16986 * config/posix/proc.c: Likewise.
16987 * config/posix/ptrlock.h: Likewise.
16988 * config/posix/sem.c: Likewise.
16989 * config/posix/sem.h: Likewise.
16990 * config/posix/time.c: Likewise.
16991 * config/posix95/lock.c: Likewise.
16992 * critical.c: Likewise.
16993 * env.c: Likewise.
16994 * error.c: Likewise.
16995 * fortran.c: Likewise.
16996 * iter_ull.c: Likewise.
16997 * libgomp.h: Likewise.
16998 * libgomp_f.h.in: Likewise.
16999 * libgomp_g.h: Likewise.
17000 * loop.c: Likewise.
17001 * loop_ull.c: Likewise.
17002 * omp.h.in: Likewise.
17003 * omp_lib.f90.in: Likewise.
17004 * omp_lib.h.in: Likewise.
17005 * ordered.c: Likewise.
17006 * parallel.c: Likewise.
17007 * sections.c: Likewise.
17008 * single.c: Likewise.
17009 * task.c: Likewise.
17010 * team.c: Likewise.
17011 * work.c: Likewise.
17012
170132009-04-09 Jakub Jelinek <jakub@redhat.com>
17014
17015 * testsuite/config/default.exp: Change copyright header to refer to
17016 version 3 of the GNU General Public License and to point readers
17017 at the COPYING3 file and the FSF's license web page.
17018
4f0ae266
JJ
170192009-04-08 Jakub Jelinek <jakub@redhat.com>
17020
17021 PR middle-end/39573
17022 * libgomp.c++/pr39573.C: New test.
17023
03742a9b
JJ
170242009-04-01 Jakub Jelinek <jakub@redhat.com>
17025
17026 PR other/39591
17027 * testsuite/libgomp.c/pr39591-1.c: New test.
17028 * testsuite/libgomp.c/pr39591-2.c: New test.
17029 * testsuite/libgomp.c/pr39591-3.c: New test.
17030
e50ea10b
UB
170312009-03-25 Uros Bizjak <ubizjak@gmail.com>
17032
17033 * testsuite/libgomp.c/atomic-5.c: Cleanup cpuid usage.
17034 * testsuite/libgomp.c/atomic-6.c: Ditto.
17035
c5cdb03f
JJ
170362009-03-23 Jakub Jelinek <jakub@redhat.com>
17037
17038 PR c/39495
17039 * testsuite/libgomp.c/loop-12.c: New test.
17040 * testsuite/libgomp.c/loop-11.c: New test.
17041 * testsuite/libgomp.c++/loop-11.C: New test.
17042 * testsuite/libgomp.c++/loop-12.C: New test.
17043 * testsuite/libgomp.c++/for-8.C: New test.
17044
7a9d3fe8
RW
170452009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17046
17047 * configure: Regenerate.
17048
3ad6b266
JJ
170492009-02-11 Jakub Jelinek <jakub@redhat.com>
17050
17051 PR middle-end/39154
17052 * testsuite/libgomp.c/pr39154.c: New test.
17053
b39dea08
ILT
170542009-01-30 Ian Lance Taylor <iant@google.com>
17055
17056 * acinclude.m4 (LIBCOMP_CHECK_LINKER_FEATURES): Set
17057 libgomp_ld_is_gold. Get gold version number.
17058 (LIBGOMP_ENABLE_SYMVERS): Gold always support symbol versioning.
17059 * configure: Rebuild.
17060
72c66596
IS
170612009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
17062
e50ea10b 17063 * testsuite/lib/libgomp.exp: Add -B option for targets that
72c66596
IS
17064 use libgfortran.a%s in their specs.
17065
876080ff
JJ
170662009-01-07 Jakub Jelinek <jakub@redhat.com>
17067
17068 PR libgomp/38086
17069 * acinclude.m4 (HAVE_AS_SYMVER_DIRECTIVE): New check.
17070 * libgomp.h (LIBGOMP_GNU_SYMBOL_VERSIONING): Undefine if
17071 HAVE_AS_SYMVER_DIRECTIVE is not defined.
17072 * configure: Regenerated.
17073 * config.h.in: Likewise.
17074
e4ebaef3
JJ
170752008-12-28 Jakub Jelinek <jakub@redhat.com>
17076
17077 PR c++/38650
17078 * testsuite/libgomp.c/pr38650.c: New test.
17079 * testsuite/libgomp.c++/pr38650.C: New test.
17080
382017a6
JJ
170812008-12-27 Jakub Jelinek <jakub@redhat.com>
17082
17083 * testsuite/libgomp.c/collapse-1.c (main): Add private(k) clause.
17084
79644b27
UB
170852008-12-26 Uros Bizjak <ubizjak@gmail.com>
17086
17087 * testsuite/libgomp.c/atomic-6.c: Add -mieee for alpha*-*-* targets.
17088
baafc534
RW
170892008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17090
17091 * configure: Regenerate.
17092
d9c194cb
JJ
170932008-12-08 Jakub Jelinek <jakub@redhat.com>
17094
17095 PR middle-end/36802
17096 * testsuite/libgomp.c/pr36802-1.c: New test.
17097 * testsuite/libgomp.c/pr36802-2.c: New test.
17098 * testsuite/libgomp.c/pr36802-3.c: New test.
17099
86a182bf
JJ
171002008-12-01 Janis Johnson <janis187@us.ibm.com>
17101
17102 PR libgomp/38270
17103 * config/linux/powerpc/mutex.h: New.
17104
956adfaf
JJ
171052008-12-01 Jakub Jelinek <jakub@redhat.com>
17106
a2d4cdc9
JJ
17107 PR c++/38257
17108 * testsuite/libgomp.c++/for-7.C: New test.
17109
956adfaf
JJ
17110 PR c++/38348
17111 * testsuite/libgomp.c++/for-6.C: New test.
17112
d4038ca2
JJ
171132008-11-26 Janis Johnson <janis187@us.ibm.com>
17114
17115 PR testsuite/28870
17116 * testsuite/lib/libgomp.exp: Include new timeout library files.
17117 (libgomp_target_compile): Set timeout value from new proc.
17118
8b159eea
SE
171192008-11-13 Steve Ellcey <sje@cup.hp.com>
17120
17121 PR libgomp/37938
17122 * config/linux/ia64/mutex.h: New.
17123
5c6ed53a
TB
171242008-11-04 Tobias Burnus <burnus@net-b.de>
17125
17126 PR libgomp/37935
17127 * libgomp.texi (Runtime library routines, environment variables):
17128 Update for OpenMP version 3.0.
17129
6b4a97ed
PG
171302008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
17131 Steve Ellcey <sje@cup.hp.com>
17132
17133 * configure: Regenerate for new libtool.
17134 * Makefile.in: Ditto.
17135 * testsuite/Makefile.in: Ditto.
17136
e2b34106
JJ
171372008-09-19 Jakub Jelinek <jakub@redhat.com>
17138 Andreas Tobler <a.tobler@schweiz.org>
17139
17140 * config/bsd/proc.c: New file.
8c3b3600 17141 * configure.tgt (*-*-darwin*): Use config_path "bsd posix".
e2b34106
JJ
17142 * configure.ac: Check for header <sys/sysctl.h>
17143 * configure: Regenerate.
17144 * config.h.in: Likewise.
17145
3606b8bf
JJ
171462008-09-05 Janis Johnson <janis187@us.ibm.com>
17147
17148 * testsuite/ligbomp.c/c.exp: Unset lang_test_file only if it exists.
17149
6528b88d
AL
171502008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
17151
17152 * Makefile.am (libgomp_la_LDFLAGS): Add -no-undefined.
17153 * Makefile.in: Regenerated.
17154 * testsuite/Makefile.in: Regenerated.
17155
d9b14b12 171562008-08-21 Nathan Froyd <froydnj@codesourcery.com>
8c9570df 17157
a16b68bb 17158 * testsuite/lib/libgomp.exp (libgomp_init): Only set things that
8c9570df
NF
17159 depend on blddir if blddir exists.
17160 (libgomp_target_compile): Likewise.
17161 * testsuite/libgomp.c++/c++.exp: Likewise.
17162 * testsuite/libgomp.fortran/fortran.exp: Likewise.
17163
70b1e376
RW
171642008-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17165
17166 * libgomp.texi: Update to GFDL 1.2. Update copyright years.
17167 Do not list GPL as Invariant Section.
17168
318e8c3f
IG
171692008-07-28 Ilie Garbacea <ilie@mips.com>
17170 Chao-ying Fu <fu@mips.com>
17171
17172 * configure.tgt: Enable futex for MIPS.
17173 * config/linux/mips/futex.h: New file.
17174
4db72361
JJ
171752008-07-16 Jakub Jelinek <jakub@redhat.com>
17176
17177 * team.c (gomp_team_end): Free team immediately if it has
17178 just one thread.
17179
87bd23b8
DE
171802008-07-08 David Edelsohn <edelsohn@gnu.org>
17181
17182 * testsuite/libgomp.c++/c++.exp: Append multilib library path.
17183 * testsuite/libgomp.fortran/fortran.exp: Same.
17184 * testsuite/libgomp.c/c.exp: Same.
17185 * testsuite/lib/libgomp.exp: Append AIX libgcc pthread multilib
17186 directory to library path first.
17187
323ff903
KW
171882008-06-29 Krister Walfridsson <krister.walfridsson@gmail.com>
17189
17190 * env.c (parse_stacksize): Add cast to avoid warning.
17191 (parse_spincount): Likewise.
17192
b357f682
JJ
171932008-06-27 Jakub Jelinek <jakub@redhat.com>
17194
ca2b1311
JJ
17195 * testsuite/libgomp.c/loop-10.c: New test.
17196 * libgomp.c/loop-3.c (main): Add lastprivate clause.
17197 * libgomp.c++/loop-6.C (main): Likewise.
17198
b357f682
JJ
17199 PR debug/36617
17200 * testsuite/libgomp.c/debug-1.c: New test.
17201
09a46078
JJ
172022008-06-19 Jakub Jelinek <jakub@redhat.com>
17203
17204 * testsuite/libgomp.c/nqueens-1.c: New test.
17205
2368a460
JJ
17206 PR c++/36523
17207 * testsuite/libgomp.c++/task-7.C: New function.
17208
18c04407
RW
172092008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17210
17211 * configure: Regenerate.
17212
9c4e59e0
JDA
172132008-06-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
17214
17215 * env.c (initialize_env): Always initialize gomp_remaining_threads_lock
17216 mutex when HAVE_SYNC_BUILTINS isn't defined.
17217
6ccde948
RW
172182008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17219
17220 * libgomp.texi (omp_test_lock): Fix typo.
17221
b896f9fd
TB
172222008-06-12 Tobias Burnus <burnus@net-b.de>
17223
17224 * omp_lib.f90.in: Add "implicit none".
17225
c34938a8
JJ
172262008-06-12 Jakub Jelinek <jakub@redhat.com>
17227
17228 PR middle-end/36506
17229 * testsuite/libgomp.c/reduction-5.c: New test.
17230
976e44e3
JJ
172312008-06-11 Jakub Jelinek <jakub@redhat.com>
17232
5f836cbb
JJ
17233 * libgomp.h (struct gomp_task): Add in_tied_task field.
17234 * task.c (gomp_init_task): Initialize it.
17235 (GOMP_task): Likewise. Call gomp_team_barrier_set_task_pending
17236 unconditionally. Don't call gomp_team_barrier_wake if
17237 current task is implicit or if(0) from implicit and number of
17238 running tasks is equal to nthreads - 1.
17239
01501fc8
JJ
17240 PR libgomp/36471
17241 * omp_lib.f90.in (omp_get_ancestor_thread_num_8,
17242 omp_get_team_size_8): Fix pastos.
17243
976e44e3
JJ
17244 PR libgomp/36469
17245 * configure.ac: Add AC_CHECK_FUNCS (strtoull).
17246 * configure: Regenerated.
17247 * config.h.in: Regenerated.
17248 * env.c (strtoull): Define to strtoul if HAVE_STRTOULL is not
17249 defined.
17250
e919209b
AT
172512008-06-06 Andreas Tobler <a.tobler@schweiz.org>
17252
17253 PR bootstrap/36452
17254 * loop_ull.c (GOMP_loop_ull_static_start): Adjust API.
17255 (GOMP_loop_ull_dynamic_start): Likewise.
17256 (GOMP_loop_ull_guided_start): Likewise.
17257 (GOMP_loop_ull_ordered_static_start): Likewise.
17258 (GOMP_loop_ull_ordered_dynamic_start): Likewise.
17259 (GOMP_loop_ull_ordered_guided_start): Likewise.
17260
a68ab351
JJ
172612008-06-06 Jakub Jelinek <jakub@redhat.com>
17262 Richard Henderson <rth@redhat.com>
17263 Ulrich Drepper <drepper@redhat.com>
17264 Jakob Blomer <jakob.blomer@ira.uka.de>
17265
17266 * configure.ac (LIBGOMP_GNU_SYMBOL_VERSIONING): New AC_DEFINE.
17267 Substitute also OMP_*LOCK_25*.
17268 * configure: Regenerated.
17269 * config.h.in: Regenerated.
17270 * Makefile.am (libgomp_la_SOURCES): Add loop_ull.c, iter_ull.c,
17271 ptrlock.c and task.c.
17272 * Makefile.in: Regenerated.
17273 * testsuite/Makefile.in: Regenerated.
17274 * task.c: New file.
17275 * loop_ull.c: New file.
17276 * iter_ull.c: New file.
17277 * libgomp.h: Include ptrlock.h.
17278 (enum gomp_task_kind): New type.
17279 (struct gomp_team): Add task_lock, task_queue, task_count,
17280 task_running_count, single_count fields. Add
17281 work_share_list_free_lock ifndef HAVE_SYNC_BUILTINS.
17282 Remove work_share_lock, generation_mask,
17283 oldest_live_gen, num_live_gen and init_work_shares fields, add
17284 work work_share_list_alloc, work_share_list_free and work_share_chunk
17285 fields. Change work_shares from pointer to pointers into an array.
17286 Change ordered_release field into gomp_sem_t ** from flexible array
17287 member. Add implicit_task and initial_work_shares fields.
17288 Move close to the end of the struct.
17289 (struct gomp_team_state): Add single_count, last_work_share,
17290 active_level and level fields, remove work_share_generation.
17291 (gomp_barrier_handle_tasks): New prototype.
17292 (gomp_finish_task): New inline function.
17293 (struct gomp_work_share): Move chunk_size, end, incr into
17294 transparent union/struct, add chunk_size_ull, end_ll, incr_ll and
17295 next_ll fields. Reshuffle fields. Add next_alloc,
17296 next_ws, next_free and inline_ordered_team_ids fields, change
17297 ordered_team_ids into pointer from flexible array member.
17298 Add mode field. Put lock and next into a different cache line
17299 from most of the write-once fields.
17300 (gomp_iter_ull_static_next, gomp_iter_ull_dynamic_next_locked,
17301 gomp_iter_ull_guided_next_locked, gomp_iter_ull_dynamic_next,
17302 gomp_iter_ull_guided_next): New prototypes.
17303 (gomp_new_icv): New prototype.
17304 (struct gomp_thread): Add thread_pool and task fields.
17305 (struct gomp_thread_pool): New type.
17306 (gomp_new_team): New prototype.
17307 (gomp_team_start): Change type of last argument.
17308 (gomp_new_work_share): Removed.
17309 (gomp_init_work_share, gomp_fini_work_share): New prototypes.
17310 (gomp_work_share_init_done): New static inline.
17311 (gomp_throttled_spin_count_var, gomp_available_cpus,
17312 gomp_managed_threads): New extern decls.
17313 (gomp_init_task): New prototype.
17314 (gomp_spin_count_var): New extern var decl.
17315 (LIBGOMP_GNU_SYMBOL_VERSIONING): Undef if no visibility
17316 or no alias support, or if not PIC.
17317 (gomp_init_lock_30, gomp_destroy_lock_30, gomp_set_lock_30,
17318 gomp_unset_lock_30, gomp_test_lock_30, gomp_init_nest_lock_30,
17319 gomp_destroy_nest_lock_30, gomp_set_nest_lock_30,
17320 gomp_unset_nest_lock_30, gomp_test_nest_lock_30, gomp_init_lock_25,
17321 gomp_destroy_lock_25, gomp_set_lock_25, gomp_unset_lock_25,
17322 gomp_test_lock_25, gomp_init_nest_lock_25, gomp_destroy_nest_lock_25,
17323 gomp_set_nest_lock_25, gomp_unset_nest_lock_25,
17324 gomp_test_nest_lock_25): New prototypes.
17325 (omp_lock_symver, strong_alias): Define.
17326 (gomp_remaining_threads_count, gomp_remaining_threads_lock): New
17327 decls.
17328 (gomp_end_task): New.
17329 (struct gomp_task_icv, gomp_global_icv): New.
17330 (gomp_thread_limit_var, gomp_max_active_levels_var): New.
17331 (struct gomp_task): New.
17332 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
17333 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
17334 (gomp_icv): New.
17335 (gomp_schedule_type): Reorder enum to match
17336 omp_sched_t.
17337 * team.c (struct gomp_thread_start_data): Add thread_pool and task
17338 fields.
17339 (gomp_thread_start): Add gomp_team_barrier_wait call.
17340 For non-nested case remove clearing of docked thread thr fields.
17341 Use pool fields instead of global gomp_* variables. Use
17342 gomp_barrier_wait_last when needed. Initialize ts.active_level.
17343 Create tasks for each member thread.
17344 (free_team): Only destroy team barrier, task_lock here and free it.
17345 (gomp_free_thread): Free last_team if non-NULL.
17346 (gomp_team_end): Call gomp_team_barrier_wait instead of
17347 gomp_barrier_wait. For nested case call one extra
17348 gomp_barrier_wait. Move here some destruction from free_team.
17349 Call free_team on pool->last_team if any, rather than freeing
17350 current team. Destroy work_share_list_free_lock ifndef
17351 HAVE_SYNC_BUILTINS.
17352 (gomp_new_icv): New function.
17353 (gomp_threads, gomp_threads_size, gomp_threads_used,
17354 gomp_threads_dock): Removed.
17355 (gomp_thread_destructor): New variable.
17356 (gomp_new_thread_pool, gomp_free_pool_helper, gomp_free_thread): New
17357 functions.
17358 (gomp_team_start): Create new pool if current thread doesn't have
3e348fcc 17359 one. Use pool fields instead of global gomp_* variables.
a68ab351
JJ
17360 Initialize thread_pool field for new threads. Clear single_count.
17361 Change last argument from ws to team, don't create
17362 new team, set ts.work_share to &team->work_shares[0] and clear
17363 ts.last_work_share. Don't clear ts.work_share_generation.
17364 If number of threads changed, adjust atomically gomp_managed_threads.
17365 Use gomp_init_task instead of gomp_new_task,
17366 set thr->task to the corresponding implicit_task array entry.
17367 Create tasks for each member thread. Initialize ts.level.
17368 (initialize_team): Call pthread_key_create on
17369 gomp_thread_destructor.
17370 (team_destructor): New function.
17371 (new_team): Removed.
17372 (gomp_new_team): New function.
17373 (free_team): Free gomp_work_share blocks chained through next_alloc,
17374 instead of freeing work_shares and destroying work_share_lock.
17375 (gomp_team_end): Call gomp_fini_work_share. If number of threads
17376 changed, adjust atomically gomp_managed_threads. Use gomp_end_task.
17377 * barrier.c (GOMP_barrier): Call gomp_team_barrier_wait instead
17378 of gomp_barrier_wait.
17379 * single.c (GOMP_single_copy_start): Call gomp_team_barrier_wait
17380 instead of gomp_barrier_wait. Call gomp_work_share_init_done
17381 if gomp_work_share_start returned true. Don't unlock ws->lock.
17382 (GOMP_single_copy_end): Call gomp_team_barrier_wait instead
17383 of gomp_barrier_wait.
17384 (GOMP_single_start): Rewritten if HAVE_SYNC_BUILTINS. Call
17385 gomp_work_share_init_done if gomp_work_share_start returned true.
17386 Don't unlock ws->lock.
17387 * work.c: Include stddef.h.
17388 (free_work_share): Use work_share_list_free_lock instead
17389 of atomic chaining ifndef HAVE_SYNC_BUILTINS. Add team argument.
17390 Call gomp_fini_work_share and then either free ws if orphaned, or
17391 put it into work_share_list_free list of the current team.
17392 (alloc_work_share, gomp_init_work_share, gomp_fini_work_share): New
17393 functions.
17394 (gomp_work_share_start, gomp_work_share_end,
17395 gomp_work_share_end_nowait): Rewritten.
17396 * omp_lib.f90.in Change some tabs to spaces to prevent warnings.
17397 (openmp_version): Set to 200805.
17398 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
17399 omp_sched_guided, omp_sched_auto): New parameters.
17400 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
17401 omp_set_max_active_levels, omp_get_max_active_levels,
17402 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
17403 omp_get_active_level): New interfaces.
17404 * omp_lib.h.in (openmp_version): Set to 200805.
17405 (omp_sched_kind, omp_sched_static, omp_sched_dynamic,
17406 omp_sched_guided, omp_sched_auto): New parameters.
17407 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
17408 omp_set_max_active_levels, omp_get_max_active_levels,
17409 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
17410 omp_get_active_level): New externals.
17411 * loop.c: Include limits.h.
17412 (GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Handle
17413 GFS_AUTO.
17414 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start):
17415 Likewise. Use gomp_icv.
17416 (gomp_loop_static_start, gomp_loop_dynamic_start): Clear
17417 ts.static_trip here.
17418 (gomp_loop_static_start, gomp_loop_ordered_static_start): Call
17419 gomp_work_share_init_done after gomp_loop_init. Don't unlock ws->lock.
17420 (gomp_loop_dynamic_start, gomp_loop_guided_start): Call
17421 gomp_work_share_init_done after gomp_loop_init. If HAVE_SYNC_BUILTINS,
17422 don't unlock ws->lock, otherwise lock it.
17423 (gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start): Call
17424 gomp_work_share_init_done after gomp_loop_init. Lock ws->lock.
17425 (gomp_parallel_loop_start): Call gomp_new_team instead of
17426 gomp_new_work_share. Call gomp_loop_init on &team->work_shares[0].
17427 Adjust gomp_team_start caller. Pass 0 as second argument to
17428 gomp_resolve_num_threads.
17429 (gomp_loop_init): For GFS_DYNAMIC, multiply ws->chunk_size by incr.
17430 If adding ws->chunk_size nthreads + 1 times after end won't
17431 overflow, set ws->mode to 1.
17432 * libgomp_g.h (GOMP_loop_ull_static_start, GOMP_loop_ull_dynamic_start,
17433 GOMP_loop_ull_guided_start, GOMP_loop_ull_runtime_start,
17434 GOMP_loop_ull_ordered_static_start,
17435 GOMP_loop_ull_ordered_dynamic_start,
17436 GOMP_loop_ull_ordered_guided_start,
17437 GOMP_loop_ull_ordered_runtime_start, GOMP_loop_ull_static_next,
17438 GOMP_loop_ull_dynamic_next, GOMP_loop_ull_guided_next,
17439 GOMP_loop_ull_runtime_next, GOMP_loop_ull_ordered_static_next,
17440 GOMP_loop_ull_ordered_dynamic_next, GOMP_loop_ull_ordered_guided_next,
17441 GOMP_loop_ull_ordered_runtime_next, GOMP_task, GOMP_taskwait): New
17442 prototypes.
17443 * libgomp.map: Export lock routines also @@OMP_2.0.
17444 (GOMP_loop_ordered_dynamic_first,
17445 GOMP_loop_ordered_guided_first, GOMP_loop_ordered_runtime_first,
17446 GOMP_loop_ordered_static_first): Remove.
17447 (GOMP_loop_ull_dynamic_next, GOMP_loop_ull_dynamic_start,
17448 GOMP_loop_ull_guided_next, GOMP_loop_ull_guided_start,
17449 GOMP_loop_ull_ordered_dynamic_next,
17450 GOMP_loop_ull_ordered_dynamic_start,
17451 GOMP_loop_ull_ordered_guided_next,
17452 GOMP_loop_ull_ordered_guided_start,
17453 GOMP_loop_ull_ordered_runtime_next,
17454 GOMP_loop_ull_ordered_runtime_start,
17455 GOMP_loop_ull_ordered_static_next,
17456 GOMP_loop_ull_ordered_static_start,
17457 GOMP_loop_ull_runtime_next, GOMP_loop_ull_runtime_start,
17458 GOMP_loop_ull_static_next, GOMP_loop_ull_static_start,
17459 GOMP_task, GOMP_taskwait): Export @@GOMP_2.0.
17460 (omp_set_schedule, omp_get_schedule,
17461 omp_get_thread_limit, omp_set_max_active_levels,
17462 omp_get_max_active_levels, omp_get_level,
17463 omp_get_ancestor_thread_num, omp_get_team_size, omp_get_active_level,
17464 omp_set_schedule_, omp_set_schedule_8_,
17465 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
17466 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
17467 omp_get_max_active_levels_, omp_get_level_,
17468 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
17469 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
17470 New exports @@OMP_3.0.
17471 * omp.h.in (omp_sched_t): New type.
17472 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
17473 omp_set_max_active_levels, omp_get_max_active_levels,
17474 omp_get_level, omp_get_ancestor_thread_num, omp_get_team_size,
17475 omp_get_active_level): New prototypes.
17476 * env.c (gomp_spin_count_var, gomp_throttled_spin_count_var,
17477 gomp_available_cpus, gomp_managed_threads, gomp_max_active_levels_var,
17478 gomp_thread_limit_var, gomp_remaining_threads_count,
17479 gomp_remaining_threads_lock): New variables.
17480 (parse_spincount): New function.
17481 (initialize_env): Call gomp_init_num_threads unconditionally.
17482 Initialize gomp_available_cpus. Call parse_spincount,
17483 initialize gomp_{,throttled_}spin_count_var
17484 depending on presence and value of OMP_WAIT_POLICY and
17485 GOMP_SPINCOUNT env vars. Handle GOMP_BLOCKTIME env var.
17486 Handle OMP_WAIT_POLICY, OMP_MAX_ACTIVE_LEVELS,
17487 OMP_THREAD_LIMIT, OMP_STACKSIZE env vars. Handle unit specification
17488 for GOMP_STACKSIZE. Initialize gomp_remaining_threads_count and
17489 gomp_remaining_threads_lock if needed. Use gomp_global_icv.
17490 (gomp_nthreads_var, gomp_dyn_var, gomp_nest_var,
17491 gomp_run_sched_var, gomp_run_sched_chunk): Remove.
17492 (gomp_global_icv): New.
17493 (parse_schedule): Use it. Parse "auto".
17494 (omp_set_num_threads): Use gomp_icv.
17495 (omp_set_dynamic, omp_get_dynamic, omp_set_nested, omp_get_nested):
17496 Likewise.
17497 (omp_get_max_threads): Move from parallel.c.
17498 (omp_set_schedule, omp_get_schedule, omp_get_thread_limit,
17499 omp_set_max_active_levels, omp_get_max_active_levels): New functions,
17500 add ialias.
17501 (parse_stacksize, parse_wait_policy): New functions.
17502 * fortran.c: Rewrite lock wrappers, if symbol versioning provide
17503 both wrappers for compatibility and new locks.
17504 (omp_set_schedule, omp_get_schedule,
17505 omp_get_thread_limit, omp_set_max_active_levels,
17506 omp_get_max_active_levels, omp_get_level,
17507 omp_get_ancestor_thread_num, omp_get_team_size,
17508 omp_get_active_level): New ialias_redirect.
17509 (omp_set_schedule_, omp_set_schedule_8_,
17510 omp_get_schedule_, omp_get_schedule_8_, omp_get_thread_limit_,
17511 omp_set_max_active_levels_, omp_set_max_active_levels_8_,
17512 omp_get_max_active_levels_, omp_get_level_,
17513 omp_get_ancestor_thread_num_, omp_get_ancestor_thread_num_8_,
17514 omp_get_team_size_, omp_get_team_size_8_, omp_get_active_level_):
17515 New functions.
17516 * parallel.c: Include limits.h.
17517 (gomp_resolve_num_threads): Add count argument. Rewritten.
17518 (GOMP_parallel_start): Call gomp_new_team and pass that as last
17519 argument to gomp_team_start. Pass 0 as second argument to
17520 gomp_resolve_num_threads.
17521 (GOMP_parallel_end): Decrease gomp_remaining_threads_count
17522 if gomp_thread_limit_var != ULONG_MAX.
17523 (omp_in_parallel): Implement using ts.active_level.
17524 (omp_get_max_threads): Move to env.c.
17525 (omp_get_level, omp_get_ancestor_thread_num,
17526 omp_get_team_size, omp_get_active_level): New functions,
17527 add ialias.
17528 * sections.c (GOMP_sections_start): Call gomp_work_share_init_done
17529 after gomp_sections_init. If HAVE_SYNC_BUILTINS, call
17530 gomp_iter_dynamic_next instead of the _locked variant and don't take
17531 lock around it, otherwise acquire it before calling
17532 gomp_iter_dynamic_next_locked.
17533 (GOMP_sections_next): If HAVE_SYNC_BUILTINS, call
17534 gomp_iter_dynamic_next instead of the _locked variant and don't take
17535 lock around it.
17536 (GOMP_parallel_sections_start): Call gomp_new_team instead of
17537 gomp_new_work_share. Call gomp_sections_init on &team->work_shares[0].
17538 Adjust gomp_team_start caller. Pass count as second argument to
17539 gomp_resolve_num_threads, don't adjust num_threads after the call.
17540 Use gomp_icv.
17541 * iter.c (gomp_iter_dynamic_next_locked): Don't multiply
17542 ws->chunk_size by incr.
17543 (gomp_iter_dynamic_next): Likewise. If ws->mode, use more efficient
17544 code.
17545 * libgomp_f.h.in (omp_lock_25_arg_t, omp_nest_lock_25_arg_t): New
17546 types.
17547 (omp_lock_25_arg, omp_nest_lock_25_arg): New macros.
17548 (omp_check_defines): Check even the compat defines.
17549 * config/linux/ptrlock.c: New file.
17550 * config/linux/ptrlock.h: New file.
17551 * config/linux/wait.h: New file.
17552 * config/posix/ptrlock.c: New file.
17553 * config/posix/ptrlock.h: New file.
17554 * config/linux/bar.h (gomp_team_barrier_wait,
17555 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
17556 (gomp_team_barrier_set_task_pending,
17557 gomp_team_barrier_clear_task_pending,
17558 gomp_team_barrier_set_waiting_for_tasks,
17559 gomp_team_barrier_waiting_for_tasks,
17560 gomp_team_barrier_done): New inlines.
17561 (gomp_barrier_t): Rewritten.
17562 (gomp_barrier_state_t): New typedef.
17563 (gomp_barrier_init, gomp_barrier_reinit, gomp_barrier_destroy,
17564 gomp_barrier_wait_start): Rewritten.
17565 (gomp_barrier_wait_end): Change second argument to
17566 gomp_barrier_state_t.
17567 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
17568 inlines.
17569 * config/linux/bar.c: Include wait.h instead of libgomp.h and
17570 futex.h.
17571 (gomp_barrier_wait_end): Rewritten.
17572 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
17573 gomp_team_barrier_wake, gomp_barrier_wait_last): New functions.
17574 * config/posix/bar.h (gomp_barrier_t): Add generation field.
17575 (gomp_barrier_state_t): New typedef.
17576 (gomp_team_barrier_wait,
17577 gomp_team_barrier_wait_end, gomp_team_barrier_wake): New prototypes.
17578 (gomp_barrier_wait_start): Or all but low 2 bits from generation
17579 into the return value. Return gomp_barrier_state_t.
17580 (gomp_team_barrier_set_task_pending,
17581 gomp_team_barrier_clear_task_pending,
17582 gomp_team_barrier_set_waiting_for_tasks,
17583 gomp_team_barrier_waiting_for_tasks,
17584 gomp_team_barrier_done): New inlines.
17585 (gomp_barrier_wait_end): Change second argument to
17586 gomp_barrier_state_t.
17587 (gomp_barrier_last_thread, gomp_barrier_wait_last): New static
17588 inlines.
17589 * config/posix/bar.c (gomp_barrier_init): Clear generation field.
17590 (gomp_barrier_wait_end): Change second argument to
3e348fcc 17591 gomp_barrier_state_t.
a68ab351
JJ
17592 (gomp_team_barrier_wait, gomp_team_barrier_wait_end,
17593 gomp_team_barrier_wake): New functions.
17594 * config/linux/mutex.c: Include wait.h instead of libgomp.h and
17595 futex.h.
17596 (gomp_futex_wake, gomp_futex_wait): New variables.
17597 (gomp_mutex_lock_slow): Call do_wait instead of futex_wait.
17598 * config/linux/lock.c: Rewrite to make locks task owned,
17599 for backwards compatibility provide the old entrypoints
17600 if symbol versioning. Include wait.h instead of libgomp.h and
17601 futex.h.
17602 (gomp_set_nest_lock_25): Call do_wait instead of futex_wait.
17603 * config/posix95/lock.c: Rewrite to make locks task owned,
17604 for backwards compatibility provide the old entrypoints
17605 if symbol versioning.
17606 * config/posix/lock.c: Rewrite to make locks task owned,
17607 for backwards compatibility provide the old entrypoints
17608 if symbol versioning.
17609 * config/linux/proc.c (gomp_init_num_threads): Use gomp_global_icv.
17610 (get_num_procs, gomp_dynamic_max_threads): Use gomp_icv.
17611 * config/posix/proc.c, config/mingw32/proc.c: Similarly.
17612 * config/linux/powerpc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
17613 (sys_futex0): Return error code.
17614 (futex_wake, futex_wait): If ENOSYS was returned, clear
17615 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
17616 (cpu_relax, atomic_write_barrier): New static inlines.
17617 * config/linux/alpha/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
17618 (futex_wake, futex_wait): If ENOSYS was returned, clear
17619 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
17620 (cpu_relax, atomic_write_barrier): New static inlines.
17621 * config/linux/x86/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
17622 (sys_futex0): Return error code.
17623 (futex_wake, futex_wait): If ENOSYS was returned, clear
17624 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
17625 (cpu_relax, atomic_write_barrier): New static inlines.
17626 * config/linux/s390/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
17627 (sys_futex0): Return error code.
17628 (futex_wake, futex_wait): If ENOSYS was returned, clear
17629 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
17630 (cpu_relax, atomic_write_barrier): New static inlines.
17631 * config/linux/ia64/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
17632 (sys_futex0): Return error code.
17633 (futex_wake, futex_wait): If ENOSYS was returned, clear
17634 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
17635 (cpu_relax, atomic_write_barrier): New static inlines.
17636 * config/linux/sparc/futex.h (FUTEX_WAIT, FUTEX_WAKE): Remove.
17637 (sys_futex0): Return error code.
17638 (futex_wake, futex_wait): If ENOSYS was returned, clear
17639 FUTEX_PRIVATE_FLAG in gomp_futex_wa{ke,it} and retry.
17640 (cpu_relax, atomic_write_barrier): New static inlines.
17641 * config/linux/sem.c: Include wait.h instead of libgomp.h and
17642 futex.h.
17643 (gomp_sem_wait_slow): Call do_wait instead of futex_wait.
17644 * config/linux/affinity.c: Assume HAVE_SYNC_BUILTINS.
17645 * config/linux/omp-lock.h (omp_lock_25_t, omp_nest_lock_25_t): New
17646 types.
17647 (omp_nest_lock_t): Change owner into void *, add lock field.
17648 * config/posix95/omp-lock.h: Include semaphore.h.
17649 (omp_lock_25_t, omp_nest_lock_25_t): New types.
17650 (omp_lock_t): Use sem_t instead of mutex if semaphores
17651 aren't broken.
17652 (omp_nest_lock_t): Likewise. Change owner to void *.
17653 * config/posix/omp-lock.h: Include semaphore.h.
17654 (omp_lock_25_t, omp_nest_lock_25_t): New types.
17655 (omp_lock_t): Use sem_t instead of mutex if semaphores
17656 aren't broken.
17657 (omp_nest_lock_t): Likewise. Add owner field.
17658
176592008-06-06 Jakub Jelinek <jakub@redhat.com>
17660
17661 * testsuite/libgomp.c/collapse-1.c: New test.
17662 * testsuite/libgomp.c/collapse-2.c: New test.
17663 * testsuite/libgomp.c/collapse-3.c: New test.
17664 * testsuite/libgomp.c/icv-1.c: New test.
17665 * testsuite/libgomp.c/icv-2.c: New test.
17666 * testsuite/libgomp.c/lib-2.c: New test.
17667 * testsuite/libgomp.c/lock-1.c: New test.
17668 * testsuite/libgomp.c/lock-2.c: New test.
17669 * testsuite/libgomp.c/lock-3.c: New test.
17670 * testsuite/libgomp.c/loop-4.c: New test.
17671 * testsuite/libgomp.c/loop-5.c: New test.
17672 * testsuite/libgomp.c/loop-6.c: New test.
17673 * testsuite/libgomp.c/loop-7.c: New test.
17674 * testsuite/libgomp.c/loop-8.c: New test.
17675 * testsuite/libgomp.c/loop-9.c: New test.
17676 * testsuite/libgomp.c/nested-3.c: New test.
17677 * testsuite/libgomp.c/nestedfn-6.c: New test.
17678 * testsuite/libgomp.c/sort-1.c: New test.
17679 * testsuite/libgomp.c/task-1.c: New test.
17680 * testsuite/libgomp.c/task-2.c: New test.
17681 * testsuite/libgomp.c/task-3.c: New test.
17682 * testsuite/libgomp.c/task-4.c: New test.
17683 * testsuite/libgomp.c++/c++.exp: Add libstdc++-v3 build includes
17684 to C++ testsuite default compiler options.
17685 * testsuite/libgomp.c++/collapse-1.C: New test.
17686 * testsuite/libgomp.c++/collapse-2.C: New test.
17687 * testsuite/libgomp.c++/ctor-10.C: New test.
17688 * testsuite/libgomp.c++/for-1.C: New test.
17689 * testsuite/libgomp.c++/for-2.C: New test.
17690 * testsuite/libgomp.c++/for-3.C: New test.
17691 * testsuite/libgomp.c++/for-4.C: New test.
17692 * testsuite/libgomp.c++/for-5.C: New test.
17693 * testsuite/libgomp.c++/loop-8.C: New test.
17694 * testsuite/libgomp.c++/loop-9.C: New test.
17695 * testsuite/libgomp.c++/loop-10.C: New test.
17696 * testsuite/libgomp.c++/task-1.C: New test.
17697 * testsuite/libgomp.c++/task-2.C: New test.
17698 * testsuite/libgomp.c++/task-3.C: New test.
17699 * testsuite/libgomp.c++/task-4.C: New test.
17700 * testsuite/libgomp.c++/task-5.C: New test.
17701 * testsuite/libgomp.c++/task-6.C: New test.
17702 * testsuite/libgomp.fortran/allocatable1.f90: New test.
17703 * testsuite/libgomp.fortran/allocatable2.f90: New test.
17704 * testsuite/libgomp.fortran/allocatable3.f90: New test.
17705 * testsuite/libgomp.fortran/allocatable4.f90: New test.
17706 * testsuite/libgomp.fortran/collapse1.f90: New test.
17707 * testsuite/libgomp.fortran/collapse2.f90: New test.
17708 * testsuite/libgomp.fortran/collapse3.f90: New test.
17709 * testsuite/libgomp.fortran/collapse4.f90: New test.
17710 * testsuite/libgomp.fortran/lastprivate1.f90: New test.
17711 * testsuite/libgomp.fortran/lastprivate2.f90: New test.
17712 * testsuite/libgomp.fortran/lib4.f90: New test.
17713 * testsuite/libgomp.fortran/lock-1.f90: New test.
17714 * testsuite/libgomp.fortran/lock-2.f90: New test.
17715 * testsuite/libgomp.fortran/nested1.f90: New test.
17716 * testsuite/libgomp.fortran/nestedfn4.f90: New test.
17717 * testsuite/libgomp.fortran/strassen.f90: New test.
17718 * testsuite/libgomp.fortran/tabs1.f90: New test.
17719 * testsuite/libgomp.fortran/tabs2.f: New test.
17720 * testsuite/libgomp.fortran/task1.f90: New test.
17721 * testsuite/libgomp.fortran/task2.f90: New test.
17722 * testsuite/libgomp.fortran/vla4.f90: Add dg-warning.
17723 * testsuite/libgomp.fortran/vla5.f90: Likewise.
17724 * testsuite/libgomp.c/pr26943-2.c: Likewise.
17725 * testsuite/libgomp.c/pr26943-3.c: Likewise.
17726 * testsuite/libgomp.c/pr26943-4.c: Likewise.
17727
7a0112e7
JJ
177282008-05-23 Jakub Jelinek <jakub@redhat.com>
17729
17730 PR c++/36308
17731 * testsuite/libgomp.c++/ctor-11.C: New test.
17732 * testsuite/libgomp.c++/ctor-12.C: New test.
17733
91a5b394
JJ
177342008-05-15 Janis Johnson <janis187@us.ibm.com>
17735
17736 * testsuite/lib/libgomp.exp: Load torture-options.exp from gcc lib.
17737
c18c98c0
JJ
177382008-05-07 Jakub Jelinek <jakub@redhat.com>
17739
17740 PR middle-end/36106
17741 * testsuite/libgomp.c/atomic-5.c: New test.
17742 * testsuite/libgomp.c/atomic-6.c: New test.
17743 * testsuite/libgomp.c/autopar-1.c: New test.
17744
6d26724a
RW
177452008-04-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17746
17747 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS)
17748 (LIBGOMP_CHECK_ATTRIBUTE_VISIBILITY)
17749 (LIBGOMP_CHECK_ATTRIBUTE_DLLEXPORT)
17750 (LIBGOMP_CHECK_ATTRIBUTE_ALIAS): Fix cache variable names.
17751 * configure: Regenerate.
17752 * Makefile.in, testsuite/Makefile.in: Likewise.
17753
deb984e6
PB
177542008-04-18 Paolo Bonzini <bonzini@gnu.org>
17755
17756 PR bootstrap/35457
17757 * aclocal.m4: Regenerate.
17758 * configure: Regenerate.
17759
9e775963
JJ
177602008-03-18 Jakub Jelinek <jakub@redhat.com>
17761
8119fc93
JJ
17762 PR middle-end/35611
17763 * testsuite/libgomp.c/atomic-4.c: New test.
17764
9e775963
JJ
17765 PR libgomp/35625
17766 * iter.c (gomp_iter_guided_next_locked): If q > n, set end to ws->end.
17767 (gomp_iter_guided_next): Likewise.
17768 * testsuite/libgomp.c/pr35625.c: New test.
17769
38d24731
RW
177702008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
17771
17772 * aclocal.m4: Regenerate.
17773 * configure: Likewise.
17774 * Makefile.in: Likewise.
17775 * testsuite/Makefile.in: Likewise.
17776
d0fb20be
JJ
177772008-03-13 Jakub Jelinek <jakub@redhat.com>
17778
17779 PR middle-end/35185
17780 * testsuite/libgomp.c++/pr35185.C: New test.
17781
7c8f7639
JJ
177822008-03-12 Jakub Jelinek <jakub@redhat.com>
17783
17784 PR middle-end/35549
17785 * testsuite/libgomp.c/pr35549.c: New test.
17786
251923f5
JJ
177872008-03-06 Jakub Jelinek <jakub@redhat.com>
17788
17789 * testsuite/libgomp.c/atomic-3.c: New test.
17790
f489fba1
FXC
177912008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
17792
17793 PR fortran/33197
251923f5 17794 * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
f489fba1
FXC
17795 .F08 file suffixes.
17796
a1b25e49
PG
177972008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
17798
17799 PR libgomp/33131
17800 * configure.ac: Add ACX_HEADER_STRING.
17801 * env.c: Include strings.h.
17802 * aclocal.m4: Regenerate.
17803 * config.h.in: Regenerate.
17804 * configure: Regenerate.
17805 * Makefile.in: Regenerate.
17806 * testsuite/Makefile.in: Regenerate.
17807
6837b3b8
JJ
178082008-02-15 Jakub Jelinek <jakub@redhat.com>
17809
ac84c062
JJ
17810 PR middle-end/35196
17811 * testsuite/libgomp.c/pr35196.c: New test.
17812
6837b3b8
JJ
17813 PR middle-end/35130
17814 * testsuite/libgomp.fortran/pr35130.f90: New test.
17815 * testsuite/libgomp.c/pr35130.c: New test.
17816
c256730c
JJ
178172008-01-25 Jakub Jelinek <jakub@redhat.com>
17818
17819 PR middle-end/33880
17820 * testsuite/libgomp.c/pr33880.c: New test.
17821 * testsuite/libgomp.fortran/pr33880.f90: New test.
17822
c8e95542 178232008-01-24 David Edelsohn <edelsohn@gnu.org>
d653fdfb
DE
17824
17825 * configure: Regenerate.
17826
0f3e711e
JJ
178272008-01-08 Jakub Jelinek <jakub@redhat.com>
17828
17829 * configure.ac: Move futex checking into ../config/futex.m4.
17830 * configure: Rebuilt.
17831 * aclocal.m4: Rebuilt.
17832 * Makefile.in: Rebuilt.
17833
17834 * configure.tgt: Rename have_tls to gcc_cv_have_tls to match
17835 2007-10-15 ../config/tls.m4 change.
17836
5259c813
JJ
178372007-12-19 Jakub Jelinek <jakub@redhat.com>
17838
17839 PR c++/34513
17840 * testsuite/libgomp.c/pr34513.c: New test.
17841 * testsuite/libgomp.c++/pr34513.C: New test.
17842
ae8d8879
JH
178432007-12-17 Jack Howarth <howarth@bromo.med.uc.edu>
17844
17845 PR target/32765
17846 * testsuite/libgomp.fortran/crayptr2.f90: Move dg-options for darwin.
17847
2b4cf991
JJ
178482007-12-04 Jakub Jelinek <jakub@redhat.com>
17849
17850 * omp.h.in (__GOMP_NOTHROW): Define. Use it on omp_* prototypes.
17851
d2dda7fe
JJ
178522007-12-03 Jakub Jelinek <jakub@redhat.com>
17853
17854 * testsuite/libgomp.c/private-1.c: New test.
17855
d683ec81
PB
178562007-11-29 Andris Pavenis <andris.pavenis@iki.fi>
17857 Paolo Bonzini <bonzini@gnu.org>
17858
17859 * Makefile.am: Use space as vpath separator. Use 'vpath %'
17860 instead of 'VPATH ='.
17861 * Makefile.in: Regenerate.
17862
a7415017
MK
178632007-11-23 Matthias Klose <doko@ubuntu.com>
17864
17865 * configure.ac: Adjust makeinfo version check.
17866 * configure: Regenerate.
17867
78e47463
JJ
178682007-11-10 Jakub Jelinek <jakub@redhat.com>
17869
17870 PR fortran/34020
17871 * testsuite/libgomp.fortran/pr34020.f90: New test.
17872
239371f9
JJ
178732007-11-06 Jakub Jelinek <jakub@redhat.com>
17874
17875 PR c++/33894
17876 * testsuite/libgomp.c++/atomic-1.C: New test.
17877
98a5fa94
JJ
178782007-10-25 Jakub Jelinek <jakub@redhat.com>
17879
17880 PR libgomp/33275
17881 * testsuite/libgomp.fortran/omp_parse3.f90 (test_threadprivate):
17882 Make x and y integers rather than (implicit) reals. Add private (j)
17883 clause to the last omp parallel.
17884
3afcaaf4
MR
178852007-10-15 Maciej W. Rozycki <macro@linux-mips.org>
17886
17887 * configure: Regenerate following changes to ../config/tls.m4.
17888
bd69daef
JJ
178892007-09-28 Jakub Jelinek <jakub@redhat.com>
17890
17891 * testsuite/libgomp.fortran/stack.f90: New test.
17892
1d0bd356
DS
178932007-09-10 Danny Smith <dannysmith@users.sourceforge.net>
17894
17895 * config/mingw32/proc.c: New file.
17896
b3172cab
UB
178972007-09-05 Uros Bizjak <ubizjak@gmail.com>
17898
17899 * testsuite/libgomp.c/atomic-1.c: Include cpuid.h for i386 targets.
17900 (main): Use __get_cpuid to get i386 target fetaures.
17901 * testsuite/libgomp.c/atomic-2.c: Include cpuid.h for x86_64 targets.
17902 (main): Use __get_cpuid to get x86_64 target fetaures.
17903
6da17392
JH
179042007-08-15 Jack Howarth <howarth@bromo.med.uc.edu>
17905
17906 PR target/32765
17907 * testsuite/libgomp.fortran/pr32550.f90: Use -static-libgcc on Darwin.
17908 * testsuite/libgomp.fortran/crayptr2.f90: Likwise.
17909
e1c82219
JJ
179102007-07-12 Jakub Jelinek <jakub@redhat.com>
17911
17912 PR fortran/32550
17913 * testsuite/libgomp.fortran/pr32550.f90: New test.
17914 * testsuite/libgomp.fortran/crayptr2.f90: New test.
17915
12a27363
L
179162007-07-05 H.J. Lu <hongjiu.lu@intel.com>
17917
17918 * aclocal.m4: Regenerated.
17919
5349080d
TB
179202007-07-05 Tobias Burnus <burnus@net-b.de>
17921
17922 PR fortran/32359
17923 * testsuite/libgomp.fortran/pr32359.f90: New.
17924
4f9c450c
JJ
179252007-07-02 Jakub Jelinek <jakub@redhat.com>
17926
17927 PR libgomp/32468
17928 * sections.c (GOMP_parallel_sections_start): Only decrease
17929 number of threads to COUNT if dyn_var is true.
17930 * testsuite/libgomp.c/pr32468.c: New test.
17931
28c67ed7
RO
179322007-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
17933
17934 PR libgomp/26308
17935 * config/posix/lock.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
17936
64964499
JJ
179372007-06-21 Jakub Jelinek <jakub@redhat.com>
17938
17939 PR middle-end/32362
17940 * testsuite/libgomp.c/pr32362-1.c: New test.
17941 * testsuite/libgomp.c/pr32362-2.c: New test.
17942 * testsuite/libgomp.c/pr32362-3.c: New test.
17943
46d8fbd1
JJ
179442007-06-07 Jakub Jelinek <jakub@redhat.com>
17945
17946 * team.c (gomp_team_start): Fix setting up thread_attr
17947 stack size.
17948
82a6cadf
PB
179492007-06-02 Paolo Bonzini <bonzini@gnu.org>
17950
17951 * configure: Regenerate.
17952
1cf3d07d
SE
179532007-05-23 Steve Ellcey <sje@cup.hp.com>
17954
17955 * Makefile.in: Regenerate.
17956 * configure: Regenerate.
17957 * aclocal.m4: Regenerate.
17958 * testsuite/Makefile.in: Regenerate.
17959
12aac30b
JJ
179602007-05-04 Jakub Jelinek <jakub@redhat.com>
17961
17962 * config/linux/proc.c: New file.
17963
f1028b02
JJ
17964 PR libgomp/28482
17965 * configure.tgt: Don't link with -Wl,-z,nodlopen even on Linux.
17966
06785a48
DF
179672007-04-19 Daniel Franke <franke.daniel@gmail.com>
17968
17969 * libgomp.texi (GOMP_CPU_AFFINITY): Updated.
17970
b3b08ba0
MK
179712007-04-16 Matthias Klose <doko@debian.org>
17972
17973 * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
17974 flags if not building with -m64.
17975 * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
17976 flag for i?86-*-* targets, if current target matches -m64.
17977
6b2c5ce0
SE
179782007-04-14 Steve Ellcey <sje@cup.hp.com>
17979
17980 * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.
17981 * Makefile.in: Regenerate.
17982
dd56fe7c
JDA
179832007-04-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
17984
17985 PR testsuite/31369
17986 * testsuite/libgomp.c++/c++.exp: Don't use concat when setting
17987 ld_library_path.
17988 * testsuite/libgomp.fortran/fortran.exp: Likewise.
17989
a0884cf0
JJ
179902007-04-04 Jakub Jelinek <jakub@redhat.com>
17991
17992 * libgomp.h (gomp_cpu_affinity, gomp_cpu_affinity_len): New extern
17993 decls.
17994 (gomp_init_affinity, gomp_init_thread_affinity): New prototypes.
17995 * env.c (gomp_cpu_affinity, gomp_cpu_affinity_len): New variables.
17996 (parse_affinity): New function.
17997 (initialize_env): Call it and gomp_init_affinity.
17998 * team.c (gomp_team_start): If gomp_cpu_affinity != NULL,
17999 create new pthread_attr_t and call gomp_init_thread_affinity
18000 on it for each thread before passing the attribute to pthread_create.
18001 * config/linux/affinity.c: New file.
18002 * config/posix/affinity.c: New file.
18003 * configure.ac (HAVE_PTHREAD_AFFINITY_NP): New test.
18004 * configure: Rebuilt.
18005 * config.h.in: Rebuilt.
18006 * Makefile.am (libgomp_la_SOURCES): Add affinity.c.
18007 * Makefile.in: Rebuilt.
18008
1850744b
AT
180092007-03-23 Andreas Tobler <a.tobler@schweiz.org>
18010
18011 * testsuite/lib/libgomp.exp (libgomp_init): Add -shared-libgcc for
18012 *-*-darwin*.
18013 * testsuite/libgomp.c++/c++.exp: Look for shared libstdc++ library
18014 and use it if found.
18015
516f1ed8
UB
180162007-03-18 Uros Bizjak <ubizjak@gmail.com>
18017
18018 * testsuite/config/default.exp: New file.
18019 * testsuite/lib/libgomp.exp: New file.
18020 * testsuite/lib/libgomp.dg (load_gcc_lib, libgomp_init,
18021 libgomp_target_compile, libgomp_option_help, libgomp_option_proc,
18022 load_lib *, load_gcc_lib *): Move to libgomp.exp.
18023 (libgomp_load): Remove.
18024 * testsuite/lib/libgomp.exp (libgomp_init): Compute
18025 always_ld_library_path, not ld_library_path. Set additional_flags
18026 to -march=i486 for ilp32 x86_64-*-* and i386-*-* targets.
18027 (target_compile): Do not call libgomp_init. Append lang_library_path
18028 and lang_link_flags to options.
18029 * testsuite/libgomp.c/c.exp: Set DEFAULT_FLAGS to -O2. Set
18030 ld_library_path from always_ld_library_path. Set LD_LIBRARY_PATH
18031 here.
18032 * testsuite/libgomp.c++/c++.exp: Set ld_library_path from
18033 always_ld_library_path. Set LD_LIBRARY_PATH here.
18034 * testsuite/libgomp.fortran/fortran.exp: Ditto.
18035 * testsuite/libgomp.c/atomic-1.c: Set dg-options to
18036 "-O2 -march=pentium" for ilp32 x86 targets. Simplify check for
18037 CX8 flag.
18038 * testsuite/libgomp.c/atomic-2.c: Set dg-options to "-O2 -mcx16" for
18039 lp64 x86 targets. Do not check for SSE3 bit. Do not define bit_SSE3.
18040 * testsuite/libgomp.c/pr29947-1.c: Remove default dg-options.
18041 * testsuite/libgomp.c/pr29947-1.c: Ditto.
18042 * testsuite/libgomp.c/atomic-10.c: Ditto.
18043
2ada56f5
JJ
180442007-03-21 Jakub Jelinek <jakub@redhat.com>
18045
18046 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: Add
18047 dg-final cleanup-modules line.
18048 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Likewise.
18049 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: Likewise.
18050 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: Likewise.
18051 * testsuite/libgomp.fortran/threadprivate2.f90: Likewise.
18052 * testsuite/libgomp.fortran/reduction5.f90: Likewise.
18053 * testsuite/libgomp.fortran/threadprivate3.f90: Likewise.
18054 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise.
18055
f210f1cd
AS
180562007-03-18 Andreas Schwab <schwab@suse.de>
18057
18058 * acinclude.m4: Adjust regular expression for ld version
18059 extraction.
18060 * configure: Regenerate.
18061
c4dc950d
BM
180622007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
18063
18064 * Makefile.am: Add install-pdf target as copied from
18065 automake v1.10 rules.
18066 * Makefile.in: Regenerate
18067
e02a048f
JJ
180682007-02-07 Jakub Jelinek <jakub@redhat.com>
18069
78e075d4
JJ
18070 PR libgomp/28486
18071 * configure: Regenerate.
18072
e02a048f
JJ
18073 PR c++/30703
18074 * testsuite/libgomp.c++/pr30703.C: New test.
18075
60def7ed
JJ
180762007-02-02 Jakub Jelinek <jakub@redhat.com>
18077
18078 Revert:
18079 2006-07-05 Eric Christopher <echristo@apple.com>
18080 * configure.ac: Depend addition of -pthread on host OS.
18081 * configure: Regenerate.
18082
f1b0882e
RW
180832007-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
18084
18085 * libgomp.texi: Fix spacing after abbreviations.
18086
748b9d7c
DF
180872007-01-31 Daniel Franke <franke.daniel@gmail.com>
18088
18089 PR libgomp/30546
18090 * configure.ac: Add check for makeinfo
18091 * Makefile.am: Redefined target libgomp.info, build libgomp.info only
a0221aee 18092 if an appropriate version of makeinfo is found.
748b9d7c
DF
18093 * aclocal.m4: Regenerated.
18094 * configure: Regenerated.
18095 * Makefile.in: Regenerated.
18096 * testsuite/Makefile.in: Regenerated.
18097
14734fc7
DF
180982007-01-29 Daniel Franke <franke.daniel@gmail.com>
18099
18100 PR libgomp/30540
18101 * libgomp.texi: More about implementation-dependent settings.
18102
7befd5d2
TB
181032007-01-26 Tobias Burnus <burnus@net-b.de>
18104
18105 * testsuite/libgomp.fortran/fortran.exp: Support .f03 extension.
18106
4288fea2
JJ
181072007-01-24 Jakub Jelinek <jakub@redhat.com>
18108
18109 PR middle-end/30494
18110 * testsuite/libgomp.c/pr30494.c: New test.
18111
627ab4b8
TT
181122007-01-15 Tom Tromey <tromey@redhat.com>
18113
18114 * configure: Rebuilt.
18115 * configure.ac: Fixed comment.
18116
7c2b7f45
DF
181172007-01-14 Daniel Franke <franke.daniel@gmail.com>
18118
18119 * libgomp.texi: Document implementation specific default values of
18120 environment variables.
18121
3721b9e1
DF
181222006-12-21 Daniel Franke <franke.daniel@gmail.com>
18123
18124 PR libgomp/28209
18125 * libgomp.texi: New file.
18126 * configure.ac: Add --enable-generated-files-in-srcdir option.
18127 * Makefile.am: Add info, dvi, pdf, html targets. On request, copy
18128 files to srcdir.
18129 * Makefile.in: Regenerated.
18130 * config.h.in: Regenerated.
18131 * testsuite/Makefile.in: Regenerated.
18132 * NOTES: Removed.
18133
62bd6216
DF
181342006-12-04 Daniel Franke <franke.daniel@gmail.com>
18135
18136 PR libgomp/29949
18137 * env.c (omp_set_num_threads): Set illegal thread count to 1.
18138
aad741f4
EB
181392006-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
18140
18141 * configure: Regenerate.
18142
22568cc6
JJ
181432006-12-04 Jakub Jelinek <jakub@redhat.com>
18144
18145 PR libgomp/29947
18146 * loop.c (gomp_loop_init): Make parameters signed. Set ws->end to
18147 start if there shouldn't be any loop iterations.
18148 (gomp_loop_ordered_static_start): Remove start == end test.
18149 * testsuite/libgomp.c/pr29947-1.c: New test.
18150 * testsuite/libgomp.c/pr29947-2.c: New test.
18151
a9690009
EB
181522006-12-02 Eric Botcazou <ebotcazou@libertysurf.fr>
18153
18154 * configure.tgt: Force initial-exec TLS model on Linux only.
18155
597c25e6
DJ
181562006-11-13 Daniel Jacobowitz <dan@codesourcery.com>
18157
18158 * configure: Regenerated.
18159
6acf0b38
UB
181602006-11-09 Uros Bizjak <ubizjak@gmail.com>
18161
18162 * env.c (parse_schedule): Reject out of range values.
18163 (parse_unsigned_long): Reject out of range, negative or zero values.
18164
a7a53ca5
JJ
181652006-10-29 Jakub Jelinek <jakub@redhat.com>
18166
18167 PR fortran/29629
18168 * testsuite/libgomp.fortran/pr29629.f90: New test.
18169
6d4d216a
EB
181702006-10-24 Eric Botcazou <ebotcazou@libertysurf.fr>
18171
18172 PR libgomp/29494
18173 * configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
18174 * config/posix95: New directory.
18175 * config/posix95/omp-lock.h: New file.
18176 * config/posix95/lock.c: Likewise.
18177
5b043f08
GK
181782006-10-14 Geoffrey Keating <geoffk@apple.com>
18179
18180 * aclocal.m4: Regenerate.
18181 * configure: Regenerate.
18182
b50019f0
DS
181832006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
18184
18185 * testsuite/libgomp.c/barrier-1.c: Change timestamp tests from
18186 '<' to '<='.
18187
8887708e
DS
181882006-10-05 Danny Smith <dannysmith@users.sourceforge.net>
18189
18190 * acinclude.m4 (HAVE_ATTRIBUTE_ALIAS): Remove __USER_LABEL_PREFIX__ from
18191 test.
18192 * configure: Regenerate.
18193 * fortran.c (ialias_redirect): Add __USER_LABEL_PREFIX__ to alias.
18194
9b9e4cd6
JJ
181952006-09-26 Jakub Jelinek <jakub@redhat.com>
18196
a70ad3bb
JJ
18197 PR middle-end/25261
18198 PR middle-end/28790
18199 * testsuite/libgomp.c/nestedfn-4.c: New test.
18200 * testsuite/libgomp.c/nestedfn-5.c: New test.
18201 * testsuite/libgomp.fortran/nestedfn3.f90: New test.
18202
9b9e4cd6
JJ
18203 PR fortran/29097
18204 * testsuite/libgomp.fortran/condinc1.f: New test.
18205 * testsuite/libgomp.fortran/condinc2.f: New test.
18206 * testsuite/libgomp.fortran/condinc3.f90: New test.
18207 * testsuite/libgomp.fortran/condinc4.f90: New test.
18208 * testsuite/libgomp.fortran/condinc1.inc: New file.
18209
2fb31455
TT
182102006-09-18 Tom Tromey <tromey@redhat.com>
18211
18212 * configure: Rebuilt.
18213
c663e301
JM
182142006-09-13 Joseph S. Myers <joseph@codesourcery.com>
18215
18216 PR c/28768
18217 PR preprocessor/14634
18218 * configure.ac (HAVE_CLOCK_GETTIME): Add missing second argument
18219 to AC_DEFINE.
18220 * configure: Regenerate.
18221
38371be9
SK
182222006-09-08 Steven G. Kargl <kargl@gcc.gnu.org>
18223
18224 * testsuite/libgomp.fortran/reduction3.f90: Change
18225 -2147483648 to -huge(i)-1 to avoid overflow.
18226 * testsuite/libgomp.fortran/reduction4.f90: Change
18227 Z'ffffffff' to not(0) to avoid overflow.
18228
571d5ac5
JM
182292006-08-26 Joseph S. Myers <joseph@codesourcery.com>
18230
18231 PR libgomp/25938
18232 * Makefile.am (libsubincludedir): New.
18233 (nodist_include_HEADERS): Rename to nodist_libsubinclude_HEADERS.
18234 * Makefile.in: Regenerate.
18235
89b3e3cd
JJ
182362006-08-17 Jakub Jelinek <jakub@redhat.com>
18237
18238 PR libgomp/28725
18239 * env.c: Include ctype.h.
18240 (parse_schedule, parse_unsigned_long, parse_boolean): Allow
18241 leading and/or trailing whitespace and compare strings case
18242 insensitively.
18243
742fae05
JJ
182442006-07-16 Jakub Jelinek <jakub@redhat.com>
18245
18246 PR fortran/28390
18247 * testsuite/libgomp.fortran/pr28390.f: New test.
18248
a1daed2d
EC
182492006-07-05 Eric Christopher <echristo@apple.com>
18250
18251 * configure.ac: Depend addition of -pthread on host OS.
18252 * configure: Regenerate.
18253
5d7b5199
JJ
182542006-06-21 Jakub Jelinek <jakub@redhat.com>
18255
18256 * critical.c (GOMP_critical_name_start): Fix *pptr initialization
18257 when gomp_mutex_t is larger than pointer and HAVE_SYNC_BUILTINS is
18258 defined.
18259
fe5568e9
JJ
182602006-06-20 Jakub Jelinek <jakub@redhat.com>
18261
18262 PR libgomp/26175
18263 PR libgomp/26477
18264 * configure.ac: If neither --enable-linux-futex nor
18265 --disable-linux-futex is passed, determine the default by checking
18266 for compiling and/or running against NPTL. With --enable-linux-futex,
18267 check if SYS_gettid and SYS_futex are defined.
18268 * configure: Rebuilt.
18269
c3b11a40
RH
182702006-06-14 Richard Henderson <rth@redhat.com>
18271
18272 PR libgomp/28008
18273 * env.c (initialize_env): Avoid using PTHREAD_STACK_MIN when
18274 undefined. Use GOMP_STACKSIZE not OMP_STACKSIZE for environment.
18275
d0d1b24d
RH
182762006-06-09 Richard Henderson <rth@redhat.com>
18277
18278 * env.c (gomp_nthreads_var): Change to unsigned long.
18279 (gomp_run_sched_chunk): Likewise.
18280 (parse_unsigned_long): Rename from parse_num_threads and generalize.
18281 (initialize_env): Initialize gomp_thread_attr.
18282 * libgomp.h (gomp_nthreads_var): Update decl.
18283 (gomp_run_sched_chunk): Likewise.
18284 (gomp_thread_attr): Declare.
18285 * team.c (gomp_thread_attr): Export.
18286 (initialize_team): Don't initialize it.
18287
cd75853e
JJ
182882006-06-09 Jakub Jelinek <jakub@redhat.com>
18289
18290 PR fortran/27916
18291 * testsuite/libgomp.fortran/pr27916-1.f90: New test.
18292 * testsuite/libgomp.fortran/pr27916-2.f90: New test.
18293
33815e0c
FXC
182942006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr>
18295
18296 * config/mingw32/time.c: New file.
18297 * configure.tgt: Use it.
18298
6667de0d
CD
182992006-05-23 Carlos O'Donell <carlos@codesourcery.com>
18300
18301 * Makefile.am: Add install-html target. Add install-html to .PHONY
18302 * Makefile.in: Regenerate.
18303
e962c46b
JDA
183042006-05-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
18305
18306 PR libgomp/27612
18307 * testsuite/libgomp.c/sections-1.c: Require sync_int_long.
18308 * testsuite/libgomp.c/critical-1.c: Likewise.
18309 * testsuite/libgomp.c/loop-1.c: Likewise.
18310 * testsuite/libgomp.c/loop-2.c: Likewise.
18311 * testsuite/libgomp.c/single-1.c: Likewise.
18312 * testsuite/libgomp.c/ordered-1.c: Likewise.
18313 * testsuite/libgomp.c/ordered-2.c: Likewise.
18314
eeb1d9e0
JJ
183152006-05-15 Jakub Jelinek <jakub@redhat.com>
18316
18317 PR middle-end/27416
18318 * libgomp.fortran/pr27416-1.f90: New test.
18319
693d710f
JJ
183202006-05-03 Jakub Jelinek <jakub@redhat.com>
18321
18322 PR fortran/27395
18323 * testsuite/libgomp.fortran/pr27395-1.f90: New test.
18324 * testsuite/libgomp.fortran/pr27395-2.f90: New test.
18325
8ca5b2a2
JJ
183262006-05-02 Jakub Jelinek <jakub@redhat.com>
18327
18328 PR c++/26943
18329 * testsuite/libgomp.c/pr26943-1.c: New test.
18330 * testsuite/libgomp.c/pr26943-2.c: New test.
18331 * testsuite/libgomp.c/pr26943-3.c: New test.
18332 * testsuite/libgomp.c/pr26943-4.c: New test.
18333 * testsuite/libgomp.c++/pr27337.C: Remove barrier.
18334 * testsuite/libgomp.c++/pr26943.C: New test.
18335
077b0dfb
JJ
183362006-05-02 Jakub Jelinek <jakub@redhat.com>
18337
18338 PR middle-end/27337
18339 * testsuite/libgomp.c++/pr27337.C: New test.
18340
91b6c26d
JJ
183412006-04-26 Jakub Jelinek <jakub@redhat.com>
18342
18343 PR c/26171
18344 * testsuite/libgomp.c/pr26171.c: New test.
18345
60e1758f
RH
183462006-04-25 Richard Henderson <rth@redhat.com>
18347
18348 PR libgomp/25865
18349 * configure.ac: Use GCC_CHECK_TLS.
18350 * acinclude.m4 (LIBGOMP_CHECK_TLS): Remove.
18351 * Makefile.in, aclocal.m4, configure: Regenerate.
18352
615baed7
MK
183532006-04-10 Matthias Klose <doko@debian.org>
18354
18355 * testsuite/lib/libgomp.exp (libgomp_init): Recognize multilib
18356 directory names containing underscores.
18357
fae2b46b
JJ
183582006-03-21 Jakub Jelinek <jakub@redhat.com>
18359
18360 PR c++/26691
18361 * testsuite/libgomp.c++/pr26691.C: New test.
18362
11a5f608
JJ
183632006-03-13 Jakub Jelinek <jakub@redhat.com>
18364
18365 * testsuite/libgomp.fortran/retval2.f90: New test.
18366
1799e5d5
RH
183672006-03-09 Diego Novillo <dnovillo@redhat.com>
18368
18369 * testsuite/libgomp.c++: New directory.
18370
d349482e
AT
183712006-02-25 Shantonu Sen <ssen@opendarwin.org>
18372
18373 * config/posix/sem.h: Define BROKEN_POSIX_SEMAPHORES functions.
18374 * config/posix/sem.c: Implement the above.
18375
183762006-02-25 Andreas Tobler <a.tobler@schweiz.ch>
18377
18378 * configure.ac (HAVE_BROKEN_POSIX_SEMAPHORES): Check for darwin and
18379 define HAVE_BROKEN_POSIX_SEMAPHORES.
18380 * configure: Rebuilt.
18381 * config.h.in: Rebuilt.
18382
124452c9
FXC
183832006-02-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
18384
18385 PR bootstrap/26161
18386 * configure.ac: Remove AC_CHECK_HEADER for pthread.h. Add comment
18387 for the other pthread check.
18388 * configure: Regenerate.
18389 * config.h.in: Regenerate.
18390
dd8d6dfe
JJ
183912006-02-15 Jakub Jelinek <jakub@redhat.com>
18392
18393 PR libgomp/25938
18394 PR libgomp/25984
18395 * Makefile.am (fincludedir): New variable.
18396 (nodist_include_HEADERS): Remove Fortran files.
18397 (nodist_finclude_HEADERS): New variable.
18398 * Makefile.in: Regenerated.
18399
6c7a4dfd
JJ
184002006-02-13 Jakub Jelinek <jakub@redhat.com>
18401
18402 * testsuite/libgomp.fortran/vla7.f90: Add -w to options.
18403 Remove tests for returning assumed character length arrays.
18404
5142e08b
RS
184052006-02-12 Roger Sayle <roger@eyesopen.com>
18406 John David Anglin <dave@hiauly1.hia.nrc.ca>
18407
18408 PR libgomp/25936
18409 * configure.tgt: Link against -lrt for sem_init on HPUX v11 systems.
a1daed2d 18410
5821fba8
UW
184112006-02-08 Ulrich Weigand <uweigand@de.ibm.com>
18412
18413 * testsuite/lib/libgomp-dg.exp: Load scanrtl.exp library.
18414
cb2bbc67
EB
184152006-02-07 Eric Botcazou <ebotcazou@libertysurf.fr>
18416
18417 * testsuite/lib/libgomp-dg.exp (libgomp_init): Compute multilib related
18418 part of LD_LIBRARY_PATH manually.
18419
f05ee80c
L
184202006-02-03 H.J. Lu <hongjiu.lu@intel.com>
18421
18422 PR libgomp/25852
18423 * testsuite/lib/libgomp-dg.exp (blddir): Set it in
18424 libgomp_init.
18425
03b8fe49
PB
184262005-01-25 Paolo Bonzini <bonzini@gnu.org>
18427
18428 PR libgomp/25884
f05ee80c
L
18429 * Makefile.am (omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Remove.
18430 * configure.ac (PERL): Don't set.
18431 (gstdint.h, omp.h, omp_lib.h, omp_lib.f90, libgomp_f.h): Create here.
18432 (OMP_LOCK_SIZE, OMP_LOCK_ALIGN, OMP_LOCK_KIND, OMP_NEST_LOCK_SIZE,
18433 OMP_NEST_LOCK_ALIGN, OMP_NEST_LOCK_KIND): New substitutions.
18434 * omp.h.in: Wrap the new configure substitutions with @ characters.
18435 * omp_lib.h.in, omp_lib.f90.in, libgomp_f.h.in: Likewise.
18436 * aclocal.m4, configure, Makefile.in: Regenerate.
18437 * mkomp_h.pl: Delete.
03b8fe49 18438
18cbfd85
PB
184392005-01-24 Paolo Bonzini <bonzini@gnu.org>
18440
18441 PR libgomp/25259
18442 * configure.ac: Use GCC_HEADER_STDINT.
18443 * libgomp.h: Include gstdint.h.
18444 * libgomp_f.h.in: Don't include stdint.h or inttypes.h.
18445 * configure, Makefile.in, testsuite/Makefile.in, aclocal.m4: Rebuild.
18446
c41303c6
RH
184472006-01-24 Richard Henderson <rth@redhat.com>
18448
18449 PR libgomp/25942
18450 * configure.ac: Add AM_MAINTAINER_MODE.
18451 * Makefile.in, aclocal.m4, configure, testsuite/Makefile.in: Rebuild.
18452
149b9553
DN
184532006-01-24 Diego Novillo <dnovillo@redhat.com>
18454
18455 * Makefile.in: Regenerate.
18456 * testsuite/Makefile.in: Regenerate.
18457 * aclocal.m4: Regenerate.
18458
192a50ad
AT
184592006-01-23 Andreas Tobler <a.tobler@schweiz.ch>
18460
18461 * config/posix/proc.c: Conditional include of sys/loadavg.h for
18462 Solaris.
18463 * configure.ac: Add check for loadavg.h.
18464 (link_gomp): Adjust comment.
18465 * configure: Regenerate.
18466 * config.h.in: Regenerate.
18467
a55b8e18
SE
184682006-01-21 Steve Ellcey <sje@cup.hp.com>
18469
18470 PR libgomp/25877
18471 * configure.ac: Remove check for alloca.h.
18472 * configure: Regenerate.
18473 * config.h.in: Regenerate.
18474 * libgomp.h: define gomp_alloca to be __builtin_alloca.
18475 * team.c: Remove use of alloca.h.
18476 Call gomp_alloca instead of alloca.
18477
692eeb34
SE
184782006-01-20 Steve Ellcey <sje@cup.hp.com>
18479
18480 PR libgomp/25877
18481 * team.c: Add include of alloca.h.
18482 * configure.ac: Add check for alloca.h.
18483 * configure: Regenerate.
18484 * config.h.in: Regenerate.
18485
953ff289
DN
184862006-01-17 Jakub Jelinek <jakub@redhat.com>
18487
18488 PR fortran/25219
18489 * testsuite/libgomp.fortran/pr25219.f90: New test.
18490
184912005-12-05 Uros Bizjak <uros@kss-loka.si>
18492
18493 * testsuite/libgomp.c/pr24455.c, testsuite/libgomp.c/copyin-1.c,
18494 testsuite/libgomp.c/copyin-2.c, testsuite/libgomp.c/copyin-3.c,
18495 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
18496 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
18497 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455.C,
18498 testsuite/libgomp.fortran/threadprivate1.f90,
18499 testsuite/libgomp.fortran/threadprivate2.f90,
18500 testsuite/libgomp.fortran/threadprivate3.f90,
18501 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
18502 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
18503 testsuite/libgomp.fortran/omp_parse3.f90: Change required
18504 effective-target to TLS runtime.
18505
18506 * testsuite/libgomp.fortran/pr25162.f: Require
18507 effective-target TLS runtime.
18508
185092005-12-01 Jakub Jelinek <jakub@redhat.com>
18510
18511 * testsuite/libgomp.fortran/nestedfn2.f90: New test.
18512 * testsuite/libgomp.c/nestedfn-3.c: New test.
18513
185142005-11-30 Jakub Jelinek <jakub@redhat.com>
18515
18516 PR fortran/25162
18517 * testsuite/libgomp.fortran/pr25162.f: New test.
18518
185192005-11-28 Jakub Jelinek <jakub@redhat.com>
18520
18521 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Fall back to
18522 CLOCK_REALTIME if clock_* (CLOCK_MONOTONIC, &ts) call failed.
18523
185242005-11-25 Jakub Jelinek <jakub@redhat.com>
18525
18526 * alloc.c, barrier.c, critical.c, env.c, error.c, fortran.c, iter.c,
18527 libgomp.h, libgomp_f.h.in, libgomp_g.h, loop.c, mkomp_h.pl, omp.h.in,
18528 omp_lib.f90.in, omp_lib.h.in, ordered.c, parallel.c, sections.c,
18529 single.c, team.c, work.c, config/linux/alpha/futex.h,
18530 config/linux/bar.c, config/linux/bar.h, config/linux/ia64/futex.h,
18531 config/linux/lock.c, config/linux/mutex.c, config/linux/mutex.h,
18532 config/linux/powerpc/futex.h, config/linux/s390/futex.h,
18533 config/linux/sem.c, config/linux/sem.h, config/linux/sparc/futex.h,
18534 config/linux/x86/futex.h, config/posix/bar.c, config/posix/bar.h,
18535 config/posix/lock.c, config/posix/mutex.h, config/posix/proc.c,
18536 config/posix/sem.c, config/posix/sem.h, config/posix/time.c: Update
18537 FSF address.
18538
185392005-11-18 Jakub Jelinek <jakub@redhat.com>
18540
18541 * Makefile.am: Move libgomp_f.h from nodist_include_HEADERS
18542 to nodist_noinst_HEADERS.
18543 * Makefile.in: Rebuilt.
18544
18545 * config/posix/omp-lock.h (omp_nest_lock_t): Change into struct,
18546 add integer count field.
18547 * config/posix/lock.c (omp_destroy_nest_lock): Adjust for
18548 omp_nest_lock_t type change.
18549 (omp_init_nest_lock): Likewise. Initialize count to 0.
18550 (omp_set_nest_lock): Adjust for omp_nest_lock_t type change.
18551 Increment count.
18552 (omp_unset_nest_lock): Adjust for omp_nest_lock_t type change.
18553 Decrement count.
18554 (omp_test_nest_lock): Adjust for omp_nest_lock_t type change.
18555 Increment count if successful and return the new nesting level.
18556 * config/linux/lock.c (omp_test_nest_lock): Return new nesting level.
18557 * omp_lib.f90.in (omp_test_lock): Fix LOCK argument type.
18558 * testsuite/libgomp.c/lib-1.c: New test.
18559 * testsuite/libgomp.fortran/lib1.f90: New test.
18560 * testsuite/libgomp.fortran/lib2.f: New test.
18561 * testsuite/libgomp.fortran/lib3.f: New test.
18562
185632005-11-17 Richard Henderson <rth@redhat.com>
18564
18565 PR 24845
18566 * Makefile.am (nodist_toolexeclib_HEADERS): New.
18567 * configure.ac (link_gomp): New. Substitute it.
18568 (AC_CONFIG_FILES): Add libgomp.spec.
18569 * libgomp.spec.in: New file.
18570 * Makefile.in, testsuite/Makefile.in, configure: Rebuild.
18571 * testsuite/lib/libgomp-dg.exp: Add -B${blddir}/ to flags.
18572
185732005-11-18 Jakub Jelinek <jakub@redhat.com>
18574
18575 * testsuite/libgomp.fortran/reduction1.f90: Adjust for
18576 reduction(-:var) behaving the same as reduction(+:var).
18577 * testsuite/libgomp.c/reduction-4.c: New test.
18578
185792005-11-15 Uros Bizjak <uros@kss-loka.si>
18580
18581 * testsuite/libgomp.c/pr24455-1.c, testsuite/libgomp.c/pr24455.c,
18582 testsuite/libgomp.c/copyin-1.c, testsuite/libgomp.c/copyin-2.c,
18583 testsuite/libgomp.c/copyin-3.c,
18584 testsuite/libgomp.c++/copyin-1.C, testsuite/libgomp.c++/copyin-2.C,
18585 testsuite/libgomp.c++/ctor-5.C, testsuite/libgomp.c++/ctor-8.C,
18586 testsuite/libgomp.c++/ctor-9.C, testsuite/libgomp.c++/pr24455-1.C,
18587 testsuite/libgomp.c++/pr24455.C,
18588 testsuite/libgomp.fortran/threadprivate1.f90,
18589 testsuite/libgomp.fortran/threadprivate2.f90,
18590 testsuite/libgomp.fortran/threadprivate3.f90,
18591 testsuite/libgomp.fortran/appendix-a/a.22.7.f9,
18592 testsuite/libgomp.fortran/appendix-a/a.22.8.f9,
18593 testsuite/libgomp.fortran/omp_parse3.f90: Require
18594 effective-target TLS.
18595
185962005-11-14 Diego Novillo <dnovillo@redhat.com>
18597
18598 * HEADER: Remove.
18599
186002005-11-13 Jakub Jelinek <jakub@redhat.com>
18601
18602 PR libgomp/24797
18603 * team.c (initialize_team): Pass NULL rather than free as
18604 pthread_key_create destructor. Initialize thread specific data
18605 pointer in initial thread to a static local variable rather than
18606 malloced memory.
18607
186082005-11-11 Uros Bizjak <uros@kss-loka.si>
18609
18610 * testsuite/lib/libgomp-dg.exp: Locate libgcc.a and append
18611 its location to ld_library_path.
18612
186132005-11-10 Diego Novillo <dnovillo@redhat.com>
18614
18615 * testsuite/libgomp.c/c.exp: Rename from dg.exp.
18616
186172005-11-10 Diego Novillo <dnovillo@redhat.com>
18618
18619 * testsuite/libgomp.c: Rename from libgomp.dg.
18620
186212005-11-09 Diego Novillo <dnovillo@redhat.com>
18622
18623 * testsuite/libgomp.c++/pr24455.C: Add copyin clause for
18624 threadprivate variable 'i'.
18625
186262005-11-09 Jakub Jelinek <jakub@redhat.com>
18627
18628 * config/linux/s390/futex.h: New file.
18629 * configure.tgt: Use it.
18630
18631 * testsuite/libgomp.fortran/omp_parse4.f90: Move n initialization
18632 before the parallel.
18633
186342005-11-08 Jakub Jelinek <jakub@redhat.com>
18635
18636 PR c++/24734
18637 * testsuite/libgomp.c++/master-1.C: New test.
18638
186392005-11-07 Jakub Jelinek <jakub@redhat.com>
18640
18641 * testsuite/libgomp.dg/copyin-3.c: New test.
18642
186432005-11-07 Jakub Jelinek <jakub@redhat.com>
18644
18645 * testsuite/libgomp.fortran/retval1.f90: New test.
18646 * testsuite/libgomp.fortran/vla7.f90: New test.
18647
186482005-11-06 Jakub Jelinek <jakub@redhat.com>
18649
18650 * testsuite/libgomp.fortran/vla2.f90: New test.
18651 * testsuite/libgomp.fortran/vla3.f90: New test.
18652 * testsuite/libgomp.fortran/vla4.f90: New test.
18653 * testsuite/libgomp.fortran/vla5.f90: New test.
18654 * testsuite/libgomp.fortran/vla6.f90: New test.
18655
186562005-11-01 Jakub Jelinek <jakub@redhat.com>
18657
18658 * config/linux/sparc/futex.h: New file.
18659 * configure.tgt: Use it.
18660 * testsuite/lib/libgomp-dg.exp: Use -mcpu=v9 for sparc testing.
18661
18662 * critical.c: Include stdlib.h.
18663 * acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Avoid warnings about
18664 ignoring return value.
18665 * configure.ac: Don't put -Wc,-pthread into XCFLAGS until after
18666 LIBGOMP_CHECK_SYNC_BUILTINS check.
18667 * configure: Rebuilt.
18668
186692005-10-31 Jakub Jelinek <jakub@redhat.com>
18670
18671 * testsuite/libgomp.fortran/vla1.f90: New test.
18672
186732005-10-31 Richard Henderson <rth@redhat.com>
18674
18675 * testsuite/libgomp.fortran/character2.f90: Fix race condition
18676 setting 's' in different threads.
18677
186782005-10-31 Jakub Jelinek <jakub@redhat.com>
18679
18680 * libgomp.h (attribute_hidden, ialias): Define.
18681 * config/posix/proc.c (omp_get_num_procs): Add ialias.
18682 * config/posix/time.c (omp_get_wtime, omp_get_wtick): Likewise.
18683 * config/posix/lock.c (omp_init_lock, omp_init_nest_lock,
18684 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
18685 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
18686 omp_test_lock, omp_test_nest_lock): Likewise.
18687 * config/linux/lock.c (omp_init_lock, omp_init_nest_lock,
18688 omp_destroy_lock, omp_destroy_nest_lock, omp_set_lock,
18689 omp_set_nest_lock, omp_unset_lock, omp_unset_nest_lock,
18690 omp_test_lock, omp_test_nest_lock): Likewise.
18691 * env.c (omp_set_dynamic, omp_set_nested, omp_set_num_threads,
18692 omp_get_dynamic, omp_get_nested): Likewise.
18693 * parallel.c (omp_get_num_threads, omp_get_max_threads,
18694 omp_get_thread_num, omp_in_parallel): Likewise.
18695 * fortran.c (ialias_redirect): Define.
18696 (omp_init_lock, omp_init_nest_lock, omp_destroy_lock,
18697 omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock,
18698 omp_unset_lock, omp_unset_nest_lock, omp_test_lock,
18699 omp_test_nest_lock, omp_set_dynamic, omp_set_nested,
18700 omp_set_num_threads, omp_get_dynamic, omp_get_nested,
18701 omp_in_parallel, omp_get_max_threads, omp_get_num_procs,
18702 omp_get_num_threads, omp_get_thread_num, omp_get_wtick,
18703 omp_get_wtime): Add ialias_redirect.
18704
187052005-10-30 Jakub Jelinek <jakub@redhat.com>
18706
18707 * fortran.c: Include stdlib.h.
18708
187092005-10-29 Jakub Jelinek <jakub@redhat.com>
18710
18711 * Makefile.am (env.o, env.lo): Depend on libgomp_f.h.
18712 * Makefile.in: Regenerated.
18713
187142005-10-28 Jakub Jelinek <jakub@redhat.com>
18715
18716 * mkomp_h.pl: Remove all -Wc, option prefixes in $COMPILE.
18717 * libgomp_f.h.in (omp_check_defines): New function.
18718 * env.c: Include libgomp_f.h.
18719 (initialize_env): Call omp_check_defines.
18720
18721 * testsuite/libgomp.dg/copyin-2.c: New test.
18722 * testsuite/libgomp.c++/copyin-2.C: New test.
18723 * testsuite/libgomp.fortran/threadprivate3.f90: New test.
18724
18725 * testsuite/libgomp.fortran/threadprivate2.f90: New test.
18726 * testsuite/libgomp.fortran/sharing2.f90: New test.
18727
18728 * testsuite/libgomp.dg/copyin-1.c: New test.
18729 * testsuite/libgomp.c++/copyin-1.C: New test.
18730
187312005-10-26 Jakub Jelinek <jakub@redhat.com>
18732
18733 * testsuite/libgomp.fortran/crayptr1.f90: New test.
18734
18735 * testsuite/libgomp.fortran/workshare1.f90: New test.
18736
18737 * libgomp.fortran/appendix-a/a.28.5.f90: Change into compile
18738 only test.
18739 * libgomp.fortran/sharing1.f90: New test.
18740
187412005-10-24 Jakub Jelinek <jakub@redhat.com>
18742
18743 PR c++/24502
18744 * testsuite/libgomp.c++/loop-7.C: New test.
18745
18746 * testsuite/libgomp.dg/nestedfn-2.c: New test.
18747
18748 * testsuite/libgomp.dg/nestedfn-1.c: New test.
18749 * testsuite/libgomp.fortran/reduction6.f90: New test.
18750 * testsuite/libgomp.fortran/nestedfn1.f90: New test.
18751
187522005-10-23 Richard Henderson <rth@redhat.com>
18753
18754 * testsuite/libgomp.c++/ctor-1.C: New.
18755 * testsuite/libgomp.c++/ctor-2.C: New.
18756 * testsuite/libgomp.c++/ctor-3.C: New.
18757 * testsuite/libgomp.c++/ctor-4.C: New.
18758 * testsuite/libgomp.c++/ctor-5.C: New.
18759 * testsuite/libgomp.c++/ctor-6.C: New.
18760 * testsuite/libgomp.c++/ctor-7.C: New.
18761 * testsuite/libgomp.c++/ctor-8.C: New.
18762 * testsuite/libgomp.c++/ctor-9.C: New.
18763
187642005-10-21 Diego Novillo <dnovillo@redhat.com>
18765
18766 PR 24455
18767 * testsuite/libgomp.c++/pr24455-1.C: New test.
18768 * testsuite/libgomp.c++/pr24455.C: New test.
18769 * testsuite/libgomp.dg/pr24455-1.c: New test.
18770 * testsuite/libgomp.dg/pr24455.c: New test.
18771
187722005-10-20 Richard Henderson <rth@redhat.com>
18773
18774 * testsuite/libgomp.c++/loop-6.C: New.
18775 * testsuite/libgomp.dg/loop-3.c: New.
18776
187772005-10-20 Jakub Jelinek <jakub@redhat.com>
18778
18779 * testsuite/libgomp.fortran/jacobi.f: Don't make i and j
18780 explicitly private.
18781 * testsuite/libgomp.fortran/omp_parse1.f90 (test_do): Make i
18782 explicitly shared.
18783
187842005-10-19 Diego Novillo <dnovillo@redhat.com>
18785
18786 * testsuite/libgomp.fortran/jacobi.f: New test.
18787
187882005-10-19 Richard Henderson <rth@redhat.com>
18789
18790 * configure.tgt (i?86-linux): Default to with_arch instead of
18791 CFLAGS. Add -mtune to match target_cpu.
18792 (x86_64-linux): Tune to i686.
18793
18794 * fortran.c (omp_test_nest_lock_): Fix typo.
18795
187962005-10-19 Jakub Jelinek <jakub@redhat.com>
18797
18798 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
18799 gomp_ordered_sync): Do nothing if team->nthreads == 1.
18800 * testsuite/libgomp.dg/ordered-3.c: New test.
18801
18802 * testsuite/libgomp.dg/appendix-a/a.18.1.c: Remove unconditional abort.
18803 Remove volatile keyword.
18804
18805 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: Reorder variables
18806 in COMMON block to avoid warnings on 64-bit targets.
18807
188082005-10-18 Diego Novillo <dnovillo@redhat.com>
18809
18810 * testsuite/libgomp.dg/shared-3.c: New test.
18811
188122005-10-18 Jakub Jelinek <jakub@redhat.com>
18813
18814 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: Removed.
18815 * testsuite/libgomp.fortran/reduction5.f90: New test.
18816
188172005-10-18 Jakub Jelinek <jakub@redhat.com>
18818
18819 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: Add -ffixed-form to
18820 dg-options.
18821 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: Likewise. Enable
18822 flush loop now that __sync_synchronize has proper memory barrier.
18823 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: Fix a typo.
18824 Add -ffixed-form to dg-options.
18825
188262005-10-17 Diego Novillo <dnovillo@redhat.com>
18827
18828 * testsuite/libgomp.fortran/fortran.exp: Also gather tests
18829 from subdirectories.
18830 * testsuite/libgomp.fortran/appendix-a/a.15.1.f90: New test.
18831 * testsuite/libgomp.fortran/appendix-a/a.16.1.f90: New test.
18832 * testsuite/libgomp.fortran/appendix-a/a.18.1.f90: New test.
18833 * testsuite/libgomp.fortran/appendix-a/a.19.1.f90: New test.
18834 * testsuite/libgomp.fortran/appendix-a/a.2.1.f90: New test.
18835 * testsuite/libgomp.fortran/appendix-a/a.21.1.f90: New test.
18836 * testsuite/libgomp.fortran/appendix-a/a.22.7.f90: New test.
18837 * testsuite/libgomp.fortran/appendix-a/a.22.8.f90: New test.
18838 * testsuite/libgomp.fortran/appendix-a/a.26.1.f90: New test.
18839 * testsuite/libgomp.fortran/appendix-a/a.28.1.f90: New test.
18840 * testsuite/libgomp.fortran/appendix-a/a.28.2.f90: New test.
18841 * testsuite/libgomp.fortran/appendix-a/a.28.3.f90: New test.
18842 * testsuite/libgomp.fortran/appendix-a/a.28.4.f90: New test.
18843 * testsuite/libgomp.fortran/appendix-a/a.28.5.f90: New test.
18844 * testsuite/libgomp.fortran/appendix-a/a.3.1.f90: New test.
18845 * testsuite/libgomp.fortran/appendix-a/a.31.3.f90: New test.
18846 * testsuite/libgomp.fortran/appendix-a/a.31.4.f90: New test.
18847 * testsuite/libgomp.fortran/appendix-a/a.31.5.f90: New test.
18848 * testsuite/libgomp.fortran/appendix-a/a.33.3.f90: New test.
18849 * testsuite/libgomp.fortran/appendix-a/a.38.1.f90: New test.
18850 * testsuite/libgomp.fortran/appendix-a/a.39.1.f90: New test.
18851 * testsuite/libgomp.fortran/appendix-a/a.4.1.f90: New test.
18852 * testsuite/libgomp.fortran/appendix-a/a.40.1.f90: New test.
18853 * testsuite/libgomp.fortran/appendix-a/a.5.1.f90: New test.
18854 * testsuite/libgomp.fortran/appendix-a/a10.1.f90: New test.
18855
188562005-10-17 Jakub Jelinek <jakub@redhat.com>
18857
18858 * testsuite/libgomp.dg/dg.exp: Only unset lang_* if
18859 lang_library_path exists. Use find instead of glob to gather tests.
18860 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: Removed.
18861
188622005-10-17 Diego Novillo <dnovillo@redhat.com>
18863
18864 * testsuite/libgomp.dg/appendix-a/a.15.1.c: New test.
18865 * testsuite/libgomp.dg/appendix-a/a.16.1.c: New test.
18866 * testsuite/libgomp.dg/appendix-a/a.18.1.c: New test.
18867 * testsuite/libgomp.dg/appendix-a/a.19.1.c: New test.
18868 * testsuite/libgomp.dg/appendix-a/a.2.1.c: New test.
18869 * testsuite/libgomp.dg/appendix-a/a.21.1.c: New test.
18870 * testsuite/libgomp.dg/appendix-a/a.26.1.c: New test.
18871 * testsuite/libgomp.dg/appendix-a/a.29.1.c: New test.
18872 * testsuite/libgomp.dg/appendix-a/a.3.1.c: New test.
18873 * testsuite/libgomp.dg/appendix-a/a.39.1.c: New test.
18874 * testsuite/libgomp.dg/appendix-a/a.4.1.c: New test.
18875 * testsuite/libgomp.dg/appendix-a/a.5.1.c: New test.
18876 * testsuite/libgomp.dg/appendix-a/appendix-a.exp: New file.
18877
188782005-10-15 Jakub Jelinek <jakub@redhat.com>
18879
18880 * testsuite/libgomp.dg/vla-1.c: New test.
18881
18882 * testsuite/libgomp.fortran/reference2.f90: New test.
18883
18884 * testsuite/libgomp.fortran/character2.f90: Remove explicit
18885 declaration of omp_get_thread_num.
18886 * testsuite/libgomp.fortran/threadprivate1.f90: Likewise. Add
18887 use omp_lib.
18888
18889 * testsuite/libgomp.fortran/reduction1.f90: New test.
18890 * testsuite/libgomp.fortran/reduction2.f90: New test.
18891 * testsuite/libgomp.fortran/reduction3.f90: New test.
18892 * testsuite/libgomp.fortran/reduction4.f90: New test.
18893
188942005-10-13 Richard Henderson <rth@redhat.com>
18895
18896 * Makefile.am (libgomp_la_SOURCES): Add bar.c.
18897 * Makefile.in: Regenerate.
18898 * barrier.c (GOMP_barrier): Use gomp_barrier_wait.
18899 * libgomp.h: Include bar.h.
18900 (struct gomp_barrier): Remove.
18901 (struct gomp_team): Add barrier. Replace master_barrier with
18902 master_release. Replace threads with ordered_release.
18903 (struct gomp_thread): Replace barrier with release.
18904 * ordered.c (gomp_ordered_first): Update for ordered_release change.
18905 (gomp_ordered_last, gomp_ordered_next, gomp_ordered_static_init,
18906 gomp_ordered_static_next, gomp_ordered_sync): Likewise.
18907 * single.c (GOMP_single_copy_start): Use gomp_barrier_wait.
18908 (GOMP_single_copy_end): Likewise.
18909 * team.c (gomp_threads_dock): New.
18910 (gomp_barrier_init, gomp_barrier_destroy): Remove.
18911 (gomp_thread_start): Use gomp_barrier_wait.
18912 (new_team, free_team): Update for gomp_team changes.
18913 (gomp_team_start): Use gomp_barrier_wait and gomp_barrier_reinit.
18914 (gomp_team_end): Use gomp_barrier_wait.
18915 (initialize_team): Update for gomp_thread changes.
18916 * work.c (gomp_work_share_end): Use gomp_barrier_wait_start.
18917 (gomp_work_share_end_nowait): Use atomic ops when available.
18918 * config/linux/bar.c, config/linux/bar.h: New files.
18919 * config/posix/bar.c, config/posix/bar.h: New files.
18920
189212005-10-13 Jakub Jelinek <jakub@redhat.com>
18922
18923 * single.c (GOMP_single_copy_end): Don't segfault if team is NULL.
18924 * testsuite/libgomp.dg/single-2.c: New test.
18925
18926 * testsuite/libgomp.dg/dg.exp (lang_library_path, lang_test_file,
18927 lang_link_flags): Unset, so that they aren't inherited from previously
18928 sourced *.exp.
18929
18930 * testsuite/libgomp.fortran/threadprivate1.f90: New test.
18931
189322005-10-12 Richard Henderson <rth@redhat.com>
18933
18934 * testsuite/lib/libgomp-dg.exp: Set blddir at toplevel.
18935 (libgomp_init): Use lang_test_file, lang_library_path, and
18936 lang_link_flags, set by the subdirectory files. Add -fopenmp here.
18937
18938 * testsuite/libgomp.fortran/fortran.exp (lang_library_path): New.
18939 (lang_test_file, lang_link_flags): New.
18940 (DEFAULT_FFLAGS, ALWAYS_CFLAGS, multilibs, blddir): Remove.
18941
18942 * testsuite/libgomp.c++/c++.exp, testsuite/libgomp.c++/loop-1.C,
18943 testsuite/libgomp.c++/loop-2.C, testsuite/libgomp.c++/loop-3.C,
18944 testsuite/libgomp.c++/loop-4.C, testsuite/libgomp.c++/nested-1.C,
18945 testsuite/libgomp.c++/parallel-1.C,
18946 testsuite/libgomp.c++/reduction-1.C,
18947 testsuite/libgomp.c++/reduction-2.C,
18948 testsuite/libgomp.c++/reduction-3.C,
18949 testsuite/libgomp.c++/sections-1.C, testsuite/libgomp.c++/shared-1.C,
18950 testsuite/libgomp.c++/shared-2.C, testsuite/libgomp.c++/single-1.C,
18951 testsuite/libgomp.c++/single-2.C, testsuite/libgomp.c++/single-3.C:
18952 New files, largely cribbed from the C testsuite.
18953
189542005-10-12 Jakub Jelinek <jakub@redhat.com>
18955
18956 * testsuite/libgomp.fortran/character1.f90: New test.
18957 * testsuite/libgomp.fortran/character2.f90: New test.
18958
18959 * testsuite/libgomp.dg/nested-1.c: New test.
18960 * testsuite/libgomp.dg/nested-2.c: New test.
18961 * testsuite/libgomp.fortran/do1.f90: New test.
18962 * testsuite/libgomp.fortran/do2.f90: New test.
18963
18964 * testsuite/libgomp.fortran/reference1.f90: New test.
18965
189662005-10-11 Jakub Jelinek <jakub@redhat.com>
18967
18968 * testsuite/libgomp.dg/reduction-1.c: New test.
18969 * testsuite/libgomp.dg/reduction-2.c: New test.
18970 * testsuite/libgomp.dg/reduction-3.c: New test.
18971
189722005-10-10 Jakub Jelinek <jakub@redhat.com>
18973
18974 * testsuite/libgomp.dg/atomic-1.c: New test.
18975 * testsuite/libgomp.dg/atomic-2.c: New test.
18976
189772005-10-09 Richard Henderson <rth@redhat.com>
18978
18979 * critical.c (atomic_lock): New.
18980 (initialize_critical): Initialize it.
18981 (GOMP_atomic_start, GOMP_atomic_end): New.
18982 * libgomp.map: Export them.
18983 * libgomp_g.h: Declare them.
18984
18985 * testsuite/libgomp.dg/atomic-10.c: Move from gcc testsuite.
18986
189872005-10-02 Richard Henderson <rth@redhat.com>
18988
18989 * configure.ac: Move save_CFLAGS hack earlier. Append -Wall/-Werror
18990 to XCFLAGS instead of CFLAGS.
18991
189922005-09-30 Richard Henderson <rth@redhat.com>
18993
18994 * configure.ac: Determine whether -pthread or -lpthread is needed.
18995 * Makefile.am (libgomp_la_LDFLAGS): Remove explicit -lpthread.
93d90219 18996 * Makefile.in, configure: Rebuild.
953ff289
DN
18997
189982005-09-28 Richard Henderson <rth@redhat.com>
18999
19000 * testsuite/libgomp.dg/omp-loop03.c: Fix return code.
19001 * testsuite/libgomp.dg/omp-single-3.c: New test.
19002
190032005-09-28 Diego Novillo <dnovillo@redhat.com>
19004
19005 * testsuite/libgomp.dg/omp-single-2.c: New test.
19006 * testsuite/libgomp.dg/shared-2.c: Fix return code.
19007
190082005-09-27 Richard Henderson <rth@redhat.com>
19009
19010 * testsuite/libgomp.dg/omp-loop03.c: Add initial barrier.
19011 * testsuite/libgomp.dg/omp-parallel-for.c: Specify static schedule.
19012
190132005-09-27 Jakub Jelinek <jakub@redhat.com>
19014
19015 * testsuite/libgomp.dg/omp-loop03.c: New test.
19016
190172005-09-27 Diego Novillo <dnovillo@redhat.com>
19018
19019 * testsuite/libgomp.dg/omp-parallel-for.c: New test.
19020
190212005-09-27 Diego Novillo <dnovillo@redhat.com>
19022
19023 * testsuite/libgomp.dg/omp-single-1.c: New test.
19024 * testsuite/libgomp.dg/shared-1.c: Return 0.
19025 Add prototype for abort.
19026 * testsuite/libgomp.dg/shared-2.c: Likewise.
19027
190282005-09-26 Jakub Jelinek <jakub@redhat.com>
19029
19030 * testsuite/libgomp.fortran/omp_parse3.f90: Fix non-conforming
19031 constructs.
19032
190332005-09-26 Diego Novillo <dnovillo@redhat.com>
19034
19035 * testsuite/libgomp.dg/shared-1.c: New test.
19036 * testsuite/libgomp.dg/shared-2.c: New test.
19037
190382005-09-24 Richard Henderson <rth@redhat.com>
19039
19040 * testsuite/libgomp.dg/omp_workshare3.c: Mark dg-error.
19041
190422005-09-24 Richard Henderson <rth@redhat.com>
19043
19044 * iter.c (gomp_iter_static_next): Round up when computing number
19045 of iterations. Don't bother distributing a remainder equally.
19046
19047 * testsuite/libgomp.dg/omp-loop01.c (main1): Rename from main.
19048 Don't call srand. Zero b before testing.
19049 (main): New.
19050
190512005-09-24 Jakub Jelinek <jakub@redhat.com>
19052
19053 * testsuite/libgomp.fortran/omp_atomic1.f90: New test.
19054 * testsuite/libgomp.fortran/omp_atomic2.f90: New test.
19055
190562005-09-23 Jakub Jelinek <jakub@redhat.com>
19057
19058 * testsuite/libgomp.fortran/omp_parse1.f90: Add a test for !$omp do
19059 without !$omp end do, followed immediately by subroutine end.
19060
190612005-09-23 Diego Novillo <dnovillo@redhat.com>
19062
19063 * testsuite/libgomp.dg/omp-parallel-if.c: New test.
19064
190652005-09-22 Richard Henderson <rth@redhat.com>
19066
19067 * critical.c (GOMP_critical_name_start): Change argument to void**.
19068 Reuse the pointer space if the mutex fits.
19069 (GOMP_critical_name_end): Likewise.
19070 (initialize_critical): Don't define if GOMP_MUTEX_INIT_0.
19071 * libgomp_g.h (GOMP_critical_name_start): Update decl.
19072 (GOMP_critical_name_end): Likewise.
19073 * config/linux/mutex.h (GOMP_MUTEX_INIT_0): New.
19074 * config/posix/mutex.h (GOMP_MUTEX_INIT_0): New.
19075
190762005-09-20 Richard Henderson <rth@redhat.com>
19077
19078 * critical.c (GOMP_critical_name_start, GOMP_critical_name_end): New.
19079 (create_lock_lock): New.
19080 (initialize_critical): Initialize it.
19081 * libgomp.map (GOMP_critical_name_start, GOMP_critical_name_end): New.
19082 * libgomp_g.h (GOMP_ordered_start, GOMP_ordered_end): Declare.
19083
190842005-09-20 Diego Novillo <dnovillo@redhat.com>
19085
19086 * testsuite/libgom.dg/omp-loop01.c: Include stdio.h.
19087
190882005-09-20 Diego Novillo <dnovillo@redhat.com>
19089
19090 * testsuite/libgomp.dg/omp-loop01.c: New test.
19091 * testsuite/libgomp.dg/omp-loop02.c: New test.
19092
190932005-09-20 Jakub Jelinek <jakub@redhat.com>
19094
19095 * configure.ac (AC_PROG_FC): Add.
19096 (USE_FORTRAN): New automake conditional.
19097 * configure: Rebuilt.
19098 * Makefile.am (libgomp_la_SOURCES): Add fortran.c.
19099 (nodist_include_HEADERS): Add omp_lib.h, omp_lib.f90 and libgomp_f.h.
19100 If USE_FORTRAN, add also omp_lib.mod and omp_lib_kinds.mod.
19101 Add rules to build them.
19102 * Makefile.in: Rebuilt.
19103 * mkomp_h.pl: Compute and replace also OMP_LOCK_KIND and
19104 OMP_NEST_LOCK_KIND.
19105 * libgomp.map: Add Fortran wrappers.
19106 * libgomp_f.h.in: New file.
19107 * omp_lib.h.in: New file.
19108 * omp_lib.f90.in: New file.
19109 * fortran.c: New file.
19110 * testsuite/lib/libgomp-dg.exp: Load a few more .exp files.
19111 Append libgfortran directory to LD_LIBRARY_PATH if it exists.
19112 Add -Lpath_to_libgfortran and -lgfortran -lgfortranbegin if
19113 libgfortran has been built.
19114 * testsuite/libgomp.fortran/fortran.exp: New file.
19115 * testsuite/libgomp.fortran/omp_cond1.f: New test.
19116 * testsuite/libgomp.fortran/omp_cond2.f: New test.
19117 * testsuite/libgomp.fortran/omp_cond3.F90: New test.
19118 * testsuite/libgomp.fortran/omp_cond4.F90: New test.
19119 * testsuite/libgomp.fortran/omp_hello.f: New test.
19120 * testsuite/libgomp.fortran/omp_orphan.f: New test.
19121 * testsuite/libgomp.fortran/omp_parse1.f90: New test.
19122 * testsuite/libgomp.fortran/omp_parse2.f90: New test.
19123 * testsuite/libgomp.fortran/omp_parse3.f90: New test.
19124 * testsuite/libgomp.fortran/omp_parse4.f90: New test.
19125 * testsuite/libgomp.fortran/omp_reduction.f: New test.
19126 * testsuite/libgomp.fortran/omp_workshare1.f: New test.
19127 * testsuite/libgomp.fortran/omp_workshare2.f: New test.
19128
191292005-08-30 Richard Henderson <rth@redhat.com>
19130
19131 * loop.c (GOMP_loop_static_start): Provide fallback wrapper
19132 function for when aliases are not usable.
19133 (GOMP_loop_dynamic_start, GOMP_loop_guided_start,
19134 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
19135 GOMP_loop_ordered_guided_start, GOMP_loop_static_next,
19136 GOMP_loop_dynamic_next, GOMP_loop_guided_next,
19137 GOMP_loop_ordered_static_next, GOMP_loop_ordered_dynamic_next,
19138 GOMP_loop_ordered_guided_next): Likewise.
19139 * ordered.c (GOMP_ordered_start): Likewise.
19140
191412005-08-01 Diego Novillo <dnovillo@redhat.com>
19142
19143 * testsuite/libgomp.dg/dg.exp: Use -O2 for now.
19144 * testsuite/libgomp.dg/omp_hello.c: Fix return code
19145 * testsuite/libgomp.dg/omp_matvec.c: Likewise.
19146 * testsuite/libgomp.dg/omp_orphan.c: Likewise
19147 * testsuite/libgomp.dg/omp_reduction.c: Likewise
19148 * testsuite/libgomp.dg/omp_workshare1.c: Likewise
19149 * testsuite/libgomp.dg/omp_workshare2.c: Likewise
19150 * testsuite/libgomp.dg/omp_workshare3.c: Likewise
19151 * testsuite/libgomp.dg/omp_workshare4.c: Likewise
19152
191532005-07-07 Eric Christopher <echristo@redhat.com>
19154 Diego Novillo <dnovillo@redhat.com>
19155
19156 * testsuite/libgomp.dg/dg.exp: Add -fopenmp to DEFAULT_CFLAGS.
19157 * testsuite/libgomp.dg/omp_hello.c: Add standard includes, fix
19158 up code.
19159 * testsuite/libgomp.dg/omp_matvec.c: Ditto.
19160 * testsuite/libgomp.dg/omp_orphan.c: Ditto.
19161 * testsuite/libgomp.dg/omp_reduction.c: Ditto.
19162 * testsuite/libgomp.dg/omp_workshare1.c: Ditto.
19163 * testsuite/libgomp.dg/omp_workshare2.c: Ditto.
19164 * testsuite/libgomp.dg/omp_workshare3.c: Ditto.
19165 * testsuite/libgomp.dg/omp_workshare4.c: Ditto.
19166
191672005-06-13 Diego Novillo <dnovillo@redhat.com>
19168
19169 * TOPLEVEL.patch: Remove.
19170
191712005-05-16 Richard Henderson <rth@redhat.com>
19172
19173 * configure.ac: Test for clock_gettime.
19174 * config.h.in, configure: Rebuild.
19175 * config/posix/time.c: Use recommended TIME_WITH_SYS_TIME pattern.
19176 (omp_get_wtime): Use clock_gettime if available.
19177 (omp_get_wtick): Use clock_getres if available.
19178
191792005-05-11 Richard Henderson <rth@redhat.com>
19180
19181 * config/linux/ia64/futex.h: New file.
19182 * configure.tgt: Use it.
19183
19184 * team.c (gomp_barrier_init, gomp_barrier_destroy): Mark inline.
19185
191862005-05-07 Richard Henderson <rth@redhat.com>
19187
19188 * config/linux/powerpc/futex.h: New file.
19189 * configure.tgt: Use it.
19190
19191 * config/linux/i486/futex.h: Merge ...
19192 * config/linux/x86_64/futex.h: ... into ...
19193 * config/linux/x86/futex.h: ... here.
19194 * configure.tgt: Update to match.
19195
191962005-05-06 Richard Henderson <rth@redhat.com>
19197
19198 * config/linux/alpha/futex.h: Conditionally define SYS_futex.
19199 * config/linux/i486/futex.h: Likewise.
19200 * config/linux/x86_64/futex.h: Likewise.
19201
19202 * config/linux/lock.c: New file.
19203 * config/linux/omp-lock.h: New file.
19204
19205 * critical.c, env.h: Don't include omp.h
19206 * config/posix/lock.c: Include libgomp.h instead of omp.h.
19207 * config/posix/time.c: Likewise.
19208 * config/posix/omp-lock.h: New file.
19209 * libgomp.h: Include omp-lock.h and omp.h.
19210 * Makefile.am (nodist_include_HEADERS): New.
19211 (omp.h): New rule.
19212 * configure.ac (PERL): New.
19213 * mkomp_h.pl: New file.
19214 * omp.h.in: Rename from omp.h; replace omp_lock_t and omp_nest_lock_t
19215 with templates.
19216 * Makefile.in, configure, testsuite/Makefile.in: Rebuild.
19217
19218 * testsuite/lib/libgomp-dg.exp (libgomp_init): Add include into
19219 build directory. Re-add -march=i486 hack.
19220
19221 * testsuite/lib/libgomp-dg.exp (libgomp_compile_flags): Remove.
19222 (libgomp_link_flags): Remove.
19223 (libgomp_initialized): Remove.
19224 (libgomp_init): Don't protect from reinitialization. Copy code
19225 from libstdc++ for getting the multilib set correctly.
19226
192272005-05-05 Richard Henderson <rth@redhat.com>
19228
19229 * config/linux/alpha/futex.h: New file.
19230 * configure.tgt (alpha*-*-linux*): Use it.
19231
19232 * config/posix/mutex.c: New file.
19233 * config/posix/sem.c: Use libgomp.h.
19234
19235 * configure.tgt (x86_64-linux): Also test CC for -m32.
19236 * config/linux/x86_64/futex.h (futex_wait): Fix r10 usage.
19237
a1daed2d 19238 * testsuite/lib/libgomp-dg.exp (libgomp_link_flags): Add /
953ff289
DN
19239 after $gccpath.
19240
19241 * Makefile.am (SUBDIRS): New.
19242 (libgomp_la_LDFLAGS): Add -lpthread.
19243 * configure.ac (AM_INIT_AUTOMAKE): Enable dependencies.
19244 * Makefile.in, aclocal.m4, config.h.in, configure: Rebuild.
19245
19246 * libgomp_g.h: New file.
19247 * libgomp.h: Split out all public declarations to libgomp_g.h.
19248 Use pragma GCC visibility instead of ATTRIBUTE_HIDDEN.
19249 * config/linux/mutex.h: Remove ATTRIBUTE_HIDDEN.
19250 * config/linux/sem.h: Likewise.
19251 * config/posix/sem.h: Likewise.
19252
19253 * Makefile.am (AM_LDFLAGS): New.
19254 (libgomp_version_script): Split out from ...
19255 (libgomp_la_LDFLAGS): ... here.
19256 (libgomp_version_info): New.
19257 * acinclude.m4 (LIBGOMP_CHECK_TLS): Use LIBGOMP_ENABLE.
19258 (LIBGOMP_ENABLE): New.
19259 (LIBGOMP_CHECK_LINKER_FEATURES): New.
19260 (LIBGOMP_ENABLE_SYMVERS): New.
19261 * configure.ac (AC_INIT): Version 1.0.
19262 (enable-version-specific-runtime-libs): Use LIBGOMP_ENABLE.
19263 (enable-linux-futex): Likewise. Rename from enable-futex.
19264 (libtool_VERSION): New.
19265 (LIBGOMP_ENABLE_SYMVERS): Use it.
19266 * configure.tgt: Check with_gnu_ld wrt have_tls optimizations.
19267 * Makefile.in, aclocal.m4, configure: Rebuild.
19268
19269 * config/linux/mutex.c: Include libgomp.h instead of mutex.h.
19270 (gomp_mutex_unlock_slow): Fix typo.
19271 * config/linux/sem.c: Similarly.
19272 (gomp_sem_post_slow): Fix typo.
19273 * config/linux/sem.h (gomp_sem_post_slow): Fix typo.
19274 * config/linux/i486/futex.h: Remove USE_LINUX_SYSENTER code.
19275 [__PIC__] (sys_futex0): Don't use tmp output in asm.
19276
19277 * Makefile.am (AM_CFLAGS): Expand with XCFLAGS.
19278 (libgomp_la_LDFLAGS): Add top_srcdir to path.
19279 * acinclude.m4: Copy libtool.m4 stuff from libgfortran.
19280 * configure.ac: Check for getloadavg. Substitute XCFLAGS and
19281 XLDFLAGS. Add XCFLAGS to CFLAGS around LIBGOMP_CHECK_SYNC_BUILTINS.
19282 * configure.tgt: Set XCFLAGS and XLDFLAGS instead of CFLAGS and
19283 LDFLAGS. Pull enable_futex check to top-level.
19284 * libgomp.h: Fix sem.h and mutex.h includes. Define ATTRIBUTE_HIDDEN.
19285 * Makefile.in, aclocal.m4, config.h.in, configure: Regenerate.
19286
19287 First attempt at real configury.
19288 * Makefile, config.h: Remove file.
19289 * Makefile.am, Makefile.in: New file.
19290 * acinclude.m4 aclocal.m4: New file.
19291 * configure.ac, configure.tgt, configure: New file.
19292
19293 * config/posix/lock.c: Rename from sys-lock.c.
19294 * config/posix/mutex.h: Rename from sys-mutex.h.
19295 * config/posix/sem.c: Rename from sys-sem.c.
19296 * config/posix/sem.h: Rename from sys-sem.h.
19297 * config/posix/proc.c: Rename from sys-proc.c.
19298 * config/posix/time.c: Rename from sys-proc.c.
19299
19300 * config/linux/mutex.c: New file.
19301 * config/linux/mutex.h: New file.
19302 * config/linux/sem.c: New file.
19303 * config/linux/sem.h: New file.
19304 * config/linux/i486/futex.h: New file.
19305 * config/linux/x86_64/futex.h: New file.
19306
193072005-05-04 Richard Henderson <rth@redhat.com>
19308
19309 * iter.c (gomp_iter_dynamic_next, gomp_iter_guided_next): New.
19310 * libgomp.h: Declare them.
19311 * loop.c (gomp_loop_dynamic_start, gomp_loop_guided_start,
19312 gomp_loop_dynamic_next, gomp_loop_guided_next): Use them.
19313
193142005-05-04 Richard Henderson <rth@redhat.com>
19315
19316 * libgomp-1 code drop
19317
193182005-05-04 Richard Henderson <rth@redhat.com>
19319
19320 * iter.c (gomp_iter_static_next): Return tri-state on 0.
19321 * ordered.c (gomp_ordered_static_next): Remove not_last argument.
19322 * libgomp.h (struct gomp_team_state): Make static_trip unsigned.
19323 (gomp_iter_static_next): Update.
19324 (gomp_ordered_static_next): Update.
19325 * loop.c (gomp_loop_static_start): Update for gomp_iter_static_next.
19326 (gomp_loop_ordered_static_start): Likewise. Exit early for a
19327 totally empty range.
19328 (gomp_loop_ordered_static_next): Refine test for calling
19329 gomp_ordered_static_next.
19330 * testsuite/ordered-1.c: Add case for more threads than iterations.
19331
19332 * iter.c (gomp_iter_runtime_next_locked): Remove.
19333 * loop.c (gomp_loop_static_start, gomp_loop_dynamic_start,
a1daed2d 19334 gomp_loop_guided_start, gomp_loop_ordered_static_start,
953ff289
DN
19335 gomp_loop_ordered_dynamic_start, gomp_loop_ordered_guided_start,
19336 gomp_loop_static_next, gomp_loop_dynamic_next, gomp_loop_guided_next,
19337 gomp_loop_ordered_static_next, gomp_loop_ordered_dynamic_next,
19338 gomp_loop_ordered_guided_next): Downcase name, make static, add
19339 an external alias with the old name.
19340 (GOMP_loop_runtime_start, GOMP_loop_ordered_runtime_start,
19341 GOMP_loop_runtime_next, GOMP_loop_ordered_runtime_next): Use a
19342 switch and call one of the above static functions.
19343 * libgomp.h: Update.
19344
19345 * work.c (gomp_work_share_start): Lock the mutex for !first too.
19346 * loop.c (GOMP_loop_static_start, GOMP_loop_dynamic_start,
19347 GOMP_loop_guided_start, GOMP_loop_runtime_start,
19348 GOMP_loop_ordered_static_start, GOMP_loop_ordered_dynamic_start,
19349 GOMP_loop_ordered_guided_start): Update to match.
19350 * sections.c (GOMP_sections_start): Likewise.
19351 * single.c (GOMP_single_start, GOMP_single_copy_start): Likewise.
19352
19353 * ordered.c (gomp_ordered_first, gomp_ordered_last, gomp_ordered_next,
19354 gomp_ordered_static_init, gomp_ordered_static_next): Rename s/_loop//.
19355 Use bounds check instead of modulus.
19356 (gomp_ordered_sync): Split out of GOMP_ordered_start.
19357 (gomp_ordered_last): Don't sync with ordered_owner here.
19358 (gomp_ordered_next): Likewise.
19359 (gomp_ordered_static_loop_next): Likewise.
19360 * loop.c, libgomp.h: Update to match.
19361
19362 * libgomp.h (GOMP_barrier): Declare.
19363
19364 * testsuite/barrier-1.c: New file.
19365 * testsuite/critical-1.c: New file.
19366 * testsuite/ordered-2.c: New file.
19367 * testsuite/ordered-1.c: New file.
19368 * testsuite/sections-1.c: New file.
19369 * testsuite/single-1.c: New file.
19370 * testsuite/Makefile (TESTS): Add them.
19371
193722005-05-04 Richard Henderson <rth@redhat.com>
19373
19374 * libgomp.h (struct gomp_work_share): Add ordered_owner.
19375 * loop.c (GOMP_loop_static_start): If not the startup thread,
19376 acquire the mutex to wait for initialization complete.
19377 (GOMP_loop_ordered_static_start): Likewise.
19378 (GOMP_loop_ordered_runtime_start): Likewise.
19379 (GOMP_loop_ordered_static_first): Remove.
19380 (GOMP_loop_ordered_dynamic_first): Remove.
19381 (GOMP_loop_ordered_guided_first): Remove.
19382 (GOMP_loop_ordered_runtime_first): Remove.
19383 * ordered.c (gomp_ordered_loop_first): Post to own release when
19384 we're the first thread.
19385 (gomp_ordered_loop_last): Wait on release if not owner.
19386 (gomp_ordered_loop_next): Likewise.
19387 (gomp_ordered_static_loop_init): New.
19388 (gomp_ordered_static_loop_next): Use ordered_owner.
19389 (GOMP_ordered_start): Likewise.
19390 * work.c (gomp_new_work_share): Initialize ordered_owner.
19391
193922005-05-03 Richard Henderson <rth@redhat.com>
19393
19394 * Makefile (OPT): New.
19395 (CFLAGS): Use it.
19396
19397 * loop.c (GOMP_loop_end, GOMP_loop_end_nowait): New.
19398 * sections.c (GOMP_sections_end, GOMP_sections_end_nowait): New.
19399 * libgomp.h, libgomp.map, NOTES: Update to match.
19400
19401 * team.c (struct gomp_thread_start_data): Remove ts, fn, data.
19402 Add initialized and thr members.
19403 (gomp_thread_start): Pause when initially spawned to wait for
19404 the whole team to be created.
19405 (gomp_team_start): Release team members at the end.
19406
19407 * testsuite/loop-1.c (N): New. Use it instead of hardcoded 100.
19408 (f_foo_1): Use GOMP_loop_end.
19409 (f_foo_2): Use GOMP_loop_end_nowait.
19410
19411 * testsuite/loop-2.c: New file.
19412 * testsuite/Makefile (TESTS): Add it.
19413
194142005-05-03 Richard Henderson <rth@redhat.com>
19415
19416 * iter.c (gomp_iter_static_next): Fix overflow check typo.
19417 (gomp_iter_dynamic_next_locked): Fix overflow check thinko.
19418 * team.c (new_team): Initialize oldest_live_gen to 1 if no
19419 initial work_share.
19420
19421 * testsuite/Makefile: New file.
19422 * testsuite/loop-1.c: New file.
19423
194242005-05-03 Richard Henderson <rth@redhat.com>
19425
19426 Initial implementation and checkin.
21fa2a29 19427\f
877e3c2a 19428Copyright (C) 2005-2022 Free Software Foundation, Inc.
21fa2a29
JJ
19429
19430Copying and distribution of this file, with or without modification,
19431are permitted in any medium without royalty provided the copyright
19432notice and this notice are preserved.